text:
Debug Samsung Galaxy S3 Blank Screen Freezes
my Samsung Galaxy S3 suffers from the Black/Blank screen freeze. The only remedy is to pull the battery to get the phone to respond again. I'm running Android 4.1.1 and I have done a factory reset. Now the symptoms are back. I would like to figure out a way to get the log of phone after I pull the battery so that I may be able identify which app is causing this issue. I have the Android SDK installed, but so far I can only get the current live log. How can I get a log history with time stamp?
Thanks,
Nick,

Did you have any luck with your problem?

I did a factory reset and I try to not download too many junk apps. It has only happened once since then. My phone has also been upgraded to 4.1.2.

There are several system monitors available you might want to give a try. Some of them log activities while running in the background, so no information is lost when the device has to be rebooted. While these might not directly point out the troublemaker, you could still see at what time the freeze happened, and which apps might have been active then -- so they should bring you at least closer to finding the culprit.
One of those monitor apps is SystemPanel App / Task Manager (it has a free trial version, but that does not log in the background but only allows for "live monitoring"). Some screenshots from the playstore for illustration:

SystemPanel (source: Google Play)
An alternative would be System Tuner, which offers similar functionality.


text:
How do I REALLY sync ALL contacts to a new phone
I have an old phone (LG P350) with Android 2.2.2, where I obviously have a few contacts. Most of them are contacts with telephone numbers, which I manually created (few got automatically imported from facebook or email).
Now I have a new LG phone with Android 2.3.6.
I want to have on the new phone all the contacts I had on the old one. I mean the contacts that you see when you tap on the Contacts icon.
It should be a complete no-brainer, but apparently it isn't.
Note: I don't use the GMail application neither on the old phone nor the new one, and I don't want to. I do have my @gmail.com account set as the main account for both phones.
On both the old and new phone, under Settings -> Accounts and Sync, the "Auto-sync" option is enabled.
Also, under the ...@gmail.com account listed below "manage accounts", I have enabled both "Sync people details" and "Sync contacts", both on the new and old phone.
However, my contacts don't get synced. I have a lot of contacts in the old phone that I can't find in the new one.
The new phone apparently has imported all the mess of useless contacts from gmail (i.e. email addresses some with and some without names) but no phone numbers.
So how do I sync, or export and then import ALL my contacts?

I finally managed to copy the contacts by exporting them from the old phone and importing them (Contacts -> Settings button -> Import/Export -> Export to SD card ...) which didn't work the first time because the exported file got somehow corrupted. However I still would like to know why the normal sync doesn't work and what one would have to do in order to get the normal sync to work

The first part of your comment should be an answer, matteo! As for the second part: the "normal sync" only picks contacts stored as "Google contacts". Maybe you had some of them stored "locally" instead. Or on SIM.

Oh, so there is a difference between a "google contact" and a "local contact"? That should be the answer I guess. None of my contacts were on sim. Whenever I created a contact I was never offered a choice whether to store them as "local" or as "google contacts", the only choice was between "phone" or "sim" (and I always saved them on phone).

Now that I have imported them to the new phone, I notice they all appear as "google contact"s. On the old phone, however, they all show up as "LG PC Suite contact"s. And there's no option to change that. The whole thing is pretty stupid. "Sync"ing should just mean uploading/downloading all contacts. Anyways...

Before we fight what should be the answer, I've summed it all up. And yes, I've missed that option (to move contacts between storages) as well a couple of times. I've got no idea why that's missing (or where it's hiding), unfortunately.

As you've already figured, a built-in solution is:

Open the contacts app on the "old device"
In Menu → Import/Export, chose to export
Copy the resulting 0001.vcf file to your "new device"
On the new device, open the contacts app and chose to "import" from Menu → Import/Export

Hint: take care there's enough free space available on the "exporting" device (file might get large, as contact pictures are stored inside it as well). You might not always get a warning when storage runs full, but instead end up with some "incomplete export", which then cannot be imported on the other end.

Now for the second part: why didn't they sync automatically? First, there are a few different "storages" to be considered:

On SIM
Google Contacts

These two are available on all devices. Depending on device and ROM, there might be additional "storages", e.g.

Exchange
PC Suite

Assuming you're speaking of Google's sync: That only takes care for Google contacts. As the PC Suite would only cater contacts in PC Suite to sync them with its desktop counterpart, and Exchange would not care for anything but Exchange contacts (you wouldn't want your personal contacts appearing in your company's address books, would you?). SIM contacts are a very special case: Nothing cares to sync them anywhere. I'm not even sure whether Import/Export is touching them.
So as parts of your contacts have been stored as "LG PC Suite contacts", these have not been sync'd with Google (and your "Google contacts" not with LG Suite), which explains the miss.

Thanks. Actually when I posted the question I had already tried the export/import thing and it failed, which is why I asked, since there seemed to be no way. But then I realized the file had simply got corrupted when exporting "because" there wasn't enough space to save it (a shame that the system decided to save "half" of it without giving an error message). As an aside, If anybody from Google read this, I hope they notice how stupid it is to not give an option to sync also "non-google" contacts, OR at least an option to move contacts from other "storages" to "google contacts".

While I agree to the latter (move-option), I'm glad the former does not exist. People may have specific reasons they prefer to have some data not synced with Google. // Thanks for the storage-full hint, btw. Integrated that with my answer.

While I agree with that method, you'll find stucked in unpleasant situations.
The method works in general, but it fails when (e.g.) a more than 1 note has been assigned to a contact: only the first one will be copied.

source: Stack Exchange

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

authors: Игорь Петрович

sort: votes


text:
Why do some earphones work but some have garbled audio on my phone?
I recently bought a rebranded Innos D9 from China. When I tried using the earphones that came with the phone and the Sony earphones I have, the audio is fine. Really awesome too.
However, when I use a generic Samsung earphones, I hear garbled audio, like the sound is coming from a cave. When I play a video, the voices / speech of people are distorted. Also, I don't think equalizers would fix this because I know how they work. I also tested Apple's Earpods, to the same effect.
I would like to know why this happens. Maybe I could download an app to correct the sound, or at least know what earphones to buy in the future.
Note: The phone has a built-in Yamaha music amplifier that boosts AAC or something, if that information would help.
Another update: Found a relevant thread on XDA and the fix I did was to push the answer button on the Samsung earphones, and the audio was fixed. Do note that for the audio to stay that way, the button should be pressed always. This is not a good fix.

The pin layout between the working and not working head phones might be different and hence this behaviour.  Though it appears to be simple there is no one standard to which all these manufactures seems to stick with. For instance my LG P500's stock ear phones exhibit this issue with Sony Ericsson SK17i, while Sony's head set played well in my LG P500.
The same problem exhibits when I use my LGP500 head phones in my desktop computer. While doing so, I just pull out the head phone slightly out to solve this issue.

Pulling the head phones out a little works for me too, in most cases

I have Nokia earphones which I got with my MusicXpress, and they behave the same way. The audio in the human-voice range gets really really garbled.
Over time, I learned how to use it relatively well:

If your earphones have a button (generally for answering calls, etc), when that is pressed the sound comes fine, but when not pressed, sound is garbled. I use a clip to hold the button pressed mostly ;)
If on a computer, you can adjust the balance of your sound output to either 100% left or 100% right. Then the sound comes alright, although sound from one channel is lost, but the vocals come perfect.
Downmix to mono. Not supported in Windows 7 & Linux by default, but there are plugins which can do it (like DFX).

Thanks for the button tip! I have the same problem, my SonyEricsson headset works perfectly with Macbook Pro but doesn't with my Nexus 5X... Unless the button is pressed.

If we have the same headphones, I figured out o way for them to work for me. The little plug you put into your  device has a little button on the top, I had to peel back my case and fully press plug in and now it works. Perhaps you don't have them plugged in enough. Hope this works:)

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


text:
0 ram free on ICS
I'm new to the ICS os, coming from Gingerbread from another phone. The phone's quite nice and fast when I first used it, but just this morning it started exhibiting weird actions. Camera360 doesn't open up automatically when I click it, the Camera closes for no reason, Pocket restarts when an article has an image, and TTPod resets the song to the previous song on my widget in the middle of a new song I'm playing.
I checked out the ram, and and was surprised to see 500+ mb used, 0 mb available. I looked at the list of programs and I see the usual culprits like Facebook, but the ram they're using doesn't add up to 500+ mb. Yeah, I know that the whole ram indicated isn't usable by the apps, but I don't think I've done anything to warrant the 0 mb. I close my apps. There are times when there's free 4 to 5 mb, but I think that too shouldn't be the case. I tried installing Advance Task Killer, it listed less than 10 apps, killed it, still the ram is what it is above.
I did a reboot, and now it reads 300+ mb usage, 200 something free.
What can I do? How do I ensure an app's closed on ICS? I installed GoLaucher because it has a handy task killer and I can see the ram freed in an instant, but I would like to know if there's a better way to handle the RAM.

Please re-edit your question, I know you're frustrated but the question is coming across as ranty...

There, done. :)

While it's quite unusual to really have 0 byte free, there is no such thing as "unused RAM" on Linux/Unix based systems. RAM that's not used by apps themselves is used to e.g. buffer data from slower media, and caching stuff from the file system. You will see that quite nicely when running the free command on a command line (using a terminal emulator app, or via adb shell). An example (here from a rooted Android running the Terminal Emulator app) looks like this:

Note the high numbers for "buffers" and "cached" -- which are the reason why the RAM used by apps plus the amount of free RAM "doesn't add up" to the total RAM available. Nothing to worry about.
As for Task Killers: Kill them, they won't do you much good. True they can be useful -- but not in this context: use them to kill hanging/misbehaving apps e.g. hogging your CPU and won't quit otherwise. But it makes absolutely no sense to use them to "free RAM" or "save battery" -- to the contrary: most "killed" apps will simply re-launch themselves immediately, using the same RAM again -- but needing more battery for the relaunch then they'd used had you not killed them. To close apps, exit them via the back button (not the home button). If the dev designed them well, this should place them on the "exit list" (check for "OOM killer" and "application life cycle" if you want more technical details).
Don't worry about handling the RAM -- Android does a good job here already on its own :)

Yeah, I believe in the Android, that's why I'm really confused my ram is 0 and the apps are going crazy. Thanks for the helpful tips! :)

I believe my problem may caused by the BUG of ROM.

You probably have a bad app that causes this (or a bug in your phone's firmware).
Have a look at Memory Usage or enable ADB access and look through the logs (adb logcat)
to spot the bad app/problem.
In general:
Don't use task killers on Android 2.3+ it's just fine without. Here's an  article by Dianne Hackborn on Google's official Android blog. She's an Android engineer at Google.
The same happens in general with linux which Android uses. See the linux ate my ram article why 0MB free is fine.

Yeah, I was expecting not to worry about the ram since I came from a phone with just a little below 300 mb ram usable without any ram issues. I'll check that app out, and come back with the results. Thanks!


text:
Music stutters on ICS
I'm a big music lover and on my previous phone which was a Galaxy Y with Gingerbread I listen to a lot of stuff, and I've never had a problem.
I bought a new phone, a rebranded Innos D9 which has ICS installed. I tried using my favorite music player on it, UberMusic, but I found out the music stutters for a few seconds every few seconds. I tried other players, and so far only TTPod reduces it so that I'm not bothered by it. I was even told that PowerAmp doesn't have this problem, so I tried it. At first I thought everything's okay, then the thing screeched. Also, the stuttering is more likely to happen when the screen is off and you turn it on while the audio is playing.
I've done some research and found this thread on Google Code. It seems that this problem is on ICS. Now my question is, what can be done to fix this permanently? Is there an app or music player out there that totally doesn't have stuttering for ICS or should I root my phone and do something?
Important Update:
I forgot to mention that the stuttering doesn't appear when I'm listening to the FM radio or when I'm watching videos. Does this mean this could be an OS related problem? Like a setting in the mp3 buffer or something?

Is this happening on certain encoded mp3's? - see here

Maybe try upgrading ICS? ( you did not mention exact version?) from the Google Code issue, its apparently fixed in a later version of ICS (4.0.4)

There's commits made to the frameworks according to this so it could well be your ICS is < 4.0.4?

My phone is 4.0.4, and about the bitrate I tried two songs to validate the stuttering: Myth by Beach House which is indeed 320kbps but it also appears on Pink Moon by Nick Drake which is 175 kbps. Is there a later version of ICS? I'm pretty sure I'm not supposed to update unless the manufacturer of my phone says so. Also, on that same page on a higher version of ICS(I think), the error persists. Cite: https://code.google.com/p/android/issues/detail?id=22444#c89

last ICS version was 4.0.5 IIRC... then jumped up to JellyBean 4.1.x and 4.2.x

Oh man, guess I have to wait for a Jellybean rom.

Either that or try roll your own ROM with the fixes/commits in place - that's a challenge :D

Yeah, I guess I will try that... once I learn Android development. Thanks anyway, I'll take it as a challenge! :)


text:
What Android parts do these terms describe?
Android users frequently use a lot of words with unclear meanings. In particular, they use these words a lot:

Framework / framework-res.apk: What purpose does this structure serve?
Flashing: What does this refer to?
ROM: What does this refer to?
Firmware: What does this refer to?
update.zip: This is an update package replaces files on your filesystem. What parts of the system can update.zip change?
Kernel: The kernels they talk about seem to persist across 'flashing' and 'resets' of the device.
Android Release: When someone talks about Android 'KitKat,' or 'Gingerbread' or '4.2.2,' what parts of the whole system are they referring to?
Custom ROM: What parts of the system do 'CyanogenMod' and other 'Custom ROMs' replace?
Titanium Backup: What parts of the system does Titanium Backup back up?
Factory Reset: If I wiped the internal storage (say, dd if=/dev/null of=<storage device>), what can it reset to!?

Here are some relevant terms that are publicly well-documented and known:

BIOS. When the system is powered on the BIOS initializes and does sanity checks on the computer's hardware and peripherals. The BIOS is 'firmware' and exists outside of the computer's normal storage. Even if the system was started with no mass storage, the BIOS would still be there. The BIOS runs a piece of software in the system's storage called the bootloader.
Bootloader. The bootloader uses and is itself a set of files on the filesystem, sometimes in the /boot directory. The bootloader (depending on the case) presents a list of options for how you want to proceed in starting the system.
Each option (usually) corresponds to starting a kernel with specific boot parameters. The kernel is a binary contained in a package file called vmlinuz (or similar) that resides somewhere on the filesystem (like the /boot directory). The kernel creates abstractions between hardware and software, like the hardware interfaces, filesystem abstraction, processes and threads.
Sometimes vmlinuz also contains some utilities that are put into folders like /sbin. Things that are in vmlinuz cannot be modified without repackaging a new vmlinuz file, and replacing the old one.
The kernel loads kernel modules which do various things and are sometimes drivers. Some kernel modules are built into the kernel's binary file and some are separate files on the filesystem, sometimes in the /usr/lib/modules directory.
The kernel also starts a program called init which is in a location that is sometimes specified in the boot parameters. init mounts mass storage devices to directories and starts a bunch of programs. These programs are on the filesystem and usually have all their files in /usr. They are called the system's userland.
In Android, there is a Java-like virtual machine called Dalvik which is started by init, which is what most programs run within.
Rooting: Rooting a device allows users to grant themselves root permissions.
To simplify managing all the software on the system, a system usually has a special program called the package manager which can manage, update and install sets of related files as `packages' corresponding to individual development projects. Android's interface to its package manager is the Application Manager in settings. Applications are available for download via the Play Store
Home Folder: Users have a directory in /home where all their files are stored (including local configuration settings for applications).
Recovery: a separate userland which the bootloader launches that only does system related tasks. You get to it by restarting your device while doing a special dance with the buttons.

It doesn't have enough to answer your question here, but this previous question has more info on some of the terms you're asking about: What is the difference between: Rooting, Jailbreak, ROM, Mod, etc.?

I'm proposing that this become a community wiki, to solidify the definition of the terms included here. I'm not sure this has a definable QUESTION, except as a dictionary.

That sounds good. Is there any way I can change it to community wiki myself?

I've posted a community wiki answer. It's pretty sparse now and only touches on the very basics. Also, I'm not sure what the OP means by "Framework" in this context. Perhaps if we had more information, we can add that to the wiki answer as well. Edit away!

Root: As you understand, "root" in this context refers to the ability to grant a user the privileges of the root user. It's similar to installing sudo on a linux box (but Android root uses su, so there's that fundamental but small difference). We have a tag-wiki for it which has more information: root.
Flashing: In the world of embedded systems, mobile computers, microprocessor-based development, and other technologies that led to modern smartphones, to "flash" something is essentially to copy files to a device. The etymology goes deeper than that, and doesn't seem to have a specific single meaning, but in all practical terms, in the Android world, it's essentially a word that means "Replace system software" (But varies contextually).
Firmware: Firmware is actually a word that, in its original meaning, doesn't seem to apply to Android. However, the word has come to be synonymous with the Android OS when used in this context.
OS: This won't be any different from the term in other computing-related contexts. Android itself is an Operating System - and many other things. (For example, it's also a development platform, etc).
Bootloader: The bootloader standard used for ARM Embedded systems (like most modern smartphones) is indeed quite different from what we're used to on X86 and X86-64. Speaking in a practical sense, the bootloaders used on Android phones have the same job as grub or syslinux, they just work differently.
Recovery: Many Android devices come with support for a separate extremely basic piece of software, which is called "Recovery". It generally includes its own kernel, separate from the kernel Android runs on, and is limited in functionality. It is used to write to system partitions in order to perform actions like changing/updating the kernel, Android OS, or other modifications that can't be done while the Android system is in memory. recovery
update.zip: OS version updates, patches, and many more things are often saved to a file called "update.zip". When Recovery Mode is started (booting to Recovery), it can be set to automatically load this file and install whatever it contains.
Kernel: The kernel used in Android is the Linux Kernel - Version 3.4 for most modern devices.
CyanogenMod: Cyanogenmod is a fork of Android which purports to maintain the "true" Android Experience. It is actively developed and supports many devices.
Titanium Backup: This is an app, available in the Play Store, which backs up applications and application data. It can, of course, also restore apps and data. It requires root access in order to do this.
Factory Reset: When performing a factory reset, the device does not erase the main filesystem. It restores it to a "factory" state - removing user settings, applications, root, call history, etc. You'll want to check the tag-wiki for factory-reset for more information here.


text:
Delay on screen wake
When I push my power button to wake my device it takes 1-4 seconds for the screen to turn on and show the lock screenp. I have seen that others have solved the issue by turning off power-saving mode and auto-brightness, but I have done both and neither fixes it. What could be causing this lag?
I just updated my Note 2 to Android 4.3 although I have been experiencing these symptoms for a long time before that. I am using ADW Launcher.

The Galaxy S4 does exactly the same half the time. It seems to be down to Touchwiz and its incredible amount of bloat and lag. The launcher will make no difference. I rooted and installed the 'google edition' ROM and the lag is 100% gone at all stages so it seems to be Touchwiz I'm afraid. You could download a 3rd party lock screen and see if it helps, but I'd imagine not.

TouchWiz has been slightly problematic since Android 4.1; but it is much worst from Android 4.2. Like RossC said, try another Android widget.


text:
No "delta updates" in Google Play Store on Android 4.1+
I have noticed that since updating my Asus TF300T to Android 4.2.1 (official stock rom) I no longer receive delta updates (i.e. where only changes are downloaded instead of the complete file). Before the update it worked perfectly (on Android 4.1.2). The device is NOT rooted.
I have tried resetting the store's data, rolling back the store updates, and disabling the new app auto-scan. None of these worked :(
Is anyone else experiencing this on the Asus tablet, or any other Android 4.1+ device?
Update (29 Mar 2013): I have been checking this every day since posting, and finally today it seems that delta updates are working again. I guess it was a server side problem because the store was not updated on my device and I made no other changes anywhere.
Update (30 Mar 2013): And today I'm back to full updates :( This does seem to be a server side issue though; not sure if it affects any other versions/devices. If anyone on any 4.1+ build (any device) could indicate whether they have problems with it that would be great :)

I've got a Nexus S running a 4.2.2 ROM. I just noticed I'm not getting delta updates about a week ago. Though I've been on 4.2.2. for much longer, so it could be another problem not related to the Android version, especially since the Play Store can update independently from Android.

Thanks for responding. I assumed it was the update to 4.2 that did it (I first noticed it a week or so after updating), but it could very well be the Play Store app, or even on the server side. However, I did a bunch of searches on various sites (google, xda, etc) and could not find anyone posting about this, so it does not seem to be a widespread problem. At least this confirms that it's not just me, so thanks again for posting :)


text:
Factory reset in phones that don't support SD-cards
Does factory reset on a phone without SD-card support delete the files stored in the ExternalStorageDirectory?
Explanation : Say I have a device like the Galaxy S or an iPhone(I know, sacrilege) both devices don't support SD-cards(Not sure about Galaxy S, definitely about the iPhone). My question is if such a device which doesn't support SD-cards is factory reset, then do your files and media stored in this device's "External Storage Directory" which actually happens to be on the phone get deleted?
My guess is no, am I right?

You are correct.
The external storage directory is classed as an 'External SDCard'. Anything with SDCard in the title is not wiped during a factory reset.
When you go to factory reset, you will be given the option to wipe your SDCard as well as the internal storage data directory.


text:
Unresponsive menu button on several Android apps
I have noticed on several apps there is a menu button/icon (three vertical dots) but it is unresponsive and I'm wondering if it's just me or the app. I initially assumed it was just the app, but I have noticed it in several apps now. The menu button responds to a tap, in that I hear the "tap" sound and the button highlights momentarily, but nothing happens - there is no menu?!

Three apps I have noticed today that have a "do nothing" menu button:

Compass (called "Tiny Compass" in the Play store)
BBC iPlayer
Stack Remote

Is this really a "problem" in the app?

This menu button is a backwards compatibility feature. It's displayed on all apps that say they are designed for a version of Android from when Android devices had physical menu buttons. (That's Froyo or earlier.) The Android system can't tell whether such an app needs the menu button or not, so it has to display it to make sure the app is usable on newer devices without the hard button.
If the button annoys you, contact the author of the app and ask them to update their "target version". They can do this and still be compatible with older versions of Android.

I had the same problem. The menu wouldn't respond in Gallery, Setting, and some other applications.The restart didn't work.
I tried closing all the application by double-tapping the home button and then reopen them again plus using 'clean master' app. This seems to work (sometimes) tho.
Don't really know why, but for me it helps.

This seems to be a different problem to the one listed in the question. The question addresses a spurious non-functioning soft-menu button that appears on all devices, in the soft-menu bar, when it is not required. You seem to have a problem with a legitimate menu button not responding.


text:
Why can't all rooted phones be unlocked?
I enjoy modding my phone with custom roms, kernel patches, and custom bootloaders.
I know that the bootloader/recovery can be overwritten, as can pretty much any partition that exists on the phone. Even the radio can be flashed, though this is not generally an option available since you could permanently brick a phone that way.
My question is how phone companies can lock down a phone (ie tie it to their carrier) if a rooted phone gets access to basically everything? I lack the knowledge in the architecture of how a locked phone works, so I'm guessing there has to be some chip that is not accessible.
Can someone shed some light as to how exactly a phone gets locked?

See also Can I use my device on a different carrier? and What is the difference between: Rooting, Jailbreak, ROM, Mod, etc.? for more info


text:
Bash terminal on tablets
I would like to buy a tablet and use it as a netbook to work using a keyboard dock (I still like the touchscreen and stylus options over buying a netbook). I work mostly on linux machines where I need ssh, vpn and the ability to open X windows remotely. Are there terminals for the Android tablets that can do that ? Anyone with comments about Ubuntu on tablets ?

Yes, to an extent. I know there are apps that will create an SSH terminal. Most likely there are other apps that can process other types of protocols.
There are only few tablets that compatible with Ubuntu (At least work well with). The Nexus 7 and/or 10 being a prime example. From what I hear, it works very well and is almost no different from the desktop version.
In my opinion, from what you are looking for, I'd get a Nexus 7/10 and try out Android OS, and if it can't do everything you want it to, then install Ubuntu.

But do these apps create an X-window system and allow root access ?

That would require an X-Server running. Though there were some tries for that, Android does not ship with this. But you might want to take a look at the Android XServer app :) See also on StackOverflow: X-Applications over SSH in Android


text:
Problem detecting micro SDHC card
I recently purchased a Micromax A110 and I tried to use my old Sandisk micro SDHC card which is previously used on a Nokia 5233. The problem here is that the new Android phone is not detecting the micro SDHC card. Why won't it work?

Have you tried any other micro sd cards in the device to see if that works?

The existing micro sd card working fine on Nokia 5233 phone still. It had problem only with new android phone.

I asked if you have tried any other micro SD cards in the Android device.  It could be that the device is broken?

I Just tried with another micro sd card, it is working fine. Please notice the one worked is "micro sd" not the "micro sdhc". Is it problem with micro sd hc card?

Which model?  eg. Micromax A110 Canvas 2 (or earlier model)  Which Android version?  What is the capacity of the SanDisk micro-SDHC card? .. and the ones which do work?

I have solved the issue. The issue is that the memory card was locked by old Nokia phone. So I unlocked it and now it is working perfectly. Thanks for all your support.

Not all equipment which uses SD cards can use SDHC cards.  It may be that your device doesn't support the sdhc card you are using.


text:
How do I unroot my Evo (using unrevoked 3.21)
O.k so I have an H.T.C Evo with Froyo 2.2, and I recently rooted it using unRevoked 3.21 but now i'm having some issues with my phone and would like to return it back to sprint. How do I remove the root and change the evo back to stock version so I can take my phone into sprint for a checkup. Can someone pleaaaaaaasssssssse help me? My phone is moving like a turtle.

You could start with this method. It's basically just two steps:

If you used Unrevoked Forever on
your phone, then flash their S-ON
tool.
Flash a stock PC36IMG.zip
from HBoot.

There's also the RUU method, though I think you'd still need to run the S-ON tool if you used Unrevoked Forever (I don't believe the RUU will re-enable S-ON). Either one of these should get you back to a stock unrooted system.

The RUU is basically a nice, executable version of step 2.  The OP will need to flash S-ON first, then either flash the RUU or the ROM extracted from it.

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


text:
Why do I have trouble seeing files from Windows?
I have a Nook HD+ with kivy installed. When I connect the device with USB I can use Windows Explorer to see the directories and copy files to the Nook. But the log files it generates don't show up in Explorer. I've installed BusyBox so I can copy files around, and copying one of the logs to the base program directory works fine - ls -l shows that the permissions and owners are the same as the other files in the directory. But I can't see them from Windows.
I don't know which version of Android, if someone can tell me how to see it I'll add the information to the question.
Edit: shutting off the Nook and turning it back on seemed to clear things up. I don't know if it will show any new modifications to the directory, but I got what I needed for now.

What's the "base program directory"?

@DanHulme it's the subdirectory of kivy where I've stored the source files for my app.


text:
Android Gallery and Music empty?
I recently discovered that all my photos on my phone has disappeared from the Gallery application. I connected my phone to my computer, and the images are still present in DCIM/100MEDIA/ directory.
I did a backup of my photos, tried stopping the phone, the app (gallery), removing the cache from that app but no luck.
While searching for a solution online, I found that some people also had the same problem with the music app. I have albums that used to work, so I was sure to find them. But now they also have disappeared.
So Gallery and Music is empty despite having files in the correct folder.
Regarding Gallery, if I take a new photo, it will correctly be added to the DCIM/100MEDIA/ folder, with the name IMAG001332.jpg (for example), but with 1332 being a correct incremental number (not starting from 0), which is even weirder.
I don't know what to do to fix it! Does anyone can help me?
(Note: I have an HTC One S)
Update: I did a reset of my phone (http://www.htc.com/us/support/htc-one-s-t-mobile/howto/315367.html) without any luck.

When you did the reset of your phone, did you clear data as well? If not I suggest doing that. Is there another app that might be conflicting with the gallery or music apps?


text:
Forcing home/back/recent apps bar to rotate
I have a Nexus 4, running Android 4.2.1.
There is a bar on the bottom of stock Android with the buttons for navigation. Is there a way to force the bar to rotate with the rest of the screen, like on a tablet?

Why would you want to do this? The bar doesn't rotate, but the buttons do. (The little icons will rotate when the device changes orientation)

Just a question of preference.

I see. Is this a rooted device?

No, but it's not something I mind doing. Just haven't gotten around to it really. It's a new device, 1 week old.

That's fine. Mine isn't rooted, and to tell you the truth I have no idea how to do this. The Android OS is made to actually remove this area from the screen when displaying content (To help the developers), so moving it might cause some issues.

@Josiah and @Dan Gravitybox JB can do the job, provided that device is rooted and Xposed Framework is installed.


text:
Transfer paid apps from iPhone to Android Account
Let's say I have a paid app on my iPhone called "App" that costs $6.99, and I want to download that same app onto my new Android Account (because recently, you are able to download Android apps on Chromebook, right?).
Is there a way to do this easily? Maybe with a redemption code?

You could contact the developer, in the case of "expensive" apps, some will give you a redemption code to get it on the other platform at no charge... but this is very rare. Otherwise, you will just have to buy it again as the answer states below.

The Apple App Store and the Google Play Store are two different stores.
It is in their best interest to make it impossible/not allow anyone to transfer an app from one store to another.
It's like how you can't buy a phone from Samsung and then claim on the warranty with Apple.
It's often possible to transfer progress in games across platforms but you have to buy the app a second time, sadly.
You can transfer almost anything from iOS to Android but not apps.

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


text:
Unable to add Rediffmail account in Gmail app
I was trying to add my Rediffmail account to Gmail app. After choosing any of POP or IMAP, it says unable to connect server.
I have other mail accounts in the app and all of them are working fine.
How to add Rediffmail account in Gmail app?

Select POP3 → In POP server address, type pop.rediffmail.com → in SMTP server address, type smtp.rediffmail.com.  Then you are all set.

smtp.rediffmail.com doesn't work. I keep getting authentication failure error, although I made sure I am typing correct password

Once you reach final stage where it asks for SMTP details, just prefix with smtp. and click on next. You are done.
I did it on my own and it worked fine.

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


text:
build.prop regeneration
I have tried to edit build.prop for on screen navigation keys, but, unexpectedly get cleared build.prop file and got saved. What can be done to regenerate file? Should reinstall zip should solve it? Or can I copy file(build.prop) by extracting from ROM zip.

build.prop file inside /system/build.prop is got cleared and saved.

The prop file is right there in the zip (/system/build.prop, same as the path on the phone) - you don't even need additional extraction tools to get it back.
Re-installation will also restore it, but at the cost of losing all prior modifications on /system that you made.

I have re-flashed ROM, working well.


text:
Is there a stopwatch app that also records time of day timestamp?
I've looked all over Google for a stopwatch app that records laps (which they all do) but also records a time of day timestamp. If it can't do the example below, at least record the initial start time of day (and I can figure out the rest).
i.e.

Start (10:09:00 am - I want to know I started at this time)
Lap 1 - 00:01:02 (10:10:02 am)
Lap 2 - 00:12:12 (10:22:14 am)

UltraChron StopWatch Lite. It doesn't time stamp each lap but does the start time.


text:
Have to clear google services framework on android ice cream sandwich
I recently had issue to sync with google as the following are affected:

gmail app says no internet connection
play store says no internet connection
tablet is set to EPOCH (Jan 01, 1970, 00:00)
I can surf the internet but I get tons of certificate warning whatever the website I am surfing.

I am using an android tablet (android 4.0 ice cream sandwich), wifi only. Looking around I found that I should clear data from google services framework and restart my tablet (see this post for example).
It works great, but the error keep coming back and I'm looking for a permanent fix. Should I wipe the tablet?
Thanks in advance for your help!
---- After test update -----
Thanks all for your comments and help (and sorry for my long silence). Here is the steps I've done:

Delete and re-install accounts, Results: Error connecting server (tried with 2 different account)
Done Factory Reset > No more issue to add account
Install Gmail app (it took 3 or 4 trials where I reboot tablet before success). There every was fine.
Restart tablet for testing: same issue as before :(

I guess either I never switch off my tablet or I return it

Did you try to also clear the app's cache? Btw: A nice and useful troubleshooting rule graph can be found at Lifehacker :)

yes I did. The issue also affect the time on the tablet as it is set to EPOCH every time the bug is here (edited the question). Thanks for the chart basically it say I'm good for "reset factory data"

I was afraid so, yes. However, I don't know what else you could try. Just a hint: Before you're going to reset, make a good backup. As you're on ICS, you can backup everything even without root (check my profile page when in doubt, my highest-ranking question deals with that topic). Also don't forget to report back with the results of your reset, if you're doing it.

Before doing a Factory reset, try removing and adding your Google account: maybe this solve your problem.

@magdmartin Why is your tablet set to Epoch time? Have you tried setting the clock on it to the right time? A lot of servers and systems have problems communicating with/trusting clients with clocks "skewed" by a few hours, if yours is off by decades that is likely to be causing you problems.

edit question with last test.


text:
Not all Google Apps in SuperNexus Rom on Galaxy S3
I installed the SuperNexus 2.0 Build 4 ROM on my Galaxy S3 (i9300) last weekend. I also installed the gapps-jb-20130301-signed.zip to install the Google apps. However, that does not seem to have worked. I do not have YouTube or Google Maps. I do have Gmail however.
How can I install the Google Maps and Youtube applications?

That describes a fact -- but what is your question?

You were right, I edited the question.

Youtube and GMaps should come with the GApps package usually. But with the "core apps" installed, you could try loading them manually via Google Play (you've got that with the GApps, right?).


text:
What happens to the battery during bootloader/recovery?
I want to know what happens to the battery (does it charge/discharge/stay constant?) when the device is in bootloader or recovery mode. In both of these modes, a USB may or may not be connected.
If the battery does charge, could that possibly be a feature that could be a result of the installed recovery/bootloader, or could the charging feature be hardware dependant?

Charging control is done via hardware to prevent ruining the battery in case of software errors. That is why (most?) devices charge even when powered off. The status display that is then shown is just a "minimal OS" that queries the current status from the battery charger hardware.

Great and simple answer.


text:
How to launch the hidden Sound Recorder on Froyo?
I discovered a "Sound Recorder" in the application list on my Froyo handset. Why is it hidden like that with no 'launcher' or app icon to start it?
I'm curious.. also because of this app;
I need to open this thing and I want to know how to do it since it is already on my phone. I don't want to pay for an app that is just a shortcut.
NOTE: I recently flashed an unofficial cyanogenmod ROM for my phone and it has the hidden sound recorder shortcut now on the application drawer.

You're asking for a lot of speculation here. Your second paragraph is basically unanswerable unless the developer himself answers it.

Well, we do prefer concrete, answerable questions. (Read the [FAQ].) The only concrete question I can see is "How can I access the 'Sound Recorder' functionality of Android without going through a third-party (paid) app?" Or possibly "What is the 'Sound Recorder' I see in my application list?"

@Al Everett Alright, I just need to open the sound recorder app without using his app. Any idea? Terminal?

Well next time, I'll think about posting it as different questions; I just seem to link everything up in a single post, sorry. and hoping that next time I won't encounter any "similar post" comments when I do that. (ps. I made the question clear now, hopefully)

Yes, better, thanks. Please note that I wasn't being critical, only pointing out that you weren't likely to get helpful answers. Now I just hope someone knows something about Sound Recorder, because I'm curious about it now, too.

let us continue this discussion in chat

You could try launching it from the command line using the am command. Either from a terminal emulator or from an adb shell you can try:
am start -a android.intent.action.MAIN -n com.android.soundrecorder/com.android.soundrecorder.SoundRecorder

This works on my EVO and on my Xoom, and it's probably important to note that my Xoom does not display the Sound Recorder application in my app drawer (similar to your device).
Also, some custom launchers let you define shortcuts to either an activity or an intent. In ADW Launcher, for example, you can choose to set a shortcut to the Sound Recorder activity by long pressing your home screen and going to Custom Shortcut->Pick your activity and then finding it in the list (it lists every activity on the device).

This isn't what you asked for, but it might solve your problem. If you just want to be able to make short audio recordings from your phone, you can use the “Note to self” functionality of Voice Search.
Trigger Voice Search, say “Note to self” (on my phone it also appears by default in the text search results list before you type anything, but I think that might be new in Gingerbread) and then anything. A dialog will appear with a transcription of the recording, and options for sending an e-mail. If you just send it, you will recieve in your Gmail a message containing the transcription and the original audio.

Sounds nice.. but its slow and needs internet connection; also voice commands are currently for US English/Generic language inputs only. thanks for the tip though.

CyanogenMod 6 (which is Froyo) has this available, so my guess is that your phone manufacturer or carrier has hidden it. Post more details about those two things.

That's very unlikely because I did /cust WIPE and /ALL wipe and am running a custom ROM. The hidden app still exists on the new ROM too. Right now im running Dronix 0.4 ROM (based on 2.2 froyo itself) and its Huawei IDEOS u8150.

I have a suggestion that might help you. I have huawei ideos u8150 and I use messages whenever I want to record any audio.
Go to 'message' then 'create new message'. Select the menu button then select 'attach' Select record audio and the sound recorder is launched. After recording you can discard the message since the recorded audio has been stored on your SD card


text:
No decimal input on numeric field when using Google Sheets on phone
In Google Sheets, when I add a number (e.g. 1.01) using the text keyboard and hit Enter, this numeric keyboard pops up as a default because the field is numeric. However, I do not have a decimal option, so I switch back to text keyboard, and we start over on every cell... or I could switch back and forth just to get the decimal, which is also insane.
On a tablet, in the white (extra options) the last one is the decimal point, but on the phone, it isn't there. I'm using Samsung Galaxy S3 and there is no decimal point on numeric keyboard.
How to input a decimal point with numeric keyboard?

Screenshot (click to enlarge)

What is your device model? And what keyboard are you using? It seems it's impossible to do (1) and not sure about (2), so do you mind changing keyboard?

I'm quite sure the Google Keyboard, SwiftKey and ai.type keyboard apps have the decimal point. Use any one of them. The 1st 2 are free.

@TamoghnaChowdhury This is also what I was thinking and a great suggestion. Perhaps add this as an answer if the keyboards show the decimal point by default on the numeric keypad. Be sure to include Play Store links!

@Great answer! Don't worry about pictures...

@AndrewT. Samsung Galaxy S 3

This was fixed after app software update

What software update? OS or app? Clarify and state relevant versions and other information if possible.

There may not be an exact solution to the problem as you posted it, but there are possible workarounds. Android's primary strength is it's customizability and modularity, so if one (your stock) keyboard does not satisfy you, you're welcome to switch it out for another which does.
I know of 3 keyboard apps off-hand that have a decimal point in their numeric keypad. These are:

Google Keyboard - The officially recommended keyboard app for Android, and the default for Nexus devices and devices running Lollipop or above (as the AOSP keyboard). Very clean and doesn't deviate much from AOSP. Completely free.
SwiftKey Keyboard - a very popular keyboard replacement app (some might even say the most popular). Highly themeable. Free with in-app purchases.
ai.type Keyboard - Another very popular keyboard. Supposedly has very good text prediction, and also high themeability. Free with in-app purchases, Pro version removes ads.

I recommend these keyboard replacement apps to the OP as I have used them myself and know that they (when I used them) provided a numeric keypad with a decimal point, as the OP requires.


text:
Not seeing any notifications in notifications bar except srange icon
Recently I started seeing this strange icon in my notifications bar (see screenshot). At the same time, I stopped seeing any notification icons in the bar on top. I still get audibly notified, and they're there if I pull the notifications window down. But the notification bar remains as in the screenshot.
Any ideas what this might be?

The little arrow with the - means that you have status bar notifications disabled, which is why you're no longer seeing them. If you pull down the notification shade and then swipe the buttons to the right (I believe it's to the right anyway, check both directions) there should be a toggle to re-enable them:


text:
Empty variables in termux' bash
I want to perform a test: if a certain variable exists, is non-empty, and its value matches an existing directory, then "exists" should be outputted.
I did the following:
$ echo $var

$ if [ -d $var ]; then echo "exists"; fi
exists

I got "exist", although I did not assign any value to $var. Why did this happen, and how do I test this properly?

If @WillW answered your question, please mark it as accepted! :)

I think you need to wrap $var in quotes.
if [ -d "$var" ]; then echo "exists"; fi

[ -d FILE ]   True if FILE exists and is a directory

You probably want to use one of these tests instead:

[ -z STRING ] True of the length if "STRING" is zero.
[ -n STRING ] or [ STRING ]   True if the length of "STRING" is non-zero.

From https://www.tldp.org/LDP/abs/html/fto.html

how do I test this properly?
  if a certain variable exists, is non-empty

This question is discussed in detail https://stackoverflow.com/questions/3601515/how-to-check-if-a-variable-is-set-in-bash here.

its value matches an existing directory

This code [[ "${F1AR[@]}" =~ "${NAME##*/}" ]] checks if values match existing directories.  From https://github.com/BuildAPKs/buildAPKs/blob/master/scripts/bash/build/build.github.bash#L59


text:
s6 won't fast charge or connect to pc
so i have an at&t s6.
suddenly stopped fast charging. and when i say "stopped fast charging," i mean charges slower than molasses now. takes literally about 4hrs to charge from 80% to 100%.
tried multiple known good chargers and cables and verified with both another s5 and s6 activ. found that the computer won't recognize it anymore magically.
i am rooted and have uninstalled a bunch of bloat. shouldn't matter right?
also in developer options- i can check usb debugging, but then in the secret menu (*0#*0) or whatever, mtp+adb is unchecked. if i check that, then go back to developer options, usb debugging is unchecked.
I even pulled apart the phone and put in a new daughterboard in case the thing port is broken and put in a new battery both to no avail.

First rule of thumb in a situation where charging doesn't work properly, and connection to PC doesn't work properly. Check your cable. The cable might be faulty

S6 uses fast charging which is by design disabled if you charge with phone with screen on. Is the behaviour same with phone switched off? 2. Measure the current using an app like Ampere on Play Store,  say 15 minutes after you plugged in from a low battery level and then when it seems to charge extremely slowly. Do this with supplied charger and other chargers as well and revert please

Reading the question again prompts this-1. are you sure  4  hours to charge last 20% is consistent? 2. Other adaptors you have tried, how long did it take for last 20%? 3. Changing cables didn't help?

It's about 2.5hrs if I don't touch it from 80 to 100. Charges the same screen on, off, and phkne off. Put in a new OEM battery and bought a new charger and cable from Samsung. Verified the charger and cable were good on another phone. Thought it might be the USB port. Put in a new one of those also. No change. With Ampere I'm getting 180-300mA regardless of what charger I use.

most probably this is an issue with your hardware, not software.
What you want to do now is

check your phone USB port. With rough usage and hard unplugging it tends to get damaged easily (hence the switch to better type-C ports in new phones). Check if a specific angle gives you 'fast charging' message. If so, service center can change it for you. \n
check your charging / USB cable. If it is faulty or is shorting then that can definitely be the cause. \n
Try connecting to an alternate power source. Maybe your PC ports are undervolting.

If you have changed everything [cables, ports, charger] and are still getting  300 mA, then something is wrong with your phone, likely hardware issue

Yep the problem I'm having is- before I even posted initially I had replaced the USB port/daughter board to begin with and found no joy. I am hoping I just swapped a broken one for a broken one. Have a new one on the way. Will report back.

Ok so put in USB port #3 wih no joy. I read somewhere that the USB drivers can break for no reason and the update to 5.1.1 is supposed to fix...but I can't get the thing to update. Stuck in 5.0.2. I am rooted. If I unroot then factory reset all should be kosher right?

Had the same problem.. sm-920v
 Solved: Just cleaned the usb-charging port.. pc detect and fast charge working again..
Note: cache partition erase didn't work

How did you clean it?

Ok so to update- now on my 3rd USB port/ daughter board with no success. Still charges about 20%/hr when not being touched while plugged in, no computer connection, and charges halfway normally when on the wireless pad. Did some more internet scouring and found this guy doing a power amplifier swap:
https://www.youtube.com/watch?v=x__8r-UiCSo&feature=youtube_gdata_player
Gonna give it a shot. Got one for $11 on eBay. Props to the Chinese for having really cheap stuff. Thing should be here in two weeks.

This should be added as an edit to your question instead of an answer unless you know that it works.

Did the power amplifier swap fix the problem? Mine does the same, charging ridiculously slow and won't connect to the computer.


text:
Apps always autoreload
I bought my Nexus 6P in Canada. Occasionally, I travel to China. Then this weird issue starts happening: for every app, the top activity refreshes itself periodically. For example, when I am reading Quora, the app refreshes itself while I am reading, causing the scrollback moved back to the very top. It is almost like Activty.onCreate() is invoked periodically by a scheduler. This issue happens to both Google Play installed apps and 3rd party apps. However, when I return to Canada, everything is automatically fixed.
What is the cause of the issue, and how do I fix it?
Also, having a VPN that unblocks Google Service does not help.


text:
What might be the cause of the weird colors and picture mis-alignment?
If I connect my Android tablet (A10MID, Android 4.0) to my monitor, and:

the colors on the monitor
the alignment of the picture
the resolution
and the floating "input not support"-ed message

are problematic. It works well otherwise: mouse, keyboard, runs apps, ...
Here is the setup:
tablet miniHDMI -> miniHDMI-HDMI cable -> HDMI_female to DVI_male adapter -> monitor DVI

And this is what I get:

(higher resolution: http://postimage.org/image/5tdvmb5pz/)
Since then I tried that monitor connected to my desktop with DVI-DVI cable that I borrowed, and it works perfectly.
I also went down to the next electronics store to try the tablet with a different display, and my tablet seems to work with one of those fancy new TVs through HDMI.
So both the tablet and the monitor work perfectly. But they cannot be coupled.
Could this be caused by my monitor not supporting HDCP (High-bandwidth Digital Content Protection)?
If not, than my HDMI-to-DVI adapter is the only thing that can be the cause of this?

Th image is unclear. Please try to upload a better one.

@user1358 / nlognfan Please register an account to maintain ownership of your posts.  Once you do, use this to get your unregistered accounts merged into it: http://android.stackexchange.com/help/user-merge

Have you tried different resolutions on the Android video source and changing the refresh rate between 50 Hz and 60 Hz. My cheapie tablet offers:
1920 x 1080p 50 Hz
1920 x 1080p 60 Hz
1280 x 720p 50 Hz
1280 x 720p 60 Hz
720 x 576p 50 Hz
720 x 576p 60 Hz
All choices under Settings-->HDMI-->HDMI Resolution.
My guess is that you are sending a higher resolution than the target can handle.


text:
How to play 5.1 audio direct to speakers?
I have an audio file recorded in 5.1 surround sound. I'd like to play this from my Android Device.
The issue I have is the various Android devices I have (tablets/phones) all contain the standard 3.5mm jack, which I think means stereo only! I'm not after a simulated surround sound, I need access to the outputs! Maybe it's possible via the USB?
My exact requirement (if it helps) is to end up with 4 outputs. Front-left and front-right as a stereo pair and back-left and back-right as a stereo pair (I don't need the sub-channel). However, being able to somehow split the signal so each goes to its own speaker is also fine, I can worry about the rest. The focus is on how the Android device can provide this signal(s).
The device I want to connect to is External Sound Card With USB 5.1 (note it's USB input). Maybe with the new USB DAC input?

There are many ways you can get the audio out.
Through wire:

Head phone jack - you clearly said it can deliver only two channel audio.
USB - You can use an OTG adapter and plug in a 5 channel USB sound card and get the 5 channel audio out.
USB Type C may have this support native.

Wireless:

Bluetooth - if the A2DP profile is supported (will be supported from v2.0 onwards) you can stream audio in stereo - again not good enough for you.
Screencast protocols like Miracast or DLNA might support as it can be considered as a HDMI connection over Wi-Fi. These should support 5 channel audio.

Of course for all these you have to have a player which has appropriate codec support (usually AC3).

2.USB - You can use an OTG adapter and plug in a 5 channel USB sound card and get the 5 channel audio out.  That seems like the answer... Can you confirm it means I can get 5 channels out and not 5 virtual channels?

I am sorry, I cannot confirm as I have not tried myself.

As I have written in my answer, it will be only virtual. Android can only use 2 channels over USB

Then this answer might not deserve the 'accepted' status unless the OP accepts the wireless based solution.

In stock Android, it's not possible to have more than two audio channels (stereo) via USB as documented here.
The 3.5mm jack, as well as Bluetooth, do not support more than 2 channels either (although enhanced aptX (Bluetooth) does support 5.1 surround sound, it's not yet supported by Android).
You can connect an external sound card, it may even work but you won't have 5.1 output through your Android's USB port which means you could only have virtual surround sound on an external sound card.

I don't know what possibilities were available back in 2016 when this question was first posted, but today I managed to get multi-channel audio working on my Android 12 TvOS tvbox with a USB 7.1 channel external soundcard.
I used the docs from https://source.android.com/docs/core/audio/implement-policy and edited /vendor/etc/usb_audio_policy_configuration.xml to add a multi-channel output to the config. (As shipped, the config only supported stereo.) I basically copied some info from the HDMI policy. Here's a diff showing what I changed. Note that you'd need root access to make these changes on your box.
--- /tmp/usb0.xml   2023-04-04 08:53:35.572497487 +0100
+++ /tmp/usb1.xml   2023-04-04 09:18:15.012439753 +0100
@@ -21,6 +15,11 @@
             <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
                      samplingRates="44100" channelMasks="AUDIO_CHANNEL_OUT_STEREO"/>
         </mixPort>
+        <mixPort name="usb_multi output" role="source">
+            <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
+                     samplingRates="44100 48000"
+                     channelMasks="AUDIO_CHANNEL_OUT_STEREO AUDIO_CHANNEL_OUT_QUAD AUDIO_CHANNEL_OUT_5POINT1 AUDIO_CHANNEL_OUT_7POINT1"/>
+        </mixPort>
         <mixPort name="usb_device output" role="source"/>
         <mixPort name="usb_device input" role="sink"/>
     </mixPorts>
@@ -38,7 +37,7 @@
         <route type="mix" sink="USB Host Out"
                sources="usb_accessory output"/>
         <route type="mix" sink="USB Device Out"
-               sources="usb_device output"/>
+               sources="usb_device output,usb_multi output"/>
         <route type="mix" sink="USB Headset Out"
                sources="usb_device output"/>
         <route type="mix" sink="usb_device input"

For reference: I have an H96 Max V58 tvbox, and used this StarTech USB soundcard. https://www.startech.com/en-us/cards-adapters/icusbaudio7d
Also note: this soundcard also has SPDIF input and output. The SPDIF out carries the front left/right channels too, same as the analog output. That turns out to work perfectly for my purpose. I'm using Edifier S350DB for my front speakers; this is an active speaker set with 2 bookshelf speakers and a subwoofer and I'm using TOSlink optical cable for the connection. My original setup was
 (back of room)         (front of room)
   Projector
       |
     HDMI
       |
     TVbox ---> SPDIF -> front speakers

Now it's
 (back of room)         (front of room)
   Projector
       |
     HDMI
       |
     TVbox
       |
      USB ---> SPDIF -> front speakers
       |
      RCA -> rear speaker amp

I added a simple stereo amp and pair of passive bookshelf speakers for the rear surround channels, and use this with Kodi (version 20) set to use a 4.0 speaker configuration. In 4.0, the rear channels are actually coming out the output labeled "center/sub" on the StarTech box.

You could try this app: USB Audio Player PRO.
The developer claims to have built its own USB audio driver and thus supports multi-channel streams:
USB audio driver in USB audio player/recorder pro and audio evolution mobile.

Multichannel support exists, but from what I can tell, it's not necessarily standardized.  I still can't confirm to what extent it is supported, but my limited understanding suggests that only external devices designed with Android in mind would be able to work with multi-channel support, and would otherwise either not recognize the extra channels, or just duplicate it over to those channels.
It's a shame that Android doesn't have a way to actually manage audio streams or channels, but it seems that has more to do with the way external sound devices are implemented more than anything.
https://source.android.com/devices/audio/usb

Via normal miniplug stereo output, you should be able to feed into a Dolby-enabled system which separates the encoded extra channels from the stereo output. That's not true discrete multichannel, but it sounds OK to me on my home stereo.
I"m also looking to try to get this from an Android in an outdoor portable music situation, hopefully via Bluetooth.

I can confirm that multichannel audio works if the /vendor/etc/usb_audio_policy_configuration.xml policy is updated as described above.
The caveat is that not all players actually output proper multichannel audio. KODI, MPV and Nova players work, VLC does not.

Others have suggested that USB audio only supports stereo (2-channel) audio streams, and that 5.1 could be achieved using 3rd party applications. The reference to it only supporting stereo is outdated (Android 5.0, 2014). This limitation is no longer present. The Android USB Audio HAL supports up to 8 channels (7.1).

Please add references or links to support your answer

This could be very interesting. The answer for me in the end was buy a Windows 10 tablet as it just works with surround sound. However, I'm still very keen to know more about this, especially as https://source.android.com/devices/audio/ doesn't show any information to confirm this (at least that I could see)


text:
How do I get my Android Phone to connect its internal SD to my PC via USB?
For some reason my Galaxy Y GT-55360T phone running Android 2.3.6, won't connect its SD card to my Ubuntu 12.10-running PC when I plug the USB cable into it. It did before, I have no idea what I did to cause it to not mount the SD. Please help me, this is getting very annoying.

As you did not mention your phone nor the Android version, we can only make wild guesses.
Simplest case: It is de-activated on your Android device
Most likely you unintentionally deactivated the USB Mass Storage (or MTP, depending on device/version) mode. To get it back:
When you connected the USB cable, wait 2-3 seconds, and then pull open the notification area. It should show an entry with the USB symbol which lets you chose the action to perform ("charge only", "USB Mass Storage", "MTP", ...). Chose the one you want. Now your computer should see the new device.
Simple case: Your USB-cable got "broken"
Of course another possibility is your USB cable "got broken" (e.g. due to physical stress). If the above did not solve your issue, you might try with a different cable.
More difficult case: Ubuntu messed up
Third option I can think of is that Ubuntu somehow messed up. To rule this out, try with a different computer (e.g. visit a friend if you don't have a second computer). You can also try booting from some live CD/DVD on your Ubuntu machine. Using the same machine for the test bears the risk that, if it's a hardware issue with the machine, results are simply the same; in case your USB port might be the issue, try a different port (and try a different device on the same port to cross-check).
If it's Ubuntu messing things up, our sister-site AskUbuntu might prove helpful, and we are not any more...
Hard case: USB port on your computer is broken
I already showed above how to rule this out: Try connecting your Android device to a different USB port. If it works there, the former port most likely is broken. If not, try connecting some other USB device (external hard disk would be ideal) to the former port. If that works, the port is OK.
Ultra-hard case: USB port on your Android device is broken
If you cannot get anything to work on your devices USB port, it's a case for the repair shop...

I didn't mention those details because I didn't know. Until now when I searched my phone and managed to find out.

@BrentonHorne I was not blaming you -- it was only a hint a) for future questions, and b) that you might want to update your question with those details, which would enable us to give more precise answers. Nobody expects you to "be born perfect" ;) I hope I still was able to shed some light?

Turns out for some unknown reason when I reconnected the cable it connected the storage which it hadn't for the past 10 times.

Oh, that issue is called "demonstration effect" as far as I know :) I'd suggest take dice to chose which answer to accept, to show your problem is solved #) Of course you can answer your own question yourself, and then accept that (after two days). I was already expecting to answer your question again over at AskUbuntu :)


text:
USB disconnects on Samsung Galaxy A51
I have Samsung Galaxy A51 (SM A515F) running latest official Android 10 and macOS 10.15 development machine.
ADB authorization is given, but sometimes (~ once per 30 minutes) it disconnects and shows the dialog again.
It happens only with this device (I have ~10 different devices). I've tried different USB ports and cables (including one that was shipped with device) with no luck.
I see the device in the ioreg output:
SAMSUNG_Android@00400000  <class AppleUSBDevice, id 0x100fbd4da, registered, matched, active, busy 0 (2 ms), retain 18>

But not in the adb devices output:
$ adb devices
List of devices attached

It connects again only after few repeatedly accepted dialogs and re-connection.
How to fix it?
UPD. Now it just periodically disconnects and reconnects, sometimes with prompt, sometimes without it.
Logs at the disconnection time (removed unrelated lines):
06-16 18:04:54.650 12533 13319 D SDHMS:com.sec.android.sdhms.thermal.siop.y: SIOP:: AP:261(261,0) BAT:263(263,0) CHG:263(263,0) USB:0(0,0) WIFI:209(260,50) LRP:268(268,0) LRF:266(266) LRB:268(268)
06-16 18:04:54.758 18551   346 I adbd    : USB event: FUNCTIONFS_SUSPEND
06-16 18:04:54.953   361   389 E libmtp  : [mtp_simple_sink_thread : 0315] -->[mtp_simple_sink_thread, 315] !!!!!! read failed errno [5], error [I/O error]
06-16 18:04:54.954 18551   346 I adbd    : USB event: FUNCTIONFS_DISABLE
06-16 18:04:54.955  4571  4596 D DataRouter: After the usb select
06-16 18:04:54.955  4571  4596 D DataRouter: read length is zero
06-16 18:04:54.955  4571  4596 D DataRouter: dr_usb_deinit
06-16 18:04:54.956  4571  4596 D DataRouter: dr_usb_init
06-16 18:04:54.956  5019  5749 V UsbDeviceManager: USB UEVENT: {SUBSYSTEM=android_usb, SEQNUM=9235, ACTION=change, USB_STATE=DISCONNECTED, DEVPATH=/devices/virtual/android_usb/android0}
06-16 18:04:54.956  4571  4596 E DataRouter: USB Interface is open with 0x6
06-16 18:04:54.956  4571  4596 D DataRouter: USB interface is now configured for usb_fd = 0x6
06-16 18:04:54.956   361   389 E libmtp  : [mtp_simple_sink_thread : 0362] -->[mtp_simple_sink_thread 362] read error [0] [Success]
06-16 18:04:54.957  5019  5749 D UsbDeviceManager: updateState: state=DISCONNECTED
06-16 18:04:54.957  4571  4596 D DataRouter: Before the usb select
06-16 18:04:54.958   361   361 W MTPRx   : notification from stack 21
06-16 18:04:54.959   361   361 W MTPRx   : Read Error Came so calling usbRemoved()
06-16 18:04:54.962 18551   358 I adbd    : UsbFfs: connection terminated: read 39577 failed with error Cannot send after transport endpoint shutdown
06-16 18:04:54.962   361   361 D MTPRx   : MTP_RUNNING_STATUS = 1
06-16 18:04:54.964 18551 18551 I adbd    : UsbFfs: offline
06-16 18:04:54.968   361   361 D MTPRx   : battery status : Full
06-16 18:04:54.969   361   361 D MTPRx   : usb data role status : host [device]
06-16 18:04:54.969   361   361 D MTPRx   :  sendbooster is false!
06-16 18:04:54.969   361   361 D MTPRx   : In usbRemoved Status bar enabled
06-16 18:04:54.970  5019 13123 D SettingsProvider: isChangeAllowed() : name = mtp_running_status
06-16 18:04:54.973   361   361 D MTPRx   : inside finishSync
06-16 18:04:54.974  5019 13123 D SettingsProvider: isChangeAllowed() : name = mtp_sync_alive
06-16 18:04:54.974  5019  5019 V SettingsProvider: Notifying for 0: content://settings/system/mtp_running_status
06-16 18:04:54.990   361   361 I MTPRx   : action : A, selection : 0, update : 0
06-16 18:04:54.995   361   361 I MTPRx   : action : D, selection : 0, update : 0
06-16 18:04:54.996   361   361 I MTPRx   : It's not file transfer case. skip scan.
06-16 18:04:54.998  5019 13123 D SettingsProvider: isChangeAllowed() : name = mtp_drive_display
06-16 18:04:55.000  5019  5019 V SettingsProvider: Notifying for 0: content://settings/system/mtp_drive_display
06-16 18:04:55.001  5019 13123 D SettingsProvider: isChangeAllowed() : name = mtp_sync_alive
06-16 18:04:55.003  5019 13123 D SettingsProvider: isChangeAllowed() : name = mtp_open_session
06-16 18:04:55.005  5019 13123 D SettingsProvider: isChangeAllowed() : name = mtp_event_status
06-16 18:04:55.007   361   361 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.stopService:1644 android.content.ContextWrapper.stopService:693 android.content.ContextWrapper.stopService:693 com.samsung.android.MtpApplication.MtpReceiver.usbRemoved:959 com.samsung.android.MtpApplication.MtpReceiver$1.handleMessage:623
06-16 18:04:55.012   361   361 E MtpService: onDestroy.
06-16 18:04:55.021   361   361 E MtpService: Unregister Mtp disable Receiver
06-16 18:04:55.023   361   361 E MtpService: Receiver not registered: com.samsung.android.MtpApplication.MtpService$1@1fdfbaa
06-16 18:04:55.023   361   361 E MtpService: Unregister mtpEmergencyReceiver
06-16 18:04:55.023   361   361 E MtpService: Receiver not registered: com.samsung.android.MtpApplication.MtpService$2@b4e239b
06-16 18:04:55.024   361   361 E MtpService: unregistering mtpUserPresentReceiver in UnregisterAllIntent
06-16 18:04:55.024   361   361 E MtpService: Receiver not registered: com.samsung.android.MtpApplication.MtpService$4@58afe95
06-16 18:04:55.024   361   361 E MTPJNIInterface: noti = 103
06-16 18:04:55.026   361   361 E libmtp  : [mtp_usb_mtp_finalize : 1207] -->****** [mtp_usb_mtp_finalize 1207] mtp_close_fd Calling
06-16 18:04:55.026   361   361 E libmtp  : [mtp_close_fd : 0118] -->[mtp_close_fd 118]  fd = 63...
06-16 18:04:55.027   361   361 E libmtp  : [mtp_close_fd : 0126] -->[mtp_close_fd 126] USB endpoint [63] closed...
06-16 18:04:55.027   361   361 E libmtp  : [mtp_usb_mtp_finalize : 1210] -->****** [mtp_usb_mtp_finalize 1210] Updating the gInitializeFlag Flag to FALSE
06-16 18:04:55.027   361   361 E libmtp  : [mtp_usb_mtp_finalize : 1213] -->****** [mtp_usb_mtp_finalize 1213] Calling mtp_stop_io
06-16 18:04:55.078  5019 13123 I ActivityManager: Process com.samsung.android.MtpApplication (pid 361) has died: fore SVC (133,1457)
06-16 18:04:55.078  4473  4473 I Zygote  : Process 361 exited due to signal 9 (Killed)
06-16 18:04:55.079  5019  5079 I libprocessgroup: Successfully killed process cgroup uid 1000 pid 361 in 0ms

.....

06-16 18:05:02.373  5019  5749 V UsbDeviceManager: USB UEVENT: {SUBSYSTEM=android_usb, SEQNUM=9236, ACTION=change, USB_STATE=CONNECTED, DEVPATH=/devices/virtual/android_usb/android0}
06-16 18:05:02.374  5019  5749 D UsbDeviceManager: updateState: state=CONNECTED
06-16 18:05:02.375  5019  5065 D UsbDeviceManager: handleMessage -> MSG_UPDATE_STATE: connected=1 configured=0 mCurrentFunctions=mtp,adb
06-16 18:05:02.376 18551 18551 I adbd    : ADB disconnect
06-16 18:05:02.376  5019  5065 D UsbDeviceManager: updateUsbNotification(false): mConnected=true mConfigured=false mCurrentFunctions=mtp,adb mHostConnected=false mSourcePower=false mSinkPower=true mUsbCharging=true mUseUsbNotification=true
06-16 18:05:02.377 18551 18551 I adbd    : destroying transport UsbFfs
06-16 18:05:02.377  5019  5065 D UsbDeviceManager: Set mCurrentFunctionsForNoti=mtp
06-16 18:05:02.378  5019  5065 D DexObserverFW: isDexModeOn() : false
06-16 18:05:02.379  5019  5065 D DexObserverFW: isSemiDexModeOn() : false
06-16 18:05:02.379  5019  5065 D UsbDeviceManager: id=27 mUsbNotificationId=0
06-16 18:05:02.380 18551 18551 I adbd    : UsbFfsConnection being destroyed
06-16 18:05:02.387  5019 11795 D AdbDebuggingManager: Received disconnected message: QAAAAOsGB9Q9jjdIsZsXUzWPPWEMVNgaaS3689iWePOe7c0NPGKYt468zzKCJBduNiM+hkaGo2kl3yDDr0Hc4NiVVDehD1QO+WOJZRRuxU41eowVvWtKdmyPlPfHwKvbe9p8VOorjjUqape9355q00XhFsSb84/zjmS/zWSKhTiH95lXRFRgfpPtQ7hDT9nuWOVZgEIClJTOOC2roUA0XZ6TUpMr/dFeOf1sU6XP9OW3TdPCXaVqMAY8E+D+69z/UNB/QTzFoVBhQQorM4+v/Sv9A+8ltpetFvzVYcuSEVnKQGLs2f31azHy/pVBouL6dcinnlsg1D3jE4EcYfGfFYyQxzpPhpGqm+OCpxwMjIIHUP+9oHNr7mmGsEu9JlF/23ipn5lZOsSh3t3pSPUsM4JrdaOrPDsjuBdTE8RGY+dcb52Ak4UmF7AKWcONU5p/SVrmzm0Uh/B+ElYhe9QTLshDejIXZ84o0sm66NPh0Hq+o2nHqaHLsyXvFcXhm+mMjeBkP0G2lXTdtLEU8bfa4uUrK9NE17pm9e4zbp+i6ndIudRQCOYZp9DzSoQGxsl3MRTOS4XQmBjYkr5WYhVjqt+gls5xA5UcCByeG0YmlUlbrGa3NLguTrZ75eKORdWOy/Pmyru5UyIrJoiuDHJBZ2Sxn4DCZnJHJv0iREX8YkcBykhOs9XbigEAAQA= rankor@Artems-iMac.local
06-16 18:05:02.388  5019  5749 V UsbDeviceManager: USB UEVENT: {SUBSYSTEM=android_usb, SEQNUM=9237, ACTION=change, USB_STATE=CONFIGURED, DEVPATH=/devices/virtual/android_usb/android0}
06-16 18:05:02.388  5019  5749 D UsbDeviceManager: updateState: state=CONFIGURED
06-16 18:05:02.400  5019  5065 D UsbDeviceManager: updateUsbNotification notifyAsUser: id=0 title=USB for file transfer
06-16 18:05:02.401  5019  5065 D UsbDeviceManager: updateUsbStateBroadcastIfNeeded: remainingFunctions=5
06-16 18:05:02.402  5019  5065 D UsbDeviceManager: broadcasting Intent { act=android.hardware.usb.action.USB_STATE flg=0x31000000 (has extras) } extras: Bundle[{host_connected=false, connected=true, unlocked=true, config_changed=false, adb=true, mtp=true, configured=false}]
06-16 18:05:02.404  5019  5065 D UsbDeviceManager: sending intent ACTION_USB_STATE: connected=true configured=false mCurrentFunctions=5 mHostConnected=false
06-16 18:05:02.406  5019  5065 D AdbDebuggingManager: Logging key QAAAAOsGB9Q9jjdIsZsXUzWPPWEMVNgaaS3689iWePOe7c0NPGKYt468zzKCJBduNiM+hkaGo2kl3yDDr0Hc4NiVVDehD1QO+WOJZRRuxU41eowVvWtKdmyPlPfHwKvbe9p8VOorjjUqape9355q00XhFsSb84/zjmS/zWSKhTiH95lXRFRgfpPtQ7hDT9nuWOVZgEIClJTOOC2roUA0XZ6TUpMr/dFeOf1sU6XP9OW3TdPCXaVqMAY8E+D+69z/UNB/QTzFoVBhQQorM4+v/Sv9A+8ltpetFvzVYcuSEVnKQGLs2f31azHy/pVBouL6dcinnlsg1D3jE4EcYfGfFYyQxzpPhpGqm+OCpxwMjIIHUP+9oHNr7mmGsEu9JlF/23ipn5lZOsSh3t3pSPUsM4JrdaOrPDsjuBdTE8RGY+dcb52Ak4UmF7AKWcONU5p/SVrmzm0Uh/B+ElYhe9QTLshDejIXZ84o0sm66NPh0Hq+o2nHqaHLsyXvFcXhm+mMjeBkP0G2lXTdtLEU8bfa4uUrK9NE17pm9e4zbp+i6ndIudRQCOYZp9DzSoQGxsl3MRTOS4XQmBjYkr5WYhVjqt+gls5xA5UcCByeG0YmlUlbrGa3NLguTrZ75eKORdWOy/Pmyru5UyIrJoiuDHJBZ2Sxn4DCZnJHJv0iREX8YkcBykhOs9XbigEAAQA= rankor@Artems-iMac.local, state = 7, alwaysAllow = true, lastConnectionTime = 1592319902404, authWindow = 604800000
06-16 18:05:02.407  5019  5065 D UsbDeviceManager: handleMessage -> MSG_UPDATE_STATE: connected=1 configured=1 mCurrentFunctions=mtp,adb
06-16 18:05:02.408  5019  5065 D UsbDeviceManager: updateUsbNotification(false): mConnected=true mConfigured=true mCurrentFunctions=mtp,adb mHostConnected=false mSourcePower=false mSinkPower=true mUsbCharging=true mUseUsbNotification=true
06-16 18:05:02.409  5019  5065 D UsbDeviceManager: Set mCurrentFunctionsForNoti=mtp
06-16 18:05:02.409  5019  5065 D DexObserverFW: isDexModeOn() : false
06-16 18:05:02.410  5019  5065 D DexObserverFW: isSemiDexModeOn() : false
06-16 18:05:02.411  5019  5065 D UsbDeviceManager: id=27 mUsbNotificationId=27
06-16 18:05:02.411  5019  5065 D UsbDeviceManager: updateUsbStateBroadcastIfNeeded: remainingFunctions=5
06-16 18:05:02.412  5019  5065 D UsbDeviceManager: broadcasting Intent { act=android.hardware.usb.action.USB_STATE flg=0x31000000 (has extras) } extras: Bundle[{host_connected=false, connected=true, unlocked=true, config_changed=false, adb=true, mtp=true, configured=true}]
06-16 18:05:02.423 18551 18564 I adbd    : opening control endpoint /dev/usb-ffs/adb/ep0
06-16 18:05:02.425  4571  4596 D DataRouter: After the usb select
06-16 18:05:02.425  4571  4596 D DataRouter: read length is zero
06-16 18:05:02.425  4571  4596 D DataRouter: dr_usb_deinit
06-16 18:05:02.425  5019  5749 V UsbDeviceManager: USB UEVENT: {SUBSYSTEM=android_usb, SEQNUM=9239, ACTION=change, USB_STATE=DISCONNECTED, DEVPATH=/devices/virtual/android_usb/android0}
06-16 18:05:02.425  4571  4596 D DataRouter: dr_usb_init
06-16 18:05:02.426  5019  5749 D UsbDeviceManager: updateState: state=DISCONNECTED
06-16 18:05:02.426  4571  4596 E DataRouter: USB Interface is open with 0x6
06-16 18:05:02.426  4571  4596 D DataRouter: USB interface is now configured for usb_fd = 0x6
06-16 18:05:02.426  4571  4596 D DataRouter: Before the usb select
06-16 18:05:02.433  5019  5065 D UsbDeviceManager: sending intent ACTION_USB_STATE: connected=true configured=true mCurrentFunctions=5 mHostConnected=false
06-16 18:05:02.439 18551 18564 I adbd    : UsbFfsConnection constructed
06-16 18:05:02.441  3319  3319 D MTPRx   : In MtpReceiverandroid.hardware.usb.action.USB_STATE
06-16 18:05:02.504 18551  3364 I adbd    : USB event: FUNCTIONFS_BIND
06-16 18:05:02.524  3319  3319 I MTPRx   : getUsbdebugStatus is false
06-16 18:05:03.460 18551 18551 W adbd    : timeout expired while flushing socket, closing
06-16 18:05:03.929  5019  5065 D UsbDeviceManager: handleMessage -> MSG_UPDATE_STATE: connected=0 configured=0 mCurrentFunctions=mtp,adb
06-16 18:05:03.930  5019  5065 D UsbDeviceManager: updateUsbNotification(false): mConnected=false mConfigured=false mCurrentFunctions=mtp,adb mHostConnected=false mSourcePower=false mSinkPower=true mUsbCharging=true mUseUsbNotification=true
06-16 18:05:03.931  5019  5065 D UsbDeviceManager: Set mCurrentFunctionsForNoti=mtp
06-16 18:05:03.932  5019  5065 D DexObserverFW: isDexModeOn() : false
06-16 18:05:03.932  5019  5065 D DexObserverFW: isSemiDexModeOn() : false
06-16 18:05:03.933  5019  5065 D UsbDeviceManager: id=0 mUsbNotificationId=27
06-16 18:05:03.934  5019  5065 D UsbDeviceManager: updateUsbNotification cancelAsUser: id=27
06-16 18:05:03.935  5019  5065 D UsbDeviceManager: updateUsbStateBroadcastIfNeeded: remainingFunctions=5
06-16 18:05:03.935  5019  5019 D EdgeLightingManager: isCallingUserSupported : callingUserId=-1, mUserId=0, isDualAppId=false
06-16 18:05:03.935  5019  5065 D UsbDeviceManager: broadcasting Intent { act=android.hardware.usb.action.USB_STATE flg=0x31000000 (has extras) } extras: Bundle[{host_connected=false, connected=false, unlocked=true, config_changed=false, adb=true, mtp=true, configured=false}]
06-16 18:05:03.937  5019  5019 D LightsService: [api] [SvcLED] turnOff:: id = 4 (uid: 1000 pid: 5019)
06-16 18:05:03.937  5019  5019 D LightsService: [api] [SvcLED] LED indicator : Not supported.
06-16 18:05:03.940  5019  5065 D UsbDeviceManager: sending intent ACTION_USB_STATE: connected=false configured=false mCurrentFunctions=5 mHostConnected=false
06-16 18:05:03.943  5019  5019 D UsbMirrorLinkManager: !usbConnected
06-16 18:05:03.951  5019  5065 D KnoxCustomManagerService: getUsbConnectionTypeInternal(0)
06-16 18:05:03.951  5019  5065 D UsbDeviceManager: getPersistProp: return=persist.sys.usb.config
06-16 18:05:03.952  5019  5065 D UsbDeviceManager: ANAWAY_JIG_PATH is not exist.
06-16 18:05:03.953  5019  5065 D UsbDeviceManager: setEnabledFunctions: usbFunctions=mtp,adb forceRestart=false usbDataUnlocked=true mCurrentFunctions=mtp,adb
06-16 18:05:03.953  5019  5065 D UsbDeviceManager: setEnabledFunctions: Before validation LONG[5]
06-16 18:05:03.954  5019  5065 D SecContentProvider: query(), uri = 17 selection = isUsbDebuggingEnabled
06-16 18:05:03.954  5019  5065 D SecContentProvider: called from android.uid.system:1000
06-16 18:05:03.955  5019  5065 D RestrictionPolicy: isUsbDebuggingEnabled : true
06-16 18:05:03.955  5019  5065 D UsbDeviceManager: policy : adb, restrict(allow) = true
06-16 18:05:03.962  5019  5065 D UsbDeviceManager: setEnabledFunctions: After validation STR[mtp,adb], LONG[5]
06-16 18:05:03.963  5019  5065 D UsbDeviceManager: trySetEnabledFunctions: usbFunctions=mtp,adb forceRestart=false
06-16 18:05:04.032  3319  3319 E libmtp  : [mtp_usb_mtp_finalize : 1207] -->****** [mtp_usb_mtp_finalize 1207] mtp_close_fd Calling
06-16 18:05:04.032  3319  3319 E libmtp  : [mtp_close_fd : 0118] -->[mtp_close_fd 118]  fd = 63...
06-16 18:05:04.032  3319  3319 E libmtp  : [mtp_close_fd : 0126] -->[mtp_close_fd 126] USB endpoint [63] closed...
06-16 18:05:04.032  3319  3319 E libmtp  : [mtp_usb_mtp_finalize : 1210] -->****** [mtp_usb_mtp_finalize 1210] Updating the gInitializeFlag Flag to FALSE
06-16 18:05:04.032  3319  3319 E libmtp  : [mtp_usb_mtp_finalize : 1213] -->****** [mtp_usb_mtp_finalize 1213] Calling mtp_stop_io
06-16 18:05:04.049 12533 12558 W System  : A resource failed to call close.
06-16 18:05:05.255  5019  5749 V UsbDeviceManager: USB UEVENT: {SUBSYSTEM=android_usb, SEQNUM=9241, ACTION=change, USB_STATE=CONNECTED, DEVPATH=/devices/virtual/android_usb/android0}
06-16 18:05:05.257  5019  5749 D UsbDeviceManager: updateState: state=CONNECTED
06-16 18:05:05.258 18551  3364 I adbd    : USB event: FUNCTIONFS_ENABLE
06-16 18:05:05.258  5019  5065 D UsbDeviceManager: handleMessage -> MSG_UPDATE_STATE: connected=1 configured=0 mCurrentFunctions=mtp,adb
06-16 18:05:05.259  5019  5065 D UsbDeviceManager: updateUsbNotification(false): mConnected=true mConfigured=false mCurrentFunctions=mtp,adb mHostConnected=false mSourcePower=false mSinkPower=true mUsbCharging=true mUseUsbNotification=true
06-16 18:05:05.260  5019  5065 D UsbDeviceManager: Set mCurrentFunctionsForNoti=mtp
06-16 18:05:05.261  5019  5065 D DexObserverFW: isDexModeOn() : false
06-16 18:05:05.262  5019  5749 V UsbDeviceManager: USB UEVENT: {SUBSYSTEM=android_usb, SEQNUM=9242, ACTION=change, USB_STATE=CONFIGURED, DEVPATH=/devices/virtual/android_usb/android0}
06-16 18:05:05.263  5019  5749 D UsbDeviceManager: updateState: state=CONFIGURED
06-16 18:05:05.270  5019  5065 D DexObserverFW: isSemiDexModeOn() : false
06-16 18:05:05.271  5019  5065 D UsbDeviceManager: id=27 mUsbNotificationId=0
06-16 18:05:05.284  5019  5065 D UsbDeviceManager: updateUsbNotification notifyAsUser: id=0 title=USB for file transfer
06-16 18:05:05.286  5019  5065 D UsbDeviceManager: updateUsbStateBroadcastIfNeeded: remainingFunctions=5
06-16 18:05:05.286  5019  5065 D UsbDeviceManager: broadcasting Intent { act=android.hardware.usb.action.USB_STATE flg=0x31000000 (has extras) } extras: Bundle[{host_connected=false, connected=true, unlocked=true, config_changed=false, adb=true, mtp=true, configured=false}]
06-16 18:05:05.289  5019  5065 D UsbDeviceManager: sending intent ACTION_USB_STATE: connected=true configured=false mCurrentFunctions=5 mHostConnected=false
06-16 18:05:05.289  5019  5065 D UsbDeviceManager: handleMessage -> MSG_UPDATE_STATE: connected=1 configured=1 mCurrentFunctions=mtp,adb
06-16 18:05:05.290  5019  5065 D UsbDeviceManager: updateUsbNotification(false): mConnected=true mConfigured=true mCurrentFunctions=mtp,adb mHostConnected=false mSourcePower=false mSinkPower=true mUsbCharging=true mUseUsbNotification=true
06-16 18:05:05.290  5019  5065 D UsbDeviceManager: Set mCurrentFunctionsForNoti=mtp
06-16 18:05:05.291  5019  5065 D DexObserverFW: isDexModeOn() : false
06-16 18:05:05.291  5019  5065 D DexObserverFW: isSemiDexModeOn() : false
06-16 18:05:05.292  5019  5065 D UsbDeviceManager: id=27 mUsbNotificationId=27
06-16 18:05:05.293  5019  5065 D UsbDeviceManager: updateUsbStateBroadcastIfNeeded: remainingFunctions=5
06-16 18:05:05.294  5019  5065 D UsbDeviceManager: broadcasting Intent { act=android.hardware.usb.action.USB_STATE flg=0x31000000 (has extras) } extras: Bundle[{host_connected=false, connected=true, unlocked=true, config_changed=false, adb=true, mtp=true, configured=true}]
06-16 18:05:05.304  5019  5077 I ApplicationPolicy: isApplicationExternalStorageWhitelisted:com.samsung.android.MtpApplication user:0
06-16 18:05:05.304  5019  5077 D ApplicationPolicy: isApplicationExternalStorageWhitelisted: DO is not enabled on user 0. Allowed.
06-16 18:05:05.304  5019  5077 D ActivityManager: package  com.samsung.android.MtpApplication, user - 0 is SDcard whitelisted
06-16 18:05:05.304  5019  5077 I ApplicationPolicy: isApplicationExternalStorageBlacklisted:com.samsung.android.MtpApplication user:0
06-16 18:05:05.304  5019  5077 D ApplicationPolicy: isApplicationExternalStorageBlacklisted: DO is not enabled on user 0. Allowed.
06-16 18:05:05.304  5019  5077 I ApplicationPolicy: isApplicationExternalStorageBlacklisted:com.samsung.android.MtpApplication user:0
06-16 18:05:05.304  5019  5077 D ApplicationPolicy: isApplicationExternalStorageBlacklisted: DO is not enabled on user 0. Allowed.
06-16 18:05:05.309  5019  5065 D UsbDeviceManager: sending intent ACTION_USB_STATE: connected=true configured=true mCurrentFunctions=5 mHostConnected=false
06-16 18:05:05.314 18551 18551 I adbd    : UsbFfs: already offline
06-16 18:05:05.315 18551 18551 I adbd    : Calling send_auth_request...
06-16 18:05:05.319 18551 18551 I adbd    : Loading keys from /data/misc/adb/adb_keys
06-16 18:05:05.321 18551 18551 I adbd    : adb client authorized

After accepting ADB authorization permanently have you tried to disconnect and reconnect USB cable to that device to see if the authorization was saved correctly? If it is saved try to reboot the device if the authorization persists a reboot.

@Robert yes, it saves state fine between normal reconnections

Then my only guess would be that adb daemon on-device crashes, restarts and there is a timing problem that the adb daemon first starts and then reads it's allowed devices configuration. But if the config is read the dialog has already been shown.

@Robert currently I guess that Vysor app may crash the daemon. I've removed it, will watch for the issue

https://android.stackexchange.com/q/215817 https://android.stackexchange.com/q/215869


text:
How to stop Viber telling me to update in the notification bar
I am running Viber on Jelly Bean 4.2.2 and when there is an update, Google Play will notify me once.  But once a day until I update the app Viber itself puts an icon in my notification top bar.  How do I stop this?
I dont want to stop knowing about updates from play, nor do I want to buy or install other apps to take care of this issue.  There should be a solution within either jelly bean or viber itself.

Why not update the app, in this case, Viber? :) Usually its best to get them updated in order to fix a glitch or an improvement to the app. Think about this - Windows notifies you to update the system, you oblige! But not with Android apps - why?

@t0mm13b I don't update sometimes because the update makes the app worse, for example Astro File Browser, I don't like the new layout so won't update it.

Similar question

@wbogacz Nope, it's not. OP asks how to stop Viber from putting an additional notification (note: Viber itself puts an icon in my notification top bar), which is not necessarily related to the playstore (app).

@Izzy - Yep, it is similar. I didn't say or mean duplicate. It carries the same sentiment an upgrade is not always needed or desired. This question presents a couple more examples and reasons.

Make that not a duplicate bold uppercase :) I placed that comment to keep others from thinking it's a duplicate, and hence this question would be closed (yepp, there were already votes on that). Full ack that it is related, however.

I added a para to the question to indicate how the other question doesnt help?  Peanuts answer was what I was looking for.  I may decide to update when I want, but being emotionally coerced to upgrade bec of annoying messages is not the way forward.  I also find on some viber installs I need to reverify and all that.  Sometimes just cant be bothered.  Thanks everyone

From DigitalTrends, when an offending notification pops up, simply long press on it and App Info will pop up. Tap on that and you’ll be taken straight to the app management screen where you can uncheck the Show notifications box and stop notifications appearing. You can also get to the app management screen by going to Settings -> Apps and selecting the app from there.
Unchecking the show notifications box does mean that all notifications from that app will be turned off though. As the warning states:

If you turn off notifications for this app, you may miss important
  alerts and updates.

It is Google Play that is sending notification for OP here. If he does as you have suggested he won't get notification for any other app.

@roxan No it's not, read the question again and the comments on it. "But once a day until I update the app Viber itself puts an icon in my notification top bar." Viber is putting the notification there. I'm aware this isn't a great solution as it also stops other notifications from Viber but it was all I could think of.

I guess you're right. Still this will prevent Viber notification as you've mentioned in your answer.

excellent - exactly what I was looking for - thanks.  Re the other comments - This is the only notification viber sends me.  I get the update notification from PLay.  Maybe I wont know if calls are coming in but thats a fight for another day!

Also the answer was Jelly bean related, not viber related, yet my jelly bean tag was edited out!!??


text:
How to do reset/wipe on galaxy nexus with encrypted data
My galaxy nexus, rooted, open bootloader, was running cyanogen mod 10.2 with encrypted data.  I tried to wipe and sideload 11 maguro onto it, and install hung on fixing fs_size in crypto footer.
On rebooting it hung on the cyanogen face.  I wiped a few more things and tried to put 10.2 back on and now the encryption password does not work anymore. So I cant boot the device.
I saw that a total wipe and restart is possible, but Im not sure how.  Sideloading another ROM I am guessing wont help anyway since I cant boot past the encrytion screen as my password is not being accepted.
When I boot into recovery I use clockworkMod Recovery v6.0.4.7
What is the best method to start again with my device, to get some type of OS working on it?
My options from my recovery menu
- reboot
-install zip
- wipe data/factory reset  (next menu only asks to wipe data)
- wipe cache partition
- backup and reestore (all involving the /sdcard which it cant mount)
-mounts and storage (the next menu does allow for format /system & /factory - but not sure what that will do?)
- advanced (reboots and logs)

If you can, boot into fastboot by holding down both volume keys and pressing the power key, then start recovery and do a factory reset.

yes I can get into recovery mode, but my recovery gives me 7 options.  One is wipe/factory reset.  but that menu just says this will wipe all user data no yes or go back.  The yes fails to mount a few drives and basically does nothing...  Is there another way to do a factory reset?

I was able to install the TWRP recovery image which I found better than the clockwork.  The factory reset failed, but I wiped everything including the encryption, and then the factory reset worked.


text:
Stop navigating to google.com for wifi sign-in?
My device (unrooted samsung s5, latest google chrome browser version) keeps navigating to https://www.google.com to (eventually) access a public wifi's login page. This is problematic of course as the actual wifi "sign-in" page (that I'm supposed to be forwarded to, or the http redirection for it) is obviously not signed by an ssl certificate for www.google.com, so I get the expected ssl error message.
Is there some setting I can change to change the default wifi sign-in address for the android chrome browser?

Refer to answers below this question for how to change the captive portal server, or how to disable the mechanism altogether.

Just guessing as I played with those settings last night. The setting is most likely captive_portal_http_url. Not sure if it can be set without root e.g. via adb shell, but it the syntax would be settings put global captive_portal_http_url http://www.example.com/page (of course replacing the URL by yours). See here for the other settings. To reset: settings global delete captive_portal_http_url. Use settings global get to check the original setting first ;)

@Izzy It's possible to set it without a root shell, I do it on new devices I set up.

Thanks, @AndyYan – did you also play with the URL parts, to define a "custom portal server"? And if so, using http or the https variant? If someone succeeded with that, it would make a good and interesting answer! Some detailed description of those parameters (and their usage) would also be nice. But I guess that should go to a different question I've just posted (I don't want to hijack this one ;)

Since the default Google server is unreachable in China, I have to define a custom URL. I only had to do the https command to make it work. Thing is, I feel the original question I linked to already has some answers that explains the whole mechanism quite nicely, only the command to set the URL wasn't updated for Nougat (captive_portal_http(s)_url instead of captive_portal_server). I'll sum up some info I can find and see if it's worthy of an answer over there.


text:
Kindle Fire Power Adapter Specs
I have misplaced the power adapter for my v1 Kindle Fire. USB charging works but is dog slow. What are the specs of its adapter, including any branding, as they're never labeled properly. Also, a photo would be very helpful, since it is likely in the box o' adapters in the basement.

According to this page the original stats are this:

INPUT (AC): 100-240V, 50/60Hz
OUTPUT (DC): 5V, 1.8A

Here's an image:

The newer charger is 9V and 1.8A.