text:
Phone randomly black screens, forced to remove battery and reboot
I have looked through the site, and it doesn't seem this has been answered yet.  Once a day, at some point I pull my phone out of my pocket and it refuses to wake (black screen only).  It isn't off, because the power button does nothing. I have to remove the battery in order to reboot the phone.  I have looked for an app to help me find the cause (i.e. Log Collector) but it doesn't help because this isn't as simple as an FC, I am unaware when it happens until I pull my phone out.  Is there a way to debug/find the culprit?
My info: Samsung Galaxy Gio GT-S5660, Froyo, rooted
Note: I am running SetCPU (no profiles) and Tasker, they are suspects but I haven't been able to get an app to give me a continuous log.

This needs some new tags, but I don't have enough reputation to create any :).  Also, I thought setCPU might be the culprit if the phone refused to wake b/c of the minimum CPU speed being too low, but I am currently set at 245min/800max, so I don't think that is the issue.  I suspect Tasker, but I have not way to find out for sure yet.

I found this post: http://android.stackexchange.com/questions/4614/phone-keeps-restarting-shutting-down-randomly-is-there-any-logging-to-help-debu but it doesn't address this issue in particular.

I would definitely suspect the clockspeed modification. SetCPU has never played nice with my Samsung Galaxy S.

I bumped the minimum up to 320, and so far no problems.  I'll stick with this for a while and see if it works.

Is it possible that the device is overheating? It's coming out of your pocket, after all.

I think I had the same problem recently. When I pressed the phone's power button to wake it up, the display would turn on, but stay completely blank. It happened multiple times a day for me and I got frustrated, so I tried three things and one of those seems to have fixed the problem. Knock on wood.

I reformatted my external SD-Card.
I removed almost all of my media files from the phone.
I disabled JuiceDefender's CPU frequency scaling

My prime suspect was the SD-Card, because the problems started to occur, when I inserted it, but I cannot be sure.

You mention removing CPU scaling in Juice Defender...that makes me suspect it as the culprit, and the CPU scaling from setCPU on my phone as the culprit.  I'm currently trying shutting down 1 thing at a time to try to find the answer, but it takes time since it doesn't always black screen on me.

@Mingo I hope you will find the definitive answer :-) I was too impatient to try one solution at a time. BTW: my battery life increased after I disabled CPU scaling. Probably because the CPU can sleep more now.

As it turns out, this issue is a bug in the WiFi, causing it to randomly freeze up the phone, requiring a reboot.  Shame on Samsung!  I'm only un-accepting this answer so future Gio users don't get confused as to why this doesn't solve their problem. As this point, waiting on Samsung to update the fw and solve this, or for Cyanogenmod to notice and develop for the Gio.

I had the same problem with my Gio and I found out that it's because i leave WiFi ON for a while without working with phone.
This is a bug in Android-2.2 Froyo and it's solved in 2.3 Gingerbread which has been released on December 6, 2010.

When I had this happen on my HTC G2, it ultimately turned out to be a hardware issue. If disabling the SetCPU doesn't fix it, then I'd check your warranty coverage and make sure to get a replacement before it expires.


text:
In Explorer, after performing factory reset Google play store converted to Market place
I performed factory data reset of my another device "HTC Explorer". And before performing the reset Play store was there but now it disappears, and instead of play store now its Market place. So how to convert Market place to Google Play Store again?

Google Play was formerly Android Market. Your phone would originally have had Android Market (I am assuming its an old one, probably Gingerbread). When you did a factory reset all the updates were reverted back included on Android Market (aka Google Play).
Android Market automatically updates itself so give it some time and it should update itself to Google Play.

Ya actually the Android version is 2.3.5, but then to how much time it can take?

@NeeleshPandey: I am not aware of that. But keep it connected to WiFi/3G/GPRS. It should happen as soon as your Android Market detects there is an update.

Yes Sure, I will connect it with WiFi, and will check

Sometimes it also helps just to open the app and trying to install something. As the "market" app needs to connect to Google's servers for that, the latter notices it's outdated and might trigger the update (I'm not entirely sure which way this works, but I frequently noticed that auto-updates to Google apps happened when I just updated another app, i.e. used the playstore app).

source: Stack Exchange

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

sort: votes


text:
My Nexus One cannot connect to Wi-Fi being broadcast by a Windows 7 laptop
My Android (Google HTC Nexus One) is not detecting Wi-Fi being broadcast by my Windows 7 laptop. However, my iPhone can detect the laptop's network. Why is that?
Is there any solution for connecting my Nexus One?

It sounds like you're trying to broadcast a wireless signal using your laptop so that your mobile devices can connect to it. If you set this up via the standard Windows 7 networking tools it would have created an ad-hoc network, and Android does not support ad-hoc connections out-of-the-box.
You can, however, use a "softAP" (that is - software access point) to broadcast a signal as an AP instead of in ad-hoc mode. Connectify works great for me, and I would recommend giving it a try. A list of their supported wireless cards can be found here.
Additionally, you can try to "enable" ad-hoc networking on the Nexus One using the steps described in this forum thread. These steps will require that you have rooted your device, however.

I have tried Connectify too but my iphone and android device was not opening any website, while they were connected with connectify. I'm getting the message device "connecting" all the time in connectify but not "connected". for both iphone and android

@Jitendra: Hm, I suppose it could be a firewall issue or your card might not be fully supported. I'd also check to make sure the correct device is selected since I think it defaults to re-broadcasting the wifi signal. You can see that if you right click the tray icon and select Show All Options.

@Jitendra: Oh, so they never fully connect to Connectify, then?

They detect the wi-fi signal but unable to connect to internet

@Jitendra: I'm not entirely sure how to troubleshoot that, to be honest. Connectify "just worked (TM)" when I installed it, and I use it without issue almost every day. They have a support page that you could try, or maybe it would make for a good question on Super User. Sorry I can't be more helpful with that :-/

If you're using a different band of wireless-N, your wi-fi may not be detected by your phone, but can be detected by your laptop. I.e. I have a dual band D-Link wireless router at home. All my laptops can detect both 2.4Ghz and 5Ghz bands, but my phone, iPod and Nook only "see" the 2.4Ghz band.
Check your router's band to verify it matches what your phone can see (usually 2.4Ghz only).
Another thing to check in the router is security measures: you (or whoever set up the router) may have limited access or visibility, based on MAC addresses, or a manual access page.
Update:
The original question was changed after I posted my reply - which was right at the time. Should I delete it completely, or just leave it here to collect negative replies?

specially should check the  CHANNEL on the router wifi, because somethings something above 12 does not work N1

The computer is connected to the router in this setup, not the phone. The router band is irrelevant to whether the phone can connect to the computer.

The OP changed the question after  answered.

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


text:
Low disk storage Space
I have not added applications to my phone.  I have actually been deleting applications from my phone because it will tell me I have low disk storage space.  Sometimes it goes away, but will come back at another time when I still have not added any applications from the market.  I'm not sure how to keep it from telling me this...

I have the same problem. It's getting ridiculous: I have to re-install Android every month.

Cache from installed apps also resides on the phone's internal memory, and if not cleared in a while can grow large enough to fill it up.  Go to Menu -> Settings -> Applications -> Manage applications -> Menu -> Sort by size.  Then tap on the largest apps and tap on the Clear Cache button.  GMail, Browser and Maps are known space hogs.
You can try various apps that clear cache with one click.  For example, aCCleaner or CacheMate.  Keep in mind that some of these apps require root.


text:
Disable Data connection automatically
I own an Optimus One. I want the Data Connection to go off, everytime I lock the keypad. For that, now, I manually go to Setting--> Wireless & networks--> Mobile Networks--> Data Enable.
Is there any way to automatically disable the data when the keypad is locked(or phone is in sleep mode) and enable it when the phone wakes up?
Also, I can't find Mozilla Firefox in my app store. Why it's so?

You probably need to use some sort of 3rd party program like Tasker, Locale or AutomateIt.
These programs allow you to set triggers such as:

starting an app
screen on/off
connected to Wi-fi
location
etc...

and perform actions based on that, such as:

toggle data
toggle GPS
run an app
etc...


text:
Can a phone act as computer replacement?
Given the power of current day smartphones it seems like many could work as basic computer replacements.  In the past Microsoft tried to provide a display dock to turn a Microsoft Phone into a PC. Is there something similar for Android phones?
I guess some of them allow HDMI output, but is the software adapted to work with a keyboard+mouse? Would a phone be able to power/connect to an external hard drive?

You haven't heard of Samsung DeX?

There is also "Huawei Easy Projection". Together with a Bluetooth keyboard and mouse this also comes close to a desktop.

As long as an Android device has OTG support, it will support hardware mice and keyboards by default.

You can accomplish this with Samsung Dex.
What you'll need:

A Compatible Samsung smartphone.  As of the time of this post, this includes the S8, S9, S10, Note8, and Note9.
Either the Dex Pad or Dex Station to dock your phone and connect it to an external display, mouse, and keyboard.

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


text:
How can I copy entire chain of text messages (not just a single one) with the stock Android messages app?
How can I copy or export an entire chain of text messages (not just a single one) with the stock Android messages app? This is needed for a claim.
I know I can screenshot stuff, but the date for older messages is missing. I know I can long press on a single message to select it.
I can long press on multiple messages.
But that's beside the point: how can I grab the data --- message, date & time received?
If it's relevant, the phone is Pixel 4a.

Referring to the title. note that Android doesn't have the stock messaging app, instead each manufacturer may use their own messaging apps. For example: Google Nexus and Pixel series use Google Messages, while Samsung uses Samsung Messages.

Stock SMS app on Pixel 4a does not have this option and you need alternative methods.
Use SMS Backup and restore

Option 1 : Take a complete backup of your SMSes and from the app see "Backed up (time)" and tap view details. It will list SMS Backup. Tap on that to view conversations and all your conversations are listed. From the 3 dots menu against the conversation you want select print conversation and it will be printed as a PDF file with date and time stamps. Example below (You can get sent and received. I chose a conversation that doesn’t reveal personal details). From the pdf you can copy and paste wherever needed.

Option 2: From settings → backup settings → selected conversations only, choose the conversation you want and repeat steps in Option 1 to get a print, share or copy to clipboard.

I am not affiliated  to this app but it's likely the best of it's kind.

For those who have MMS messages also and need the same solution , this solution will not work but you have an alternate solution here

Just tried this on your recommendation, and it worked. The export format took a little work to extract the simple text, but I was able to do this with a modern text editor.

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


text:
Is 3G network always available when 4G network is?
I'm going to buy an Android phone which has unfortunately blocked 4G calls by the operator. Only 3G calling will be possible. I think it's enough for voice, but:
Since I travel a lot, is the 3G network available everywhere when 4G is? Or is it completely different technology so I might end up in the places where only 4G signals are available, but no 3G?

I had to discard fully functional smartphone because we have no more 3G in germany. This concerned UMTS mobile data only, GSM phone calls still possible.
Nevertheless UMTS is independent from LTE so the answer is NO

If 3G/UMTS is available for calls depends on the country you are living in. A lot of countries have shut down older mobile networks like GSM/2G and 3G or planning to do so.
But every mobile operator and every country it can be different what networks are shut down.

In Germany the 2G network stays, only 3G is shut down.
In Switzerland Swisscom has switched of 2G completely, 3G is still active
In USA 2G networks are mostly shut down already and 3G networks are mostly shut down next year source.
In some Asian countries as far as I remember 2G and 3G has been shut down

So the answer is no, 3G and 4G are totally independent form each other.
Therefore today buying a phone that has no 4G + VoLTE support is not a good idea.


text:
How to use Visual Studio Code on an Android device?
I have Samsung Galaxy Tab S6 and it has cool features to replace laptops, but it is unfortunately running Android OS, and not many development apps are available for Android.
Is there an option to run VS Code at least on an Android device?

There are two ways to use Linux on Android so we can use VS Code :

First easy way (Virtual Network Computing) (VNC):
1. Install a Linux distro via "Termux"
 pkg update -y && pkg install proot wget tar pulseaudio  -y &&  wget https://raw.githubusercontent.com/AndronixApp/AndronixOrigin/master/Rootfs/Ubuntu19/ubuntu19.sh && chmod +x ubuntu19.sh && ./ubuntu19.sh
2. Install Linux GUI desktop environment like "Xfce".
sudo apt-get install xfce4 xfce4-goodies -y
3. start a VNC server on your linux.
sudo apt-get install tightvncserver -y
4. Open "VNC Viewer" on android to start hacking.
you may need to do command vncserver -list to list the port
5. Install vscode for ARM64
6. Optional: Install NodeJS for ARM64.
apt install nodejs

Second hacky way (Linux Natively):

more info:
https://medium.com/@quantvc/running-debian-on-android-device-natively-73545c9b0757
Helpful Resources:
https://play.google.com/store/apps/details?id=studio.com.techriz.andronix
https://play.google.com/store/apps/details?id=com.termux
https://play.google.com/store/apps/details?id=com.realvnc.viewer.android
List of some ARM64 Hackers:
@Lemon1I @boby2001820 @NTAuthority @gus33000
Worth mentioning:
https://github.com/WOA-Project

The question was not to use but to run VS Code on Android.

Is there another way to run vscode on android device?

That worth mentioning link is for advertisement or somehow related to the question or answer?

Related to ARM64 hackers and projects

The open-source version of VS Code is called code-server. To run it on Android (without root) you will need:
Termux from F-Droid as changes to the Google Play Store policies are no longer compatible with Termux releases.
2023 Update
For an easier install use the Termux-User-Repository
From: https://github.com/coder/code-server/issues/5745

pkg install tur-repo
pkg install code-server

Old Instructions
Once running Termux you will need to install a bunch of packages as code-server is an Electron app and needs support from nodejs.
pkg install nodejs

pkg install yarn

Per the Termux NodeJS wiki you should probably have installed:
pkg install build-essential

pkg install python

As they are needed for building native extensions.
And finally install code-server itself.
yarn global add code-server

warning installing code-server takes a while
code-server is now installed and will be the back-end for your front-end which will be a Chromium based browser, like Chrome for Android or Microsoft Edge.
code-server

You'll probably want to run the server in the background like code-server &. The ampersand puts the process in the background.
At that point you'll get some logs about where to find the password.
Open up a browser, as I was using Samsung DeX I used Samsung Internet, connect to 127.0.0.1:8080 and enter password.
In my case I used cat ~/.config/code-server/config.yaml to find out what was configured.

As you can see in the screenshot, even the MS Python plugin seems to work (for now).
A Few Caveats

code-server is not Microsoft Visual Studio Code The summary is that not all plugins are supported, YMMV.

I'm using Termux and code-server with Samsung DeX so I don't have any keyboard issues that others have encountered.

VS Code does not yet exist for Android, so there's no way to run it for now. There are some other good editors though, such as CodeAnywhere that you may be able to use in the meantime.


text:
How do you get Market to work when Android is unable to access Android Market?
Right now I am using an HTC Hero, having firmware Android 2.1, and I have inserted Vodafone, an India SIM card into this phone, and also having Wi-Fi connectivity.
Whenever I try to "sign-in" to Android Market using my Google Account, it always shows

Can't establish a reliable data connection to the server
This could be a temporary problem or your phone may not be provisioned for data services. If it continues, call Customer Care.

Now what do I have to do to access "Android Market" from my HTC Hero phone?

I got the same issue, regardless of the SIM inserted or connection used (in South Africa).  The browser worked etc, but Market just couldn't establish a connection to register or login.  The device was a Sony Ericsson X10 Mini.

I don't know if this helps, but with SFR, in France, I have nearly the same issue ; i can't use the market OTA (unless I use WiFi).
It is due to limitation from the carrier ; perhaps rooting the phone could help to get rid of that limitation.

no need to root the phone, i just tried "Factory reset" and its working now

The problem is Vodafone Live can only access WAP sites.
To get access to all sites e.g. Android Market, Maps, etc. you need to activate Vodafone Mobile Connect. It is a little too expensive, but it is the only solution.

thanx for the answer, but i just tried "Factory reset" and its working now

Hey Thanks... I will try that also...as i also can't access android market from my Samsung galaxy GT I5801...

My solution to this problem (SonyEricsson X10 Mini), after trying all sorts of resets of cache's on applications etc, and the only thing that worked was to do a Factory Reset on the phone.
Just remember to use the Backup And Restore feature first to backup your phone then restore it after resetting it.

Can you verify you have a data connection? Try opening Internet from the apps screen. Can you navigate to various websites such as Google? If yes then you have a data connection and the likely answer is as eephyne points to in that link.
If you do not have a data connection and cannot browse the Internet then you need to call your carrier's customer support, in this case vodafone, and tell them you do not have a data connection. They will walk you through steps to get a data connection. After that then try the marketplace again.

ya having data connection and i can access and view any website

I'm betting what Rob is saying is likely the case, your carrier is probably trying to block the marketplace over the air (OTA). I would call the carrier and play dumb, explain to them your situation and see what they say. If the carrier is in fact blocking access then there isn't much you can do but change carriers.

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


text:
Disable telephone control (answer call, call) from Bluetooth headphones
Is there a way to disable telephone control (answer call, call) from Bluetooth headphones? I just want to listen to music.

Go to Setting - Bluetooth and find your headphone device in the list and press the settings gear next to it. Uncheck Phone Audio or similar entries related to phone/telephone (may vary by Android version or OEM).

On my Samsung S9+ Android 10 phone the two setting options are "Calls" and "Audio". Disabling Calls disables all phone functions through the headphones, including I no longer hear phone call audio during a call through the headset. Which satisfies the question, I'm just pointing out that it does more than just disable phone controls. Also even when this setting is disabled my headphones still announces "redialing" if I accidentally double-tap the button, but it doesn't actually do anything. Other than giving me a scare whenever it happens.

One other point, the instructions in this answer must be done while the headphones are currently connected. At other times it shows both "Calls" and "Audio" turned off for the device even if you use the headphones for those functions. You can even see the sliders move if you are in the setting screen for that device and then power off the headphones, the sliders move to the left.

Go to Settings, Accessibility, Answering and ending calls. Turn off the setting that automatically connects when you have headphones in.

On my Android 10 phone the full path is "Settings/ Accessibility/ Interaction and dexterity/ Answering and ending calls. However the only option there related to disabling phone functions is "Answer automatically". This only stops it from answering calls automatically, it does not disable other phone functions. On my phone this setting was disabled by default which I assume is the typical default.


text:
LG phone starts on recovery mode automatically
My LG phone was rooted and TWRP was installed on it. I try to update my Android version using the LG software update center, and after downloading updates, I tap on install. But after my phone restarts to install updates, it goes into recovery mode, and after rebooting the system again, it automatically goes to recovery mode.
I restore my system backup to fix it, but it doesn't make it better.
How can I fix it?

When you root your phone or installs TWRP you give up on Android updates. Those two things don't work together because when you root you change the system image, and to install updates you need to have stock recovery too. So download latest firmware and flash it on your device (TWRP and root will be lost).

Thanks but please tell me which flash tool i have to use?(because my phone always in recovery mode) is lg flash tool still working? guide me more please

@H Rajabi  As far as I can remember you can use LG bridge or LG up to flash it. What is exact model of your phone?

authors: Једноруки Крстивоје


text:
How can I run a Python script in terminal emulator?
I tried running a Python script in a terminal emulator (app) with ./script.py and I get an error saying "permission denied". It is to run a Twitter bot even if I close the app.
So, I googled how to do this and it said I have to download a file called python.sh, but their link is down so I can't download it. When I google the file, I only get results for how to load .sh files in Python.
How I can do this?

Why do you want to run in terminal emulator only? This open source app Q python let's you run Python scripts on Android. It's available on F Droid. Here's the website of that app http://www.qpython.com

Because I want to let it run even if I close the app (its for a twitter bot... Should have specified... Sorry)

You could use UserLAnd, GNURoot Debian, or Termux. Termux is probably the most lightweight, and also has Swipe keyboard support (have to swipe the entire input to the side to access it), and you can enable an extended keyboard that pops up over whatever keyboard you use to access arrows, Tab, Ctrl, etc. UserLAnd also has the extended keyboard and the same Swipe support, and runs a full version of Linux in a chroot environment so you can have root access using sudo or the root user.
Using Termux & UserLAnd on an unrootable Android and both are amazing. rsync is the greatest thing ever to keep project changes up to date because AFAIK it's not possible to edit the data stored in either of their filesystems directly using an Android app, but can be done using vi/vim/nano/etc inside of Termux or in UserLAnd's session (have to connect to it through SSH or VNC).
Just make sure to follow the suggestions during UserLAnd setup and grab ConnectBot and/or bVNC -- those are currently the only supported apps to connect to it. Also, while it claims to be able to setup for a single app I have not seen any directions for that, and have no idea how it would be possible as the UI doesn't seem to have anyway to do so.

Ok thanks I will try those but also where would I find the python.sh? I have been looking everywhere and it seems to have completely disappeared...

No problem :) Once you get setup it should be possible to follow one of the many guides. Just make sure you're looking at directions for the right Linux version if there are any version-specific directions if you go the UserLAnd route which can be Debian or Ubuntu, or GNURoot's Debian. For the minimal installation as in the above directions it should be fine to follow along. Termux doesn't seem to be any different overall, but does not appear to be a "minimal" install.

Your file permissions are not appropriate. Change it using chmod +x path_to_file and then run it using file_name.py.

I tried that and found the only way to change permissions of a file is with root and I cant root my phone... But thanks for the help


text:
save to homescreen is not working
Android Nougat 7.0 on Motox Pure 2015 -- rooted
I can't save shortcuts to home-screen anymore. None of the installed browsers save to home-screen. Google maps doesn't save to home-screen.
I just tried to save a directions shortcut from Google maps and it said that the shortcut was saved, but it is not.
Added edit:
Here is a log entry while saving the Google maps shortcut:
[10-06 09:18:46.584 1146:1179 W/BroadcastQueue]
Background execution not allowed: receiving Intent { act=com.android.launcher.action.INSTALL_SHORTCUT flg=0x10 (has extras) } to com.google.android.googlequicksearchbox/com.android.launcher3.InstallShortcutReceiver

I'm starting to think this has to do with one of my battery app background restricter apps.  I am testing that out now.

SOLVED: I allowed com.google.android.googlequicksearchbox to run in the background and that fixed the problem.

Looks like you have found the solution by yourself, and that's good! However, can you post it as an answer instead? Comment is not for providing the solution, and you can also mark the answer to indicate that the question has been solved. Thanks!

SOLVED: I allowed com.google.android.googlequicksearchbox to run in the background and that fixed the problem.
In my case the app that was restricting was called BackgroundRestrictor.
I also have both the RootBooster and Hibernation apps running, and they didn't need any adjusting.


text:
language is being reset on boot
I have recently purchased a new phone (Laude M8), which is the first Android 5.1 phone I have used, and also the first phone I have used which supports dual SIM cards.
I have only one SIM card inserted, which is from a Lithuanian carrier. When I restart my phone, it boots with the Lithuanian language selected and I have to manually change it back to English every time in Settings -> Language & Input. Disabling the SIM card in the options makes no difference to this behavior, but physically removing the SIM card works to stop it changing the language.
Is there a way to force it to always boot into the English language with this SIM card inserted?
My previous phone, a single-SIM model (LG L70) running Android 4.4 KitKat, did not have this problem with the same SIM card.
I haven't found any setting anywhere in the UI that would control this, including using the search feature inside the Settings menu.
EDIT: I have just discovered that coming out of aeroplane mode also changes the language to Lithuanian.

Same here with LG G4S... There's a thread about it in androidcentral.com


text:
cant do factory reset or hard reset on mi 5x
I tried to factory reset my mi 5x phone through settings but after clicking reset device, it just turn off the phone and restart it without changing anything on the phone.
And when I try to do a hard reset, after holding Vol down + power button, this screen shows up:

And after a few seconds the phone turn off again.
How can I fix this problem?

Well, first a hard reset would not imply any key presses, but taking the battery out :) As the key combo you've used led you into fastboot mode, try the other volume key instead (i.e. volUp+Power). Does that bring you to the recovery menu and lets you factory-reset?

@Izzy No It just turn on the phone when i use Vol up + power button.

@MiladHeydari have you messed up with recovery partition ?

@AbdelhafidMadoui no. what i described is all i could do. it never gave me the chance to mess up anything :D

Broken volume up button or something?

@Izzy What if the device has an internal battery ? ;)

@esQmo_ in that case you press and hold the power button until it reboots (that's also supposed to cut power after 10..30s).

Reading the comments above, I can think  your volume up button may be broken? But remember, you can perform  a factory reset from the Fastboot mode too, simply connect your phone to the computer, install Minimal ADB & Fastboot (Windows), run it then type fastboot -w[press enter] the phone should be reset.
Also ADB lets you do many things on your phone including factory reset:

Enable ADB (USB Debugging) from the Developer's menu
Connect the phone to the computer
Run Minimal ADB & Fastboot
Type adb shell [press enter]
Type wipe data [press enter]

You're done.
ADB can let you boot in recovery mode and perform factory reset manually:

Type adb reboot recovery [press enter]

PS: Don't forget to install drivers to let your phone be detected by the computer.
Not on Windows ? Check this question related to a minimal installation of ADB for all operating systems.
Check also our ADB tag-wiki

+1 :) And even if not Windows, our adb tag-wiki mentions a post named Is there a minimal installation of ADB? (<- shameless self-promotion :)


text:
Access Android SD from Windows 7 via card reader
I want to backup my sd-card, before using it in my new phone. So I used a card reader to connect it to my Windows 7 notebook. Sadly the partition is not mounted to a drive letter, altough I can see it to be free of errors in the disk management.

I suspect android uses an unsupported file system. But which and how can I read it from Windows?
EDIT: My phone is a Moto G3. The device is not rooted. The SD was formatted and mounted by the default Android-dialog for new SDs. I did no customization. I'm using a part of the SD card as internal storage.
Thanks for your support,
nils-o-mat

You could use adb shell or any terminal app to find out. Simply execute the command mount without any parameters. Seeing 2 partitions on the card suggests manual adjustments: Are you using Link2SD, or have split the card to use partially for [tag:adoptable-storage]?

Thanks for your comment. I will try to get on the shell to find out. I edited my question to clarify, how this SD-format was created.

Thanks for clarification! What you forgot was to tell whether you're using parts of that card as "internal storage". If that's the case, you won't have any luck reading that partition via a card reader as it's encrypted.

In fact I do. That may be the problem than. Tank you!

The fact of using your SD card as internal storage explains your problem: partitions for adoptable storage are encrypted, so on your computer you can only see the partition but not actually read its contents, as you lack the encryption key (for details, see: How to decrypt Adopted Storage?).
As you wrote you did no customization I'm wondering why there are 2 partitions on the card – and according to the screenshot, none of them reveals the file system used. By that fact (not showing the file system) I'd assume the second partition is encrypted as well.
As for the file system: Android normally uses some FAT style file system on SD cards. But if adopted, it's rather a Unix file system, most likely ExtFS (ext3 or ext4). Again something Windows cannot deal with unless you install specific software. If you want to know, use a terminal app or adb shell, and run the command mount. Watch out for the entries of your SD card there, then look at the file system column.

Sorry, but my reputation does not currently allow me to upvote you.

No prob. More important is it helped you – and you marked it such for others in a similar situation. Thanks for accepting my answer!


text:
Samsung Galaxy: Unlock gone haywire
I applied the procedure to unlock a Samsung Galaxy S3 on a Samsung Galaxy Express I437.  It went through smoothly, and but the phone was not unlocked.  Instead, it gives me the error message "Phone not allowed MM#6" after I inserted a foreign SIM card.  The procedure is reproduced below:
[1] UMTS
[1] Debug Screen
[8] Phone Control
[6] Network Lock
Options [3]Perso SHA256 OFF
(after choosing this option, wait about 30 seconds, then go back one step by pressing the Menu button then select Back, now you are in
[6] Network Lock then choose
[4] NW Lock NV Data INITIALLIZ ..... wait for a minute then reboot your phone
Since this didn't work, I tried reverting NW LOCK back to the old setting.  Unfortunately, it doesn't work.  The unlock screen doesn't come up anymore.  And I have no other way to enter an unlock code.  Does anyone have any idea how to resolve this issue?
Million thanks!

Turns out the procedure worked.  The IMEI is blacklisted by the foreign network at the time of the test.


text:
Improving HTC Sensation XE somehow
I have an HTC Sensation XE and the smartphone is becoming slower and worse every day, expecially compared to my Nexus 7 and Samsung Tab 2.
Android on the phone is slow and lagged ( I have to wait even 6-7 second after clicking somewhere), the battery depletes very fast and the phone itself becomes very hot if I do something "intensive" like using google maps.
the Android version on the phone is 4.0.3 and as far as I know, there is no update.
What can I do to improve the phone? It's market value makes it not worth to sell and it is still working, so I would like to find a way to fix it somehow, what can i do?
I like a lot the vanilla Android of the Nexus 7, there is any way that I can put a plain android on the HTC, keeping all the functionalities? I dont care of Htc Sense, but I want to be able to use the camera, 3g, wifi, GPS and so on.
Maybe some kind of reset would be enough to bring it bask to it's best days?

Have you checked with our performance tag-wiki for some first aid? Especially interesting in your case might be: My device is getting slow, apps start misbehaving/crashing. What can I do?

I didn't know about those pages, I will check them carefully, thank you!

You're welcome! If any of them solves your issue, don't forget to let us know ;)

Any progress made so far? Maybe you even could answer your own question meanwhile? ;)

I've taken out most of the apps and the performance is slightly improved, but it is still too slow. I will wipe it out ad a last resort and then check if there is any improvement on the performance.

Do a system wipe and reinstall. This significantly sped up my Sensation.

I've done it and it's like new now!


text:
Can't connect to phone network, banned?
I need a sanity check here. I was sitting on the train listening to music over 3G, and we went in to a tunnel. Lost the signal, tried to reconnect and couldn't. Now I can't connect to my phone service at all, even though
1) I have a strong signal
2) I can see my phone service in the list of available networks.
When I try selecting the network, it says it's not available to connect, and that I should try later. The thing is, my coworkers have similiar service and phones, and their works.
My question is; can the service ban my specific phone from connecting?

Stupid question, but have you rebooted?  I've had similar issues with network and with WiFi, but a reboot has always fixed it so far.

The basic test you should do is to just switch the SIM card: have a coworker of yours try their sim in your phone, or try your sim in their phone, and see if it works. If your sim can not log into the network on a different phone, you should contact your phone company for explanation. On the other hand, if it is your phone, then you should look into that.


text:
Galaxy SII not reporting Signal Strength
I recently bought a Samsung Galaxy SII which in general has worked perfectly for me. My only issue is that the phone won't report the signal strength. If I get to the phone information (using the * # * # 4636 # * # code) the system reports the signal strength as zero which is impossible (since I have loads of reception issues in my home). My guess is that the information is being blocked, but I don't know why or how to unblock it.
The phone is running in GSM/WCDMA (Auto Mode) with the stock ROM

I'm confused by "loads of reception issues in my home" - are you sure 0 signal isn't accurate? Otherwise, what are your network stats in About Phone > Status? Specifically Service and Mobile Network States.

The signal is measured in dB and the more negative the number, the worse the signal is. Therefore, the fact that the phone is reading zero is in itself an issue, since a signal strength close to zero would mean an excellent signal.

I believe it is related to this issue: onSignalStrengthsChanged returns unknown signal strength where android return wrong strength on Galaxy S2.


text:
Notification Vibration Bug on Galaxy Nexus?
My Galaxy Nexus running 4.0.2 does not vibrate for any notifications while in "vibrate" mode. Haptic feedback works, and the phone vibrates when I receive phone calls, but not for notifications. The global vibrate setting under "Sound" in the menu is set to "Always", and individual apps like Gmail, Messaging, etc. have vibrate set to "Always".
Any help appreciated! Thanks!

I took the phone to two different Verizon stores, talked to phone support, and even got a replacement- to no avail. Finally I installed the Sound Manager app and set it to "Vibrate Whenever Possible". This fixed the problem!

There is a separate vibrate setting in the menu for sms messaging under Settings.

This didn't help my problem. Both of those settings were set to "Vibrate Always"

Try installing the Llama app then removing it. For some reason it fixes this, I had the same problem. There is a issue on the tracker that could help.


text:
Delete free apps from Play Store library
I want to delete free apps from my Play Store library. I don't want to remove paid apps because I obviously paid for them so that means that they are useful to me in some way or another. However, I have accumulated a list of around 500 apps, of which 90% aren't used anymore.
The problem is, I can't remember which apps I paid for and which not. When I click on each app, I sometimes don't see that I purchased them, just the standard "Install" button.
Is there a way to filter out paid apps from my library?

I suggest you use both a PC and your mobile for this solution.
Using your PC, visit your Play Store's order history. It would list only those apps you have bought so far. Now, in your Play Store app, go to Account (rightwards swipe from the left edge) → Library.
Compare the two lists. The ones which would not match would be the free ones.
This is not user-friendly but should get the job done nonetheless.

Ok thank you, this will do I guess. Still frustrating that something like this isn't easier. Not your fault though. :)

I don't understand why you need this. Google Play will register what's in your library, so if you paid for it (or got it at a limited "sale" for free), you'll be able to install it later when you need it.
Just make sure you don't delete any paid app from a 3rd-party store (although 3rd-party stores tend to have a similar feature), or delete anything you don't need from Google Play.

As I said, I don't want to remove ANY paid apps from my library because I have no way of knowing which ones I bought and which not later on. I would just end up downloading free apps or buy a new one despite me having already bought one


text:
Camera app can't access SD card anymore after formatting it as internal
I recently formatted the SD card as internal on my Android 7.1.2 (LineageOS 14.1). Now the camera app is showing an error message that it can't access the SD card anymore. The error message is: "Couldn't access SD card".
I can't find the setting to change the storage folder of the camera app.
Does anybody have an idea how to fix that?

Meanwhile, I found the solution. In the app settings, I had to delete the app data and cache. That set the settings back to default which solved the issue.

Encountered the same issue on MIUI 11.0.8.0 stable, solved by allowing the usage access permission for the camera app.
You do it by opening the Settings app - Passwords and security
Privacy - Special application access - Usage access, choose the (native) camera app, and permit usage access.
Source: xiaomi.eu forum.

Another possible cause is if an old SD card had been used as the default location for the camera, and was since removed, and the system becomes determined to save to that specific SD card only (and wouldn't allow the location to be changed while it was unavailable).
This causes the same "Couldn't access SD card" error on taking photos in the camera, and causes images attached to messages to refuse to download, Bluetooth image shares to fail as "unsuccessful", etc, despite all these apps having correct storage permissions.
What fixed it was:

Going into Storage Manager
Selecting the old, absent SD card
Choosing to "Forget" it

As soon as the old SD card was forgotten, everything involving saving images started working again, and the setting to choose where to save images was no longer greyed out.


text:
Why is Amazon Shopping app showing 'null' after the product price?
I've heard that if a website or an app appears in a weird way, it means that your device might have been hacked. I have Android 8.1 Oreo, and below is the Amazon Shopping app showing 'null' after the product price.

What is the cause? Is my device hacked or infected with malware?

It's working fine on website. Only on app I'm having this issue

Seems like an issue on Amazon's side, I would guess that the app was coded to add a currency symbol like $ or € to the end of the price tag. Since the currency currently used is on the beginning not the end, seems like the app is also searching for something to add to the end, but adds an unset variable instead causing it to display "null". That is my theory tho. On the other side if you are worried about getting malware, use a scanner to scan for malicious apps. But it is unlikely that you got Malware if you haven't downloaded any shady apps from outside sources or sometimes Play Store. There is no known way of bad people simply getting into your phone without running malicious code first, either packed in a "shady" app or using an exploit of another app...

Can a link that doesn't ask for credentials be a phishing link? I was sent a link by one of my friends. It didn't ask for my email and all. But it was a weird side. It wasn't legit I sure. It was something like a contest asking me to roll a wheel to stand a chance to win an iPhone.


text:
How to run SSH/SFTP server for multiple user logins with password authentication on Android?
I want to run an SSH server on my Android phone so that my clients (varying between 10 to 20) can easily and securely share data with me when I'm on the go, without using any third-party hosting services like email, file sharing, etc. Every user should have their own directory (enforced using SFTP's chroot) and he/she should be able to log in using his/her own password (not the key file) I provide them, optionally sharing credentials with other users if one needs to.
I didn't find any such flexible solution, especially FOSS. So I built sshd program from openssh source code, using gcc-linux-aarch64 cross compiler on Ubuntu. However, when I execute it on my phone, it throws an error:
~# sshd -d
Privilege Separation user sshd does not exist

How can I add sshd and other users on Android? My phone is rooted.
PS: I'm jotting down an answer to my own question of what limitations I faced and how I have been achieving this for the past few years. Any other method - particularly a non-root solution through GUI for ease of a common user - would be appreciated.

Note:

Make sure your phone is accessible from internet as explained here.
You need a rooted device.

Android phones nowadays aren't those old low-end devices, they can run a full-featured SSH server happily. And it's an easy recipe:

Get fully static sshd binary for your phone's architecture. See details below.
Create /etc/passwd and /etc/shadow. To add a new user with password like we do on a Linux OS:
~# mount -o rw,remount /system; mount -o rw,remount /
~# touch /etc/passwd /etc/shadow
~# busybox adduser -D -H -h /dev/null -s /system/bin/false -u 900 sshd
~# busybox adduser -D -H -h /home/user1 -s /system/bin/sh -u 901 user1
~# toybox passwd user1
~# mkdir -p /data/home/user1/Documents /home /sdcard/home /etc/ssh
~# mount -o bind /data/home /home
~# mount -o bind /data/home /mnt/runtime/default/emulated/0/home
~# chmod 0750 /data/home/user1; chown 0.901 /data/home/user1

First bind mount is required because otherwise SFTP's chroot won't work with /data's bad ownership. Second is to easily access shared files from /sdcard/home. To set non-root permissions on /sdcard/home, use bindfs instead.
sshd user is for Privilege Separation. user1 is our first user that'll be able to login through SSH. In the same way more users can be added.
Add required configurations to /etc/ssh/sshd_config (defaults suffice in most cases):
UsePAM no
PasswordAuthentication yes
Subsystem sftp internal-sftp
Match User user1
  ChrootDirectory /home/user1

Run SSH server, may use logwrapper to get log in logcat:
~# ssh-keygen -A    # generate host keys on first use
~# /system/bin/sshd -4 -E /sdcard/home/.sshd.log

Now you can access server through SFTP / SSHFS. SSHD can also be run as an init service that's handled by Android's init. See this answer for explanation.

DETAILS:
SSH server lets you login remotely after proper authentication. Additionally it serves sharing of files and many other resource sharing securely. But there is no concept of Linux console login on Android (1) because it boots directly to GUI. However it makes use of Discretionary Access Control (DAC) of Linux kernel which is based on UIDs / GIDs and permission mode. Every installed app is considers as a *NIX user and is assigned a unique UID at install time. See this answer for more details on this.
HOW USER LOGIN AND AUTHENTICATION WORK:
Traditionally /etc/passwd contained username vs. UID/GID mapping, while supplementary GIDs were added to /etc/group. Password was also added to /etc/passwd which was later moved to /etc/shadow with the introduction of shadow password suite. Similarly /etc/gshadow contains Secure Group Account Information. These files are read by privilege granting programs such as login, su, sshd etc. and managed by administering programs such as passwd and useradd.
Most of these programs are part of shadow and util-linux package and their behavior is controlled by defining a number of configuration items in /etc/login.defs, for instance logging of different events, password expiry, environment variables etc. Also there are many files that are required or updated by these utilities, including nologin, default/useradd, adduser.conf, skel/, shells, subuid, subgid, limits files under /etc/, /var/log/faillog, /var/log/lastlog, /var/run/utmp, /var/run/wtmp and possibly others.
To centralize the functionality of these privilege granting and administering programs, a more sophisticated authentication mechanism PAM was introduced. Instead of directly handling the user login and authentication stuff, programs link to PAM libraries (called modules) which in turn respond accordingly depending on its configuration files mainly under /etc/pam.d and /etc/security.
Other than PAM, a complicated name resolution mechanism NSS also (a set of modules) exists on Linux distros which controls - among many other things - how passwd, group, and shadow databases are read depending on its configuration file /etc/nsswitch.conf. Both PAM and NSS can be configured to use remote database service like LDAP / NIS. And then there are centralized caching daemons like NSCD and SSSD. Working together, they complete the puzzle of user logins (identification and authentication) on Linux.
HOW TO SETUP LOGIN ENVIRONMENT ON ANDROID:
None of the above described configuration files and libraries exist on Android because user logins don't happen at all. But the programs built with Linux's standard libc APIs require all these files and services - including PAM - on Android too, which is near to impossible. PAM can be disabled for sshd by setting UsePAM no in sshd_config so that it directly reads files /etc/passwd, /etc/group and /etc/shadow.
PAM be gone, still we need to provide a minimal environment that meets the least requirements of login process. ssh binary for instance, needs /etc/passwd to exist necessarily because it sets $HOME from there to read known_hosts, config and id_* key. Also if host is a domain name and not an IP address, /etc/resolv.conf must exist with nameserver for DNS to work. It's a different story explained here.
So we need to create the relevant files on Android manually. Or use the non-PAM counterparts of shadow-utils such as useradd and passwd to update these files. We can get a minimal set of these utilities on Android, e.g. with busybox or toybox.
RUNNING LINUX PROGRAMS ON ANDROID:
Ideally you should write / modify the source code of a program in accordance with Android environment and then build dynamic binaries / libraries using Android's NDK and Bionic libc. But due to differences among Linux distros and Android such as in filesystem hierarchy, kernel configuration, implementation of libc and other libraries (2), code written for Linux distros need heavy modification on Android, otherwise don't mind failed attempts. In case of openssh, see the list of modification patches in AOSP and on Termux. Two of these patches are no password authentication (3) and no multiple users (4, 5). Former was worked around on Termux by introducing new APIs in termux-auth (6, 7), but the later can't be achieved without setting up login environment on Android.
Other options is to build fully static binary with Linux's libc such as glibc, musl or uClibc. While it's easy to statically build small libraries, libc itself links to many other libraries. In case of glibc, all of them can't be built statically, such as dynamically-loaded modules. I'm not sure how effective --enable-static-nss is, but, e.g. gconv can't be linked statically (8). So sshd binary must not be built with glibc, otherwise it won't work without NSS modules.
Also set Privilege Separation Path to some existing directory like /data/local/tmp and disable any other unnecessary features like utmp, wtmp, lastlog etc. Or you would need to create /var directory in rootfs.
FURTHER READING:

Basic explanation on NSS , LDAP and PAM
How To Add Linux User on Android?
Linux vs. Android
How to connect two phones via SSH?


text:
replace the HTC unlock system for a keyboard combination in Android 2.3.5?
How can I replace the HTC-sense ringy swipy unlock mechanism for an unlock mechanism that only requires to enter a keyboard combination in Android 2.3.5? I find myself not able to do it easily on one hand and since I have a physical keyboard, I would like to be able to unlock the screen with a keyboard combination.

Let me know if this helps,
https://play.google.com/store/apps/details?id=org.jraf.android.nolock&feature=search_result#?t=W251bGwsMSwxLDEsIm9yZy5qcmFmLmFuZHJvaWQubm9sb2NrIl0.

No Lock as suggested in a comment does very much what I wanted and even more, and it's a lightweight application which always helps. Please reply as answer for the points!

done :) you can now mark it as answer

Let me know if this helps,
No Lock


text:
Couldn't connect to server Google+
I get an error "No connection: Couldn't connect to the server" when trying to assign my google account to the Google+ app on my 2.3.5 Android phone. Tried several times along the day today, any ideas what else I may try?
I have no connection problems with any of the other apps on the same phone at any time.

Check for a security notification under the notifications. I missed it at first on my tablet.

I had the same problem... Go to Play Store and update your Google+ app and then try to sign in again. It worked for me.

No connection, couldn't connect to the server.  From deleting Google Play services. If you delete the Cache on some apps, you will have Sync problems. Shut the phone off, 30 seconds.   Turn  the phone back on. Main settings:  Turn Airplane mode on 30 seconds. Turn Airplane mode off.   This should work.  Last resort:  Factory Reset.  Located on phone menu settings.


text:
contacts storage on android 2.3.5
Is there a way to have access to the file/s that list the contact details on an Android 2.3.5 phone? My contacts storage is growing up to many MBs, and I would like to be able to delete some of these contacts from the stored files with a scripted solution.

I'd recommend you to use GUI of Contacts app for clearing contacts, but if you are really interested in it, this is the database used to store contact details: /data/data/com.android.providers.contacts/databases/contacts2.db. To alter anything inside it, you need root access and proper SQL queries.
The location of database may vary depending on device..


text:
Can I play movies on an Amazon Fire HD from an external USB hard drive?
I read the some Android devices are able to mount USB hard drives or pendrives connected directly to the miniUSB of the Android device:
http://www.greenbot.com/article/2155300/how-to-hook-up-a-usb-flash-drive-to-your-android-device.html
I would like to know if the Amazon Kindle Fire HD is able to do so.
Can I play movies on an Amazon Fire HD from files in an external USB hard drive?

Edit: I didn't realize you are pretty experienced and probably know most of this already.
TL;DR: root device, install Stickmount via ADB, profit. Physically speaking, grab a USB-OTG cable and use that to connect your device. Probably a bad idea to run any hard drive that isn't externally powered, but flash drives work great.
So I don't have one of the devices physically, so I can't guarantee that this will work. However, I have fiddled with one of my friend's devices separately, and have done extensive work on my FireTV, so I'm fairly optimistic this will work.
Your first step will be to root the device. This means that you have access to all parts of the OS that Amazon was previously restricting. This will allow you to install Stickmount, which is an app that enables your device to mount external storage.
Once you have downloaded the APK, follow the XDA-Developers page on installing Minimal ADB and Fastboot. This will be used to connect to the android device.
You have a couple options on how to connect. You can either use a USB cable, and there's lots of documentation for that, or you can connect via wifi. I find wifi connection to work fine, so I'll leave instructions for that method.
1) Drop the apk of stickmount into the same folder as adb.
2) Run adb per the instructions for your machine from XDA-Developers.
3) Find the IP address of your Kindle.
4) Run the following commands individually:
adb kill-server
adb start-server
adb connect (IP address of your device- probably 192.168.1.xxx or thereabouts)
adb install (filename of Stickmount- probably something like stickmount_xxx.apk)
If successful, Stickmount will have been installed on the Kindle.
Run Stickmount to make sure it works, then restart your device. On reboot, you can plug in the external storage via a USB-OTG cable. I'd strongly advise against using a self-powered hard drive- I'm not sure how much power SSD's draw, but a spinning drive is definitely out. You're totally safe with a flash drive or card reader though. I did this a lot with my Nexus 10 on a road trip- worked great.
Once rooted, you have a couple other options. I won't clutter this response here as they are unrelated, but you can install the google play store, use XBMC/Kodi, and a lot more. Feel free to ask any questions you have about that.

Just curious, what did you mean by "I'd link, but I can only do two" ??

Oh, at the time I didn't have enough cred to do more than two links. This post bumped me up above it though :)


text:
Google Calendar events created on the phone won't sync
In my 2.3.7 Android phone, when I use the Google Calendar application, I can see all the events that are listed in my Google account, as I would see them in the browser in my computer, but when I create a new event using the phone -- it shows as 'PC Sync', the new item won't sync up to the calendar as I see it in the browser. I have tried cleaning the cache and data for the 'Calendar' and 'Calendar Storage' application, and manually re-syncing the Google account from the phone, but it still won't show up. Any ideas?
EDIT: If the event is under 'PC Sync', where should they appear in Google Calendar?

Can you verify if you are creating the even in proper calendar?

To clarify roxan's question: your calendar app supports multiple calendars. This includes the Google Calendar, but may also have a "PC Sync", "Exchange", "Phone"... calendar. Only events created in the Google Calendar are synced with the Google Calendar. Are you sure your events were created there?

Answering my question after the comments, it turns out only 'PC Sync' would show when creating an event by tapping on a specific day/time, but when using the 'Add event' option, the other calendars would show as an option. Once this is used the first time, then tapping on the day/time shows the other options. All good.


text:
Alternative to Photosync to sync pictures into Picasa
The version of Photosync I have installed fails to upload pictures after I take a few dozen of them in a short period of time. Is there an alternative app that will work and not take too much memory on my poor old 2.3.5 phone?
The Google+ app is too heavy for my phone.

If I'm understanding correctly, the Google+ app sounds like it has the functionality you're looking for. Within the app, press Menu -> Settings -> Instant Upload and turn the feature on. This will upload them to Google+ to a folder only you can see, and as Google+ and Picasa albums are the same, they'll be available on your Picasa account as well!

Thee Google+ app is too heavy for my poor phone.

I'll try this two alternative: "Photo Auto Uploader" / "Picasa Uploader"

if it works, repost as an answer so those looking later can find what you did! :)


text:
vibrate notifications only when receiving emails from certain addresses?
Is it possible to set vibrate notifications when receiving emails from a list of email addresses but not when receiving emails that don't come from that list? Either using the default Gmail app on a 2.3.5 Android phone or something else.
I have a bunch of labels defined, but on the Gmail App I got the following menu: Notification settings with:
Email notifications [x]
Labels to notify
In Labels to notify I only have:
Inbox off
Priority Inbox Zeta, Always, Notify once for new emails
But I can't add more labels to this menu...

With Gmail if you set up label, you can set different notification sound including vibration per label.
This means in Gmail.com first of all you've to create a filter to apply a label to email address you want different notification.
After that Open Gmail in your phone, go to Menu -> Settings -> Your email address -> Manage Label -> Select created label. Here set the desired notification scheme.

On 2.3.5 I can't see a Label option in the Gmail App settings. Maybe with a different name?

Can you see "Manage label" or something like that.

Nope. This is version 2.3.5.2

Unfortunately, 3 years later, this still appears to be the only way to do this. And the filter needs to be manually edited every time you want to add a new user, since Gmail filters can't use contact groups.


text:
Auto-delete messages from a certain contact when received
Is there an app or any other way to auto-delete specific contacts/numbers' text messages when received?

Why don't you just block them through your carrier?  It'll save you the hassle (and SMS charges if you don't have a text plan).

@MatthewRead blocking through your carrier is far from something you can expect in every country. In Sweden I know for a fact that several major carriers do not offer the service.

Currently you don't need an external app for this, it has been a feature of Android since long time. Messages from blocked senders are deleted upon arrival so they don't even appear on your device.
Go to Phone -> More -> Settings -> Call blocking -> Block list and add the number you want to block.
Alternatively, go to your phone log or SMS list and select More -> Block number.

When you block a number, it automatically blocks all incoming calls and messages from that number and also deletes all of the conversations you have had with them. This is so they won't be able to reach you at all and no matter what they do. they won't be able to contact you.
When you block a person, it also erases their phone number. If you try to call or text them, it also won't go through since you have already blocked them. There will be no problem since neither of you can contact each other. It is the best way to go.

For anyone using a Samsung mobile phone, unfortunately the phone keeps the messages from the number blocked and stores them finding blocked messages in settings. This is a seriously strange idea and not helpful if you are trying to not see messages that are upsetting or aggravating you. It also shows when a blocked number has called you.

You can just download an app from Play store - it can block text messages and even phone calls.
Try Truecaller, add the contact to the Blacklist which will lead to the block.


text:
How to put a shortcut to a settings submenu on a home screen?
I would like to change the input language for voice input without having to click through Settings/Voice input and output/Voice recognition settings/Language.
Is there a way to place a shortcut to a particular submenu of the settings on a home screen? Another (even better) option would be to tie a particular setting to a custom keyboard shortcut.

Yes, it's possible to add a shortcut to a settings menu, but probably not as "deep" as you'd like.
Long-press on a screen and select "Shortcut" in the menu that pops up. Then choose "Settings" and then the settings menu you want.

Unfortunately you're right. The "add shortcut" method features only a ridiculously narrow selection of settings...takes some wind off my sails, but thanks anyway. Could one do it programmatically? I could whip up an app doing exactly that then.

Check the market for apps/widgets that make it easier to get to your settings. "Quick Settings" was one that I've used in the past.

I was with a similar problem. I was trying to launch the Adapt Sound configuration. Samsung removed the Settings widget from its phones, so you won't find it.
I solved using the Shotcut Maker app. My desired shortcut was inside the "Activities" options. Now I can quickly get to this sub sub sub Settings option.

Press and hold on an empty spot on your home screen.
Click the "widgets" button on the bottom of the screen, and scroll down to "modes and routines".
Select "modes and routines", then "Single routine", then "add"
From the pop-up window, select first the action you wish to trigger your routine (or leave it as default, which creates a shortcut on the home screen that activates and deactivates when you tap it).
Select the setting you wish to alter from the homescreen
Click "done"

(Android 13, running on an SM-G781V)

Could you mention the device model and Android version just in case it's relevant? AFAIK, "Modes and Routines" is Samsung's feature.


text:
Does a CWM factory reset, wipe internal sdcard? Does a ClockWorkMod recovery backup, backup my media?
The story to this is that one day I booted up my phone (Samsung Galaxy S5) and all my system apps crashed right after I booted my phone, so for example a box would appear saying something like 'Unfortunately, Touchwiz has stopped'. The phone was already rooted, so I installed CWM for my phone and I backed up the phone to my external SD card.
The whole reason why I backed up the phone is to tray and get my documents and photos back, but I don't know what exactly has been backed up, I know the system files has been backed up and the ROM. Has my media been backed up?
I also need to factory reset my phone to use ODIN, but does a factory reset in CWM delete my internal sdcard? I researched this, and some people say yes and some say no.

Check the backup directory. Usually there's one "archive" per partition there, with their names indicating the source: system and data are usually part of the deal, which should cover your internal card. The external card IMHO is not backed up, at least not per default. Also see our nandroid tag-wiki, as that's what's usually performed by custom recoveries ("NANDroid backup").

Thanks for the reply, I have a couple of questions, is my media in the data folder or the system folder?
Is there a way of putting the media from the backup to my computer and after fixing my phone, I can then transfer my media back on to my phone?
I backed up the phone to an external sd card

Have you checked with the wiki link above? It a.o. tells you how to extract/restore parts of a Nandroid, so you can check what's in there ;) It's too long ago that I've dismantled one. Depends also on the device structure (i.e. whether the internal card is a separate partition with its own file system, in which case it's usually not covered by "data" – or just a directory inside /data that's then served via FUSE; just checked with some of my Nandroid, and there it's the former case).

Oh and if I was to factory reset using CWM, I won't lose my internal sdcard data right?

Depends. I'm using TWRP meanwhile where you can select what to wipe (and e.g. exclude the card). IMHO in most cases, internal and external cards are left untouched unless explicitly told otherwise. No guarantees however, better check the one for your device (might help to [edit] your question and include details on that).

It depends on what to delete or not to delete my internal storage?
Thanks :)

It's all good now, I installed CyanogenMod and my data is still there, thanks :D

Thanks for the feedback! I've summed up everything in an answer now you might wish to "accept" (tick the check-mark next to it to indicate it is the "accepted solution", so others can identify it as such). Would you agree to cleanup above comments then, or is there something you rather wish to stay?

Usually, factory-resets do not touch the SD cards (neither internal and explicitly not external) unless there's an option to explicitly do so and one has checked that. In my experience (as far as I can remember from CWM) my cards were never touched. I'm currently using twrp where one has to explicitly check the corresponding boxes if one wishes to wipe them as well.
However, some vendors have configured that differently on some devices, including the internal SD card with the wipe by default. I don't think CWM adapted that on those devices then, but it cannot hurt to check.
If you backed up your phone to the external card, that backup should be safe there. However, you didn't tell what kind of backup you did. Talking about CWM, I assume you meant a nandroid backup1. As long as you additionally copied all content from the internal card to the external, you again should be safe. If not, it then depends on the "disk layout" of the ROM used whether it was covered with the "default Nandroid": if the card is just emulated from a directory located inside /data using FUSE, it should be included with the data.* backup. If it uses its own partition, it might not be covered (not sure if CWM gives an option to include it).
As it turned out in your case, the cards have been left untouched by the CWM-triggered factory reset as I had expected. But I'm not entirely sure if that's always guaranteed (though being the usual case). So it never hurts to "have a safety-net and a double bottom" ;)

1 Check our nandroid tag-wiki for details on that


text:
Way to update and keep a browser in custom android device
We have custom android terminal and it comes without Google Apps and only few system apps are there and without a browser app. We need to install a browser in the device and keep it updated. Will it be possible?
Update: I can not flash this rom to add GApps.

Without Google play store you can't install apps and its further updates for your android device(standard and secured method). You can install apk of any app on your device. Install apk of any app provider resource and install browser from it. So you can get updates from app provider.

I can not flash this rom to add GApps

Download apk's of Google play store, play services framework, Google services framework and install to device. And then you can run play store and install any apps.

http://en.miui.com/thread-416299-1-1.html try to install using second method (follow steps under update heading)

Play Store alternative resources https://medium.com/pen-bold-kiln-press/best-google-play-store-alternatives-30c759de1c26


text:
sending a group message on my galaxy s3
When I send a group message on my galaxy s3 software 4.3 other people in the group message receive the message as an individual message. How do I fix this so that all the people in message receive it as a group message.

Also remember all the recipients of a group message can also see every person you add to the conversation as well as their phone numbers. Like (1990clb) says try a messaging app meant for group mssg. , even google voice/hangouts has a great app that can include a couple (or) your entire contact list. I guess to remind them all about your upcoming surprise birthday party... Also allows u to video chat or make a call with the same group of ppl if texting becomes too confusing for your grandmother.

You may be better off using Whatsapp messenger, it deals with group messages much better than using SMS.
Using Whatsapp everyone can reply to a message that you've sent and all participants can see each other's replies.
You can download it from here:
https://play.google.com/store/apps/details?id=com.whatsapp


text:
Restoring 'bloatware' on a Samsung Galaxy S7
I have rooted and customised my phone and I am loving it. I just realised that I have removed without backing up a few of the Samsung bloatware apps (notably the Samsung Keyboard). Is there a simple way to restore these original apps? It's not a great concern unless down the line I need to reset the phone. I am pretty sure the setup wizard will want the Samsung Keyboard.
EDIT - before posting this I should have looked myself. I have found the Samsung Keyboard APK file and apparently can load that.

Are you still looking for other bloatware? If I'm not wrong, they should be easily downloaded on Samsung app store.

Thanks, I will look that up. I managed to load the keyboard, but while I am doing this I will save the other packages for restoration.


text:
Install system app fails
I have a Samsung Galaxy S7 which I have rooted. I am attempting to move app updates to /system/app to save space on my /data/ partition. I follow the standard process (not enough points to link yet):
adb shell # start shell
$ su # elevate
$ mv /data/app/com.microsoft.skydrive-1 /system/app # move files to /system
$ chown -R root.root /system/app/com.microsoft.skydrive-1 # change owner
$ chmod 755 /system/app/com.microsoft.skydrive-1 # set permissions to match other system apps
$ chmod 644 /system/app/com.microsoft.skydrive-1/lib/arm/libpspdfkit.so # set lib permissions
$ mv /system/app/com.microsoft.skydrive-1/lib/arm/libpspdfkit.so /system/lib # move to system lib
$ chmod 755 /system/app/com.microsoft.skydrive-1/oat # set permissions to match other system apps
$ chmod 755 /system/app/com.microsoft.skydrive-1/oat/arm # set permissions to match other system apps
$ chmod 644 /system/app/com.microsoft.skydrive-1/oat/arm/base.odex # set permissions to match other system apps
$ chmod 644 /system/app/com.microsoft.skydrive-1/base.apk # set permissions to match other system apps
$ exit
$ exit
adb reboot

When the phone comes back on, the app is not found in the app list. Titanium Backup lists the app as uninstalled. If I reinstall the app from the Play Store it is added to /data/app.
I am using 6.0.1.

I'd suggest using an app like Titanium Backup to automate it.

Unfortunately TB seems to be suffering the same issue - it copies the apk to /system/app and removes the /data/app copy. But then... No app.

It is discouraged to place apps into /system/app . Place them into /system/priv-app , instead. You must also change their SELinux context.

Oh, really? Thank you for that. Is there some documentation I could read regarding this? It makes a lot more sense.

Apps in priv-app are (as the name implies) given extra privileges, which is probably not what you want for general apps.  It's not any more "discouraged" to place them in /system/app/ than /system/priv-app.

What about the SELinux context? Or any idea why I and TB can't seem to move apps?

@DeathMaskSalesman on another post you recommended doing u:object_r:system_file:s0 path_of_your_app.apk in order to deal with the SELinux context. If I do a ls -Z on my apk and odex file they have u:object_r:system_file:s0 listed already - but still no app.


text:
My Samsung Spica can't detect the SD card anymore
Recently I found a surprise on my Android notifications bar, telling me that the SD card is removed.
I unplugged it and plugged it again but it didn't work. I rebooted the device; still not working.
I tested it on my laptop, and in another device. The SD card is detected and it's working just fine.
I tried my friend's SD card but it also couldn't be detected!
By the way I bought this Spica last year and I never had an issue with the SD card before.
Finally and desperately I formatted it to Ext2 format on my laptop, and it still doesn't work on the Spica.
Any one have this issue before? How to deal with or how to fix it?

You should format it FAT, not EXT2.

I formatted it every format possible still undetected,I think I'll just slap it against the wall :)

Do like this:

Perform a factory reset from recovery-mode
Wipe the Dalvik cache as well
Reboot the device

If this doesn't work then format the SD in the computer with FAT 32 and create partition Ext 2 in the Recovery.
This should work...

Unfortunately it didn't work @blazingfinger


text:
How does the new "Brightness adjustment" setting work on CM11?
Cyanogenmod 11 has a new settings for Automatic brightness.

Screenshot (click to enlarge)
I am curious how exactly "Brightness adjustment" and "Adjustment sensitivity" work.
I tried to find the answer on Google and CM Wiki without success.

Man, this is still unanswered? Not knowing this is bugging me, I must do some research.

So I went digging in the Cyanogen source code. It appears that settings work as follows:

The brightness is determined from ambient light sensor based on spline (can be changed in "Adjust").
Brightness adjustment - Makes overall auto-brightness result darker or lighter by affecting gamma value. Centering the slider means "no change".
Adjust to sunrise and sunset - Also affects gamma value, but based on time of day and time of sunrise and sunset.
Adjustment sensitivity - There is a delay in screen brightness changes due to ambient light changes. This settings affects the delay to make it faster / slower.

I love when features are only documented in the source code :(

I have really strange issue : setting brightness adjustment to 0 lux preview as it should but then when validating change the  luminosity change brigher.


text:
iOS on Android devices
I am looking for a way to run Apple apps on my Android Honeycomb device, without rooting if possible.
Whether an iOS emulator or an app, or whatever...as long as I can go to the Apple App Store, download/install/run the app right from my Android device.

Well, it turns out that running iOS apps on the BlackBerry PlayBook has been done, so I have to take back my conclusion here; it may well be done on Android also.  The PlayBook does have really good support for native apps and the C/C++ toolchain1, so that may be a factor here, but kudos to that guy for doing so much work porting the Objective-C libraries.
1I work for RIM, so feel free to take that with a grain of salt.

Unlike Android, (most) iOS apps are written in Objective C and compiled for the device; they're not something portable like Java.  In other words, running an iOS app on Android requires:

Writing an abstraction layer to take advantage of the Android device's hardware and emulating the rest of the iOS device's hardware
A fast enough processor, enough memory, etc. to do the above
Porting all of iOS's library and system functions usable by apps to Android
Working around the Apple App Store's DRM

The problems with this are many:

It would be an incredible amount of work
Apple hasn't open sourced anything.  How are you supposed to port their code?  The hardware can be reverse engineered but that's also quite difficult.
I highly doubt any current Android device could support something like this, much less run the iOS apps at a usable speed.
Working around the DRM may not be possible.  I would assume it's hardware-dependent and so the emulation costs there would be high if it was even feasible.

Sorry, this isn't possible. iOS apps can only be run on iOS devices or under the simulator on OS X.


text:
How to download and set high-quality voices in Android text-to-speech in MIUI 14?
The option to download and set high-quality voices in Android text-to-speech is not available in MIUI 14. Is there a way to do so?

While certain voice are available for downloading offline from the corresponding menu under Settings > System > Languages & Input > Text-to-Speech output, high quality voices are only available online and won't work without an internet connection.


text:
Not sure if Kernel Version correct
I recently updated my Samsung GT-S5830 to Gingerbread via Kies. After the update my phone is displaying the kernel version as 2.6.35.7-perf-CL5XXXXX root@DELL 142 #1. The Xs are some 5 digit number. Im not sure if this is normal or if theres something wrong (because of the 'root'). Any clues?

I can see how you'd be confused by that.  It doesn't indicate that your phone is rooted, just that the kernel was compiled by the root user (on a DELL build machine, apparently)!  If you look at /system/build.prop (probably requires root to look, ha) you'll see some other similar information about the build.  Mine says "jaeyoon.yoon@SEP-05" for the same info.


text:
Download free-software apps from official Android Market without logging in
The Android Market has some apps which are free software, which entails that anyone can redistribute them; and that are also zero cost. (An example is Theremin, but I'm not interested only in that one specific app.)
So for those apps, there's no good reason for me to register with the Market in order to get those apps and install them. I have no interest in registering with the Market.
It would be good if such free-software and zero-cost apps were available at more places, like the FDroid Repository, which doesn't require anyone's credentials in order to get the apps.
(Please note: this question is not a request for other app stores, that's not the issue.)
But the Android Market doesn't have an obvious way to download apps without logging in. How can I do so?

As you stated, FDroid is the best place for FLOSS applications. However it requires "unknown sources" checked, which means certain AT&T users are out of luck.

Related: How can I download an APK file from the Play Store?

Possible duplicate of Can I install apps on phone without using the Android Market?

You cannot download apps from the Market without an account associated with your device.
The only way to get apps without the Market (or an alternative market) is to get it directly from the developer and "side-load" it.

Google has no way of distinguishing between software that is free but licensed and freeware that has no restrictions (though they could enforce some sort of selection for licence type on upload if they wanted, of course). There is no way (without hacking, presumably) to download apps from the Market without logging in.  There's nothing to stop an app maker from providing an alternate download, though.

Short answer: you cannot.  Any app that you download through Google's Android Market requires a Google account.
There are some alternative markets for Android out there.  Check out Amazon's Appstore and SlideMe.org for example.  You may find some of the apps you're interested in there.

and m.getjar.com


text:
Transfer SMS message history, without Google account
How can I backup and restore SMS message history, and restore on a later Android version — using only the SD card storage?
I am upgrading from one device to another:

Existing device: Google Nexus One running Android 2.3 Gingerbread (CyanogenMod 7.1).
Destination device: HTC Incredible S running Android 4.4 KitKat (CyanogenMod 11).

Both devices have full root access in the operating system.
I have no Google account, and no non-free software. This means no Google Play, no GMail, etc.
The devices have existing means to transfer data, so Google should not need to be involved in this process at all. I'm looking for a solution that doesn't involve Google Play nor any proprietary services.
Apps which have failed so far:

The built-in Messaging app. There appears to be no “export” and “import” feature. Kind of an obvious omission, a great shame the Android basic apps don't have this.
Slight Backup easily backs up the messages, and I can restore them on CyanogenMod 11. But then the Messaging app shows “No conversations”.
SMS Backup+ has the same problem: it can backup and restore (via my choice of IMAP host), but after restoring all the messages it reports “1 item restored (NNN dups removed)”. The Messaging app shows “No conversations”.

How can I transfer the message history from the old device and have it imported to the new device's message history of conversations?
UPDATE: The new restrictions on SMS data access in Android KitKat is likely a major hurdle to this goal.
How can this be done?

Is using ADB an option? Such as here or this one

@RossC the first link probably not; backing up/restoring the database file directly is dangerous (backing up not of course, but restoring) especially when not done on the very same device+ROM+Android-version (see my answer for details). Second link is fine, especially concerning things like Myphone Explorer ;)

@Izzy thanks, that's good to know! I tend to do things the dangerous way to be honest, HOWEVER, I don't really care what gets deleted off my phone anyway, and if I really needed an app I'd use the Amazon store if I really had to avoid google services.

"Get deleted" is not the issue in this case. App crashes is more like what happens then. And as for avoiding Google services: I'm currently running "Google-free phones" only (CM with NOGAPPS) while still using the Playstore (via "BlankStore") – but that's got nothing to do with SMS ;)

I successfully used SMS Backup+, version 1.5.7 installed via F-Droid package.
That version addresses an issue (#460) for SMS Backup+ to account for the sudden changes in SMS data handling in Android 4.4 KitKat.
(Update, 2021: Six years later and SMS Backup+ – now version 1.5.11 – is still the SMS restore app I use any time I need to transfer identity between devices.)

There are several apps supporting to Backup SMS/MMS (and of course also to restore them), running locally in "user-mode" (if you prefer cloud storage, which by the question you do not, there are also ways to Backup SMS into the Cloud).
As your devices have root support, you might consider using Titanium Backup – which allows you a.o. to export your SMS/MMS as XML files (and also to restore that, of course). This solution should definitely work with CyanogenMod (while above mentioned apps should as well).
A note on the "backups via ADB" RossC referred to in his comment on your question:

Can adb be used to recover SMS messages while in permanent “Safe Mode”? deals with backing up the corresponding database file. When chosing that approach, you should make sure to only restore that on the very same device, ROM and Android version (e.g. after a factory-reset, but never after a ROM/Android upgrade or on a different device). Otherwise you might run into trouble (says one who had that issue in the past, so you can believe it ;))
How do I backup data (SMS/contacts) from a device with a broken screen? has answers with the same approach (to which the same warning applies), but some answers also mention tools simply utilizing ADB to access the device. I've never used any of those (as most seem to be Windows-only – like Moborobo, Myphone Explorer (most famous solution for Windows-people, offering a lot more than just SMS), Mobogenie, DroidExplorer (the dev is active here!) – and I'm on Linux – my only windows are for light and fresh air), but I'd assume they do more than simply "copy the database file", so they might fit your requirements. Still, for above reasons, read their instructions carefully.

These answers don't take into account the need to use only free software and open protocols. Can you make a new, single answer with just the advice that's relevant to the question?

Sorry, but with the added difficulty (Kitkat restrictions), the only working solution I could name is Titanium Backup. "No Google Play" is not a deal-breaker for that, as the free version is also available at Aptoide, as the linked app-list shows. Being a "root app", it should be able to circumvent those Kitkat-restrictions – and Aptoide requires no account to install apps from. Not having a KK device, I cannot test, sorry.

QKSMS (free software, available on F-Droid) does the job.  It is a messaging app that has a Backup and Restore feature.  Backup exports messages to a JSON file, and Restore inserts messages from that file into the Android SMS database.  You can use the stock AOSP messaging app later on with the restored messages.
MMS are not supported by Backup and Restore.
Be sure that the messages you are importing aren't already into your database, because there is no detection of duplicates.
Android 5.0 or newer is required, which shouldn't be an issue now.

SMS Backup and Restore did the job for me when I migrated from my Atrix to Nexus 4. The app is free but the developer accepts donations if you like his software. The app backs up messages as an XML file.

Is that free software? (The question specifies this.) If so, please give a URL to install it without a Google account. (The question specifies this too.)

Yes, it is. The developer accepts donations if you like his software. Here's a link (you'll find more if you Google it): http://www.apk4fun.com/apk/25923/
The app backs up messages as XML files.

This actually does not appear to be "free" in the sense that @bignose is talking about (libre/open source), or if it is I cannot find the source code anywhere. It is only "free" in the sense that you need not pay for it.

@eldarerathis, you're right - it isn't. My bad that I didn't notice that he had linked "free software" to the GNU definition of free. Sorry about that!

The best method to backup/export sms(and others like contacts) is using Titanium Backup app.
Note: While importing use setting "Let me choose myself." This is recommended for inter-version import/export.

Thanks for the suggestion, but I'm explicitly looking for solutions using only free software and open protocols.

There is a branch of slight backup which has the Fix for Android 4.4, but it seems like there are not prebuilt apks for it (yet):
https://github.com/handschuh/Slight-backup/tree/smsrestore_4.4


text:
Run connectbot as root?
I'd like to do reverse ssh tunneling with my phone. Anyone know how I can run connectbot as root so that it can bind to port 22 ?

You can't run apps that don't request root permissions as root.  This is excluding native apps that you can run from a terminal.

hmm this sounds strange. Put another way, how can I run an app from the shell? I can su in the shell and then run commands as root. I want to do this: http://www.handlewithlinux.com/android-reverse-ssh

@barrymac That guide is pretty old and short on details. It doesn't seem like it requires ConnectBot to have root, though.  To run a regular Android app from the shell I believe you do am start -n full.app.name where full.app.name is something like, for example, com.google.android.apps.maps for Google Maps.

Note that it will run am as root, but the app that is started won't have root unless it requests root.

Yes you're right. I actually got this to work by running quicksshd on a high port and forwarded to that port. So I can finally log on to my phone over ssh from anywhere! Now, why did I want to do this again? :-)

I should also mention that I still used connectbot to log into the remote server and create the tunnel!


text:
Android software updates: How can I tell if I can update a device?
I keep seeing Android devices in shops that state what version of Android is installed. Thence I conclude that not all Android devices can be updated to a current version of Android.
How can I tell before I buy (or even after I buy) if a device can be updated to the newest release or not?
Can Samsung's Android devices usually be updated?
Update: Note that I am not refering to abandoned devices but to current devices available in stores now.

Other relevant info here

When will my device get the Android 4.1 update (Jelly Bean)? and its relatives here are a pretty good repository of what official updates are available for a particular device.

There's no guarantee that any device will ever see an Android OS update.
A Nexus device will probably see two, maybe three, updates (if the past is any guide).
Devices from big-name manufacturers will probably, eventually, see one Android upgrade. However, considering the resources needed to modify the Android source to fit with their customizations as well as to do all that testing, which will result in exactly no incremental income for them, it's in their interest to get you to buy a new phone.
Lower-end/older devices from the big names or devices from OEMs you've never heard of will probably never get an OS upgrade.
Fortunately, a lot of core functionality is being pulled out of the OS into the Google Play Services framework. That'll leave things like hardware APIs in the OS level, which probably wouldn't benefit from an OS upgrade anyway. (I mean, you can't install a bigger sensor for your camera, so OS support for bigger sensors won't help you.)


text:
How to set getExternalStorageState()
I have rooted a B&N Nook Glowlight running Android 2.1. The device does not come with an SD card, so I symlinked to another directory from /sdcard/. Now I need to set the Environment.getExternalStorageState() value so that apps will be able to find the "card". How does one set this value?
Note that other devices, such as the Nexus S, also do not have an SD Card, yet they do return a Environment.getExternalStorageState() value for applications that require it.
Note that I am not writing an Android application which uses this value. I need to set this value device-wide so that other applications (such as Anki and Opera will be able to find it.

The source for eclair's Environment.getExternalStorageState() is here.  It looks like getExternalStorageState() comes to this:
return SystemProperties.get("EXTERNAL_STORAGE_STATE", MEDIA_REMOVED)
I think you want to take a look at the /system/build.prop file and check for a line like:
EXTERNAL_STORAGE_STATE=removed
If it's there, try changing it to:
EXTERNAL_STORAGE_STATE=mounted
To do this, adb pull /system/build.prop, modify the file on your computer, then adb remount to make /system writable (or adb shell, su, mount -o rw,remount /system)... then exit back to your computer and adb push build.prop /system/build.prop to push the modified file to /system).  Then reboot.
You can try temporarily (from root shell):
setprop EXTERNAL_STORAGE_STATE mounted
...if that works, you might then programmatically try:
SystemProperties.set("EXTERNAL_STORAGE_STATE", Environment.MEDIA_MOUNTED);
Hope this works out for ya.

Thank you! I am able to temporarily set the external storage as mounted via setprop EXTERNAL_STORAGE_STATE mounted. I'm trying to get the ADB working to set it permanently. Thank you!

Glad it worked :)

Yes, thank you! I still haven't resolved the entire issue, as this is a rooted B&N nook running Android 2.1, but you've put me on the right track.