# Question
Title: Problem with attaching Archos device on Ubuntu
On my laptop I have Ubuntu 12.04.

1) mounting the tablet

```
$ sudo mkdir /media/tb
$ sudo chmod 777 /media/tb
$ sudo mount /dev/sdc /media/tb

```

2) downloading and updating Android SDK

```
$ cd ~
$ wget http://dl.google.com/android/adt/adt-bundle-linux-x86-20130219.zip
$ cd ~/adt-bundle-linux-x86-20130219/sdk/tools
$ ./android update sdk

```

3) editing rules for my device. Each hardware device has its ID. According to Archos website my vendor ID is `e79`. According to this website I should also edit `~/.android/adb_usb.ini`.

```
$ sudo vim /etc/udev/rules.d/51-android.rules

```

After editing the file has this content:

```
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device",
ENV{PRODUCT}=="e79/*", MODE="0666"
SUBSYSTEM=="usb", SYSFS{idVendor}=="e79", MODE="0666"

$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
$ sudo vim ~/.android/adb_usb.ini

```

after editing the file has this content:

```
0x0e79

$ sudo chmod a+r ~/.android/adb_usb.ini

```

4) updating the information

```
$ sudo udevadm control --reload-rules
$ cd ~/adt-bundle-linux-x86-20130219/sdk/platform-tools
$ ./adb kill-server
$ ./adb start-server
$ sudo reboot
$ sudo mount /dev/sdc /media/tb
$ cd ~/adt-bundle-linux-x86-20130219/sdk/platform-tools
$ ./adb start-server
$ ./adb devices

List of devices attached

```

You can see that I have problem with attaching my device.

What else would you try to solve it?

# Answer
> 2 votes
For `adb devices` to list your device (and other ADB commands to be able to work with it), you need to enable *USB Debugging* in your Android device. This will start the required services (the ADB daemon) on the Android device, which is what then responds to ADB commands issued from your computer.

Besides: If you are not going to use all the development stuff from the SDK, but simply wnat to interact with your device using ADB commands, you don't need to install the entire SDK overhead. See Is there a minimal installation of ADB? for details :)

---
Tags: adb
---


# Question
Title: Is it enough to restore /data with ClockworkMod? (Maybe changing systems as well
I definitely don't want to restore cache files. Why would I want to restore system files as well? If I understood Izzy's answer here, as a normal user (not a system developer) all I need is to restore the /data folder, right? Should work when changing systems under it.

As I understand, Titanium Backup is also not needed when using Nandroid/ClockworkMod.

By "normal user" I mean that I'm not a developer.

# Answer
As explained in my comments on the question itself: a restore is more than just the `.apk` files. All parts of the system need to fit together, or you might run into trouble (unstable system, things not working as expected, apps crashing, and the like). There are different approaches to backup and restore, and one should not mix them without the required experience.

## Nandroid

A Nandroid backup (as it's done by e.g. ClockworkMod) basically creates full images of all your device's partitions, without any abstraction. This does not necessarily mean one could not pick single items out of a Nandroid backup, but its not that trivial. If you restore a single partion only (such as `/data`), it must fit the other parts of the system. The `/data` partition also holds the `/data/dalvik-cache`, for example, which consists of the byte-code for all installed apps, optimized for the ROM which created it. If you e.g. would restore the `/data` partition from a backup of ROM-X to a device with ROM-Y, those DEX (Dalvik EXecutables) would not fit. Also ROM-Y might use different directory structures for several things, which are not reflected here.

You see, it would not be such a good idea.

## ADB Backups

Backups created with the `adb backup` command are a different case: they are "abstracted". If you look into such an archive, you will not find the directory structure reflected. Thus at least in theory, an app backup (including the apps' data) created on ROM-X should restore fine on ROM-Y, as the ADB daemon on the device should take care of what belongs where.

## Titanium backup

Somehow comparable with the afore-mentioned *ADB backup*. TiBu uses its own format, and furthermore offers a "migration mode" when restoring backups from a different ROM. TiBu can also extract apps/data from Nandroid (and ADB?) backups, and hopefully fits them in fine even between different ROMs.

## Other details

As you correctly noted: No, *Titanium Backup* is not needed to restore a Nandroid backup. The same script collection (Nandroid) used for the backup process would take care for the restore as well, again from the same place (ClockworkMod recovery). But as described above: *Titanium Backup* is able to read from backup files created with *Nandroid*.

As a last line, I want to repeat what I wrote in the beginning: Nandroid, ADB Backup, and Titanium are using completely different concepts. Though it is possible to mix them on a restore, this should only be done by experienced users understanding those concepts and knowing what they are doing.
> 3 votes

---
Tags: backup, clockworkmod-recovery, restore
---


title: Disabling Google Voice Dialer

text:
# Question
Title: Disabling Google Voice Dialer
I have a Motorola Electrify M, recently factory-OTA-updated to Android 4.1.2. With the update came Google Now and the Google Voice Dialer.

Google's Voice Dialer sucks! It always get the name wrong, and then immediately places a call to the wrong person! It doesn't even ask for confirmation of the name, and to top it off the voice it uses is so *irritating* and **LOUD** it makes me want to jump out the window while driving down the freeway!

The Voice Commands app that originally came with the phone worked reasonably well, and I'd like to get it back (or even a third party app, like Dragon Assist, would be better than the current *POS* that's taken over the voice capabilities of my phone).

How can the Google Voice Dialer be disabled or uninstalled?

# Answer
> 1 votes
Okay, I figured out how to set the good ol' Voice Commands app as the default voice commands interface. It has to be done while **not** connected to a hands free device via Bluetooth.

1. Tap into the Phone app
2. Tap the Phone app's microphone icon

In my case a prompt appeared asking me to select the default app to handle voice commands. Thereafter, it's used the correct Voice Commands app when connected via Bluetooth.

---

For those who wanted to know how to **disable Google Now**, here's how it's done:

1. Swipe up from the Home icon to activate Google Now
2. Scroll all the way to the bottom
3. Tap the Overflow menu (three vertical dot icon)
4. Tap Settings
5. Tap Google Now
6. Tap the OFF/ON switch in the upper-right to disable Google Now

# Answer
> 0 votes
I agree the Google Voice Dialer is horrible! I was able to restore the Android Voice Commands on my Droid Razr Maxx by doing the following:

1. Go to Manage Apps, then swipe over to All apps.
2. Look for Google Search then Disable it.

This is probably all you need to do, but I went about it probably the wrong way by also doing the following.

1. In Manage Apps, click on your menu button and Reset App Preferences.
2. Ihe Google Search, click the "Clear Data" button.

The next time I pressed my BlueTooth Call button, it asked if I want to complete it with My MotoSpeak or Voice Commands, either Always or Just Once. I selected Always it works again!

# Answer
> 0 votes
I have a Motorola Droid, was getting great voice dialing using my BT Voyager Pro via the "Voice Commands" app (same as Mic Icon) but after the Android 4.2 update, Google Voice was activated and was a disaster.

To fix this I went to `Settings > Apps> Google search` and deactivated it. This fixed my voice dialing problem (went back to "Voice Commands") but the search (magnifying glass icon) on my phone went dead. I then went to the Android store and downloaded/installed the new "Google Search" app. When I used voice dialing for the first time, it gave me the option of either using Voice Commands (mic icon) or Google Voice (I think a read icon). I chose the first one and now it works as before. The search button is also working as intended.

The above may sound trivial, but when one is driving and wants to make a call, having to hold your phone to type the number after 5 failed attempts to voice dial is the last thing you want to do.

# Answer
> 0 votes
The method above works, or did for me -- disable Google, but I found out later that while it still lets Google work as a search engine (or does for me), it killed Maps which means you can't use Navigation. If you want to re-enable Google, follow the same steps: Setting, Apps, All, then scroll to the bottom and you'll find the disabled Google. Re-enable and Maps works but you're back to the horrible Google Voice Dialer. It's either/or (good voice dial or maps/nav) until Google fixes the operating system.

---
Tags: voice-recognition, google-voice-actions
---


title: WiFi tether without losing battery

text:
# Question
Title: WiFi tether without losing battery
So, as everyone already knows, when tethering data over WiFi your battery may overheat/lose battery/etc. What I want to do is while in my car:

1. Stream internet over WiFi to \>1 person
2. Navigate with GPS (a.k.a. screen on the whole time)
3. Bluetooth music to my car for Pandora or something

As you can see this will take my phone(Galaxy Nexus) to the max, but I think it should be able to do it. I'm open to other ideas, but what do people think about powering the phone with a battery bypass and charging the battery with a different circuit?

# Answer
> 1 votes
It is hard enough to keep it charged with the GPS and streaming - I know I do it frequently. I would not recommend trying to share data at the same time. It wasn't until the latest update that I could even get streaming and WiFi hotspot to work without stuttering.

I would strongly suggest that you use another cell phone do the WiFi hotspot while your phone does the streaming and GPS or get a dedicated GPS and use the phone for hotspot and streaming.

It is a classic example of GPS, BT & Wifi Hotspot, Pick any two.

But, in the interest of science, I think you should try it ;) just have a backup plan.

Edit: Be sure to get a high amperage car charger - one for an iPad should work nicely since those require 2.1 amps. That should push a lot of juice to the phone and maybe keep it from dying under all that load.

---
Tags: bluetooth, charging, wifi-hotspot, wifi-tethering, battery-life
---


title: I cannot charge my tablet

text:
# Question
Title: I cannot charge my tablet
I only have a USB cable to charge my tablet and I plugged it into my laptop to charge and a little red X shows up on the battery thing. How can I charge my tablet?

# Answer
A computer's usb port does not supply enough current to charge your tablet. The tablet takes roughly 1A or 1,000mA to charge, a desktop's usb port only puts out about 500mA. Some laptops just can't provide the specified 500mA and will not charge it at all. YMMV

You can charge it though, only very slowly, AND the tablet has to be completely turned off.
> 2 votes

---
Tags: usb, charging, samsung-galaxy-tab
---


# Question
Title: Why each android application runs on a different Dalvik VM process?
I have read that each android applications runs on a different Dalvik VM process (all forked from zygote).

I also read that these VMs are really lightweight and use copy on write buffers and all that, so far so good.

But, I also read that this was not done for security reasons (e.g. isolation) - in fact dalvik vm should not be considered a security boundary, says Google.

So my question is this: Why each process has to run on a different VM?

# Answer
> 12 votes
In Android, every **application** runs as a separate user. In the Linux kernel, each **process** is owned by a single user, therefore it is not possible to run multiple Dalvik applications on a single Linux process.

The overhead of running multiple Dalvik VM instance is lightweight because Linux `fork()` system call is copy-on-write, a write to a shared COW page will cause a "page fault" and that page will be copied; so even though most of the VM's memory region in the RAM is shared there are no "shared state" between VMs.

Forking processes provides only state isolation, but not privilege isolation.

> dalvik vm should not be considered a security boundary

That is because the VM cannot enforce a security boundary. The VM is running on user mode (the same mode as the program it's executing), which means a bug in the VM might allow the application to modify VM state in a way that is not intended; the kernel, however, runs in privileged mode and can enforce security boundary.

# Answer
> 5 votes
Each Dalvikvm process runs under a sand-boxed environment owned by the user id (`uid`) of the application running, it should be noted that upon installation of the application, the `uid` is allocated and assigned to each installed application.

The net result is that each running application cannot trample another's process due to the different `uid` assigned, that grants the protection for the running apps.

Another way of looking at it is this - had there being one common `uid` for *all* applications, then a malicious application can really cause havoc, be peering into one's settings, override, intercept another application's running code and do all sorts of bad thingsTM to that application.

# Answer
> 3 votes
The Dalvik VM isn't providing a security boundary, but the kernel *is* providing a security boundary in terms of the process the VM runs in. That's why, for example, it is no big deal for an Android application to run native code, which (more or less) by definition runs outside the VM. It's still in the process, and the kernel ensures that the process isn't going to be able to harm other applications, whether the process is running code within the VM or not.

---
Tags: security, dalvik
---


# Question
Title: Specific App install from Google Play fails, where to see log?
I'm trying to re-install a paid app from the Google Play Store I had previously installed before doing a system update.

The installation fails silently after downloading. (Other installs from the Market work fine.)

Where can I see a log of what went wrong?

My System is a CM10 nightly built, so there might be all kinds of problems. The app doesn't show up as previously installed in any OS app lists, but turns up as 'not installed, no backups' in the Titanium Backup list, so there must be some residues from the former installation left.

# Answer
> 2 votes
To answer myself:

1. Downloaded the `.apk` of the app on a PC with the help of the APK Downloader tool, and put it onto the phones SD card.
2. Used Terminal application (part of CM10) to switch to root (`su`), then tried to install the downloaded `.apk` file via `pm install com.name.apk`

Got an error code: `INSTALL_FAILED_UID_CHANGED`, googled that and found a solution:

1. Removed `/data/data/com.name.apk/` folder completely via terminal
2. Tried `pm install com.name.apk` again -\> SUCCESS (Would probably also have worked with normal Play Store install.)

Seems that each app gets a unique UID on first install to manage its access rights on files and folders. If the system thinks it's the first install, it assigns a new one, then can't overwrite/delete old settings/data folders previously set with another UID.

# Answer
> 2 votes
Glad you've found a working solution! To make it easier for people being afraid of working with the terminal:

On the Google Playstore you can find the app SD Maid, which (amongst other things) can take care for "left-overs" of uninstalled apps, which it calls "corpses" (so the part relating to this is the "corpses finder"). To do so, it reads the list of installed apps from the package manager, and then checks for e.g. directories which should not be there:

SDMaid: "Corpse Finder" and "System Cleaner" (Source: Google Play; click images to enlarge)

In your case, you've uninstalled the "foobar" app, which has the "package-name" of "com.foobar.app". Reading the list of installed apps, SDMaid thus does not find it -- so the folder `/data/data/com.foobar.app` would be identified as "corpse" and offered for cleaning.

So the big pro for the "average user" here is not only that he can avoid the command line, but also does not need to figure out tha apps "technical name", as *SDMaid* does that itself. And as "nice-to-have", the app also brings a file manager, file searcher, app control (freezing apps etc), and more.

Last remark: your device must be rooted for SDMaid to work. But so it must if you want to manually remove that directory, as the `su` step in your own answer shows :)

---
Tags: applications, google-play-store, installation
---


title: What does "obtaining IP address" mean?

text:
# Question
Title: What does "obtaining IP address" mean?
When I try to connect to a free WiFi, my Xperia Android smartphone displays:

> obtaining ip address

* Why does it happen?
* Which IP address is that?
* Is it static or dynamic?
* Does this IP address identify my smartphone?

Or does it identify the WiFi router and is its IP address common for different smartphones/laptops?

# Answer
**Why does it happen:** When you connect to a DHCP enabled router, your device (notebook, smartphone etc) obtains an IP address in order to access internet via that router/server.

**Which IP is that, static or dynamic:** It's a dynamic internal IP address and is valid only within that network.

**Does this IP address identify my smartphone:** Yes, but only in that network and it's actually the MAC address of your network adapter that identifies your device, not your IP.

The same is true for the router. It may have a static or dynamic IP which is given by the ISP. If it's static then yes it identifies it, otherwise no. Your external IP (router's IP) is different from your internal IP. All of the devices connected to that router have the same external IP address.
> 9 votes

# Answer
When it says that, while connecting over wifi, it means that the machine is asking the local network for connection information. On a basic level it's already connected. But when it says that, it doesn't yet have an IP address and thus can't yet transfer TCP nor UDP traffic (probably some other types too, like ICMP).

So it's really trying to get assigned an IP address for use on the local network, which is something handled by a DHCP service (usually in the router).

This is not special to the device type, it's just something that's a part of networking.
> 2 votes

# Answer
If your smartphone says "obtaining ip-address" it means it is searching for an IP address or connecting to an IP address. If you are trying to connect via Wi-Fi using the smartphone, it may be a static IP address or dynamic ip address. Your IP address won't identify the device, but the device has to obtain an IP address if you connect to the internet and the service provider will know about your device. Every device connected to the internet has its own IP address. Visit this site to check the internet IP address for your smartphone, iPad, PC or laptop.
> 0 votes

---
Tags: wi-fi
---


title: How do I patch the Android ADB driver?

text:
# Question
Title: How do I patch the Android ADB driver?
Headaches with Android SDK again!

I know how to set up the Android SDK. I have done this multiple times over the years. And I had to do some patching of the driver for the ADB every single time! I have done it so many times routinely, I can do it blindfolded!

Why is it such a problem for Google to include a working USB driver with the Android SDK?

This is the INF file for the USB driver provided by Google.

```
;
; Android WinUsb driver installation.
;
[Version]
Signature           = "$Windows NT$"
Class               = AndroidUsbDeviceClass
ClassGuid           = {3F966BD9-FA04-4ec5-991C-D326973B5128}
Provider            = %ProviderName%
DriverVer           = 08/27/2012,7.0.0000.00001
CatalogFile.NTx86   = androidwinusb86.cat
CatalogFile.NTamd64 = androidwinusba64.cat

[ClassInstall32]
Addreg = AndroidWinUsbClassReg

[AndroidWinUsbClassReg]
HKR,,,0,%ClassName%
HKR,,Icon,,-1

[Manufacturer]
%ProviderName% = Google, NTx86, NTamd64

[Google.NTx86]

;Google Nexus One
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_0D02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_0D02&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E11
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E12&MI_01

;Google Nexus S
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E21
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E22&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E23
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E24&MI_01

;Google Nexus 7
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4E40
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E41
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E42
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E42&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E44&MI_01

;Google Nexus Q
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_2C10
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_2C11

;Google Nexus (generic)
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4EE0
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4EE1
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE2
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE2&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4EE3
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE4&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4EE5
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE6&MI_01

[Google.NTamd64]

;Google Nexus One
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_0D02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_0D02&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E11
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E12&MI_01

;Google Nexus S
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E21
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E22&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E23
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E24&MI_01

;Google Nexus 7
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4E40
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E41
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E42
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E42&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E44&MI_01

;Google Nexus Q
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_2C10
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_2C11

;Google Nexus (generic)
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4EE0
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4EE1
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE2
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE2&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4EE3
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE4&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4EE5
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE6&MI_01

[USB_Install]
Include = winusb.inf
Needs   = WINUSB.NT

[USB_Install.Services]
Include     = winusb.inf
AddService  = WinUSB,0x00000002,WinUSB_ServiceInstall

[WinUSB_ServiceInstall]
DisplayName     = %WinUSB_SvcDesc%
ServiceType     = 1
StartType       = 3
ErrorControl    = 1
ServiceBinary   = %12%\WinUSB.sys

[USB_Install.Wdf]
KmdfService = WINUSB, WinUSB_Install

[WinUSB_Install]
KmdfLibraryVersion  = 1.9

[USB_Install.HW]
AddReg  = Dev_AddReg

[Dev_AddReg]
HKR,,DeviceInterfaceGUIDs,0x10000,"{F72FE0D4-CBCB-407d-8814-9ED673D0DD6B}"

[USB_Install.CoInstallers]
AddReg    = CoInstallers_AddReg
CopyFiles = CoInstallers_CopyFiles

[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller01009.dll,WdfCoInstaller","WinUSBCoInstaller2.dll"

[CoInstallers_CopyFiles]
WinUSBCoInstaller2.dll
WdfCoInstaller01009.dll

[DestinationDirs]
CoInstallers_CopyFiles=11

[SourceDisksNames]
1 = %DISK_NAME%,,,\i386
2 = %DISK_NAME%,,,\amd64

[SourceDisksFiles.x86]
WinUSBCoInstaller2.dll  = 1
WdfCoInstaller01009.dll = 1

[SourceDisksFiles.amd64]
WinUSBCoInstaller2.dll  = 2
WdfCoInstaller01009.dll = 2

[Strings]
ProviderName                = "Google, Inc."
SingleAdbInterface          = "Android ADB Interface"
CompositeAdbInterface       = "Android Composite ADB Interface"
SingleBootLoaderInterface   = "Android Bootloader Interface"
WinUSB_SvcDesc              = "Android USB Driver"
DISK_NAME                   = "Android WinUsb installation disk"
ClassName                   = "Android Device"

```

This driver can be obtained through the SDK Manager and that's how I got it. It sits in the installation directory `Android\android-sdk\extras\google\usb_driver`.

Why are there no entries for HTC or Samsung phones?

Now this is the INF file for the driver I used in the past (but for the same phone).

```
;
; Android WinUsb driver installation.
;
[Version]
Signature           = "$Windows NT$"
Class               = AndroidUsbDeviceClass
ClassGuid           = {3F966BD9-FA04-4ec5-991C-D326973B5128}
Provider            = %ProviderName%
DriverVer           = 08/11/2009,2.0.0010.00002
CatalogFile.NTx86   = androidwinusb86.cat
CatalogFile.NTamd64 = androidwinusba64.cat

;
; This section seems to be required for WinUsb driver installation.
; If this section is removed the installer will report an error
; "Required section not found in INF file".
;
[ClassInstall32]
Addreg = AndroidWinUsbClassReg

[AndroidWinUsbClassReg]
HKR,,,0,%ClassName%
HKR,,Icon,,-1

[Manufacturer]
%ProviderName% = Google, NTx86, NTamd64

[Google.NTx86]
; HTC Dream
%SingleAdbInterface%        = USB_Install, USB\VID_0BB4&PID_0C01
%CompositeAdbInterface%     = USB_Install, USB\VID_0BB4&PID_0C02&MI_01
%SingleBootLoaderInterface% = USB_Install, USB\VID_0BB4&PID_0FFF
; HTC Magic
%CompositeAdbInterface%     = USB_Install, USB\VID_0BB4&PID_0C03&MI_01
; HTC Desire
%CompositeAdbInterface% = USB_Install, USB\VID_0bb4&Pid_0c94
;
;Moto Sholes
%SingleAdbInterface%        = USB_Install, USB\VID_22B8&PID_41DB
%CompositeAdbInterface%     = USB_Install, USB\VID_22B8&PID_41DB&MI_01
;
;Google NexusOne
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_0D02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_0D02&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E11
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E12&MI_01

[Google.NTamd64]
; HTC Dream
%SingleAdbInterface%        = USB_Install, USB\VID_0BB4&PID_0C01
%CompositeAdbInterface%     = USB_Install, USB\VID_0BB4&PID_0C02&MI_01
%SingleBootLoaderInterface% = USB_Install, USB\VID_0BB4&PID_0FFF
; HTC Magic
%CompositeAdbInterface%     = USB_Install, USB\VID_0BB4&PID_0C03&MI_01
; HTC Desire
%CompositeAdbInterface% = USB_Install, USB\VID_0bb4&Pid_0c94
;
;Moto Sholes
%SingleAdbInterface%        = USB_Install, USB\VID_22B8&PID_41DB
%CompositeAdbInterface%     = USB_Install, USB\VID_22B8&PID_41DB&MI_01
;
;Google NexusOne
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_0D02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_0D02&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E11
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E12&MI_01

[USB_Install]
Include = winusb.inf
Needs   = WINUSB.NT

[USB_Install.Services]
Include     = winusb.inf
AddService  = WinUSB,0x00000002,WinUSB_ServiceInstall

[WinUSB_ServiceInstall]
DisplayName     = %WinUSB_SvcDesc%
ServiceType     = 1
StartType       = 3
ErrorControl    = 1
ServiceBinary   = %12%\WinUSB.sys

[USB_Install.Wdf]
KmdfService = WINUSB, WinUSB_Install

[WinUSB_Install]
KmdfLibraryVersion  = 1.7

[USB_Install.HW]
AddReg  = Dev_AddReg

[Dev_AddReg]
HKR,,DeviceInterfaceGUIDs,0x10000,"{F72FE0D4-CBCB-407d-8814-9ED673D0DD6B}"

[USB_Install.CoInstallers]
AddReg    = CoInstallers_AddReg
CopyFiles = CoInstallers_CopyFiles

[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller01007.dll,WdfCoInstaller","WinUSBCoInstaller.dll"

[CoInstallers_CopyFiles]
WinUSBCoInstaller.dll
WdfCoInstaller01007.dll

[DestinationDirs]
CoInstallers_CopyFiles=11

[SourceDisksNames]
1 = %DISK_NAME%,,,\i386
2 = %DISK_NAME%,,,\amd64

[SourceDisksFiles.x86]
WinUSBCoInstaller.dll  = 1
WdfCoInstaller01007.dll = 1

[SourceDisksFiles.amd64]
WinUSBCoInstaller.dll  = 2
WdfCoInstaller01007.dll = 2

[Strings]
ProviderName                = "Google, Inc."
SingleAdbInterface          = "Android ADB Interface"
CompositeAdbInterface       = "Android Composite ADB Interface"
SingleBootLoaderInterface   = "Android Bootloader Interface"
WinUSB_SvcDesc              = "Android USB Driver"
DISK_NAME                   = "Android WinUsb installation disk"
ClassName                   = "Android Phone"
; HTC Desire
%SingleAdbInterface% = USB_Install, USB\VID_0bb4&Pid_0c94&Rev_0100
%CompositeAdbInterface% = USB_Install, USB\VID_0bb4&Pid_0c94
%SingleBootLoaderInterface% = USB_Install, USB\VID_0BB4&Pid_0c94

```

This driver was downloaded from XDA Developers forum, from this thread. I have revisited this thread every time I had to install Android SDK. The trick that the author uses is to simply replace the hardware IDs in the INF file to those that actually correspond to the actual hardware device that's being connected.

If I am not mistaken I had the same ID as the author describes in the thread, that is `USB\VID_0bb4&Pid_0c94`. But now when I check it I have a different one.

I recently flashed the phone. But I used the RUU original image, with the same build number as the one that was already on the phone. The RUU was the HTC original ROM Update Utility that was used to flash it. I had to do this to enable the use of Unrevoked to root and then Alpha Rev to set S-OFF. Could it be that, in some way, this changed the hardware ID? I thought hardware IDs were supposed to be permanent and fixed to the hardware?...

Using the second driver, with unedited INF file, and trying to update the ADB device in Device Manager, this is what it says.

It just simply fails to install it, because the IDs don't match. Now, these are the lines that I used in the edited version of the INF file. These now include the actual IDs of my phone.

```
[Google.NTx86]
%CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87&MI_01

[Google.NTamd64]
%CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87&MI_01

[Strings]
%SingleAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87&REV_0226
%CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87
%SingleBootLoaderInterface% = USB_Install, USB\VID_0BB4&PID_0C87

```

So now when I try to update the driver again I get to the warning message, you know the usual Windows warning about installing software of unknown source.

So I click to install it anyway.

And it tries to install it but then halts and says that installation failed and something about ADB Composite.

So why does it fail to install? And why was my hardware ID changed in the first place?

Is there no "normal" way of installing this stupid driver? You know, without having to hack the damn thing or play tricks with it?...

I know that some users suggest that one should obtain the latest sync software from the manufacturer because with that also come some USB drivers that are necessary to have. But I don't want any of the HTC bloatware. And I don't have any problems transferring files between the phone and the computer when in "Disk drive" mode. So I don't need anything else. And isn't this the driver for using the ADB (Android Debug Bridge) which is part of Android SDK? I mean shouldn't Google be the one that provides a working driver then?...

Just for the record, the phone in question is HTC Desire, the original one. You know, the first one, not any of its' many siblings that followed.

Please have a look at this, and let me know what you think this could be. And also let me know if you know of any alternative ways of doing this, just for future use. I am sick and tiered of having to this every single time I want to install the Android SDK. I normally only do that when I need to reinstall Windows, but once installed and set up I usually don't touch it, but I do reinstall Windows at least two times a year.

# Answer
I had to change the last part of the INF file.

```
[Strings]
%SingleAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87&REV_0226&MI_01
%CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87&MI_01
%SingleBootLoaderInterface% = USB_Install, USB\VID_0BB4&PID_0C87&MI_01

```

It worked perfectly after this change.
> 0 votes

---
Tags: usb, adb
---


title: Problems cutting people off

text:
# Question
Title: Problems cutting people off
I am a complete novice with these phones. When I have a call I seem to cut people off with my cheek on the screen - how can I stop this?

# Answer
If you cannot keep distance between screen and your skin (cheek) as bigbadonk420 said. Then, in my experience, always speak from your phone with headset connected. There by not having the tension of cutting the call and giving freedom to the hands simultaneously. Simple isn't it...
> 1 votes

# Answer
One solution you can try is to lock the screen after placing or receiving a call. This way you won't cut the call accidentally by touching the screen.
> 1 votes

---
Tags: calls, screen, proximity-sensor
---


title: Plug in the charger the wrong way?

text:
# Question
Title: Plug in the charger the wrong way?
Yesterday, I mistakenly tried to push the charger plug in my phone upside-down.

The phone seemed to react to it. Does it matter which way the plug is turned for charging?

# Answer
Yes, it matters. The pins on a micro-USB connector are inside, and they're only on one side of the connector, so you can't get power or data through the connection if it's upside-down. If you got a reaction, it was probably just from the outside of the plug, which is connected to ground. If you're pushing it in hard enough to do that, you're probably damaging the socket, so try to avoid doing that in future.
> 1 votes

# Answer
Yes, it matters. It will not charge if the pins are not aligned properly.
> 1 votes

---
Tags: samsung-galaxy-s-3, charging
---


# Question
Title: How to access intenal storage or internal memory of Android while conecting to PC?
I am connecting my Android device to PC, but its not show my internal storage.

Is there a method to access the internal storage of Android while connecting the android device to PC.

# Answer
> 2 votes
You could use ADB for this. In connection with graphical frontends like e.g. QtADB this makes it easy to access your device's storage. Access from the command line is also possible (see the linked tag-wiki).

Another possibility is to install a SSH server on your device, which you then could access using either an ssh command line client, or also with graphical applications like e.g. WinSCP.

How much of your internal storage you can access either way depends on whether your Android device is rooted. Only portions of the internal storage are accessible for users other than root.

---
Tags: internal-storage
---


title: updating a game with Apk file?

text:
# Question
Title: updating a game with Apk file?
Ok im new to android as I used to be an iphone user so this question may not make any sense. Im used to jailbreaking but now I have a sg note 10.1 and im so lost with a few things. However, I downloaded an Apk file for this game/s. My question is if you have an Apk file can you update your game and do you lose your progress if you do? Someone explain to me all this stuff. Thanks.

# Answer
That process is called Side Loading (I added the corresponding tag to your question, so you may simply click it for related questions). And yes, it can be done: All you'll have to do is to enable the setting, and then access the `.apk` using a web or file manager.

However: downloading apps from "dubious sources" carries a big risk, as they might include . Chances are especially high if you obtained that file from some "sharing site" like e.g. Mediafire or the like, where everybody can put everything. The risk you take that way is not worth the 99 cent saved by not buying the app on the playstore, so I would think twice before doing so. If you got the file from the developer's site, on the other hand, it should be as safe as if installed via the playstore.
> 1 votes

---
Tags: updates, apk, side-loading
---


# Question
Title: How to find the app that causes crashes?
Where should I begin the hunt for the cause of crashes / reboots when logging apps do not work anymore?

# Answer
> 1 votes
As can be seen in this video from the Google I/O conference, in Jelly Bean applications can no longer read the system log for other applications, they can only read their own log. This has broken most (all?) system log readers, here's a blog post from a developer of such an application talking about how it has affected his application.

The only way to have an app read other apps system log entries when using Jelly Bean is to root the phone.

Although other apps can't read the log files it is *apparently* possible to do it from the PC, try giving LogShark a go.

# Answer
> -1 votes
The easiest most simple way that will give you definitive results is to remove all apps and install them one at a time until you install one that starts your problem.

If you just installed an app recently and think it may be questionable, uninstall it and see if your problem is gone. This in all honesty is a lengthy process.

---
Tags: 4.1-jelly-bean, crashes, logging
---


title: Root or flash Galaxy S 2 with Odin 3.07

text:
# Question
Title: Root or flash Galaxy S 2 with Odin 3.07
I need to completely erase my current Android OS from my Galaxy S2 and install a fresh version from scratch.

I have Odin 3.07, the ".tar.md5" file and the Samsung drivers. I already did some "flashing", but my device was not "completely" restored, just updated.

I need a full re-install. What thing to check in Odin to achieve it?

# Answer
> 1 votes
**Options:**

* Auto Reboot
* F. Reset Time

**Files \[Download\]**

* PDA: .tar file

Source: AndroidCentral

---
Tags: rooting, samsung-galaxy-s-2, rom-flashing, odin
---


# Question
Title: How to create a Local Area Network with Android device?
I want to use a TCP service running on my phone that needs its current IP to be known. So when the phone is connected to its internet as alone, I can know its IP.

However to speed up this task, I need to make a local network connection with my phone and know its local IP.

The USB/Wi-Fi tethering by phone with PC does all that along with sharing its internet connection, however in this scenario, I don't want its internet. I am already connected with LAN on my PC. and have no internet plan on my phone.

Any suggestion?

# Answer
> 1 votes
1. Connect it to WiFi or ethernet via cable.
2. At router or DHCP server settings reserve IP address for Android.

Now you has network and known IP address for your Android device.

P.S. if you don't have router and directly connected to internet via cable - you can emulate WiFi router on your PC (not all adapters supported).

# Answer
> 0 votes
If you just want you local IP Address. Then go to terminal emulator and type `netcfg`. You will see list of interfaces with their IP Addresses (if they are UP).

---
Tags: networking
---


title: Wi-Fi won't stay off

text:
# Question
Title: Wi-Fi won't stay off
I have a Motorola Droid and have just installed the latest update.

The Wi-Fi network at my workplace is temperamental, so I prefer to simply turn off the Wi-Fi and use 4G.

The issue is, when I turn it off (in Settings ~\> Wi-Fi ~\> move the slide bar to "off") it shows as off, however the next time I turn the screen on, the Wi-Fi is back on.

How can I stop this?

# Answer
This is strange behavior, and one I have not actually seen before.

Do you by any chance have an app installed that could be turning the Wi-Fi on? Also, how long do you wait between sliding the slider and turning the screen off - it may not have had time to update.

I have only ever since this issue once, and I believe that it was a software issue.

If you cannot fix it, I would recommend 'forgetting' your works Wi-Fi network, so that Android does not automatically connect to it. You can do this by long pressing on the Wi-Fi network in the Wi-Fi settings menu.
> 1 votes

# Answer
The comment on the question:

> My guess is that your carrier has installed some sort of "connection optimizer" onto your device with the most recent update. Which actually just means that it will use wifi when it is available because that will result in less overall traffic on their 3g/4g network. On sprint device you can go to Settings-\>wireless & networks-\>more...-\>-mobile networks-\>connection optimizer to enable / disable this. try poking around your wireless settings to see if you have something like this.

This solution worked for me. I have had the same problem as the OP since I upgraded to Android 4.0.4 a couple months ago on the Sprint network. 4G and Wifi would both turn on by themselves at random times, no matter how many times I turned them off.
> 1 votes

---
Tags: wi-fi, motorola-droid
---


# Question
Title: Do I need adb? Whats wrong with terminal?
I'm pretty new to Android, but I have a bit of linux understanding. Do I need to use adb and do I need to type `adb` before every command?

I have SSHDroid running on my GS3. I open my regular linux terminal and did `ssh root@<ip>`. When I got in I typed `abd logcat`, that failed. just `logcat` worked.

I'm happy with the shell I know, is this going to cause an issue?

# Answer
> 2 votes
The answer depends on what you want to do. ADB and SSH serve different purposes, though they have some things in common: you can remotely access your Android device, and execute commands on it. With ADB you can do a lot more -- you will get an idea if you read the ADB tag wiki and also follow the links contained there.

One more thing in common: both can be used interactively.

And one more shorty: they do *not* depend on each other.

## SSH

To use SSH, you will need to install a SSH server on your Android device. If the latter is rooted (as a Linux user, I do not need to explain that "root" is the administrative account, and also known as the "super-user" who has full access to everything), you can set it up to use the default SSH port -- otherwise you need to chose one above 1000, as it is with Linux.

Now you can interact with the device: copy files with `scp`, or log in to the device directly. This way you reach a shell, and can work on the device like on any other Linux machine (almost -- of course there are some restrictions, like e.g. no X-Server being present, and a limited set of commands).

## ADB

With ADB you can also establish such a "terminal mode", by simply executing the command `adb shell` without any arguments. This directly brings you to the shell prompt. Similar to `ssh`, you can also directly execute commands by simply pass them as parameters. In this case, as with ssh, you will be returned to your local terminal prompt once the command has been completed.

ADB offers additional commands, not only "shell". So you can e.g. use `adb push` or `adb pull` to transfer files (comparable to `scp`). All the other capabilities go beyond the scope of your question -- but above mentioned tag wiki should get you started here as well.

One last word on ADB: similar to SSH, this is a client-server model. Which means, to execute ADB commands from a client, you must have a server running. This is started when you enable "USB Debugging" in the settings of your Android device.

---
Tags: adb, networking, ssh
---


# Question
Title: Can an apk file be written to any type of NFC tag
Is it possible to write an apk file to a NFC tag for it to be downloaded when a user desires? bWe are trying to create a solution in which our reps in the field can simply turn on NFC in specific locations then download an apk file for our custom app. Normally simply providing a link to the file on our server would be ideal by using URI type of tag however these devices (Android phones) may not have WiFi nor Cellular data connection in order to install the app's apk file via a link embedded to the NFC tag.

The NFC tags would be "installed" by a separate team. While it makes perfect sense to have our reps preloaded with the application, the consideration is to also allow customers to download the apk file for installation on their device if they desire as well. The apk is a 6 - 7 MB file.

# Answer
Some resources I've found regarding NFC tags seems to indicate this would not be possible:

NFC Chip Types
The highest memory available is only about 7600 bytes. Which is quite a bit more than most apks.

NFC Data Exchange Format
The standardized data format specification that is supported by NFC Devices.

> At a basic level, an NDEF record contains two components: (1) the data and (2) a descriptor of that data which is used to contextualize the data. \[ . . . \] NDEF supports a fairly limited set of actions. More complex actions can be implemented with customized software running on the touching device.

So the default actions that may be supported by NFC devices are:

* Url
* Text
* Email
* VCard
* Phone
* SMS
* URI

In order to support a non-standard action, you would have to completely implement that in a separate app. Then to transport your apk, it would have to be within the data limitations of all modern NFC tags.
> 1 votes

---
Tags: apk, nfc
---


title: Clock Widget on tapping does not open

text:
# Question
Title: Clock Widget on tapping does not open
I currently switched to Samsung Galaxy s3! The first two days I would tap on the digital clock widget on the home screen to access the alarm. However, yesterday the software of the phone updated by itself. And after the update, when i tap on the digital clock widget on the home screen, nothing happens. I cant access the alarm clock by tapping the clock widget anymore. please suggest.

# Answer
> 1 votes
On my S3, the clock widget no longer launches the clock app or alarm. There is, however, a designated alarm app that may be used. That, or you can use a clock widget from the Play Store, there are quite a number that offer a similar experience to Samsung's default Clock app, that allow you to launch a shortcut when tapped on.

---
Tags: samsung-galaxy-s-3, app-widgets, clock
---


title: Jelly bean upgrading Problems

text:
# Question
Title: Jelly bean upgrading Problems
My new *Samsung Galaxy Advance S* is running with android Gingerbread. I am thinking to upgrade it to Jelly Bean. I am very new to Android devices.

I have following basic questions

1. Are there any known advantages and disadvantages in upgrading my device to JellyBean?
2. If I upgrade to Jelly Bean do my all apps remain works?
3. Upgrading OS, does it void my warranty?
4. Is there any official instruction to upgrade my phone to Jelly Bean?

Thanks in advance

# Answer
Yes, there are many advantages. Your phone's usable RAM memory increases from 555MB to 625MB.
Camera zoom is possible, but only digital zoom is available. So it's of no use.
All your old apps will work fine in JB, but games will lag unless you root your phone.

Upgrading to Jelly Bean if you are in India will void warranty.

There are no official instructions to update. You will have to do it manually. If you are new to Android, get help from someone who has Android knowledge. Otherwise, you may end up bricking your phone.

I would suggest you don't upgrade, because JB update for S Advance will be available in India soon.
> -1 votes

---
Tags: 2.3-gingerbread, samsung-galaxy-s, updates, 4.2-jelly-bean
---


# Question
Title: Is it possible to use Samsung Galaxy Nexus as a bootable USB stick?
I want to install centOS linux distro on my desktop, which does not have a disk drive. Moreover, I posses a 4GB usb stick which is insufficient for installation. I need a usb stick with atleast 8GB to install centOS.

However, I've Galaxy Nexus which has lots of space. So I was wondering as to can I use it as a bootable USB stick?

# Answer
There is currently an application on the Google Play Store called DriveDroid that should be able to handle that task. Please note that it needs a *rooted* phone.

After you install the app, it's a pretty straightforward process. If you need a helpful guide, this How-to by LifeHacker should help.
> 3 votes

---
Tags: 4.0-ice-cream-sandwich, usb, samsung-galaxy-nexus, linux
---


title: Activate Voice Actions from Lock Screen

text:
# Question
Title: Activate Voice Actions from Lock Screen
Is there a way to activate Voice Actions from the lock screen?

I've abandoned the iPhone world, and only miss this one feature. On my iPhone I could press and hold my home button to activate Siri. From there, I could run all kinds of voice commands... The way I see it on my is that I have to unlock the phone and swipe up. Then say "google" to activate Voice.

# Answer
As with your other question, I think you'll have to use an app other than Google's Voice Actions to get this functionality (at least at the current time). This is another feature that Dragon supports, though.

If you enable the "Background wake-up" setting then you can use the phrase "Hi Dragon" to launch the app from anywhere, including when the screen is locked. For that matter, you can say "Hi Dragon" while the screen is off and it will wake up the device and launch Dragon for you without requiring any manual input at all.
> 0 votes

# Answer
I wanted to do the same thing but the long press feature seems to be locked down by Google. My work around was to install Headset Button Controller and bind three button presses in a row to voice search which works great. There is a trial version but I was happy to pay a few Euro for the feature.

Incidentally, the app also fixed the headset button not responding sometimes when the screen was locked by enabling Prevent sleep mode while the headset is plugged in. Its in the advanced settings area.

I am using a Galaxy Nexus on 4.2.2
> 1 votes

# Answer
I got back iOS-like headset control on the Google Nexus 4 (N4) such as solving the voice command problem from a locked phone with the headset button using "Headset Button Controller" from the Play Store.

I solved this one eventually, but there are many pitfalls. So, this is how I got it to work:

First, you can't seem to use the long button press for anything; so, don't use it. Second, set one of the other button press combos (I used triple press) to "Voice Search" and say yes to wake up dialogue box. Then, go the advanced settings and select "Run in foreground" and "Prevent Sleep Mode".

This actually get you to Google Voice Search from locked, screen off phone and allows voice commmands.

The other Voice control actions don't seem to work.
> 0 votes

---
Tags: lock-screens, 4.2-jelly-bean, nexus-4, voice-recognition
---


# Question
Title: Galaxy S2 on Android 4.0.4 won't vibrate
How can I set my phone to just vibrate? No sound; just vibration. I just got the upgraded version of the S2, and my phone won't vibrate. I tried everything.

# Answer
Go to `System > Sound > Ring mode > Vibrate`.
> 1 votes

# Answer
Do you have the "quick toggles" in your notification area when you "drag down" the notification bar (IMHO the S2 has this by default)?

SGS2 Notification Area (click image to enlarge)

If so, simply tap the "speaker symbol" there to switch modes between "ringtone", "vibrate", and "silent" (the symbol then will switch as well to indicate the current mode).
> 1 votes

---
Tags: 4.0-ice-cream-sandwich, samsung-galaxy-s-2, vibration
---


# Question
Title: Tasker: Variable with value "Name of Profile/Context"
My Tasker version: `1.3.3u2m`; Android: `ICS 4.0.4`

To every Profile or Context I can set up Name. And I wanna use this Name with Tasks.

## Let's take an example:

1. I have Profile with Name "`SampleProf`"
2. In this Profile I have Context with name "`SampleCon`"
3. Next I wanna create Task like:
    * New Task \> Variable \> Variable Set
        + Name \> Variable Select \> `%sampleVar`
        + To \> Variable Select \> **HERE I WANT TO SELECT VARIABLE WITH NAME OF PROFILE("`SampleProf`") OR CONTECT("`SampleCon`")**

Is there way to do that at this moment?

I only see that there is "Profiles Active" variable (`%PACTIVE`), but, this puts as value, ALL names of Active Profiles.

# Answer
> 0 votes
There is no such option at this moment.

We can use "Profiles Active" variable (`%PACTIVE`).

---
Tags: automation, tasker, profiles, exchange-tasks
---


# Question
Title: Jelly bean screws up Droid 4 keyboard layout
The Droid 4 physical keyboard has had driver/software issues forever, but this update takes the cake. Pressing shift-period and shift-comma no longer produce colon and semicolon as advertised, but instead greater-than and less-than. Is there any way to fix this? Also, in Dolphin browser the keyboard is even more broken—the symbol key acts as a second space bar and holding a key makes it repeat instead of offering alternatives. Help!

edit: following directions elsewhere I did a factory reset. The keyboard now seems to work okay everywhere except Dolphin, where the shift key doesn't latch, the capslock key doesn't work, and the symbol key is still a spacebar.

Edit 2: The latest Dolphin beta has the same problem.

Edit 3: Actually, Dolphin, Chrome, and the plain browser all have this problem. Firefox does not. DroidEdit does not, Gmail does not.

# Answer
Some users have found doing a cache partition clearing has resolved the shift key issue. I have also read others that disabled the Google Chrome application, resolving the issue. I have done both but still get the shift key issues when using my browser. The cache partition clear resolved the shift key issues on the phone (ie texting or other apps). Below is a link to Motorola's step by step instructions for the partition clearing, you will not lose any data etc. Some users have gone so far as to do a factory reset with no resolution.

https://motorola-global-portal.custhelp.com/app/answers/detail/a\_id/93162
> 1 votes

# Answer
I was able to correct the semicolon/colon problem by setting my keyboard to:

* Input Method: English (US) Android Keyboard (AOSP)
* Mapphone-switch: English (US)-Android Keyboard
* Omap4-keypad: Default (changing to "default" and unchecking all items, including English (US), in "omap4-keypad" "keyboard layouts" seemed to fix the problem - before that change, typing ";" resulted in "\>").

I also did a cache partition clear and turned off the phone, pulled the simcard, replaced the sim card and rebooted. I am not sure if any of these actions did anything (after these actions and before switching "omap4-keypad" to "default," the semicolon problem continued, but I tried them based on suggestione from other sites).
> 0 votes

---
Tags: 4.1-jelly-bean, keyboard, motorola-droid-4
---


# Question
Title: Keyboard in alphabetical sequence (ABC layout keyboard)
I am considering buying a Samsung Galaxy phone. Is there an option (either basic phone function or a third party app) which provides a keyboard in alpha sequence, that is ABC layout instead of QWERTY?

# Answer
The stock Android keyboard doesn't have ABC layout. However, there are some keyboard apps which have ABC layout. SlideIT English - ABC pack is an example. You can find some more if you search for "ABC keyboard" on Google Play.
> 7 votes

# Answer
There is a keyboard available that is on the app store, it is designed for dyslexics who have difficulty in recognizing the letters, the problem with the QWERTY layout is that dyslexics cannot "see" the letters and looking all over the keyboard for it, have a mate who suffers from it, and this was born out of the idea when I watched him struggle with the touch keyboard.

This keyboard is actually from stock AOSP Gingerbread source, with letters re-arranged into ABC layout.

It is available here on Play store.

**Edit:** Disclosure, I am the person responsible for the aforementioned app.
> 4 votes

# Answer
The stock, AOSP Android keyboard does not have the ABC 'old fashioned' keyboard layout, however some manufacturers package their own IME (keyboard), that comes with this feature.

Some manufactures are LG, and Sony Ericsson that do this (Sony Ericsson Xperia devices do).

AFAIK the stock Samsung IME doesn't come with this option - however, you can download 3rd-party IME's that have this layout format.
> 0 votes

# Answer
I published an alphabetical keyboard that's now available on Google Play and Androidfreeware.net.
> 0 votes

---
Tags: keyboard
---


# Question
Title: Problems connecting to IMAP email account on 3G/4G
Ever since I got the JRO03O OTA from Verizon on my Galaxy Nexus, I've been having problems retrieving email over a 3G/4G connection. After the sync times out (I assume it times out, because it takes awhile to give up) I get the message "Couldn't connect to server." When I'm on a WiFi network, email retrieves without problems.

The account in question is on my own IMAP server, running on Ubuntu 12.04 server on a VPS. The server configuration has not changed in any way since long before I started having these problems - this started when the OTA came through. My server listens on the newer non-standard ports, 587 and 993, so Verizon doesn't block them - they no longer allow the standard ports 143 and 25 in my area, and more and more ISPs and coffee shop hotspots are blocking them now in favor of the secured IMAP ports.

I do have a secondary account on this phone - a corporate Exchange account, which has no problems retrieving email regardless of what network it's on.

This leads me to two conclusions:

1) The problem isn't in the server or the network. I'm not seeing it with my tablet (Nexus 7), only on my Galaxy Nexus - and only when on the Cell tower networks. Even if I have my tablet tethered off the GNex, indirectly using the cell networks, the tablet has no problems connecting to my IMAP server, but the phone fails to connect.

2) The problem is not related to Exchange, as my corporate account has no problems over either WiFi or 3G/4G. The problem is restricted to my personal IMAP account, which is set as the default email account on this phone.

I'm not sure if it's relevant, but the company Exchange account is not configured on the Nexus 7, just the IMAP account, and of course, my Google account, but that's through the GMail account.

I've done a lot of searching, but can't seem to find a solution. Does anyone have any ideas?

Cheers! Lou

# Answer
Running into the same problem....adding more info:

I just had my Droid 4 upgraded to 4.1.2. When trying to configured IMAPS, I'm getting the same error. I run the IMAP server I'm connecting to, so I can do some additional troubleshooting.

I'm running dovecot as an IMAP server. Here are the log messages:

```
dovecot: imap-login: Disconnected: Inactivity (no auth attempts): rip=x.x.x.x, lip=x.x.x.x, TLS handshaking
dovecot: imap-login: Disconnected: Inactivity (no auth attempts): rip=x.x.x.x, lip=x.x.x.x, TLS handshaking
dovecot: imap-login: Disconnected: Inactivity (no auth attempts): rip=x.x.x.x, lip=x.x.x.x, TLS handshaking

```

I also ran a packet capture. The phone goes through the TCP 3-way handshake (SYN, SYN-ACK, ACK), and then does *nothing*. No packets after the last ACK. That probably explains the inactivity message in the dovecot log.

In the configuration, I told the client to use TLS (Accept all certificates), use port 993. I have tried multiple 'Authentication Methods' (auto, plain, etc). Nothing worked.

These settings (IMAPS, 993, auto) worked fine on 4.0.4
> 0 votes

---
Tags: email, connection-issues, imap, mobile-network
---


# Question
Title: Native SIP client in Samsung Galaxy S2 Android version 4.1.2
I have a Samsung Galaxy S2 which is upgraded to Android 4.1.2. I did not find the SIP settings. Where have they gone to?

# Answer
Go to `phone > menu > call settings > internet call settings > accounts`
> 1 votes

---
Tags: samsung-galaxy-s-2, sip
---


# Question
Title: Unable to associate company's Wi-Fi certificate with our Wi-Fi network
I have a tablet running Android 4.0.3 that I'm trying to connect to my company's Wi-Fi that uses a security certificate. I've obtained the certificate and successfully installed it on my tablet but when I go to the Wi-Fi settings to connect to the cooresponding Wi-Fi network, there is no where for me to specify to use the certificate for authentication. Is this an issue w/ this version of Android, am I doing something wrong, or is there something wrong at the cert level. We use the same cert on iPhones/iPads (converted for ios use) and the cert specifies which Wi-Fi network to connect to so I assume that is what's supposed to happen on my tablet. Any help would be appreciated.

# Answer
> 1 votes
The option to choose a certificate is available with enterprise encryption (802.1x).

Judging by your comment, your android thinks it is using a different encryption method than it should, so have you attempted manually adding the network, and specifying the encryption type?

Please bear in mind that *not all* wifi cards and devices support that encryption method.

# Answer
> -1 votes
Try ProxyDroid from the Play Store. It might solve your problem.

---
Tags: wi-fi, certificates
---


# Question
Title: Why do I see a Smiley instead of Next button?
My relatively newly acquired Samsung Galaxy GT-I9000 running Android 2.1 should have a next button around the bottom right of the keypad as per manual/online information. However, I can only see a Smiley button which doesn't have newline as one of the options. Is there a user configurable option to switch between Smiley and Next? If yes, how to invoke?

# Answer
> 4 votes
Can it be that you only have a next button when there is **more than one field** on screen ?

Please add what program you are using when you see this .

# Answer
> 3 votes
This is quite normal on the default keyboard. The smiley should only shows if you're typing in a single-line textbox (i.e. it have been configured so you cannot add newline), and there is only a single textbox in the page, and the app did not bind custom functionality to it.

> Is there a user configurable option to switch between Smiley and Next?

Not as far as I know. The developer of the app you're currently using gets to decide the "type" of keyboard that is shown by default, and they can customize the action button.

> If yes, how to invoke?

Try opening the browser, while on the browser, the smiley should turn into newline button (e.g. on multiline form input), or Go button (on the address bar), or sometimes Next button (on pages that have multiple single-line input).

# Answer
> 0 votes
I have Jelly Bean 4.2.2 on a HTC One S and Swype 1.4 installed. I was ready to go on a shooting spree when I thought I couldn't hit a return button to start a new line!

I opened a SMS thread, tapped **Menu** \> **Settings** and scrolled all the way down. There is an option at the bottom called **Soft keyboard type**. Open that and you get --

**\<\> Smiley key**

**\<\> Send**

**\<\> Enter for a new line**

Select the bottom one and you're golden!

This setting will change it for both the stock Android keyboard *and* Swype.

Cheers

---
Tags: samsung-galaxy-s, keyboard
---


# Question
Title: Is it possible to remove the ":-)" smiley key in Swype for stock Messaging?
I love Swype but have a minor gripe with it.

Many times a word will be completely messed up so I hit the backspace key but instead accidentally hit the `:-)` key.

In almost all programs there will be a return key instead. It appears to only be in the stock messaging application (though it's where I spend most of my time!).

This is extremely annoying, as I never use the built in smileys (I prefer them without the nose, e.g. `:)`). Is it possible to remove that key and make the backspace key bigger or something similar?

My phone is a rooted Motorola Defy with a stock ROM.

# Answer
> 2 votes
That's unfortunately not possible, Swype would need to provide a setting for this, which they don't. You might have more luck with third-party-messaging apps, but I doubt it, as this is a contextual feature that pops up whenever it makes sense for smileys to be inserted.

# Answer
> 1 votes
I have Jelly Bean 4.2.2 on a HTC One S and Swype 1.4 installed. I was ready to go on a shooting spree when I thought I couldn't hit a return button to start a new line!

I opened a SMS thread, tapped **Menu** \> **Settings** and scrolled all the way down. There is an option at the bottom called **Soft keyboard type**. Open that and you get --

**\<\> Smiley key**

**\<\> Send**

**\<\> Enter for a new line**

Select the bottom one and you're golden!

This setting will change it for both the stock Android keyboard *and* Swype.

Cheers!

---
Tags: keyboard, swype, motorola-defy
---


# Question
Title: Activate Android device on IPv6-only network
* Is it possible to activate an Android phone on a network with IPv6-only access to the Internet?
* Does Google support all their services over IPv6?
* Has anyone tried it?

I'm going to need to activate an Android device on an IPv6-only network in the near future. Any help regarding this appreciated.

# Answer
> 0 votes
All Google services are accessible via IPv6, since June 6, 2012.

And yes, I've tried it myself. My own Android is on IPv6.

---
Tags: ipv6, activation
---


# Question
Title: Can't explore files on my Sony Xperia U using my Ubuntu 12.10 laptop
I previously used Ubuntu 12.04. When I connected my phone (Sony Xperia U) in MTP mode, I would be able to see it in Nautilus as a "SEMC HSUSB device" and browse files, copy files, and so on.

Now, I have a new laptop and I've installed Ubuntu 12.10 on it. My device is not recognised any more by Nautilus - I can see that the OS recognises it by seeing the entries that appear in /var/log/syslog - but the phone does not get mounted and I can't think of any way to access the files on the phone and put new files there except the terribly slow Bluetooth.

Has anyone else faced such an issue? Can you help?

# Answer
I have found the simplest method, with both my Samsung **Galaxy Tab2 7.0** tablet and **Galaxy S3 Mini** smartphone, is to use **SSHDroid** (on the Android device) to provide SSH server.

Google play \> **SSHDroid** *by Berserker*

Then I simply connect from **Nautilus** using SSH, over WiFi. This is plenty fast and I can bookmark the links for re-use (provided the IP address stays static). *After first use, I simply set a static IP on my router for those MAC addresses.*

I have also used a terminal, for an SSH command line session to the devices. *This also just uses the **SSHDroid** service.*
> 4 votes

# Answer
Yyou can choose another connection mode, `mass storage mode`, this way, it will be auto detected when you connect the USB cable. The option to change the connection mode is in:

```
Setting -> Xperia -> Connectivity -> USB Connection mode

```
> 3 votes

# Answer
After upgrading my Xperia U to ICS Linux Mint Maya no longer recognised the device as you have listed *SEMC HSUSB device*. For some reason the MTP support has changed and there is no longer the option to drag and drop.

Instead use either 'qlix' or 'gmtp' from the usual repos. My preference is for qlix.

* Plug in the phone and start qlix and leave it for a few minutes. Eventually it WILL recognise the Xperia U.
* Click on view files the left pane is your desktop file system, the right pane is the android file system.

It's then a simple matter of opening the correct folder on both sides and right clicking files to transfer.

The initial mounting of the device is slow but the transfer of files thereafter is fast and, because it is using MTP, the rest of your file system remains safe from corruption.

No longer any need to unmount the device.
> 2 votes

# Answer
Following steps will guide you through.

1. Connect your phone to the laptop and list your devices in a terminal using `lsusb` command
2. Find a line similar to `Bus 002 Device 012: ID 0fce:5169 Sony Ericsson Mobile Communications AB` and note your vendor and product id which are `0fce` and `5169` respectively in the above line. If you have USB debugging disabled, product id will be `0169`. Now **Unplug the phone**.
3. Go to humans-enabled.com and install the latest version of *libmtp* and copy the `69-libmtp.rules` file to `/etc/udev/rules.d` as described
4. *Optional step*
Xperia S support is implemented in the `libmtp-1.1.3` release. If you use the latest version from sourceforge.net, skip to step 5.
type `sudo gedit /etc/udev/rules.d/69-libmtp.rules` to edit the copied file as root.
Add the following text somewhere around the sony ericsson devices in this file. You can find them by searching for *0fce*. **Remember to set the correct vendor and product id**

`ATTR{idVendor}=="0fce", ATTR{idProduct}=="5169", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"` `ATTR{idVendor}=="0fce", ATTR{idProduct}=="0169", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"`
5. reboot, or use `sudo udevadm control --reload-rules` to actualize.
6. The phone will mount automatically when you plug it. Use nautilus to copy files

See this for more info
> 1 votes

---
Tags: linux, mtp, sony-xperia-u
---


# Question
Title: Water damaged Nexus S turns on and runs but has unresponsive touchscreen
I dropped my Nexus S in water. I dried it out for a few days and the phone turns on to the home screen, and it seems to get the latest notifications although I cannot slide the phone and the touchscreen doesn't work.

Is there anything I can do from my computer, while phone is plugged in to get the touchscreen working again?

# Answer
If the hardware is water damaged, then no sorry.

It is quite possible that the device still has a small amount of liquid inside it - I suggest crushing some chalk, and placing the entire device into the crushed chalk (it absorbs moisture).

Otherwise, I am sorry to say that you would be quite stuck and would have to go to a repair shop.
> 1 votes

# Answer
***Simplest Method.***

Place moisture-damaged device in zip-lock bag, with at least two tablespoons of white rice.

Store in warm place (hot water cupboard, or sunny nook), but **out of direct sunlight**, for two to three days.

Then all moisture will now be in rice, which you should discard (rather than consume).

---

**Note:** *Any attempt to use device, prior to complete removal of moisture, may have permanently damaged the device.*
> 1 votes

---
Tags: touchscreen, water-damage
---


title: Lower Menu shortcuts disappeared

text:
# Question
Title: Lower Menu shortcuts disappeared
I use a Samsung Galaxy SL I9003 model phone with latest version of Gingerbread on it.

I recently started to experience this problem. The shortcut menus on the lower bar have some how disappeared.

Here is a screenshot of the same...

Screenshot (click image to enlarge)

As of now only the Application shortcut remains.. How do I get the remaining shortcut bak ?

Thanks

P.S : Reboot does not help.

# Answer
> 0 votes
Click that Applications button. Then, long-press and drag whatever icons you want from the list of apps to the drawer. You could drag: People, Phone, a browser, and something else.

---
Tags: 2.3-gingerbread, home-screen, samsung-galaxy-sl, dock
---


# Question
Title: Application backup/restore - for saving resources
I was thinking I could completely backup apps to the SD card, and then restore them when needed. This for saving system resources.

Is there some efficient way to do this?

# Answer
> 2 votes
There are numerous options available to you:

* Titanium Backup
* For ICS upwards, Settings \> Backup & Reset \> Backup my data/Backup account
* For GB, Settings \> Privacy Settings \> Backup my data
* Last but not least, `adb backup`

In that order of "user-friendliness", from a android application that requires rooted access, in reference to Titanium Backup, to the least, using the command line `adb backup`.

# Answer
> 1 votes
*If it is just the **"user"** and **"system"** applications*, I do this sort of thing all the time. In fact I wrote an app to help me out with this. I uninstall and re-install applications for testing a development all the time. I need to easily be able to make copies and move ".apk" files all the time.

Please take a look at the free app: https://play.google.com/store/apps/details?id=burrows.apps.appmanager.

Simple install the app, "backup" your application of choice and then share/send the application(.apk) to another phone.

Regards,

# Answer
> 1 votes
If your device is running Android 4.0 or higher, *Carbon - App Sync and Backup* would be the perfect solution, and does not even require root -- but still is capable of backing up apps including their data:

Carbon App Sync and Backup

As above screenshots show, you can backup/restore single apps, or select a batch. What you cannot see on the screenshots: you can also save a selection as "group", so for the next backup/restore you don't need to select apps separately, but simply select the group instead.

With *Carbon Backup*, one should be able to backup apps and data to SD card, attached USB devices, Dropbox, GoogleDrive, etc.

---
Tags: backup, internal-storage, restore, storage, backup-manager
---


# Question
Title: Swap z and y keys on Xperia Mini Pro with Android 4.0
I got a Xperia Mini Pro with a hardware keyboard, which has a German layout. I switched to US layout on the computer and would like to use that on the phone as well.

Is there some way to change the layout of the phone? I do not care about the button labels.

# Update

I checked the “Language and Input” section of the settings:

http://wstaw.org/m/2013/04/27/Screenshot\_2013-04-27-21-48-01.png

For German (“Deutsch”), I can only select QWERTZ and AZERTY, but not the QUERTY that I want.

http://wstaw.org/m/2013/04/27/Screenshot\_2013-04-27-21-48-13.png

# Answer
> 0 votes
I don't know if Sony devices might have a different keyboard pre-installed. But the usual place to look for this is *Settings→Language & Input*, look for *Keyboards and input methods*. Here you should be able to configure your keyboard:

On my ICS device, next to each input method available is a "gear symbol". Tapping that, opens the settings for that input method. The topmost entry is labeled something with "Input Language". Tap that, and you'll find the available languages, again with a "gear symbol" letting you select the keyboard layout.

As all languages in the list have their keyboard layouts announced, you might also simply enable the language with the correct layout there. My list e.g. has:

* English (QWERTY)
* English (AZERTY)
* English (QWERTZ)

So you'ld just need to enable the one you want. You also can enable multiple languages you then can switch between directly from the keyboard, of course.

---
Tags: keyboard
---


title: link2sd not linking properly

text:
# Question
Title: link2sd not linking properly
I have a galaxy ace s5830i .I have done rooting and linking the sdcard after partitioning .But in the beginning it was working fine from few days back when i downloaded apps and link it to the (ext2) sdcard,it shows me the that it has got linked.But the internal phone memory(i.e just 180 MB approx) decreases .also i have tried remounting the script and relinking the new installed apps but still not able to solve.. .please help me solve this problem.

# Answer
> 0 votes
Link2SD can't put the whole app to the ext partition. There's always a little part that takes the memory.

Use simple2ext. There you can select which folder to move to ext. After rebooting the whole dir will be placed at ext, and linked (mounted) to the internal memory. (mount has a mode when you write into the shared folder it will be mergred into the mounted folder) It seems like it's internal but not. :)

---
Tags: samsung-galaxy-ace, insufficient-memory, link2sd
---


title: Galaxy S3 Error/Crash Log Location

text:
# Question
Title: Galaxy S3 Error/Crash Log Location
Is there an error log or crash log file anywhere on the Galaxy S3?

My phone is constantly crashing (rebooting or totally freezing requiring a battery pull) at least 4-5 time a day. I've attached the phone to my PC and browsed the file-system using Eclipse but I can't find an error log anywhere obvious.

My phone is NOT rooted so I realise I don't have total access to all locations on the phone's file-system but if anyone knows if such a log exists and where about it is, I'd be very grateful.

# Answer
> 1 votes
logcat might give you some information but that is cleared when the device reboots.

`abd logcat` will connect you to the "rolling log".

logcat is not stored in a file, only in a memory stream but you can easily dump it to file.

`adb logcat -d -v time > logfile.txt`

using the options I listed above will give you a time stamp of when events occur. The `-d` indicates you are dumping to a file, do not "block". `-v time` formats the log with event times.

Instead of `> logfile.txt` you could do `-f /path/to/logfile.txt`.

# Answer
> 0 votes
aLogrec does basicly the same as Logcat, but writes constantly to a log file on your storage card.

---
Tags: samsung-galaxy-s-3, crashes, system-freeze
---


# Question
Title: Will a nandroid backup save me from a bad upgrade?
I have a Rezound on 4.03, and verizon has pushed an update to it today. I have delayed the install because there's little information about it. What little I have found claim it make the phone unstable.

I made a nandroid backup, with the default options. That means:
\[Boot\], \[System\], \[data\], and \[cache\] were selected.
\[recovery\], \[sd-ext\], and \[.android\_secure\] were not selected.

My question is, if this OTA update does make my phone worse, will simply restoring the backup pretty much guarantee a seemless "undo"? Or is it possible the update could change something that I can't revert?

# Answer
An update might include a new radio-firmware (see: What is radio firmware?; basically you can think of it as the "hardware-layer" or an API to give the installed (Android) system access to the hardware), which is not included with a Nandroid backup. It could also include a "recovery-image" (see: ), which you did not include with your backup.

For the latter, you could simply include it with your Nandroid backup. The radio-image is a different thing: I know of no method to extract/backup it from a given device. You could, however, check which radio version is currently installed with your device, and see if you can get a "RUU" (Radio Unit Update) specifically for that.
> 1 votes

---
Tags: updates, backup, ota-update, nandroid
---


# Question
Title: Galaxy note 10.1 reset s-note picture import preferences
When I tried to import a picture earlier I accidentally set the S-note picture import preference to Gallery. Before that I was given the choice to import from Astro etc. .

I tried to delete all s-note data/cache in the preferences, but I was unable to reset the picture import to the non default value. (It didn't even delete the Documents on the device, they were back after a reboot).

The reset to default values button in the Task manager is greyed out.

# Answer
> 0 votes
One has to delete the Gallery user settings get the choice for the Import back.

---
Tags: photos, gallery, default-applications, samsung-galaxy-note-10.1, s-note
---


# Question
Title: Nexus 7 won't show up as a drive on Windows in MTP mode after update to Android 4.2
It used to work just fine then I upated to 4.2 and enabled developer options (one or the other must have broken it) and since then it has stopped working, it shows up as a camera device but if I change it to MTP it doesn't work.

I tried turning developer options off, I tried re-installing drivers and a few other things.

How do I make it work again like it was in 4.1 when it worked even when usb debugging was enabled? Now it won't work at all.

# Answer
What worked for me (on Windows) was:

1. Plug the Nexus 7 into your computer with the USB cable.
2. Open Device Manager: Start -\> Run (or `Win`+`R`), type in: `devmgmt.msc` and hit enter. This opens up the device manager.
3. Find "Android Composite ADB Device" near the top and expand the node. Double click on the device. (Note: Sorry, I don't see it anymore so it might be named slightly differently.)
4. In the properties window that pops up, uninstall the driver. You should choose to delete the current driver as well.
5. Unplug the tablet and plug it back in.

At this point mine got recognized as a Nexus 7 instead of an Android ADB device and allowed me to transfer files again.

I'm not sure how this will affect debugging (especially if you delete the old driver) but it worked for me after days of searching.
> 47 votes

# Answer
FINALLY SUCCESS

Tried above steps. Trying to connect a Nexus 7 to Win7-64. The device in the Computer Management/Device Manager/Portable Devices, used to say Nexus 7, now it says MTP USB Device and has the ! with This device cannot start. (Code 10). http://pcsupport.about.com/od/findbyerrormessage/a/code-10-error.htm Essentially, this means uninstalling all devices and reinstalling them. I did that with my three other devices and the Nexus7. There was a USB hub that had those three plugged in, so I just unplugged the whole hub. Replugged Nexus7 to USB, it found it (when I went to Disk Management and did a rescan). Once Nexus7 was recognized, I plugged the hub back in and all was well again.
> 4 votes

# Answer
This bug happens in some cases when upgrading. I fixed mine by changing quickly between MTP and Camera with the USB unplugged, then I put it back to MTP again and it worked fine when I plugged the USB back in

To change these settings go to Settings\> Storage Then click the little menu button in the top right corner and click USB computer conntection.
> 2 votes

# Answer
I kept on getting "This device cannot start. (Code 10)." and after hours of repeatedly reinstalling drivers all it took to fix the problem was rebooting the actual phone.

In summary: don't assume Windows is at fault, it could be the phone. Try rebooting it after installing new drivers.
> 2 votes

# Answer
I had the same happening even to me. I ended up getting it to work by going to the device manager and uninstalling the device (it was showing up as Samsung phone). Then I unplugged it, plugged it back in and it was installed again automatically, working fine and showing up in MTP mode as Nexus 10.
> 1 votes

# Answer
Try enabling USB debugging in Developer options. It worked for me.
> -1 votes

---
Tags: nexus-7, mtp
---


# Question
Title: I've deleted Google Play Store. How can I reinstall it?
I've been having an issue with my apps where an error "Package file is invalid" keeps appearing. I read a tutorial somewhere which told me to "uninstall updates" for the Google Play Store application. I was told doing this would uninstall the application, and then the device would automatically reinstall Google Play Store.

I did this, restarted my phone, but the application never reappeared.

I think tried downloading an `.apk` file to install this manually, but on install the application wouldn't load.

Has anyone done this before? How can I reinstall this application? I believe I need it for all future downloads and updates to my applications.

For the record, my phone is **not** rooted.

# Answer
> 0 votes
I nearly did everything offered in all google searches. nothing works successfully for google play to work in HCL ME U1. Installing Android SDK and running ADB shell etc. also sometime does not allow files to be copied to the `/system/app` folder and it's very tedious thing if you are not familiar with java and linux commands.

There seems to be some restriction by HCL in startup for disabling google play. Following is the option which worked for me and very easy and using which so far I have installed about 100 applications from google play and using my HCL ME U1 without any problem.

1. Install JDK in PC. You may also require HCL ME connect for drivers of HCL U1.
2. Install Android commander (PC program. download and install from net)
3. Using android commander Copy android apk file in `/system/app` folder. Also copy the same apk to SD card folder.
4. Now when you restart the tab it read as 'android upgrading', but soon you will get message "Unfortunately google play stopped working". Then try open *Google Play* it will show an error "unfortunately google stopped working" again.
5. Now go to you SD card where you have the *Google Play* `.apk`
6. Double tap on that and install *Google Play.* It will give a message that you are replacing main application etc. Say ok.
7. Now *Google Play* will work/download/install any application from marketplace. Now *Google Play* will work like anything.
8. The moment you shutdown or reboot your tab you will start getting "Unfortunately google play stopped working" message again.
9. So whenever you want to use google play double tap and install *Google Play* from sd card. For that time being it will work until you reboot or shutdown and start.

So use that way it hardly takes 5-6 seconds to install *Google Play* `.apk` from sdcard whenever you start the tab.

PLEASE NOTE it is very important that to have the android `.apk` in root of `/system/app` folder. Without that it will not work.

--- What I feel is that HCL has made some restriction by disabling something in startup. Anyway it takes only 5 seconds to install *Google Play* `.apk` from sdcard. And for that time it works just pefect. I tried all other way but this is the only way it works.

# Answer
> 4 votes
You cannot uninstall the PlayStore/GoogleMarket app without having your device rooted -- so as Shedo guessed, you probably just uninstalled the latest update. Which means, the original app included with your firmware takes over -- and probably is called "Market" (the original name of the Playstore, before some market specialists started toying with the name).

So look out for an icon with a green bag, labeled "Market", that's it. Go ahead and start it, browse a bit, leave it. The Play Store App should be forced back on your device automatically -- maybe not immediately, but it usually doesn't take long.

# Answer
> 1 votes
I could never find a way of recovering my Google Play Store, and had to do a full restore.

After the full restore my Google Play Store returned.

# Answer
> 0 votes
Go to this site and you can download "unofficial" version of Google apps. Make sure you choose a right one, which is based on your phone's display spec and version.

# Answer
> 0 votes
I have an update for you that fixed my problem with Google Play Store not opening.

I did something (god knows what?!?!?!) and the Google Play Store wouldn't work. Every time I clicked on it, it opened then within a second it shut again.

I didn't want to reset the device (Google Nexus 7) and found an option called "*Reset app preferences*". If you go into Settings \> Apps then in the top right hand corner click the 3 dots that sit under the current time. The option is listed here.

I'm not sure what else it does but the Google Play Store then opened first time and I also now have listed "Google Play Services" which wasn't listing before.

Hope this helps some people as it was doing my head in trying to work it out!

# Answer
> 0 votes
I had the same problem. I uninstalled the updates, as I was receiving multiple errors (insufficient storage available, package file invalid, etc.) when I was trying to download a particular app. I was about to restore my phone, so I removed my SD card (I'm not really sure if that's necessary), and when I checked my phone, Play Store icon was still there. I just clicked it and there was a message that Android Market just needs to be updated. Just hit "Continue" and you'll be able to open it again. I also tried to download the app I was having trouble with from Play Store without the SD card, it worked!

Good thing that it worked, as I was even thinking of rooting my device but I'm not sure how.

# Answer
> 0 votes
Go to Settings, look for Google Play Store, and uninstall updates.

# Answer
> -1 votes
I uninstall google play store on my samsung galaxy ace 2X and I figured it out how to recover the google play store...step1)go to settings 2)application manager 3)press "ALL" then scroll down and find the apps for "Google Play Store"....then click on "ENABLE"

---
Tags: google-play-store, 4.0-ice-cream-sandwich, htc-sensation
---


# Question
Title: What methods can I use to block adult content?
I'm looking for something along the lines of K-9 for my phone. Does such a thing exist?

**My goal:** to have all adult content blocked.

I would like to know if this is possible and if it is, how to do it.

# Answer
If you have a rooted phone, you can always edit your hosts file to block known adult sites.

Trying to block all sites is an exercise in futility, unless you opt for a slight reversal of logic and use white-listing wherein only allowed websites are allowed to be connected to and all others are blocked. As of now, I'm not aware of any app on Android that offers this functionality.

There are other avenues for adult content - the Android Market is one of them and blocking that seems counter-productive for a smartphone.

Also take a look @ DroidWall \- an app that only allows certain apps to access the Net.

**UPDATE:*\*Trend Micro's paid app Mobile Security seems to have parental controls, although I can't vouch for the app's efficacy. The user reviews don't paint a very comforting picture but a 30 day trial is available so you can test the app out yourself.
> 6 votes

# Answer
It doesn't block content, but X3Watch monitors what websites you visit. If you use that in conjunction with DroidWall as suggested by Sparx, or use an App Protector to block/limit other apps, that may help.

**Update:** Covenant Eyes now has an app now available in the Market. As with X3Watch, it doesn't block sites (though it may in the future) but reports what websites you visit. It is officially a beta version, but seems to work well. The app itself is free, but usage requires a Covenant Eyes account - which also covers usage of any programs on the PC or Mac.
> 4 votes

# Answer
It may be worth contacting your carrier. I know vodafone UK, for example, offers some sort of parental control. Though this wouldn't monitor access over wifi.
> 3 votes

# Answer
T mobile has some sort of optional content filter also. I know that it only works when you are browsing over 3g/4g/edge, not wifi. I don't know how well it works though, as the only experience I had with it was it being turned on in error and me having to call to get it turned back off.
> 3 votes

# Answer
K9 Webprotection is out for Android.
*Seems like it does not work for some devices, though, as it's based on Firefox.*
This can always be combined it with an app locker to block the default Chrome browser.
> 0 votes

---
Tags: firewall
---


# Question
Title: How can I disable profanity filtering of autocomplete suggestions?
I'm using a Galaxy Nexus with Android 4.2.2. I started using the baked in Swype imitation/gesture typing as soon as I found out it was there. However, the profanity filtering is extremely frustrating. It's way too liberal - it won't even recognize "sucks." I poked around a bit but can't find anywhere to disable it. Is this possible?

# Answer
Just type it in once, click it, and save it. Done.

You can also go to Settings \> Language and Input \> Personal Dictionary and add your words from there.
> 1 votes

---
Tags: samsung-galaxy-nexus, keyboard, 4.2-jelly-bean, input-methods, gesture-typing
---


# Question
Title: Are Android chargers universal in terms of power (Voltage, amperage)?
I would like to buy a car charger, wall charger and USB cables for my Samsung Intercept. However, $20 for a charger seems expensive and I want to avoid getting ripped off. The Samsung Intercept Manual doesn't show the specs for the charging port on the phone itself.

Can I use any Android charger with any Android phone? Does Google require Android manufacturers to follow a standard for charging the devices? Or do most Android devices follow their own proprietary standards. The form factors (Micro-USB, Mini-USB) and voltages (~5V) seem universal, but I'm more concerned about amperage. It's not unheard of for some chargers to ignore the USB 2.0 standard. Do some chargers try to force 3000 mA down the wire to supercharge their devices? If so, that could destroy a device which is intended to receive only 500 mA.

I can charge the my Android phone using a powered USB port on any computer. How many milliamps does this provide? I read that USB 2.0 will provide a standard 100 mA or 500 mA. Are there another standard amperes which are used for charging?

I found what appears to be a generic wall charger for any Micro-USB device. The product description doesn't say how many mA this provides, but from the comments it appears that this charger provides 950mA. Which this overcharge my phone?

# Answer
> 12 votes
Some devices use USBMicro, others use USB Mini. Like any device, it depends on the voltage that the device can take. But for the most part, AFAIK, as long as the charger is the same plug type (micro, mini, etc.) then yes it can work.

A lot of the chargers that use USB plugs output the voltage that a standard USB port would (between 4.75 and 5.25 volts). If this is the case, you will have no problems. The only issue, when you use USB to charge, it is usually a slower charge then using a wall charger.

# Answer
> 1 votes
I've used multiple different wall-wart-to-USB chargers. I haven't had any issues charging any of my devices on any of the chargers.

# Answer
> 0 votes
I know this is an old topic but I want to share some proper information.

First: yes, the cheap ones are often poorly designed -- either using fake complacency labels or just barley making it to the standard. That being said, try to avoid using them and if it feels cheap as hell don't use it.

As for the USB standard: it is 5V (this can vary within .25V due to component values not being exact). Most computer motherboards supply a *maximum* of 500mA to USB ports -- it doesn't mean it will always supply that. The device(s) attached to it determines the current draw, the same is true for wall adapters. They will be rated for 500mA 750 mA 1A or 1.5A etc.

The important number is the voltage you want to be as close to 5V as you can. All devices have some form of voltage regulation to protect agents slightly high voltage, (if they dont it's simply bad design). The excess energy gets dissipated as heat. Android devices are normally ok with power consumption on stand by, but when you start doing a lot of CPU heavy tasks and have all the bells and whistles going (GPS, back light, WiFi, LTE, cell modem, etc) it starts drawing a lot of current (and making the phone hot). I have seen phones draw more than 1A with everything running (the battery still draining while plugged into a 1A rated power adapter).

---
Tags: usb, charging, samsung-intercept
---


title: Stop applications that are unnecessary

text:
# Question
Title: Stop applications that are unnecessary
I have a Droid X and this has frustrated me since I got the phone. When I look at the currently running tasks, it seems everything is always running, which is unnecessary.

I know this is a hot topic and most people say, just let it go, it isn't wasting CPU or battery (which is non-sense to a point, if the service is running and constantly updating via wifi or 3G, it is definitely using power).

My bigger problem is that they do, absolutely, use memory, and lots of it, and when I want to use something that is CPU or memory intensive, the program lags because there isn't enough memory available. If I kill everything, the programs runs fine for a few minutes until magically, everything is running again without any intervention.

For instance, why does Maps, Amazon MP3 (which I have never used), YouTube, NHL GameCenter, etc need to run all the time? Is there a way to stop them so they only run when I want to use them?

# Answer
> 2 votes
First, see my relevant answer over here in regards to "killing tasks", especially the use of task killers.

The only way to stop these background tasks is to either:

* Turn off any sort of background notifications the app does (check the settings for each app)
* Uninstall the app or if you are rooted, you could "freeze" it with Titanium Backup.

Beyond that, you aren't going to be able to do much more. It's up to the programmer to decide when he needs to have a background task run, and a good programmer will let you have to turn these background tasks off (usually it is caused by polling for notifications).

# Answer
> -2 votes
Use Advanced Task Killer! Awesome app.

---
Tags: applications, task-management
---


# Question
Title: Android ADB unable connect with IP address
I have successfully installed Android OS in Oracle virtual box, but I have one problem: I cannot connect to ADB in the Android OS virtual box.

In my Network settings in virtual box:

* When I select host-only Adapter option, I can connect with ADB, but I have no Internet connection.
* When I select NAT, I cannot connect with ADB, but I have Internet connection.

How do I fix this?

# Answer
If you use NAT you must add the right forwarding rule: Go to your network configuration. Select NAT, put PCnet-FAST III as adapter, and deny in mode. Then click in the button to add the rules and add a rule for TCP where the host and guest ports are 5555.

Always the most sneaky part is the network configuration of the VM, try with this one. If you still have issues check this tutorials: Speeding up Android development with Android-x86 and VirtualBox
> 1 votes

---
Tags: adb, networking
---


# Question
Title: How to get my Android device to connect in USB Debugging Mode?
I have videocon (vt10 - android v4.1 jelly bean) 10 inch tablet.

I want to connect my device to my computer (Windows 7 32-bit) in USB DEBUGGING MODE.

I searched a lot and didn't find any USB drivers for my device, I also contact Company Customer Care but they said that they didnt made any kind of USB drivers for that device.

I also installed PDAnet software for connecting android devices but nothing happens.

Please any one tell me how can I connect this device in debugging mode ?

# Answer
> 1 votes
You need the Android SDK installed on your computer to be able to do anything in the debugging mode. I think that will also install the relevant driver. Try installing it and see if it works.

http://developer.android.com/sdk/win-usb.html

---
Tags: 4.1-jelly-bean, usb-debugging
---