text:
How can I find app name by UID?
In "battery history" I have found that the app with UID 10058 is using a lot of battery.
How can I find the name of the app with UID equal to 10058?

Android assigns each application a UID (User ID) at install time; unlike PID (Process ID) which is transient and keeps changing all the time, UID stays constant as long as the application is not reinstalled. The UID should be unique to each application, except when the application explicitly requests to share a User ID with another application (there are security restrictions around this, the two applications must be signed with the same private key, i.e. comes from the same developer).
Try looking at /data/system/packages.xml (you need root to view this file), each installed application should have an entry there. Say, I have Adobe Reader installed on my phone:
<package name="com.adobe.reader" codePath="/mnt/asec/com.adobe.reader-1/pkg.apk" flags="262144" ts="1300539048000" version="37149" userId="10034" installer="com.google.android.feedback">
<sigs count="1">
<cert index="21" key="... very long random string ..." />
</sigs>
<perms />
</package>

My phone has assigned userId="10034" to Adobe Reader.
For applications that have requested to share a User ID with another application, say Handcent:
<package name="com.handcent.nextsms" codePath="/system/app/HandcentSMS.apk" flags="1" ts="1217592000000" version="373" sharedUserId="10064">
<sigs count="1">
<cert index="17" key="... very long random string ..." />
</sigs>
</package>

then the attribute you're looking for is sharedUserId="10064"

Prerequisites: set up adb in a PC, connect the device to the PC, launch a shell on the PC to enter adb commands.
Note:

Replace UID wherever it occurs in the following commands with the UID you're searching for.
The commands below would only provide the package name of the app corresponding to your UID. To get the app label/name after obtaining the package name, you can use my answer here, or of GAThrawn's or of Izzy's.

For Android 8.x and above
Enter the command:

adb shell cmd package list packages --uid UID
adb shell pm list packages --uid UID                 # alternative command

Example:

$ adb shell pm list packages --uid 10250
package:com.adobe.scan.android uid:10250

For Android 7.x and above
Enter the command:

adb shell "cmd package list packages -U | grep UID"
adb shell "pm list packages -U | grep UID"           # alternative command

IF above cmds don't work you can try these below giving you the exact name
adb shell "cmd package list packages uid UID"
adb shell "pm list packages uid UID"           # alternative command

Example:

$ adb shell "cmd package list packages -U | grep 10247"
package:dev.ukanth.ufirewall uid:10247

For any Android version (tested from Android 4.2.1 to 10.0)
Enter the command:

adb shell "dumpsys package | grep -A1 'userId=UID'"

It might take a few seconds to print the desired output.
Example:

$ adb shell "dumpsys package | grep -A1 'userId=10102'"
   userId=10102
   pkg=Package{46171ce com.android.chrome}

The line containing Package{ would show the package name of the app in between whitespace and }. You can do adb shell dumpsys package PKG_NAME (PKG_NAME → package name of an app) to know more details about that package/app.

For rooted Android versions
If the Android is rooted, than using adb shell or a terminal emulator app you can do:

su
cat /data/system/packages.list | grep UID

In the output, anything before the UID would be the package name.
Example:

shell@shamu:/ $ su
root@shamu:/ # cat /data/system/packages.list | grep 10102
com.android.chrome 10102 0 /data/data/com.android.chrome default 3002,3003,3001

Alternatively, if you've Busybox or Toybox installed and available under PATH variable, than from a terminal emulator or adb shell do:

su
find /data/data/ -type d -group UID -maxdepth 1 | xargs basename

Example:

shell@shamu:/ $ su
root@shamu:/ # find /data/data/ -group 10102 -type d -maxdepth 1 | xargs basename
com.android.chrome

This works for me without root.

Install a terminal emulator, launch it and run:
ps | grep 10058

ps lists the processes and grep filters for the ID you want.
But this only works if the application is running when you run the command.

I try this, but it doesn't works, because such app is not already running

This is for PID, the asker was referring to UID

The UID is shown in the ps output as well as the PID. The ps output typically has lines like '12345 app_118...' where 12345 is the PID and app_118 is the UID (corresponding to userId=10118 in /data/system/packages.xml)

In ADB shell (or terminal emulator) use the following command:
cat /proc/<your_process_id_here>/status

and look in the "Name" field.  This should be the name of the process.  So in your case it would be "cat /proc/10058/status"

10058 is supposed to be the PID here while OP gave us UID.

I had a similar issue with Android 6.0, Moto G 2nd Gen from 2014. I happened to have upgraded the ES File Explorer application and I noticed it was bloated as hell and sucking up a lot of battery. I removed the application from the system, but the application let a zombie process taking up CPU. The UID was similar to yours 10118, and it listed in the battery statistics as the most hungry resource process.
Then I installed an app named "OS Monitor" and noticed that a .esfm file was actually the only process taking up 60% of CPU. I immediately had known that it had to do with ES File Explorer, but wait... I HAD uninstalled ES File Explorer. Yes. The only thing I didn't do was to RESTART the smartphone. Believe me, I was thinking about crazy things, like going root and beat the crap out of that process, throw the phone against the wall, and even started to believe that my battery reached end of life. To my surprise, I simply restarted the phone and the process was gone.
So before taking any drastic measures, try to figure out which app is giving you a bad time, uninstall it and then restart the phone. Check on OS Monitor the CPU usage list, and you should be fine.

To find "everything" by UID (or GroupID) on a rooted phone, including running processes, system apps and hardware sensors:
# ID=3011; find / -group $ID -o -user $ID   2>/dev/null

Example 1:
# ID=3011; find / -group $ID -o -user $ID   2>/dev/null
/proc/208
/proc/208/task
/proc/208/task/208
/proc/208/task/208/attr
[...]

# ls -la /proc/208/exe
lrwxrwxrwx 1 root root 0 2017-04-04 22:14 /proc/208/exe -> /system/bin/sensors.qcom

Example 2
# ID=10009; find / -group $ID -o -user $ID   2>/dev/null
/data/misc/profiles/cur/0/com.android.cellbroadcastreceiver
/data/misc/profiles/cur/0/com.android.cellbroadcastreceiver/primary.prof
/data/data/com.android.cellbroadcastreceiver
/data/data/com.android.cellbroadcastreceiver/cache
/data/data/com.android.cellbroadcastreceiver/code_cache
/data/user_de/0/com.android.cellbroadcastreceiver
/data/user_de/0/com.android.cellbroadcastreceiver/cache
/data/user_de/0/com.android.cellbroadcastreceiver/code_cache
/data/user_de/0/com.android.cellbroadcastreceiver/code_cache/com.android.opengl.shaders_cache
/data/user_de/0/com.android.cellbroadcastreceiver/shared_prefs
/data/user_de/0/com.android.cellbroadcastreceiver/shared_prefs/com.android.cellbroadcastreceiver_preferences.xml
/data/user_de/0/com.android.cellbroadcastreceiver/shared_prefs/_has_set_default_values.xml
/data/user_de/0/com.android.cellbroadcastreceiver/databases
/data/user_de/0/com.android.cellbroadcastreceiver/databases/cell_broadcasts.db
/data/user_de/0/com.android.cellbroadcastreceiver/databases/cell_broadcasts.db-journal


text:
Sending an SMS message via one click?
Can I send an SMS message via one click or touch?
Can I have an icon or shortcut that would let me send an SMS message to a certain phone number with predefined text?

not exactly a duplicate but pretty close: How can I attach a default SMS template text to a specific contact number?

The Tasker app will let you do this (and much much more)
Once installed, add a "Task" widget to your homescreen, and have it run a "Send SMS" action.  This lets you specify the target of the SMS, as well as the full body of the message.

5 years have past - I think perhaps the app OneClickSMS is a better fit for this task now (unfortunately it has been retired from Google Play but it's still available on mirrors with the original APK name com.utopia.oneclicksms).
It creates an icon on your home screen, and when you hit it, it sends an SMS with a single click. Very convenient.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

sort: votes


text:
Running out of Memory while installing SPB Shell 3D APK
I am using LG P500 phone, running Android 2.3 (Gingerbread).
I am installing SPB Shell 3D APK file which I got from internet.
After some time it shows error that Memory Full, Please Uninstall Some Apps to Free Memory
Though I have 50 MB Free memory.

50 MB is not much. Consider that for installation, the apk gets probably temporarily stored there (in /data/local(not always sometimes it's in the /cache/download/ folder) -- at least that's what the playstore app does, I'm not sure about a "local install" where the .apk probably is available from your sdcard) for processing, then gets installed (below /data/app) and initializes its data (below /data/data). And during all that, it should leave enough free space to allow all other apps to work normally: Creating temporary files, log files (at least the latter again being stored below /data in many cases, e.g those you can access via logcat), and manipulate their data (guess where -- yes, again below /data/data).
So you see: Most of these actions take place on the /data partition. Now look what size the .apk of SBP Shell 3D has. Something about 10..15 MB? So when installed, it creates its data structure below /data/data as well, which adds to this. And during all that installation process, free space probably falls below 30 MB (if it really requires a copy in /data/local for the install, even below 20 MB) -- which is why the system alerts about "free space getting low".
The solution already came with the warning: Uninstall some apps. Or move some bigger ones / rarely used apps to SD, if possible. Or clean up some cache -- but that will only help temporarily.
You might also want to check some other space/installation related questions here:

Why is “insufficient storage” wrongly reported when installing an .apk via adb?
Is there a way to workaround the phone memory limit for installed apps?
Why can't I install apps when I have enough storage?
Application doesn't get installed : insufficient storage available

could be good starting points.

I cleared 60MB of space in Phone Memory, then also it is not working. Do you have any idea whether SPD Developers are doing this thing from Application ?

No, I don't. Maybe you ask them, you shouldn't be the first encountering it if that is the case.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Rooting Stock Firmware - GSII with NFC
I have a Galaxy S2 with NFC (GT-I9100P) and I wish to have root access to properly administrate my phone.
I've been looking at various forum posts on different sites and I've just been getting more and more confused as to what I need to do.
From what I understand, I need to flash an unsecure kernel to the phone (with ODIN) to get root access, then I can flash the stock firmware back onto the phone and retain root access. Is this correct?
Further information:
My baseband version is I9100PBVLP7
kernel version: 3.0.15-I9100PBVLPA-CL364024dpi@DELL169 #3
and my operator is Orange UK.
I've managed to obtain the firmware version that is on my phone already through sammobile.com, I just have no idea what I need to do next.
Reward
If anyone can help me to get root access on my stock firmware I will give them as much bounty as I can when the question is eligible for it.

If all you need is root access, try flashing the Siyah kernel via ODIN. Ensure you get the S2 version, as the dev has one for the S3 as well. Also, you will need the TAR version as you will flash it via ODIN (at least for the first time). Later instances, you can get the ZIP format and flash it via CWM (ClockworkMod recovery, which is built into the kernel). Apart from features like more processor steps, you can also overclock/underclock, adjust various parameters and have features like Backlight Notifications.
Since you will flash this kernel, you DO NOT need to flash the firmware. You can keep the stock firmware and your data intact. This kernel automatically installs root access so your primary requirement is also fulfilled.
As with all operations, ensure you have an off-site backup of all your data.
As an aside, once you install the kernel, get the ExTweaks app from the market which is designed especially for this kernel and offers a GUI/frontend to access many under-the-hood features.
Assuming you have all the drivers installed, here's how you go about it:

Download the TAR file of the Siyah kernel. Note that the latest series is for ICS, in case you're running Gingerbread, search for and download the appropriate older version of the kernel.
Start ODIN and connect your phone via the USB cable AFTER you enter DOWNLOAD MODE (Press Vol down + HOME + POWER button simultaneously for a few seconds after completely shutting down phone. At the warning screen hit Vol UP to confirm entry to download mode).
Once connected, you should see a COM port number with a yellow background.
In the ODIN program, press the PDA button and point to the TAR file.
make sure ONLY Auto-reboot is ticked and then click START.

If all goes well, you should see a green box with PASS! shown after which your phone will boot up. It may take a minute or two, so don't panic.
Refer to the FAQ and the respective threads on XDA-Forums for more info.

Thanks for your answer, and the extra details. Would you mind giving me a quick explanation on how to install the Siyah kernel with ODIN please? I just want to be certain I'm doing things correctly.

Well that was easy, thank you very much. It wasn't very exciting but I'm not sure what I was expecting haha. I'll have to look around and see what else I can do with my root privileges. The bounty will be yours tomorrow.

If you are interested, use the CWM app to make FULL backups (nandroid). A lifesaver. Also, you can use this CWM app to boot into RECOVERY or DOWNLOAD mode with a tap - no need for a combination of keys.


text:
i have already root my nexus4,but why it shows “shell@mako:/ $ ”when i enter command“adb shell”
Should not shell@mako:/ $ be shell@mako:/ #?
Or I haven't root successfully yet?
How to check whether my nexus4 have root successfully?
Thanks!

Rooted or not: Logging in via adb shell first brings you to a user-prompt only (connected with the "shell" account). In order to work with root, you need to "escalate" your permissions by invoking su:
> adb shell
shell@mako:/ $ su
#

Apart from that, there are a few root checker apps available as well...

Alternatively, re-starting adb as root via adb root will  start the shell in escalated mode.  This will only work with custom ROMs though, not rooted stock.

No. This only works with ROMs signed for development (check the error message on stock ;). Or with adbd Insecure.

but why it shows root@android:/ #  in another phone (Philips) when i enter command adb shell?  What's the difference?

The other phone might be running a developer's ROM with the daemon (adbd) running in root mode by default. See my previous comment.


text:
How to run "parted" command in terminal emulator on my android smartphone
Updated question (2018/2/20)
Thanks to grawity's answer and comment, my question can be updated.
My final goal is to acquire detailed partitioning information (including the start and end address of each partition on my android phone), either using fdisk or parted.

How to "install" the parted command into my android smartphone?
Can I use fdisk on a Linux system or on Cygwin on a windows system? Knowing that fdisk brought by BusyBox can't handle GPT.
(If so, maybe I could post another question.)

The original question (2018/2/19)
I have installed Busybox on my smartphone, and I want to acquire detailed partitioning information, including the start and end address of each partition on my android phone.
I can use fdisk command, but maybe because my phone's disk is GPT instead of MBR, command "fdisk -l" shows no output.
So I want to use the command "parted". But I don't have it on my smartphone. How can I get it?
I've traveled to GNU website of "parted". But what I can download is only source code. Do I need to compile that? If so, how do I compile that? Can I compile the source code with MinGW on a PC with Windows system?
If I get the "parted" file, where should I put it to make it work? Is it under /system/bin?
I haven't found a usable "parted" file yet. Is it because of my bad google skill or the file has to be compiled differently for different devices?
I hope to find an official version of the "parted" file.

EDIT (2018/2/19)
I do know my storage is GPT because fdisk -l /dev/block/mmcblk0 tells me.
And I've read on the net that fdisk can't handle GPT, while parted can. I'm just not sure why fdisk -l is showing nothing.
fdisk -l /dev/block/mmcblk0

Disk /dev/block/mmcblk0: 15 GB, 15634268160 bytes, 30535680 sectors
1908480 cylinders, 1 heads, 16 sectors/track
Units: cylinders of 16 * 512 = 8192 bytes

Device             Boot StartCHS    EndCHS        StartLBA     EndLBA    Sectors  Size Id Type
/dev/block/mmcblk0p1    0,0,0       0,0,0                1   30535679   30535679 14.5G ee EFI GPT
Partition 1 does not end on cylinder boundary

Your output actually shows that your fdisk version is too old and doesn't support GPT. (Is it util-linux fdisk or busybox fdisk?) It's showing the "protective MBR" partition.

"fdisk on android" is irrelevant. The important part is where fdisk comes from – Busybox has its own version fdisk, just like it has e.g. its own version of ls and its own version of sh, completely separate from the traditional Linux fdisk/ls/sh/etc.

Note: This is applicable to Qualcomm SoC with eMMC (block device accessible through FTL). Not tested on MTK or other chipsets (paths may differ) or the devices with raw NAND/MTD memory.
PARTED

How to "install" the parted command into my android smartphone?

There is no official way, so parted isn't part of AOSP. Android doesn't want you play with its partition table. Using a static binary is the best option to avoid complications of dynamic linker/loader, libc etc.
You may get parted static binary for aarch64 (ARM-v8) and armel (ARM-v5) architecture from this link. I have compiled these on ArchLinuxARM (running on my Redmi Note 4) and on Ubuntu (PC) using gcc (cross-)compiler with glibc and they work great. Building with Bionic libc on NDK (to make it fully Android-ish) needs a lot of changes in source code because function calls (libc) and also some syscalls (kernel) differ on Android and Linux. devmapper and NLS are disabled since former isn't directly used, latter isn't supported on Android.
FDISK / GDISK

Can I use fdisk on a linux system or on Cynwin on a windows system? Knowing that fdisk brought by BusyBox can't handle GPT. (If so, maybe I could post another question.)

You may use fdisk on Android too, but fdisk is traditional tool to manipulate MBR partition tables, though newer versions also support GPT. fdisk shows somewhat info about GPT as well because GPT contains protective MBR (first sector of disk or eMMC) which contains information about partitions. Also, first partition (modem) on most of the Android devices which contains firmware for baseband processor (BP) is FAT16, more compatible with fdisk. For other partitions fdisk may behave weird or may crash.
Busybox fdisk is very minimal like other applets, and I think it hasn't been updated for a while now. Instead, GPT fdisk (gdisk) is a great tool for GUID Partition Tables and from certain aspects is better than parted.
gdisk , fdisk and mkfs.ext4 (mke2fs) static binaries are also available on above mentioned link. You may put these anywhere in your PATH; /system/bin, /system/xbin, /vendor/bin,/sbin (volatile) or even somewhere on /data or sdcard.
Now just execute:
~# parted /dev/block/mmcblk0
(parted) p free

~# gdisk -l /dev/block/mmcblk0

Please note that fdisk -l and parted -l won't show complete information (or not at all) about Android GPT because Linux kernel populates block devices directly under /dev while Android uses /dev/block path. We need to change code before compiling to make them work perfectly. fdisk -l shows loop devices because they share same nomenclature. blkid also shows partition info because it reads from /proc/partitions and /sys/dev/block/.
Finally!!!
With power comes responsibility and Linux tools are powerful. Really. A displacement of even a single byte in partition boundaries may put you in serious trouble, the worst being inability to use Factory Firmware Flashers. So, be careful!
Further reading:

ArchLinux Partitioning
Android Partitions

Thank you very much for looking into this question! You're awesome! I haven't try out yet, but I still give you the acception! So here's why I haven't tried out. (1)parted. I don't have time yet to read the whole post. (2)gdisk. In the link you provided, I think there is only binary for windows system as you can see here. So maybe I still have to compile in order to use gdisk.

And would you spend a couple of minutes to take a look at this question because I can't setup a cross-compiling environment in Cygwin. Or would you suggest me to install Linux instead of using Cygwin?

Both binaries are ELF executables i.e. for Linux/Android, not for Windows. And for cross compiler, I have dual boot system; Windows and Ubuntu. Plus I have Arch chroot on my phone. I don't like Cygwin personally. There are bash for Windows and WSL etc. But those are limited in one way or other. If you want to enjoy the real freedom, use full Linux boot system.

I'm confused now. Following the link you provided, I reached here to look for gdisk binary. But here are 7 binaries. Which of gdisk_1.0.3-1_amd64.deb; gdisk-efi-1.0.3.zip; gdisk-windows-1.0.3.zip; gdisk-1.0.3-1.x86_64.rpm; gdisk-1.0.3-1.i386.rpm; gdisk-1.0.3.pkg; gdisk_1.0.3-1_i386.deb; is ELF executable?

.deb is for Debian class distros, .rpm is for RedHat class, amd64/x86_64 is 64 bit PC, i386 is 32 bit, .pkg is for MacOS. These are all installable packages. efi.zip contains binary for UEFI i.e. to use before OS boots. Windows.zip contains 32 bit and 64 bit .exe files

So which one of them is the binary that I can use on an android phone? And, can I use it directly(put it anywhere in my PATH as you said) or do I need to first install?

Download Android binaries from my XDA thread. You are confusing the links. Please read again. Yes, static binaries can be executed directly even without PATH. They have no dependency, usually.

maybe because my phone's disk is GPT instead of MBR, command "fdisk -l" shows no output.

Or maybe it does not have the privileges to read the partition table.
Though, as far as I know, many Android phones do not use software partitions, but something more complex than that: they partition the flash storage in hardware. So not even parted would help you in this case.
This answer on Android.SE might be relevant: https://android.stackexchange.com/questions/5232/how-can-i-view-the-android-internal-partition-table
Regarding your fdisk output example. It's not showing nothing – it's showing one partition!
But it's the wrong kind; the actual problem is that your fdisk version does not support GPT and is showing you the contents of the "protective MBR" partition table.
All GPT disks have a fake MBR containing one massive partition which covers the entire disk; its purpose is to prevent old MBR-only tools from accidentally destroying data. If you see it in fdisk's output, it means your version of fdisk is MBR-only.
The fdisk which comes with util-linux has added GPT support in v2.23. However, the Busybox fdisk has not.

That said, the rest is fairly generic and applies to all programs, not just parted.

I've traveled to GNU website of "parted". But what I can download is only source code. Do I need to compile that?

Yes.

If so, how do I compile that? Can I compile the source code with MinGW on a PC with Windows system?

Probably not. MinGW is oriented towards creating x86/x64 Windows builds – you need a cross-compiler which would provide Linux binaries and which would compile for a different CPU architecture (your smartphone uses some ARM variant).
Cygwin might have a compatible version of gcc, but doing the compilation on Linux might be much easier.

I hope to find an official version of the "parted" file.

It is rare for Linux developers to provide official compiled versions – that's usually left to the distributions.
You can download the official packages of various distributions such as Debian (Raspbian) or Arch Linux ARM, and extract the needed files manually.

https://packages.debian.org/search?keywords=parted
https://archlinuxarm.org/packages?q=parted

Be careful to pick the correct CPU architecture of your phone.
Second, note that you'll need more than just the "parted" file: most of the core functionality is actually in a library (DLL file) called libparted.so.

Honestly, neither do I – I know regular Linux, but Android's filesystem layout is a mystery. Actually I even suspect "regular" Debian/Arch builds might not even be compatible with Android's libc...


text:
Facebook "more from related pages" feature
Recent updates on the Facebook app came with a new feature : "the more from related pages" after every time you like a post. For me this feature is terrible. Every time after I liked a post I would scroll down to like another one, and just right before I hit the like button this new function will pop some icons out, pushing the wall down and cause me to miss the like button.
So here is the question: are there ways to remove this feature ? I searched through the settings on my app one by one but I have yet to find anything that works.
Feature

This is a Q&A site, and therefore is not suited for propaganda, hence I vote to close this question.

@DeathMaskSalesman I actually would be really interested in fixing these problems regarding user interface. I don't mind the question being closed but I still would like to know how to disable Facebook recommending posts on my page. I am very sorry to the community that this sounded like a propaganda.

See, since the Facebook app is proprietary, no one but Facebook can change its code, and F has long been known for not caring about its uaers. All I can suggest, is to try some alternative Facebook clients, namely Tinfoil for Facebook or Metal for Facebook (I'm not affiliated with the mentioned apps). Aside from that, you're welcome to ask more questions in the future, but you might want to pay a look at the allowed topics.

@DeathMaskSalesman thanks a lot for these information. I was actually thinking whether I could in some way modify the Facebook app or the setting for this feature is not available on the mobile app. I'll be careful on my questions next time.

You could be able to modify the Facebook client, but you'll have to do so in a programming language which is neither friendly nor simple (and not exactly legal, but who cares).

@DeathMaskSalesman well believe it or not, the feature disappeared. Maybe Facebook heard my voice. Now gonna delete this post.

Happy for you, then! Have a good day.

The problem just.....disappeared


text:
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?

Do you have USB Debugging enabled on your tablet? Most devices are not listed without that, as this setting starts the ADB service on the device.

@Izzy Probably no. I can't change anything in the tablet settings now (it's in the endless loop), I can only press the force close button.

Yepp, I remember. I was hoping you would remember if you had enabled it previously. In that case, I guess, you'll have to solve the other issue first (most likely via a factory-reset). Then check again with USB-Debugging enabled -- and report back if it worked out.

@Izzy USB Debugging solved it. You can write as the correct answer and I will accept it. Thanks.

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 :)


text:
What is the difference between these two persistent notifications?
I use two apps which require a persistent notification: (1) the Pebble Smartwatch app, and (2) Tasker. When I pull down the notification bar (see screenshot), I see both notifications.  However, only the Tasker one shows an icon when the notification bar is hidden, and likewise only Tasker shows a slot on my lock screen.
What is the difference between how these apps are showing their persistent notification?  From my understanding, if an app wants to run continuously, it MUST put a persistent notification on the notification bar. But somehow the Pebble app is not requiring an icon or displaying on my lock screen.

These behaviors can be controlled when an app builds a notification.

From my understanding, if an app wants to run continuously, it MUST put a persistent notification on the notification bar

You're pretty much correct until the "notification bar" part. Both of notifications are indeed persistent (i.e. on-going, cannot be removed manually by user). Take note that there isn't a button on notification drawer for clearing all non-persistent notifications.
The difference, however, is the notification's priority. This setting is independent of whether the notification is persistent or not. Usually, persistent notifications are set at least to default priority to "keep users informed about an ongoing process in the background". However, if a notification is set to minimum priority, it won't appear on notification bar.

Priority: MIN
Use for contextual or background information such as weather information or contextual location information. Minimum-priority notifications do not appear in the status bar. The user discovers them on expanding the notification shade.

Another example is Google Now's notification for weather & traffic, but it isn't persistent.


text:
Unable to hang up phone call
I'm using a relatively new G2, and when dialing today, the call did not complete. It stayed in dialing forever. The hangup button did not work. I tried to force a connection failure with airplane mode, that did not work either.
Any ideas on what do in this situation? Ideally, I would like to know how to gather more data on the problem, so I can report it to T-Mobile and/or Google.

have you tried looking if anything is suspicious at logcat?

I'm guessing the Dialer froze.  Try holding the Home button, going into Task Manager, and killing the dialier process.
As Matt mentions in the comments,

You can do the same thing from the home screen by pressing menu then going to settings > Applications > Manage Application then choose the "phone" or "dialer" app and click "stop"

If I hold onto the home screen, I get "Add to Home screen"... any other ways to do this?

Haha man, I must have been multitasking when I wrote that.  I meant Home button.

When I hold the home button, I get a Window-style "alt-tab" display, it says "Recent". Is this where I kill the process?

Hmm, maybe your phone doesn't have it.  My "Recent" list has a button at the bottom that says Task Manager.  Perhaps it's a 2.2 feature.  I don't think 2.2 has been officially released for the G2 (?) but have you considered a custom ROM?  It might even solve the dialer problem completely.  http://forum.xda-developers.com/forumdisplay.php?f=512

I think its an OS issue, not a device issue, but on 1.6 Donut there's mos def no task manager in the recent apps shown when you hold down the home button.

You can do the same thing from the home screen by pressing menu then going to settings > Applications > Manage Application then choose the "phone" or "dialer" app and click "stop".

If this is an ongoing issue, it is worth watching your logs to figure out what might be happening. I've got a G1 and every few months it chokes on something and I have to reboot it (which I do by holding down the power button until the phone powers off, or, when that fails, taking the battery out, counting to ten and replacing it.)

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/2.5/


text:
Long boot time in Honeycomb
I just got a motorola xoom, love it so far, but it surprises me that the initial boot of the device takes so long (approx 1 minute).  I figured with less RAM than my PC, a less "hoggy" OS (honeycomb vs win 7), and the benefit of a solid state hard drive, that the xoom should be able to boot from off to on-and-functional in like 20 seconds.
does anyone know of a way to decrease the boot time in Honeycomb?  Thanks!

It may be worth noting that the boot time for the nexus one is about a minute.
I think the expected use pattern of Android devices is 'always on', so it's been optimized for everything but boot time.

Just to add to syntheticbrain's comment: My EVO running cyanogenmod takes just under 2 minutes to get from power-on to home screen.

Unless they're something physically defective with your device your options are pretty limited:

Install a ROM designed to boot quickly (not sure that any exist)
Install a ROM based on a less resource-intensive version of Android (but there's no point in getting a Xoom if you don't run 3.0 IMO)
Use an app like Autostarts to prevent some apps from loading upon boot (this probably won't help your boot time before you see the initial lock screen, however)

All three of these options require root access, so if you don't want to root your Xoom then I can't think of anything you can do to decrease your boot time.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/2.5/


text:
RSS Reader that supports secure feeds?
Does there exist an RSS reader that supports secure (NTLM + HTTPS) feeds?
I've tried RSS Demon, with no luck.

Rss bandit is a windows rss reader, not android. If you are looking for android, what exactly do you mean by secure? https, or feeds that require a username and password?

my bad, that should have said demon ;)  fixed!
it requires a username and password

Have you tried using the http:// user:pass@www.example.com/ syntax?

@B Mitch:  unfortunately that won't work either as the feed requires SSL

https:// user:pass@www.example.com would give you ssl support and allow you to pass the username/password. If this doesn't work, then what exactly type of authentication is used?

I also looked at Rss Demon, and according to its features, both the lite and paid versions support authentication. - "HTTP-Auth/Password: for protected feed, user now can enter a http auth and password"

it uses windows authentication

@Ryan:  RSS Demon does let me put in a user name and password, i've verified they are correct, but it doesn't seem to actually be sending them to the server.

try the user/pass in the url, if that doesnt work, then it may be some issue with the app, and you should contact the app developer.

no dice :(  it seems it only to do basic http authentication, which the server doesn't support.

so it turns out android as an operating system doesn't support anything other the basic http authentication!  so there won't be any readers out there that can support this :(

The browser does not support NTLM currently. I have read, but do not know 100%, that NTLM is supported in android 3.1

http://code.google.com/p/android/issues/detail?id=4962

http://code.google.com/p/android/issues/detail?id=4962#c247 as I said, 3.1 adds support for it in the browser. NTLM would have to be implemented by the developer, until there is built-in support in the SDK (3.1).

sadly my device isn't 3.1, it's 2.2


text:
Connecting a National Instruments device to an android phone
I'm attempting to connect a national instruments usb data aquisition device to a samsung galaxy s2 mobile phone. As far as I can tell the phone has a USB driver but no driver exists to run the national instruments device. Does anyone know where I would start in order to get one of these cards to talk to the phone?
This is as close as I've come to finding a solution but it seems to require an external computer. I want to connect directly only using a phone.
This is in the early stage so I'm really looking for a starting point and then will update as/if I make progress.
Any help much appreciated.

You're trying to write an driver for the NI device that can be used on Android?  That's a large undertaking ... you would need to modify the ROM/OS to use the driver as well as developing the driver for the phone's architecture.  Development is off-topic here as well, you might have better luck on [SO].

Android 3.1 has a whole framework to make it easier to write a driver to allow an Android device to control a USB device. Previous Android versions  (such as the Android 2.3 your device comes with) only support being a USB slave, rather than a USB host device. See http://developer.android.com/sdk/android-3.1-highlights.html#DeveloperApis

You are trying to use the USB port as a USB Host. This is not currently supported in android. The feature will be available on devices starting with Android 3.1. From what I took from the video, they are not using USB, they are communicating via TCP.
@GAThrawn, I honestly didn't just take your comment as an answer, I had mine in the form, but forgot to hit submit :)

No offence taken!

Thanks Mathew and GAThrawn. I'm no programming guru so it's good know that this is going to be a bit too big of an undertaking. Do you think smart phones will have USB Host support anytime soon or will this be reserved for tablet devices for the foreseeable future?

@Jamie "Ice Cream Sandwich" which is the rumoured name for the next version of Android will apparently be merging all of the phone features in Gingerbread with all of the tablet features in Honeycomb to make one OS that should have all of the good, new features of both, and should be available for both phones and tablets. As to how soon that will be released, and how soon individual devices will be updated... that's a whole different question.

Thanks for your prompt replies. I'll kick back and wait for Ice Cream Sandwich.


text:
How to import contacts from symbian mobile to android mobile?
I had Nokia 5610 ( S40 v5 ) mobile, and recently i got a new Android mobile ( HTC Desire S ). Now, when i put my sim card in my new phone i get all contacts which were saved in SIM memory, but there were lots of contacts in phone memory. I would like to import those also. How can i do that?

Is there any way to get the rest of your contacts onto the SIM card?

You will need the Nokia PC Suite tool but here is the easiest and fastest way.

Connect Nokia to PC using the PC-Suite
go to Contacts - press CTRL+A (select all)
go to Desktop/Subfolder - press CTRL+V (paste)
that will create a .vcf file for each contact
from a command prompt run the following command in the folderon your desktop where the files are saved:
copy *.vcf contacts.txt
open http://google.com/contacts
choose "Import" link in google contacts.

Really good answer simple and efficient import

the Nokia PC Suite link is 404, does anyone know an alternative source?

i think i found a mirror here https://download.cnet.com/Nokia-PC-Suite/3000-10440_4-10598525.html

If your old Symbian Phone have Bluetooth you can go to address book application, select all contacts and send them through Bluetooth to your new phone.
This will send a vcard file for each contact to your new phone and then you can import this data to your Android Phone.
I think the option to send a given contact via Bluetooth to another phone is:
Select the contact and the Details > Options > Send business card

This worked for me, and seems the simplest way, thanks.

Well, are you sure you won't have to send each contact separately?

Try using the Nokia PC suit to move all the contacts from the phone to the SIM card. This works in Samsung's Kies.

If you save a backup of your contacts onto your Symbian phone's SD card, it appears as an NBF file.  This is a zip file, which contains all your contacts in VCF format -- if you concatenate them all together, you can upload them to Google Contacts in one go.
For more details about how I discovered this, I wrote a blog post at the time.


text:
Problem accessing the Market
I have a Sony Ericsson Xperia with Android. I can't download from the Market because there is some Gmail account that I don't have an idea how it got there.
This means that I don't know the password! I have tried to change that email but I can't so what is your suggestion what should I do?

Go to Settings > Accounts and Settings, click on the account that you don't know the password and then click the Remove Account button on the bottom. So next time you open up Android Market you'll be prompted to type in a new account


text:
Is it possible to override automatic screen orientation?
Very often I use my phone lying in bed (with phone camera facing the ceiling) and the orientation changes drive me crazy. Literally if I turn the phone a few degrees it will go from portait to landscape and vice versa.
I can disable auto-rotation, but it's not desirable in some scenarios, like when i turn on my shoulder and I want the orientation to change.
Basically, is it possible to write your own logic for screen rotation and make it run on system wide scope?
UPD: I do not want to toggle auto-rotation. I want to rewrite that logic that based on current sensor setting changes the screen orientation on system level.

You can, but you'll have to create a custom ROM.

Hmm... Any leads on where to look? Anyway, thanks for the heads up, I completely forgot about custom roms

Android is open-source so you you may be able to create one off of the Android code.  If you're really lucky, you may be able to find the particular file that deals with the sensor, update it and then push it into your system without building a whole new ROM.  Beyond that, I am of no help in this area.

I've never used it so can't say for sure (thus a comment not an answer), but you might be able to do something to this effect using Tasker.

This widget works well... No customer rom or root required. :0)

You could write an app that locks to portrait orientation when whatever conditions you want are met.
So you could make it always be portrait unless the phone is held perfectly vertical in landscape position.
As far as I can tell, you can't force landscape orientation, so you'll have to just enable autorotation unless you want to make your own ROM.
Your app will probably need to be a Service and use SensorManager.
You can search the Android source on Google Code.

In CyanogenMod, and you can set up to have the power widget on the notification bar, the power widget in Cyanogen is enhanced so it can control more settings, one of it is the ability to lock the orientation sensor. Whenever you want to lock, simply pull out the notification bar and tap on the lock orientation button.

The author of the question explicitly said that he does not want to disable the rotation even temporarily; he wants to adjust its sensitivity.


text:
My phone has an error when I want to delete drafts, what should I do?
So, here's the problem: when I want to delete drafts from HTC Wildfire S, I go to drafts and press the three-line-button, which always offers more options. It says "Delete drafts". I press that and it says that there's an error and that I should either force close everything, or report it to HTC. I can delete drafts by opening them and selecting discard from the menu, but I don't want to do that every time, and the lag is just irritating.
What should I do? Does someone have the same problem? Thanks in advance!

I assume you mean 'draft' txt messages.
Try this:

Settings > Applications > Manage Applications > Select the Messaging App
Choose 'Clear Data' and also 'Clear Cache'.

If not you could also factory reset the phone.
Otherwise report it to HTC support

Note that this will delete ALL text messages, sent, received and drafts.


text:
How do I get Google+'s notifications into Android's notification list?
From iOS I'm used to seeing app icon badges and notifications concerning actvity inside apps. Android is lacking app icon badges but it does have a great notification menu -- except that Google+ notifications (the red counter in the black Google bar on all Google's web sites) don't arrive there. I do see the counter in the Google+ app (in Android as well as in iOS) but on Android there's no notification outside of the app.
I think it's weird that Google's awesome social network doesn't send notifications to Google's mobile OS.
I am hoping that it's merely some setting I need to enable on my phone to make these appear. Right?  I very much doubt that I really have to launch the G+ app to see notifications, given that so many other apps use Android's notification methods so successfully.
How can I see Google+ notifications in Android's notification list?

Uhhh...I get Google+ Notifications all of the time.
Check:

Settings | Apps | Google+ | Show Notifications is checked
In the Google+ app, Overflow menu (three vertical dots) | Settings | Notifications is ON. Tap that entry and choose which types of notifications to get. I see

POSTS AND MENTIONS

Mentions
Shares
Comments
Comments on a post after I commented
Circle subscriptions

CIRCLES

Adds me

PHOTOS

Tags me
Comments on a photo I am tagged in
Comments on a photo I tagged
Photos added from Instant Upload

EVENTS

Invitations or updates to events
Reminders about events I'm invited to
Activity on events I created

COMMUNITIES

Invites me to a Community

Thank you! I saw the setting "Notifications" and it was listed as ON so I figured they were turned on... It is never evident from these Android menus that they actually contain sub-items... I still need to learn to operate Android, it's very different from what I'm used to.


text:
Pandora pauses randomly?
I find that Pandora often will pause the current song for no apparent reason. Any idea what I might check to see what the cause is?
(HTC Droid Incredible)

Are you listening with headphones?

Not using headphones.

I think it's a bug with their Android client. I have the same problem -- it even happens on my home WiFi!  When I use my desktop or laptop systems (website or AIR app) it's fine.

I've had this happen with every audio app I've tried on Android (not just Pandora, but Music and Listen as well).  I opened a bug for it: http://code.google.com/p/android/issues/detail?id=19167

I was (still am?) having a similar issue. Pandora will load but not play songs. Or sometimes if it does manage to load and play a song, it will skip to the next song prematurely. I 'restarted' the phone and that didn't fix the issue. I should have shut it down completely and then tried again as a test but instead I reseated the SD card securely after shutting down and it seems to have fixed it. So my solution that worked was either shutting down completely or else reseating the card. We'll see how long it lasts.
Update: Today (the next day) my phone is having issues again. Going into Task Manager > Ram > Clear memory seems to have fixed it this time although I don't think it fixed it yesterday. Very peculiar problem.
It seems that my problem might be different than yours but I found that having Twitter installed can cause problems with YouTube, Pandora, etc. I uninstalled and it seems to be helping with my specific issues.

Make sure you have a full signal. Try running it with nothing else running. The resources might be getting used by another app and makes pandora freak out. I know on my droid x2 i have a problem with it skipping songs on me.

How do you make sure you have a full data signal? It's either on or off with my phone.

I meant go to a location near you that you know you can get full bars. I noticed that when I am around grand central station in NYC that pandora freaks out because of the signal. Just a thought.

I have similar issues and I'm less than a block away from a Verizon store. I'm assuming they have decent coverage at their own store?

@Joe: They don't need to, a store could simply use femtocells to make sure that the signal is very strong in their store and able to handle the load of a concentration of phones (for both display models and customer's phones).  It'd be a pretty underhanded thing for them to do if the area's signal was otherwise poor though.

It could be that you are using a battery saver app. I use Juice Defender and I think that's causing the issue. Juice Defender tries to save battery by killing the 3g signal after you turn off the screen for a bit. So you can just deactivate it when you are using pandora.

Not that I am aware of.

I had this same problem on my dinc a while ago. At least for me, I narrowed it down to song buffering. When just about anything happened that changed my data connectivity (received SMS, briefly lost 3G signal) Pandora wouldn't be able to keep up; the song I was listening to would play through as much of it as Pandora had buffered before the network interruption then would stop abruptly and switch to a new song. Very annoying! Even when my data connection was strong, as you mention yours was, Pandora was very picky.
Since that time my listening habits have changed but I've also found Pandora to be more stable over the intervening updates.

I had this same problem.  I just figured out what was causing it on my system.  It turns out that I was using yahoo mail client on my android phone and everytime I got an email, pandora would pause for a second.  It does not appear that there is a way to change the frequency with which the yahoo client checks email from continuous to some lesser frequency (such as every two hours).  This, unfortunately leaves me with the difficult choice between yahoo mail and pandora.  Pandora will win this battle for sure.

While solid coverage is definitely required for solid playback from Pandora, assuming that is the case (and it's not caused by the way Pandora inserts advertisements), the pauses are most likely related to a low memory condition as a result of memory leaks caused by applications that address contexts in a certain manner.  In other words, it's a flaw in the Android OS that even allows this to be an issue, IMO.
While you could remove the offending apps (if you knew which ones they were), another way this can be dealt with is by getting a task killer that automatically closes unused apps.
Then again, you could load another ROM, doing away with the bloated default apps from the telco and solve the remaining problems with scripts or a task-killer of your own.


text:
Port forwarding for wireless tethering
I have an HTC EVO 4G and I've been using the manufacturer's supplied app for wireless tethering.  It works great but is missing are several key features I require:

Statically assigned IP addresses for connected clients
Port forwarding

Is there a way to enable this functionality?

are you rooted?

yes sir I am....unless you're from the warranty department of my carrier

hahaha no i'm not ;)

One thing you could do would be to set up an Amazon EC2 Ubuntu server instance as an OpenVPN server and then use the OpenVPN client app on your laptop.  Then you have to forward everything incoming to the server to the client interface IP address of the OpenVPN client running on your laptop.
I haven't done what you are wanting to do--the port forwarding part--but I easily could with the existing OpenVPN setup with some iptables tweaking to direct traffic to the client.
This sounds more complicated than it is, but you still need to be somewhat comfortable with the Linux command-line to get thru all this.
As far as the cost of the EC2, it's normally ≈$15/month, but I think they still have the deal where if you've never signed up for Amazon AWS before, then you can get a year for free.
Your own personal OpenVPN server is nice to have for when you are overseas and want to watch USA tv shows online (b/c they refuse connections from outside the USA), or if you are in a place where content or services such as Skype are blocked (such as on planes).  It basically makes selective blocking of services impossible.
If you have specific questions, just send me a message.


text:
no password field on internet connect
So I got a new phone (Moto G) about 3 days ago (newest version os) and I've tried to connect to my school's internet, which requires usename/id and password. However, when I try to connect on my phone there's no place to enter my password, only the username. I can hold and select modify network to set the password there, but connecting after that always seems to trigger "authentication issues", even though I know my password is correct because I can connect on other devices.

I have a Moto G as well (small world) and also had this problem when connecting to my school's WiFi network (even smaller world).
It appears like the Moto has trouble autodetecting encryption settings on some networks. You can probably get it working by long pressing on the network, selecting modify network, and then changing the 'EAP method' and Phase 2 Authentication' options to whatever your network requires them to be. Get a friend to open their WiFi settings and then copy whatever they have set. A reconnect should grant you access.
Please let me know if you have any questions or feedback.

Thanks, this worked. Turns out EAP method had to be set to PEAP.

Glad I could help.


text:
When is an "in app purchase" not an in app purchase?
The Play Store policy on in app transaction fees reads like this:

For applications and all in-app products that you choose to sell on Google Play, the transaction fee is equivalent to 30% of the price. You receive 70% of the payment and the remaining 30% goes to the distribution partner and operating fees.
  (Reference: https://support.google.com/googleplay/android-developer/answer/112622)

I get that this applies to things like premium currency, extra levels, even e-magazine subscriptions.  However, there are some cases where I assume, perhaps incorrectly, that that a particular app couldn't possibly be paying 30% on purchased items.  To name just one example of this, eBay.  I doubt they pay 30% of the price of an item when they themselves collect maybe 20% of the sale price, but correct me if I am wrong.
Is there a rule, hopefully officially written down, which explains when a purchase made through an app is not subject to the 30% fee?

I think that you have mis-interpreted

For applications and all in-app products that you choose to sell on
  Google Play

to mean all purchases made through apps distributed via Google Play rather than purchases made using the Google Play Store. When you use the Ebay app they don't take payment via Google Play and therefore do not need to pay Google 30%.
Having said that... as mentioned by Dan Hulme the Google Play terms prohibit using other payment mechanisms for purchases that are are entirely within the app (i.e. excluding magazine subscriptions, other kinds of downloadable content, and purchases of physical goods)

App purchases:

Developers charging for apps and downloads from Google Play must do so by using Google Play's payment system.

In-app purchases:

Developers offering virtual goods or currencies within a game downloaded from Google Play must use Google Play's in-app billing
  service as the method of payment.
Developers offering additional content, services or functionality within another category of app downloaded from Google Play must use
  Google Play's in-app billing service as the method of payment, except:

where payment is primarily for physical goods or services (e.g., buying movie tickets, or buying a publication where the price also
  includes a hard copy subscription); or
where payment is for digital content or goods that may be consumed outside of the app itself (e.g., buying songs that can be played on
  other music players).


text:
Control Upload Location on Google Drive for Scans
Google Drive on Android has the really helpful scan feature which I use all the time. However, it would be really great to be able to control where the default location for those files in Drive is.
Is this possible, if so how do you do it?

If you add the Drive Scan widget to your home screen.

Then it will ask you where you want subsequent uploads to go.

Then after that you can just use that shortcut to scan things and they'll go to that default folder.


text:
Droid 2 Global - Will switching from Global to CDMA-only improve battery life?
I recently got a DROID 2 Global with Verizon and am looking to maximize my battery life. I am aware of the need to dim my display, disable Wi-Fi and GPS when not using it, increase sync intervals, and all that good stuff.
However, in my continuing effort to maximize my battery life without shutting down stuff I really need, I came across the network mode settings. Since I am not planning to leave the U.S. any time soon, I don't need global so I've switched it to CDMA.
I have heard that this might not make a difference because the phone only searches for the Global network if it can't find CDMA. However, the source didn't seem fully reliable
Question: Will switching to CDMA-only use less resources (and power) than Global, or will it make no difference because Global and CDMA-only perform the same in the presence of network?

Since Verizon is CDMA-only in the USA, as long as your CDMA reception is strong there will be no reason for the phone to search for GSM.  If you find yourself in a very low/no-signal area, however, the phone may hop over to GSM to search, even though it cannot connect to any domestic GSM network.  There's no real downside to switching this setting to CDMA while in the USA, as long as you remember to make the switch back when you travel overseas.

This saves significant power on my D2G; not normally, but when I go to these areas of SW Wisconsin where there's all these valleys with no phone service at all, the thing just sucks power switching between CDMA and GSM modes looking for service.  It waits at least 30 seconds before starting a GSM search though, so if you don't lose CDMA at all (or just in little spots) it won't affect power use at all.  The phone has the (so-called) band lock on it (which doesn't really block the bands, but does block US GSM carriers from operating on it at the radio firmware level.)


text:
How to transfer contacts in my outlook pst to Samsung Galaxy S II (or - any android phone)?
I am having my contacts backed up in my outlook and now i will be able to export it to .pst and from that is it possible by any means to bring the contacts to my android phone (Samsung Galaxy S II) ??
Please help..
Kindly give me all the possible options

I am slightly inclined to think that these type of questions are really off topic. They are not really android related. Since the answer to these questions are ALWAYS a tool to sync outlook with your GOOGLE account, not the actual device.

To give the OP the benefit of the doubt, it's usually unclear to a new Android user that their devices sync to Google services.

I agree, which is why I didn't actually vote to close it or anything...

The process is pretty straight-forward.

In Outlook, export your Contacts into a coma-delimited text file (.CSV).  Depending on the version of MS Outlook you are running, the location of this feature may be under a different menu item.
Open up a browser, go to Gmail and login with the same Google account you use on your Android phone.
Click on the "Contacts" link, then click on the "More actions" button and select the "Import" option.
Now navigate to wherever you have saved the CSV file from step 1 and select it.
After the import process completed, your Gmail account should now have all of your Outlook contacts.
On your Android phone ensure that your Google account is set to synchronize the contacts by going to Menu -> Settings -> Accounts & sync, selecting your Google account and ensuring that there is a checkmark next to "Contacts".
Also make sure you are allowing background data and auto-sync on the Previous screen.
Again tap on your Google account and un-check/re-check the box next to "Contacts" to force an immediate sync.
Wait several minutes and check the Contacts app - all of your exported contacts from Outlook should now be on your phone.

Keep in mind that this is a one-time, one-way sync.  If you want to have any changes you make in Outlook to automatically sync to your Android phone, you will need a 3rd-party application on your Windows machine that will auto-upload your changes to your Google account.

Under tools there should be a MessageSave command that will allow you to export your contacts to a .vcf file, which you can put on your sd card and import from the contacts application on your phone.
This is a link to doing the same thing with the goal of exporting for Mac devices, but should work the same, and this is a detailed step by step to bulk export to a single vcard. Both should do the same thing, and both should get your contacts to your Android phone!

GO Contact Sync will sync your contacts between your outlook and your Google account. your android device will then sync with your Google account and everything will be in sync.
You can probably find tools to sync your calendar as well, if you wanted to.


text:
Is there a way to stream all audio from PC to Android via USB?
My headphones socket on my laptop is busted, and I'm wondering if I can stream all the audio (every sound the PC makes) from my laptop to my Android, so I can use the headphones connected to the phone.
It has to be by USB/Firewire, as my laptop doesn't have Bluetooth...

I've made an app called AudioRelay which allows you to do that.
It's mainly used over Wifi but you can use your phone's USB tethering option to create a USB connection.

First, download and start the server on your PC
Launch the app on your phone
Enable USB tethering (there's a shortcut inside the app)
Click on the new server entry to start streaming!

You can check this video (2:25) to see the feature in action :)

This works amazingly well! Thank you!!

This answer should be accepted

You would better off getting a pair of USB headphones than streaming it to your phone.

You can use SoundIt to stream audio from your computer to any other device easily, it's designed specifically for that.
It also lets you control the stream audio volume remotely.
Disclaimer: I'm the developer of SoundIt.

I've not found a good solution for this to work over USB, but I have gotten it to work over wifi as well, with a much cheaper (free, or $3.99 if you want network compression) option with SoundWire than the Airfoil solution in Mannii88's video.

I had the same problem.
Found newer solution. It is quite difficult(I really mean it) to install but it is very powerful:

It has very high quality of audio (I'm not sure, but it either lossless or very close to it).
And it has really low latency (I can't properly test it since my smartphone bugged and has 200-300ms latency even on wired headphones)
Uses only USB connection. It uses lower level USB protocols instead of usual network protocols.
Currently only supports mono or stereo mode.

Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.

This video may help. It is through Wifi. If you have connected through USB or something else, you can play media files through your handset. There are apps for that. But, since you are asking for every computer sound, guess, you can do that only through WiFi. Hope that Youtube video helps! Thanks! Vote, if you find this helpful. :-)


text:
How do I enable NFC for my Phone
There have been a lot hype about NFC lately, and I am eager to try it out, but unfortunately I dont think my HTC Desire HD supports NFC. Is there a way to enable NFC for HTC Desire HD ?

Negative. The HTC Desire HD does not have an NFC chip.

At this time there is no external accessory for android phones that provide NFC to phones lacking this capability and your phone does not have this capability, so no, you can't use NFC on your phone.


text:
How to set Now SMS as default SMS app?
I have Nexus 7 2013 LTE with Android 4.4.2. I want to set Now SMS as the default SMS app but I have not been successful. After choosing it as the default, the popup is still shown next time I start Now SMS!
Can anyone help me out?

What are the other options on this pop-up?

It shows a popup "Now SMS needs to be default sms app to work properly" with 2 options: cancel and ok

I tried Mighttext also but it couldnt send a sms to check my balance 3G!

Go to Settings, and under the "Wireless & Networks" section tap More....  There should be an option called Default SMS app.  Tap it, and select the "Now SMS" app.  You should be all set now.
[Edit]:
Apparently, Google deliberately disabled the SMS functionality on cell-enabled Nexus 7 tabs (both 2012 3G and 2013 LTE tablets are impacted) with the 4.4 update. The recommended solution is to flash a custom ROM that re-enables the setting.  Keep in mind that this will require unlocking the bootloader, which may void the warranty.

I tried that so far but the option is not there. It seems that something is missing when i update to 4.4.2

Is the "Default SMS app" option not there, or is "Now SMS" missing from the selection list?

Sorry,i mean that "Default SMS app" is missing

See the update.


text:
How to get Google+ application even outside US?
I have an account on Google+ but Android Market does not allow me to download Google+ application.

I live outside the US (UK) and I was able to download the application without issue from the Market

Since this isn't specifically an issue with Google+ but rather with country restrictions in the Market, this looks like a duplicate of http://android.stackexchange.com/questions/11154/how-to-install-apps-which-are-targetted-for-another-country

Have you tried on both the phone and the web?

Well I couldn't download it from the market app on my phone in Germany, but I was able to install it from Play Store.
Otherwise you might try installing market enabler and fake that you are in the US.

This is precisely the same Android Market that the asker says does not allow him to download the app. I also live out of the US and the market does not let me download it either.

If you don't mind getting it from untrusted sources, you can google "google plus android apk", and this will show you a list of repositories and forums to download it from.
Note that, as a is the nature of such, let's call them, untrusted sources, there's no guarantee that either they or the google query will persist for long, so I'm not even bothering to link to anybody.

You can install from here but may be its in development phase and not activated
Google+

This is precisely the same Android Market that the asker says does not allow him to download the app.  I also live out of the US and the market does not let me download it either.

Why down vote? He is correct.

Thanks XperiaMiniPro...
Seven vote for same my copied answer, but I got down vote Strange !


text:
Is there any app which can tell which app is using internet?
I have installed lots of apps on my phone. For the last couple of weeks i am facing one issue. Even when i am not using internet infact even when i am not using my phone at all, a window pops up and says you have just downloaded ??mb of data!!! and because of this my battery is draining very fast. I have to charge it twice a day. I don't even know which app is accessing net,
I suspected the pulse feed reader and google+ for this. Uninstalled pulse reader but still there is problem. If i could got to know which app is that then i will just uninstall that.
Phone: HTC Desire S
OS: Android 2.3.3


text:
Is HTC Sensation 4G based on Android 2.2 or Android 2.3 OS?
Is HTC Sensation 4G based on Android 2.2 or Android 2.3 OS?

HTC Sensation comes with the Android 2.3 Gingerbread but "wearing" the HTC Sense (3.0) mod.
Sensation is also in-line for an upgrade to ICS (Ice Cream Sandwich (Android 4.0)) early in 2012.


text:
No auto-brightness option in LG L90 dual
My L90 has no auto-brightness option. Could anyone please suggest a way to fix the issue?

The L90 lacks an ambient light sensor, so there is no true auto brightness method.
XDA user gdjindal has a unique tutorial for adding a pseudo-automatic function on the Optimus L9 (it'll most likely work on your phone as well): link

Other option is to use my app. It is real auto brightness. "Auto Brightness by PP"

Tell us why we should use your app. Features, good reviews? I'm not just gonna follow a random link.

You can see on good rate (4.5-4.6), and positive review. Even though it has a few download count because I just put it into app store this year, but the range is going up. More feature please read in the app link, to prevent "too much promote app" rule. Thanks.

authors: ปรีดา ตั้งนภากร


text:
Exporting GPS data from app-internal database
I am trying to create a height profile from the GPS positions I recorded last week while hiking. I used the App GPS Logger (now called GPS Offline Logger) on Android 2.3.5/Samsung  GT-S5570 and managed to have it create .kml-Files, and from the second day on, also .gpx-Files. Now, the .gpx-Files contain a lot more information (like accuracy and height) than the .kml-Files (Which are just a <linestring> with a list of coodinates).
Is there any way to have the app create the .gpx File for the missing day or can I (maybe using ADB via Ubuntu) directly access the application's internal database and get the data from there? (If I click "show logs" and then long-click, "show details" twice, all needed information is displayed.)

Ok, so the program still produces a logfile called location_log.txt with all of the important data. I wrote a script in python to export it:
#!/bin/python
#
import codecs, os
__author__ = 'lukas'
path = "/path/to/the/folder/"
ins = codecs.open(path + "location_log.txt", "r", 'iso-8859-15')
array = []
for line in ins:
    linenew = ""
    count = 0
    for char in line:
        linenew += char
        count += 1
    array.append(linenew)
ins.close()

print """<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<gpx   xmlns="http://www.topografix.com/GPX/1/1" creator="GPSbgLogger" version="1.1"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd" >  <trk>
    <name> GPSbgLogger DATE </name>
    <desc> GPX export file </desc>     <trkseg>"""

for line in array:
    if "20140228" in line: #OR ANY OTHER DATE YOURE INTERESTED IN
        if "   gps " in line:
            info = line
            otherstuff = info.split("   gps")[0]
            latlonheight = info.split("gps  ")[1]
            datetime = otherstuff.split(": ")[1]
            latlonheight = latlonheight.split(",")
            date = datetime.split(" ")[0]
            time = datetime.split(" ")[1]
            print "<trkpt  lat=\"%s\" lon=\"%s\" >"%(latlonheight[0], latlonheight[1])
            print "<ele>%s</ele>"%(latlonheight[2][:-1])
            print "<time>%sT%sZ</time>"%(date[:4] + '-' + date[4:6] + '-' + date[6:], time)
            print "<src>gps</src>\n</trkpt>"

print """
</trkseg>
  </trk>
</gpx>
"""


text:
How do I change the Umi Super's shortcut button to take screenshots?
I have a Umi Super (rooted) device with one shortcut button (press it, and it opens an app of your choice)
I want to remap the key to take screenshots.
I have tried Button Mapper - but it takes to much time to take the screen shot, or sometimes it does not even take it.
I am open to any solutions, exposed modules /root apps / etc

Install Xposed edge module (see the help and support section on basics of how to use this module)
Select Keys from main menu and tap to reveal the next screen which has hardware keys listed (You can also add hardware keys if not listed). In the corresponding drop down menu you have actions of click, double click and long press. Map the action to taking screenshot (full screen / selected region)

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
How to Audit Android Apps (for screenshot activity)
How do I audit my android's apps to determine which apps are taking screenshots of my activity?
I recently installed & ran diskdigger to undelete an image I had accidentally deleted, but the image remnants that diskdigger found were shocking. There were dozens (maybe >100?) screenshots of my activity--ranging from innocuous shots of my home screen to images taken when I was inside my (encrypted) chat apps and bitcoin wallet.
Needless to say, I did not take or delete these screenshots.
My phone is a rooted Nexus 5X running Lineage OS 15-1 (Android 8.1.0). I'm using mostly software from fdroid, though I do have a few sideloaded from yalp (I don't have gapps installed), such as whatsapp and diskdigger.
How do I audit the apps that I have installed to determine what is responsible for taking (then deleting) these screenshots of my activity? To start, how do I:

List all of my apps, sorted by number of times the app has taken a
screenshot since installed
List all of my apps, sorted by number of times the app has written a
file to disk since installed
Generate a log and/or toast every time a screenshot is
taken--recording the timestamp, app responsible, and filename
Generate a log and/or toast every time an app writes a file to
disk--recording the timestamp, app responsible, and filename
Generate a log and/or toast every time an app deletes a file from
disk--recording the timestamp, app responsible, and filename

TIA!

Taking a screenshot requires root or system permissions (or an root exploit). I assume your ROM is a official Lineage release. Assuming further that their signing key has not leaked the app you are searching for should use root permissions is part of the OS. Therefore a first step would be revoke all allowances for apps to use root permissions.

List all of my apps, sorted by number of times the app has taken a
  screenshot since installed

Android is an OS optimized for Smartphones with flash memory. Flash memory degrades by writing to it, therefore Android is optimized to reduce write operations. Therefore Android does not create extensive log files. Only some small logs in RAM exists (e.g. logcat). Hence AFAIK there is no such thing like a log that records which app has created a screenshot.

List all of my apps, sorted by number of times the app has written a file to disk since installed

Again there is no such log. However if the app is still active you can monitor "disk" activity using the inotifywait-for-Android - a command-line application that can record read and/or write access to certain folder on your phone. It looks like you have to compile it yourself using NDK before using it - I did not found an pre-compiled version.
A similar API as used by inotifytools is available to Android apps, therefore there may be apps providing similar functionality.

Generate a log and/or toast every time a screenshot is taken--recording the timestamp, app responsible, and filename

If the screenshots you found were created using the screencap binary (the android tool for creating screenshots which is included in Android) you could try to replace this binary with some other binary.
However if the screenshots were created using a different way I don't see a way to detect or prevent this.

Generate a log and/or toast every time an app writes a file to disk--recording the timestamp, app responsible, and filename.
Generate a log and/or toast every time an app deletes a file from disk--recording the timestamp, app responsible, and filename

-> See what I wrote in (2.) about inotifytools

thanks. fyi,  I disabled root permissions (for all apps + adb) on it for few days, then rooted it again (I had to root it again in order to run diskdigger to find the deleted screenshots). Unfortunately, I found that the screenshots were still being taken when root was not permitted.
I haven't had a chance to try inotifytools yet..

You can also use selinux policy rules in permissive mode to audit an android application, but Google intentionally makes this extremely difficult.
In case anyone is interested, I ended up finding the source of the screenshot images: it is Android's built-in "recent apps" switcher. For more info, I documented my investigation process and findings on my blog

https://tech.michaelaltfield.net/2018/11/09/android-security-auditing-investigating-unauthorized-screenshots/


text:
Google Play Store is unable to search for updates
I have a THL T9 Plus with Android 6.0. Google Play Store version is 8.5.39.W-all [PR]. Google Play Services is version 11.9.51. I try to install updates on phone, but I get the error message, "There was an error during update process." I can't see even new version of installed applications in the list.
I tried to force stop those processes, wipe caches, restart phone and I already updated Google Play Store client version, but none of these helped, I got same error message.

There are bunch of things you can try mentioned here

Here are list of things can be done like uninstall updates and install fresh again, you can get a list of check here

Yes, fresh install seems a good solution, but where to found proper apk file?

It is a system app ; you can't uninstall or install. What you can do is to uninstall updates by Settings > Apps > Google Play Store and tap on “Uninstall updates”. Connect to Wi-Fi and your updates will be installed automatically


text:
How do you disable geotagging for stock camera?
I have stock (i.e. pure Google with no manufacturer customizations) Android 4.3 and I use the built-in camera app. I searched around on the camera app settings but couldn't find any mention of GPS or geotagging. I also searched around the settings → location but didn't find anything specific to the camera.
How do you disable geotagging for the built-in camera app?

People can help you, if you mention your device name or model with android version. Because different device has different type of settings, even if they are Android.

re - "what device is this": I listed it as "stock android 4.3" because I believe all stock android 4.3 devices should have the same built-in camera app. I was trying to make the question more universal instead of limiting it to one hardware device.

I don't want to undermine your beliefs, but different manufacturers tend to exchange such components, so for this I have to agree with chris. I however agree with you that you mentioned the Android version already :)

To the best of my knowledge 'stock Android 4.3' built-in camera app will be the same no matter what hardware as long as the hardware is running stock Android 4.3 (EX: Nexus 4, 'Pure Version' of HTC One, 'Pure Version' of Galaxy S4). When I say 'stock Android 4.3' I am referring to the version of Android that does not have manufacturer added skins like HTC Sense, Samsung Touchwize, etc. I'm no expert though. Just a casual user.

@TrevorBoydSmith Thanks for clarifying. Usually when people say "stock", they mean whatever came with the phone, even if that includes manufacturer customizations. That's why everyone wants to be sure. I've taken the liberty of adding that information to your question.

@DanHulme Thanks for informing me on the usage of 'stock' in this context (Funny how the meaning of words always changes depending on the situation, group!). Also thanks for updating the question for me.

A tip, if you're about to upload a picture (even if it has geotagging in there or not), upload to imgur server where it actually does strip out the EXIF data (that is where geotagging info gets stored in) or look at this answer to manually strip out the EXIF data yourself. :)

Follow these steps, if the icon in (3) has a line through it then it will not store your location in your images.

Open the menu
Choose settings
Tap the location icon

authors: กิตติพล ปรีชารัตนศิริ


text:
How does MHL work?
I've done (quite) some googling, but I still don't get it. You need an MHL converter, or adapter, or something. On one end of the adapter, all resources say, there is a "standard micro-USB" port, and on the other a "standard HDMI port". If they are all so standard, what's the fuzz about 5-pins vs. 11-pins? The HDMI port must be standard for all displays to work with it I guess, so it must be something on the (apparently not so standard) micro-USB side in the phone. Looking in my phone, I can only see a 4-pins female micro-USB connector. Or are these 11 pins (I have a Galaxy Note II) buried somewhere deeper inside?
Secondly, there is often talk about this "switch" that's thrown as soon as an MHL adapter is connected. USB-OTG is disabled and it becomes a display input/output port only (input for the remote control, if available). I guess that means it's not possible to connect it through a USB hub to the phone? I need a bluetooth mouse and keyboard instead of a USB mouse and keyboard if I want to do this? Or is this only applicable for the 5-pins MHL devices, and is the point of the 11-pins one that I can connect my USB hub to the micro-USB port on the adapter?
Thirdly, I've also seen USB 2.0 to HDMI converters. They're twice as expensive as MHL, but they have a normal USB connection and output HDMI, so that would fit directly in my USB hub. (MHL would also fit through a microUSB->USB converter, but it seems there is something special about the micro-USB end that I don't get.) The question is whether my phone (a Galaxy Note II) has drivers for that kind of hardware, and whether the hub is fast enough. Any ideas?
Lastly, if anyone knows this, I'm curious about how this works on the inside. The graphics chip of the phone sends the video-out to its micro-USB port, just like it would with HDMI, or does it have some custom protocol that the MHL adapter then converts to HDMI? What about HDCP, how can you prevent someone from reading the output stream if every TV in the world can decrypt it already? Or is it like SSL a way to setup a secure connection to the TV so that others can't read your data stream if they were to capture it?

MHL is a new wire protocol, using very clever signalling technology to use very few wires to transmit a lot of data: 1080p video, 7.1 channel surround sound, and RCP remote control data. MHL also uses the existing power lines on USB to allow the TV to power the connected device.
When connected to an MHL display, the display controller on the phone speaks the MHL protocol just like it would speak the HDMI protocol to an HDMI display. The MHL standard itself is just the signalling protocol: it doesn't specify what connectors are used. This allows the micro-USB connector on a phone to detect when it's being used for MHL, and switch to speaking the MHL protocol. Apart from the connector, there's no relationship between MHL and USB, so you can't use a USB hub: the cable has to connect directly to the device.
HDCP
HDCP on MHL works in exactly the same way as over an HDMI or DisplayPort connection: the intention is that only consuming devices with a valid, unrevoked device key can perform key exchange and thus decipher the content. See the Wikipedia page on HDCP if you want to learn about that, or about why the intended behaviour is not the actual behaviour.
MHL connections
There are three types of cable. The first is not an adaptor at all: it's just a cable for connecting an MHL producer such as a phone to an MHL consumer such as a TV. You can only use this if your TV supports MHL and has the appropriate connector.
The second is the 5-pin micro-USB-to-HDMI adaptor you've mentioned. You can still only use this if your TV supports MHL, but it means the TV doesn't need a special port. It doesn't use the HDMI protocol, or convert any signals: it's just a cable with a micro-USB connector on one end and an HDMI connector on the other.
The third is the 11-pin micro-USB-to-HDMI adaptor. This is needed for newer Samsung phones, which are incompatible with the 5-pin adaptors. Only the connection to the device is different: as far as the TV is concerned, it works the same as the 5-pin adaptor, and the TV must still support MHL. As you've surmised, the use for the extra pins is that 11-pin cables support using USB-on-the-go at the same time: the adaptor is Y-shaped, with a micro-USB connector at one end, and HDMI and micro-USB connectors at the other. The USB part works as normal and can be used with hubs, either in host mode or peripheral mode.
Illustration (credit: Rick Wessley)

DisplayLink
The other thing you've seen, a "USB to HDMI convertor", is for PCs. Software running on the PC acts as an extra framebuffer, and uses proprietary compression technology to compress the video stream so that it can be sent on a normal USB link. The compression protocol is secret, and optimized for sending computer GUIs rather than movies. The HDMI end of the convertor has enough processing power inside it to decompress the stream into a framebuffer, which it sends over HDMI to the connected screen. The technology is developed and owned by DisplayLink (formerly Newnham Technologies), based near me in Cambridge, GB.
Because they rely heavily on software running on the producer, they don't support Android, and likely never will. And because the compression protocol is secret and proprietary, the open-source community won't be able to supply a driver either. These devices use the standard USB protocol, so they work with hubs, but of course any delay or bandwidth contention caused by other devices will make the display laggy and add compression artifacts.
Since this answer was written, DisplayLink has released an Android solution that relies on an app running on the phone. They claim it works with all of their devices, but it seems to be mainly intended for their docking stations, not the HDMI adaptors.

So there's no product to convert an android MHL signal to a normal HDMI signal? You always need an MHL compatible TV?

@jiggunjer I don't know of one. As all but the oldest HDMI TVs support MHL, there's no demand. If you want to be sure, you should ask a new question.


text:
How can I have android reinstall my installed apps after I do a factory reset?
I have a nexus one and I installed a bunch of apps on it.
After I do a 'factory reset', I go back to 'Android Market' and I see it is trying to download the apps I installed before. However, all of them are stuck in 'Downloading...' - they do not get installed.
I am on WiFi, so it is not an network issue.
Any idea how to re-install those apps?

Sometimes the market gets "hung up" on some of the app downloads. You can long press the item in question that is stuck and then cancel the download.  You'll have to re-start the download yourself, but this will usually fix the problem.

In addition to Bryan's answer, you could try going to Settings -> Applications -> Manage applications and clearing the data for the Market.  That might be easier than manually cancelling every download.

Check out this answer:
https://android.stackexchange.com/a/147872/2960
This I think solves exactly your problem.


text:
Is there a way to erase my personal data without losing my apps?
I have an ADP1 running 2.2.1, and used it with my Google Account. I have to give it to a friend, and want to erase all my personal data viz. email, chat logs, photos in the gallery synced with picasa, and any other stuff that might be synced. But the problem is, I do not want to lose the apps. Is there a way to erase my data, without losing the apps?

Backup your apps using Astro File Manager or MyBackupPro or Titanium Backup.
THEN perform a Factory reset to wipe everything.
Finally, from the backups, restore the Apps, but NOT the data. (Most backup apps allow you to do this.)
Be warned that some apps store data on the storage card, so a fresh install might still pick up the old data off your SD card. Be sure to erase your SD Card too.

Every program under 'Settings' - 'Applications' , 'Manage applications' has, when clicked a 'Clear data' button.
This should do what you want.
As far as I know, you will have to be rooted to have a program does this for you.

Note that the "Clear data" does not remove the account(s) in "Accounts & sync".


text:
What changed between versions of the Amazon Appstore?
The original version of the Amazon Appstore was v1.07002, and it appears to still be working fine, so the upgrade to the new version (v1.07003) is apparently not mandatory (unsuprising, given the tiny version increment).  What is the difference between these two versions?  Is there a release log anywhere?
Edit: I believe it's at v1.11 now, feel free to generalize this question.

As of v1.11 (possibly before?), the app itself now contains the changelist.  Just press the Menu button, hit More, hit Settings, and scroll down.

After you posted this I got curious too but I couldn't find a change log.  I emailed Amazon support and asked what changed and where I could find a release log and here's what they said:

Unfortunately we do not have a change
  log detailing the changes made between
  versions of the Amazon Appstore app.
I will forward your feedback on to the
  Appstore team who will take them into
  consideration. Customer feedback like
  yours is what allows us to continue to
  improve and provide a quality product
  and experience.
If you have any other feedback please
  let us know via email or at
  1-866-749-7771
Thanks for contacting Amazon.

This is actually the most direct answer I've gotten.  I've emailed them a couple other questions and got boilerplate responses that looked like they were for different questions.

Google should make it mandatory to publish a change log for each and every change in version number. I, for one, am always interested to see what changes have been made between versions. All too often, you update a program to a new version without knowing why the hell they made one.

I agree but that won't help with the Amazon Appstore app which is distributed outside the Google Market.  The ironic thing is that apps in the Amazon appstore have changelogs, but the Amazon appstore app itself does not.

their response to you is probably going to get into their database of boilerplates responses, at least until they have a changelog :-)


text:
Is there a portable scanner connect to an android phone?
I dont know whether my question is right to ask here. please advise me if I need to ask this kind of question at other areas.
I am investigating to find a right portable scanner to connect with an Android mobile phone (such as HTC Desire). After scanning a paper from a portable scanner, the mobile phone will receive the file as a pdf or jpg. That's it!
Would this be possible to do?
Thanks in advance.

Try to look for Bluetooth scanners. Android supports bluetooth and there is SDK API for it so you could create your own app to receive and process data from scanner.
One such device I could find: http://www.planon.com/products/docupen/xseries

Android has USB host capabilities as of 3.2. Accusoft USB Scanner is a well made app that lets you take advantage of this and connect many USB scanner models directly to your phone or tablet.
Accusoft USB Scanner
Accusoft USB Scanner on Play Store

The second link is dead. An update is required here.

There are lots of scanners like that.  Query "bluetooth document scanner for android"  About 15 will show up.  5 at least from amazon


text:
Find out size of all data ever downloaded
Is somehow possible to find out size of all data I ever downloaded on my HTC phone?
edit:source from which I downloaded data will be also super
Thanks

what service provider do you have?

Why would you need this?

If it's a sprint phone, you can get this information on their website, or by calling #4. This won't get you sources of downloads, but they keep data traffic records for a year.

A similar question on Stack Overflow says you can find this info through the API - android.net.TrafficStats, or /sys/class/net/statistics on pre-2.2 systems. This might help you, I hope.
I wonder what happened to the widget that question's poster was writing...

Newer versions clearly do have this facility, eh?

For newer Android versions you can use the android.net.TrafficStats class.

For new versions you can just go to Settings->Data Usage and wind the start time back from the default of last month to the beginning of time.

Your carrier would keep track of how much you've downloaded over 3G.  I highly, highly doubt they do enough logging to tell you where all of it came from though (and if they did, they'd probably make you pay to access the logs if they let you at all).
There's no way to tell exactly what you've downloaded over WiFi, apart from browser history for file downloads if you've never cleared the list.  Presumably you could modify Android to log everything, but as far as I know it hasn't been done up till now.


text:
Automatic Download of Youtube Channels
I have a couple of Youtube channels I subscribe to. I'm subscribed both on Google Reader and on Youtube itself. Is there an app that checks for new updates to my subscribed channels and downloads them automatically (perhaps once a day)?
My objective is to always have a few videos I can watch while on the road (and offline). I love how Google Listen syncs really well with my Google Reader podcasts and downloads them automatically, but it doesn't work with video podcasts. So is there an app that will do the same with my video podcasts? (either with Google Reader or with Youtube)
Running 2.1-eclair if it matters.

BeyondPod Podcast Manager should do that. There is a "Lite" version with 7 day trial: https://market.android.com/details?id=mobi.beyondpod

YouTube itself doesn't provide any way to download videos for offline viewing; any application that would let you do this would have to scrape the page to download the FLV (Flash Video) file, and then let you play the file on the phone; this might violate the Terms of Service for YouTube.
Basically, there probably isn't a way to do this, at least no legitimate way.


text:
DNS error in android 4.4.2
I just get an new mobile Samsung Galaxy S4 GT-I9505 with Android 4.4.2.
When I try to connect to internet through 3G/4G network, my Chrome always give me an error message:
DNS_PROBE_FINISHED_NXDOMAIN

The internet can be accessed by IP address with the same network.
How should I fix this problem?

My problem is solved as I install avast firewall and need to enable linux shell to access mobile data.


text:
Enter username or password via voice?
Is there a way to enter a username or password by voice?
Google's Voice Search only interprets entire words or phrases but I couldn't find any way to dictate letter-by-letter to an input field.
Is this at all possible in Android?

You can spell out words with the voice input, but it puts spaces between each letter. I can't see there being a feature to support this as saying your password out loud would defeat the point of having a password.
Now if you follow the "pass-phrase" model, where your password is something like "i walk on the beach to relax", then it may work. but again, I don't think it would be a good idea to say your password out loud anyway.

I couldn't find any way to dictate letter-by-letter to an input field. Is this at all possible in Android?

Currently, not possible with Google. Some other programs support it, eg Dragon or CMU Sphinx. https://stackoverflow.com/a/34096295/395857


text:
I can not get rid of information about a file transfer
Hi I have HTC phone with Android system. Several days ago I tried to transfer a picture from another phone by bluetooth. Now I can't to delete a notice about transfer.
I mean that when I click on transfer notice and I next click on accept or discard this notice is still visible.
Any suggestion?

i did restart my phone to default settings. This is not solution but it's work ;)

Try clearing all notifications. There is a button, my phone is in Spanish but I guess in English it should say "Clear" or "Remove all" something like that.


text:
Download google doc to my phone and view it offline?
Is there a way for me to download google doc to my android so that I can view it off line (i.e. without data connection)?
Thank you.

You can download the file as a pdf and then transfer that file to the phone using something like Awesome Drop.
Then view it on the phone with a pdf reader.

so there is no normal way to download it?


text:
Galaxy Tab 10.1" 3G locked?
I'm on vacation in the UK and the Galaxy Tab 10.1" is coming out here the first week of August. I was wondering if the tablet is locked to one of the networks here in the UK or if it's unlocked and I can essentially take it back to Canada or on the rest of my European travels and use on any 3G network with that counties providers?

You should be able to get unlocked version, but most likely only from online stores just like handtec (if admin feel this can be advertising please remove link)