text:
"fastboot set-active" command fails
I'm trying to flash a custom ROM on my Xiaomi Mi A3. When I flashed the ROM using TWRP and rebooted my phone, it got stuck on fastboot mode, won't even boot to recovery.
I found a friend with a similar problem and he said that all he did was changing his current active slot, so I am now trying that. However, when I try to enter the command fastboot set_active a on my computer, it returns the usage message (the list of commands) and when I try the command fastboot --set-active a, it says unrecognized option.
I am using the platform-tools r29.0.5.

The command shouldn't have any spaces. The correct command will be:
fastboot --set-active=a

Or if you want to write it in short:
fastboot -aa to set the active slot to A.
fastboot -ab to set the active slot to B.


text:
Getting "ssid bytes size out of range" error on Android 10 if WiFi is enabled
I have OnePlus 7 Pro that got updated to Android 10. Since then, the phone randomly reboots. It seems it's related to WiFi since the random reboots almost never happen when WiFi is turned off (regardless if it's actually connected to a network or not)
Logcat:
Error: AndroidRuntime

*** FATAL EXCEPTION IN SYSTEM PROCESS: ClientModeImpl
java.lang.IllegalArgumentException: ssid bytes size out of range: 64
    at com.android.server.wifi.util.NativeUtil.decodeSsid(NativeUtil.java:278)
    at com.android.server.wifi.WifiScoreCard.computeHashLong(WifiScoreCard.java:588)
    at com.android.server.wifi.WifiScoreCard.access$100(WifiScoreCard.java:63)
    at com.android.server.wifi.WifiScoreCard$PerBssid.<init>(WifiScoreCard.java:380)
    at com.android.server.wifi.WifiScoreCard.lookupBssid(WifiScoreCard.java:530)
    at com.android.server.wifi.WifiCandidates.add(WifiCandidates.java:374)
    at com.android.server.wifi.WifiCandidates.add(WifiCandidates.java:393)
    at com.android.server.wifi.WifiNetworkSelector.lambda$selectNetwork$0$WifiNetworkSelector(WifiNetworkSelector.java:911)
    at com.android.server.wifi.-$$Lambda$WifiNetworkSelector$Z7htivbXF5AzGeTh0ZNbtUXC_0Q.onConnectable(Unknown Source:15)
    at com.android.server.wifi.SavedNetworkEvaluator.evaluateNetworks(SavedNetworkEvaluator.java:279)
    at com.android.server.wifi.WifiNetworkSelector.selectNetwork(WifiNetworkSelector.java:900)
    at com.android.server.wifi.WifiConnectivityManager.handleScanResults(WifiConnectivityManager.java:342)
    at com.android.server.wifi.WifiConnectivityManager.access$900(WifiConnectivityManager.java:73)
    at com.android.server.wifi.WifiConnectivityManager$AllSingleScanListener.onResults(WifiConnectivityManager.java:425)
    at android.net.wifi.WifiScanner$ServiceHandler.handleMessage(WifiScanner.java:1429)
    at android.os.Handler.dispatchMessage(Handler.java:107)
    at android.os.Looper.loop(Looper.java:214)
    at android.os.HandlerThread.run(HandlerThread.java:67)

PID: 28683
TID: 28862

The following error message says:

FATAL EXCEPTION: main
Process: com.google.android.gms.persistent, PID: 30417
DeadSystemException: The system died; earlier logs will point to the root cause

This is consistent and the same exact error shows up every time the system crashes/reboots.
Why, and how to fix this issue?

The error message is caused by SSIDs containing more than 32 bytes.
According to the Wikipedia,

Unlike basic service set identifiers, SSIDs are usually customizable. These SSIDs can be zero to 32 octets (32 bytes) long, and are, for convenience, usually in a natural language, such as English. The 802.11 standards prior to the 2012 edition did not define any particular encoding/representation for SSIDs, which were expected to be treated and handled as an arbitrary sequence of 0–32 octets that are not limited to printable characters. The IEEE 802.11-2012 defines a tag that the SSID is UTF-8 encoded and when interpreting could contain any non-ISO basic Latin characters within it. Wireless network stacks must still be prepared to handle arbitrary values in the SSID field.

Note that the limitation is 32 bytes, not 32 characters. While each character in ASCII encoding is 1 byte, characters in UTF-8 encoding can take up to 4 bytes. Example:

Test consisted of 4 characters and 4 bytes.
テスト consisted of 3 characters but 9 bytes.

If the offending SSIDs are in your control, then the simple fix is by reducing their byte size (length).

The check on the Android-side that produces this error message was added on April 2019, which is between Android 9 (August 2018) and Android 10 (September 2019).

NativeUtil: Perform range checks on ssid bytes size
NativeUtil.encodeSsid/decodeSsid should perform range checks because the
  output/input is coming from binder/hwbinder interfaces which assume
  the ssid is not malformed (i.e within spec mandated size range).
Most of the callers of these methods already handle
  IllegalArgumentException (including the hidden network list built in
  WifiCondControl). This should fix the reported issue of a hidden SSID
  added with size > 32 causing crash in wificond.

As stated, the problem might be unavoidable if the SSIDs are out of the reader's control. Alternative solutions/workarounds are worthy of a new answer!

source: Stack Exchange

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

sort: votes


text:
Remove the recent apps part on Xiaomi Mi A2
I am using Android 10 on Xiaomi Mi A2 and want to remove the "recent apps" part from my menu, but there aren't the options shown above.
How to remove it?

"Recent apps" is a standard part of Android navigation and it cannot be removed. You should probably just stop swiping up that long from the bottom and you will never encounter the recent apps screen.

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


text:
Android browser's desktop mode not really the same as PC desktop
Is there any way to make the Android browser browses in true desktop mode, i.e. viewing the same layout as a desktop computer?
I know in Firefox, I can click on "request desktop site" in the menu, and some similar functions in Chrome.   However, neither of these modes brings me the same experience as I have on a desktop computer.  For example, Gmail has a menu item "filter messages like this", which is missing in "request desktop site" mode, and similarly for many other websites.
I understand the UI differences such as mouse vs. touchscreen.  What I mean is to emulate a desktop screen mode.  For example, a virtual screen size to mimic a desktop monitor (I can swipe the touchscreen to move the viewport, and can even enlarge/shrink the viewport with two-finger gestures).  A touch emulates the mouse's left button click.  No mouse right button is acceptable, since most functions should be able to work by just left click.  (Remember Apple Mac desktop might even go with a one-button mouse).
The problem is, that what they think as "optimized for mobile" might not be what the user thinks/wants, such as the removal of some functions.
I don't need "mobile optimize".  Just the browser to mimic desktop one to the maximum extent, and I want to visit the website in Desktop Mode, as if I connect it from a desktop computer.
Some websites provide a "full site" button to do this.  But why can't I pretend myself as a desktop computer in the first place? How on earth does the server identify the browser as an Android browser, even in the "desktop mode"?
Note that this question may seem a duplicate as Bypassing mobile detectability from the browser. But I do express the problem in a more general/broader perspective.

There are various ways of creating responsive web pages.
The developer can ask the browser to tell whether it is Windows OS, Android, iPhone, or whichever browser it is, etc.
Secondly, most often, responsive design is implemented based on the width available to the browser window. To learn more, you can search the web or try for yourself as I explain below:
In the Firefox browser on PC, go to menu -> Web Developer -> Toggle tools or press Ctrl + Shift + I

Now click on the button on the left of the three dots. You can change the size of the page to see how it looks on browsers of different sizes.

Hope this helps.

to add on to this - chrome has a similar "responsive view" feature, but it also has an option to "show rulers", so you can see exactly where each browser width breakpoint will be hit

Try Firefox for Android with a User Agent spoofing addon.
You may also need some addon to lie about the viewport dimensions.
I don't know what exactly the best option to do so is, so I hope these links help point you in the right direction.

https://www.google.com/search?q=firefox+android+fake+device+width
https://addons.mozilla.org/en-GB/android/addon/uaswitcher/
https://addons.mozilla.org/en-GB/firefox/addon/chameleon-ext/

This is a great idea! You don't need an addon to fake the viewport dimensions, though. That's the main thing that "Request Desktop Site" does.

Ahhh, I see! I had wondered how that 'request' actually worked.

You cannot, unless the site is optimized for mobile by design
Two factors distinguish and also limit mobile website compared to desktop:

Touch screen interface
Smaller display area

What most websites do (cost being the main reason I guess) is to make a site mobile compatible meaning that a site can be viewed on mobile but all functions or navigation as on desktop are not available (as in your example).
To make the controls or navigation of website as on true desktop mode, the site needs to be mobile optimized. Unless this done, you cannot have the same experience as on true desktop mode. This requires Responsive Web Design (which also doesn't guarantee full functionality) ,  and is off topic for this site - you can Google about it and here is some information from sister SE sites

Responsive web design Vs Separate website for Mobile
Optimizing website for
mobile devices

How on earth does the server identify the browser an android browser, even in the "desktop mode"?

User Agent information which is shared by all browsers (barring privacy oriented browsers but if you use such browsers, you may face other issues YMMV)

The best solution I've found, which works for the Gmail filter problem, is using Firefox Beta or Nightly and then setting the devPixelsPerPx setting to 1 as per this SO thread, as well as turning on desktop mode.


text:
Gaining real su permission on GNURoot Debian instead of proot env
I'm running a Samsung Galaxy J110H, Android KitKat 4.4.4, rooted.
Is it possible to attain real superuser privilege on GNURoot Debian instead of fakerootfs? Is there any way as in when I type in su; there is an actual su prompt asking me to allow it? This is the outcome when I type in su:
root@localhost:/# su
setgid: Permission denied
root@localhost:/#
- - snip - -

Also apt-get update && apt-get upgrade returns:
unpacking python (from .../python_2.7.3-4+deb7u1_all.deb) ...
Processing triggers for man-db ...
/usr/bin/mandb: can't set effective uid: Permission denied
Setting up libexpat1:armel (2.1.0-1+deb7u2) ...
Setting up python2.7-minimal (2.7.3-6+deb7u2) ...
- - snip - -

You don't need proot if your device is rooted. And you don't need any app to run some Linux distro on Android. Just download the rootfs and create a simple shell script to start and stop Linux environment from adb shell or any terminal emulator app. I've been using Ubuntu, ArchLinux and Void Linux the same way on Termux and ssh for years. All that you need to do is a few bind mounts and chroot. Mount namesapce adds further isolation. I've built my kernel with support for network, pid and uts namespaces as well to further isolate both environments.

Damn I need a tutorial on that!!

i am not sure why you get permission denied. but sudo apt-get runs fine here (i am using Linux Deploy app via dropbearmulti ssh on terminal emulator, Android 7, settings: global namespaces in root app, permissive in SelinuxModeChanger app)

I too am getting this error in GNURoot. Search google and saw your question posted in many stack forums. I wanted to change from armel to armhf and followed the instructions on the Debian website but came to the error you stated. What I had to do was chown u+s /usr/bin/mandb. The error still popped up but everything worked like a charm.
I think you need to chmod dpkg again and then everything will run well. Btw I too am still running KitKat.
Edit:
After further testing and usage of gnuroot, it turns out that the method i stated above on bypassing the permission denied error does not solve all problems. After looking at /etc/fstab in the proot environment, there are no mount points. If you run the command mount from the gnuroot terminal you will notice that it will show mount points of the host system. Also you will notice that running chmod 4777 / or chmod u+s / the permission denied error will appear. If yoy run ls -l /acct it will list the /acct of the host system not of the proot.
I havent tested this but since the proot environment needs the suid flags you will need to unpack the booting image of you android device edit the fstab  and change the mount options removing nosuid option, repack and flash the boot image to solve your problem. Remounting in the terminal as root (not proot) does not solve the problem because even after remounting, the fstab file remains the same.
By the way this is just my theory and i will edit the answer if it works perfectly.
A quote extracted from an answer in reddit

If you have root, chroot. In a nutshell, a chroot will spawn processes straight in the Linux userland whereas a proot will do it from the Android environment and be limited by Android resource limitations.
A chroot can also run more closely to a desktop environment; full blown window managers, browsers and what not. Can even run Java and Android Studio.

Linux Deploy is different from Gnuroot because Linux deploy uses chroot while gnuroot uses proot thats the reason they work differently.
Edit2:
After even futher testing, i discovered that i needed to run apt-get install fakeroot then fakeroot /bin/bash
After running these commands, the error disappeared. Chmoding turned out to not solve entirely the error.
Also if you get installation errors try doing fakeroot /bin/sh or fakeroot /bin/dash
Proof that fakeroot works
am now in debian 10(buster) after patient upgrades.
Gnu root debian is like Termux but for old android versions.Regarding the su matter of calling su binary from inside proot, you need to install the tsu binary. Since gnuroot does not have pkg in termux, the same binary can be install via python2. So first install Python pip then run pip install tsu then run the tsu binary and maybe you will be lucky and gain real root permissions. It wont work on stock wheezy (have tested it) debian but try upgrading to jessie or stretch and maybe you will be lucky.

I think i should post the tutorial somewhere and maybe someone out there is searching for it.

Alternatively, you could use Another Term an updated maintained Gnu terminal in proot environment with updated proot binary which in my opinion can also be an alternaive to Termux. It supports as low as android version 4.0 and no root is needed. Here and here are links to the project to get more infor.
Some screenshot i took on my android 4.4.4 Tab Running on Buster:

And

I havent tested it but i think you can VNC and get a desktop environment.


text:
How can I view timestamps in my Chrome browser history (on Android)?
For security reasons, I need to check exactly when I accessed some websites on my phone a few days ago. The activity is stored in my mobile Chrome's browser history, but apparently the timestamps cannot be viewed - just the dates.
I know the timestamp information is stored because when I sync with my desktop Chrome, the timestamps appear there. However, for everything but the current day, it only seems to sync explicitly typed addresses and not Google searches (unlike the mobile Chrome app's history which has both, but no timestamps). This is frustrating to no end.
I was hoping to be able to do this without rooting my phone, though installing third-party apps would be fine.

Perhaps, if you go to Google My Activity, you will be able to see this information. You can use the filter and choose "Chrome" so that only your browser history is visible for convenience.

This works like a charm. Thanks! Should be the accepted answer.

This functionality is built-into Chrome. Just hover your mouse over a date, and the time stamp appears.

How do you hover with a mouse on a phone?  Neither a short nor a long press gives this information!!


text:
locked galaxy tab 3
Please help. Am locked out of tablet. Keeps saying wrong password even though I know it is correct. Have tried on and volume. Have tried on and home button. Can only get password screen. What next?

Welcome to the Android Enthusiasts! I've just added the locked-out tag to your question. Please first check its tag-wiki for some first aid, which hopefully will already solve your issue. Then come back here and either answer (and accept) your question if solved, or [edit] it to explain what you've tried and where you're stuck. Thanks, and keeping my fingers crossed!

First go to the recovery mode of your device. Every device has its own method for recovery. If you are able to go to recovery then go to it and navigate to factory data reset and select it. It will reset your phone and after turning on your phone, the lock system will be disabled.

Hard method. There are alternatives in many cases, see Can not unlock my Android device as have no internet connection? ;)

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


text:
Phone doesn't start. USB Debug is off, can't connect pc for recovery
I have a Huawei Ideos X5 phone. It is rooted. When I took the battery out and restarted it the other day, it didn't open: the device starts, shows the "Ice Cream Sandwich" logo – and there it stays (even when waiting for 7 hours).
I was going to try the recovery mode but, because USB debugging is switched off, my PC doesn't see the phone.
Is there any chance that I can change the debug mode without opening the phone? The phone is old but really want to save it.

Sorry for the really late answer. With didn't open, i meant as phone starts, shining Ice Cream Sandwich logo appears but it just stays like that. It even stayed like that for 7 hours or so.

Thanks for the update! I've integrated that with your question. Please take a look at Broken screen while debug mode was disabled. How can I re-enable adb? and the questions linked to it.

Boot into recovery mode by holding the Power & Volume Up buttons on your phone. (if Volume Up doesn't work, try Volume Down).
I've used this method to get an unresponsive device to respond.

Do you have CWM recovery installed? If yes, then try going in CWM and format your phone from there. It may help.

It is installed but my main problem is that i can't connect my phone to pc while in recovery- pink mode.

You don't have to. Just goto the recovery mode by pressing appropriate buttons specific to your device. When you enter recovery mode, do a full data wipe.

Hussain, did you consider that wiping the device is not really the intention of recovering data, as the OP requests possibly? @STAR1B2UTY What Hussain is suggesting is a factory-reset. You might get your phone working that way, but lose all your data.

That is a problem too.When I press appropriate buttons specific to my device, I can't even see the options. Like rebooting or other stuff appears in the screen.That's what you're talking about right?It doesn't appear on the screen. I can only go into the pink screen.That's all.

This is called Freezing. Your device has got freezed. You have 2 options:
1st option-
Remove battery
Then place it again in its place.
Then carefully hold the volume up or volume down button along with the power button. Your device will now boot in recovery mode.
Now using the volume keys navigate to factory reset and using power button reset it.
Now reboot again.
If it doesn't work then 2nd option will definitely work-
Download ROM for your phone by googling it.
Place the ROM in your Memory card.
Now again boot in recovery mode as described above.
Choose apply update from sdcard.
Navigate to that .zip file which is the ROM you downloaded.
Using power key select it.
Wait for some 15-20 minutes.
Hola. You are ready to go.
Note: The above steps will delete all your data in phone memory.

authors: 秒懂经验 - 离婚证制作印刷排版离婚证定制 - CN人才网

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


text:
OsmAnd+ change text foreground or background color
I really like OsmAnd, but since the last update I can't see entries correctly, as the text foreground color and background color is white. I can see the text when I press and hold the item. This is very annoying. How can I change either the foreground or background color? Is this problem specific to my ROM (CyanogenMod 11) on my phone (Samsung GT-I9505), or is this a more generic issue? Thanks!

Screenshots (click images for larger variants)

The map management has the same issue: map names and sources have white text on white background.

It doesn't seem to be a problem in OsmAnd+ 2.3.5 but from the settings there appears that you can only choose between 'dark' and 'light' themes and there are no options for further customisation.
Your problem may also be to do with this issue in which case the suggested solution is to go and explicitly select one of the themes in the settings.

Solved! It's only working correctly in dark theme.


text:
Alphabetize Apps Screen (not Home, maybe App Drawer?)
I have an Archos 32 with the 2.2.1 (or Archos 2.1.18) version of Android installed. When I press the onscreen button to show all installed apps, I noticed that some downloaded apps are out of alphabetical order. There seems to be no option to alphabetize them. Does anyone know an app or other solution that can correct this?
Note: Is this called the app drawer?

I don't have an Archos, but when I view all apps on my phone I can press the Menu button and select a view type from in there (including alphabetical).  Do you have anything similar?
You could also try another launcher, such as ADW.
And yes, it's often called the app drawer :)

No view type option. Would an alternate launcher automatically replace the stock one once installed?

@Richard I haven't done this myself, but I believe you can have two launchers side-by-side.  One will be set as the default, and if you want to switch back you can either uninstall the new one or go to Settings -> Applications -> Manage applications, find the new launcher, and clear the defaults.

Or don't press the check mark for USE AS DEFAULT and with an additional click choose which app you want to use each time the HOME button is used.

the gen 8s basically run very vanilla android so he won't have that option, he'll need an alternative launcher.

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


text:
How to find out which programming language the app is built?
I have to find out which programming language the app is built on.
How to detect it? Are there clear indicators for those languages?

You can be pretty sure, but you first have to know all the technologies that can output Android APK.
If you know, export the app as an APK and extract it with any zip tool. Then check its content:

If you see 1 class and /assets full of HTML content, then it's likely Phonegap / Cordova
If you see folders named like Appcelerator or Titanium, then it's Titanium Appcelerator
If you see something like a normal Android native structure, then decompile the APK using some online tool. When you do that, you'll be able to see if they used Java only or C++ (if you see a lot of .so files)
If you recognize Kotlin language, then it's Kotlin. You'll see that the code isn't Java
For other technologies, I am not sure but I'm pretty sure there must be something that identifies it.


text:
RCS Messaging Encryption
With the launch of Google's RCS messaging protocol, is there any reason as to why it doesn't support end-to-end encryption, or is it a feature that they intend to implement at a later time?

is there any reason as to why it doesn't support end to end encryption, or is it a feature that they intend to implement at a later time?

RCS improves the old SMS by bringing modern features. It provides client to server side encryption but not provide end to end encryption.
According to What is RCS messaging? Everything you need to know about the SMS successor:

But Chat is missing one critical element: While the original RCS protocol allowed the implementation of client-to-server encryption, Chat does not offer end-to-end encryption like iMessage or Signal. Rather, it retains the same legal intercept standards as its SMS predecessor.

Asked about the privacy issues related to RCS, Google's product management director for Android Messages replied:

We fundamentally believe that communication, especially messaging, is highly personal and users have a right to privacy for their communications. And we’re fully committed to finding a solution for our users.

Google is working on it but no indication is given as to when end to end encryption will become a feature. In the meantime, when sending a message,

It's encrypted in transit, but it’s not fully end-to-end encrypted, so your RCS provider can potentially see the contents of your messages, and turn them over to the government if properly asked. Google says it will delete them from its servers as soon as they’re delivered to your phone

Like for SMSes, the providers will be able to read your messages until Google decides to implement end to end encryption.

The issue here is that RCS is not a Google product/service. Google serves RCS via a service called Chat, and Google Messages (the pre-installed, default SMS app on most Android phones) supports RCS. The Verge are pretty bad at conflating the two but even they say (emphasis added):

Google has been quietly corralling every major cellphone carrier on the planet into adopting technology to replace SMS. It’s going to be called “Chat,” and it’s based on a standard called the “Universal Profile for Rich Communication Services.”

But RCS is actually a "carrier-led" initiative organised by the GSM Association, which defines the "Universal Profile," and there are a lot of companies involved in supplying RCS products. Google has encouraged RCS, because it makes Android phones more appealing and competitive with iPhones and iMessage, but it doesn't "own" the initiative.
That means that RCS is actually provided by mobile operators, who are subject to legal intercept legislation. So when commentators say "Rich Communication Services is generally credited as being more secure" they are mainly talking about verified identities for businesses, which are supposed to reduce fraud. Because typically operators will need a point within their network where messages are unencrypted for when some law enforcement organisation requests access.


text:
Adjust/personalize auto-correction on Android
Using a Moto G Play with Android 7.1.1 installed. Whenever I type the word ie. (that is), this is auto-corrected to one of:
or.
IE.

The auto-correction selected appears to be random (perhaps based on context). I would like to tell my phone to NOT auto-correct ie under any circumstances. If I meant to type or and accidentally typed ie...that one is on me!
Is there any way to adjust auto-correction by manually entering personalised phrases (such as into a dictionary)? I don't want to turn auto-correct off entirely.

Unrelated to the question, but the correct term is 'i.e.' (with period between 'i' and 'e')

Add the word to your personal dictionary.If you are using Gboard:

Go to its settings then Dictionary.
Click on Personal dictionary
Select a language or All languages if you want to add the word for every language.
Click the + button.
On "Type a word", enter ie.. Press the arrow to go back to the previous screen. (You can enter a shortcut for the word if you want but with your word being so short I don't think it is necessary).

For now on ie. will appear when you type and will not be auto-corrected.

This may be the answer, but attempting to add personalised terms crashes settings on my phone and does not update the dictionary.


text:
How can I switch out of "Internal Beta" version in Android App Store?
I'd like to install the most recent public version of an app I'm working on. I also happen to be a beta tester.
The page for the app in the Android Play Store has many tells that it is for the internal beta:

You're an internal tester. This app may be insecure or unstable.

How do I switch out of this without removing myself from the beta tester list?

If you want to go back to the public version, you just have to leave the beta program. Leaving the beta program is done using the page for the application in the Google Play Store. Open the page of the app in the Google Play Store, and scroll down till you something like "You're a beta tester". Just below that title, there should be a button "Leave". Pressing that button will bring you back to the general public version.
Watch out, because some apps don't work that good if you want to go back in version numbers. Could be you have to reinstall the app afterwards.

"without removing myself from the beta tester list".  I suppose it is not yet possible then.

The only way is by removing yourself from the beta tester list as far as I know. You can probably go back to the beta if you want after going to the public version?

One other thing that could prevent getting out of Beta is if you enabled Developer Options on your phone. You have to go to Settings -> System -> Developer Options -> Use developer options (turn off). After that if you already left beta testing group, the app should now show up as non-Beta in Play Store.

Based on my experience, Developer Options isn't really related to the Google Play Beta program, but this answer might tell a different story.

I used to have a "leave" option for internal testing in the GP store app, but can no-longer find it.
The only way for me to get back to the prod version was by following the above suggestion (disable developer options on my Samsung Galaxy A7 tablet).
I'd tried removing myself from our internal test list, and restarted device, but that alone didn't pull me out of the internal test track.  After disabling developer options, and app-switching back to the GP store w/our app open, it auto-refreshed w/o the internal test verbiage, and was able to install the prod version w/o issue.

Neither work for me - I have no Leave option, and turning of Developer options didn't affect which version of the app I had installed. Even after uninstalling, it still comes with the warning "You're an internal tester. This app may be unsecure or unstable". And when I install it installs an internal beta version that isn't compatible with the production environment.

In my case, I just delete myself from the list of users for the internal test from the Play Console.
Then I uninstall the app and delete the cache only.
Then I get (Internal Beta)" removed.

Uninstall the app from the Play Store.
Then browse the beta tester invitation web page you have received by email when you apply to be a beta internal-tester. There is a blue button link to leave the beta.
The page url looks like https://play.google.com/apps/internaltest/[some-numeric-id]
You can find the page link at Google Play Console > Your app > Tests > Internal tests > Testers tab > "Copy link" at the bottom.
Then install the app again.

If you have access to the developer console, you can download the most recent public version's APK and install it on your device manually. Type in "App Bundle Explorer" in the search bar at the top of the developer console and you will be able to pick the version to download the APK for. Once you install it on your device, you can test it and then also test upgrading to the version available to the internal testers.


text:
YouTube video in fullscreen mode being cropped
I have a phone Xiaomi Mi 9T with Android 9 and I have MIUI installed on it. My problem is that when watching videos on the mobile version of YouTube in fullscreen mode, videos are being cropped. Here is an example: YouTube video on my phone and PC.
On PC

On the phone in mobile version, you can see that the bottom part has been cropped.

I tried on Firefox and Chrome, it seems that every browser on my phone uses the same player, so videos are being cropped everywhere.
Also, if I use the desktop version of YouTube and open videos in fullscreen, then the player is cropped at the bottom.
On phone in fullscreen

Do you know how I can fix these?

Does this happen in the YouTube app as well? Did you try turning desktop mode on in Chrome for example?

@ChagaiFriedlander It doesn't happen in Youtube app, but I don't like to use it for other reasons, I would like to browse youtube in Chrome. I did attach an image with desktop mode in Chrome (the third image): you can see that the video is not being cropped but the player is.

Did you try zooming in AND out? Could you share the URL with us? Sometimes you can change the URL to make the website think it's running from a computer.

Have you heard of OG YouTube maybe that'll work for you.

@ChagaiFriedlander How do I zoom? I tried stretching with two fingers like an image, but it didn't zoom. Here is the link https://m.youtube.com/watch?v=xebewT6lh2k&t=2s. This is the mobile version. It would be nice if there is a way to fix this on mobile version.

Settings -> accessability -> enable force zoom. youtube.com/watch?v=xebewT6lh2k&t=2s try this link, without the m. At the beginning.

Did it work? Or do you still need help?

@ChagaiFriedlander I don't have enable force zoom. All my browsers use the same player when playing videos on youtube, I think I need to change the player. Is there a way?

Try adding this extension to Firefox. https://addons.mozilla.org/en-US/android/addon/external-video-player/

I had the same issue as you. Try using the Firefox browser, it worked for me.


text:
Asus Zenfone Max Pro (M2) forced into CSC Fastboot Mode
I have Asus Zenfone Max Pro (M2) running on Android 8.1 Oreo and it was working fine, no viruses, no malware. When I was playing a game on the phone, I put it on the side, then I went to play a game on my PC. When I came back to my phone, it was turned off although it had plenty of battery left. When I tried to turn it back on, it launched into "CSC Fastboot Mode" and it will not boot normally anymore.
I have not rooted my phone either or even tampered with it. Currently, it's plugged in on the PC and in recovery mode. While the phone doesn't boot into Android, it does boot into recovery when pressing down on launch. When it's plugged in (when turned off) on the PC or in a wall plug, it turns on by itself.
I've already been searching for some similar options, but the closest post to the problem of mine was not solved or I think so:
What is CSC Fastboot Mode, and how to get rid of it?

maybe it is a hardware issue with the physical buttons. not sure if it works with locked bootloader but you can download boot.img and try to boot from fastboot with fastboot boot boot.img https://skyfileos.com/2019/02/20/asus-zenfone-max-pro-m2-zb631kl-official-stock-firmware-update-rom

another workaround is open the device and disconnect the Volume buttons


text:
How to make Gcam work on POCO F1
I have tried many different APK's available online on my POCO F1, but none seems working fine. Can someone provide me the best GCam links for POCO F1?

The best resource for all Gcam links for POCO F1 is available under XDA forums which are listed under https://www.celsoazevedo.com
Please make sure you read and follow the instructions properly before downloading and installing it on your android device.
When you choose the APK to download, make sure your Android OS version is compatible with the APK version to be installed.


text:
How to call or dial from my head unit through Bluetooth?
I just upgraded my head unit to Woodman Big B on Android 8.1. I'm not finding a good way to dial out someone from the head unit. I am connected to my mobile through Bluetooth.
How to call or dial from my head unit through Bluetooth?

Check the device on the Bluetooth setting. Used for ...?

I spent some time today exploring my head unit and found that the Bluetooth app has the option for downloading contacts from the phone. Also, it has a nice dialer.


text:
Can WhatsApp video calls be restored/reviewed?
In WhatsApp, one can view the detail of video call history by tapping the entry on it.

The video calls have a volume on the device, so can they be restored and reviewed?

No, WhatsApp video calls can't be restored and reviewed. It's not stored anywhere locally on the phone or remotely on the internet.
The size shown here is the total data transferred through the internet while on the video call. It's basically the usage of network data, mostly for data usage auditing/monitoring on a limited internet plan.
There are some 3rd-party apps that can record WhatsApp video calls locally on the phone, but WhatsApp doesn't have a feature to record both phone and video calls natively.


text:
How to find/identify the app that creates a sound?
My Android 8.0 phone generates a sound at 8:00 AM every day. It doesn't display anything on the screen while and after the sound being played. I guess this sound is created by one of my 100+ apps on the phone. I really have no idea where the sound comes from.
Is there any log on the phone that can help me identify which app creates the sound at 8:00 AM every day? Or is there any app that can help me find the app?

Answer tested on a OnePlus 6 running Android 9.0.

You can setup adb in your PC and try this command:
adb shell 'dumpsys audio  | toybox  grep -i "CallingPack" | toybox sed -e "s/$/\n/g"'

audio is dump/log that  is shown to the user using dumpsys utility. The rest of the command is just to filter out relevant information.
Example output:

10-15 18:14:19:273 requestAudioFocus() from uid/pid 10096/6373 clientId=android.media.AudioManager@a9ae24fqijaz221.github.io.musicplayer.audio_playback.AudioPlayerService@d009ddc callingPack=qijaz221.github.io.musicplayer req=1 flags=0x0 sdk=28

10-15 18:19:51:868 requestAudioFocus() from uid/pid 10133/3213 clientId=android.media.AudioManager@c20d259 callingPack=com.arlosoft.macrodroid req=3 flags=0x0 sdk=28

10-15 18:24:47:697 requestAudioFocus() from uid/pid 10019/1914 clientId=android.media.AudioManager@8f116ae callingPack=com.android.systemui req=3 flags=0x0 sdk=28

In the output, the bold highlighted text is the package name of the apps which had caused certain sound to be played in my device at the time noted at the beginning of each line. Here's what those apps did for me:

qijaz221.github.io.musicplayer is the media player I used to play a song.
com.arlosoft.macrodroid is an automation app I used to play a brief sound in the background without showing a notification.
com.android.systemui is for a notification with a sound.

To find out which apps correspond to those package names, follow my answer here.
Note: if the package name corresponding to your time turns out to be com.android.systemui, you may have to dig deep into the dump service media.metrics. I couldn't make much sense of its output but your case may vary.

I was puzzled by my Samsung Android 12 phone which has started playing random screeching sounds with some regularity. There was no app in foreground, it continued even after phone reboot. The phone is unmodified and not rooted. I've enabled USB debugging in Developer options, connected USB cable, ran adb shell and then logcat | grep requestAudio. After some time log records started popping out pointing to touchvpn software - look for callingPack parameter:
11-24 20:24:47.700  1114  6172 I MediaFocusControl: requestAudioFocus() from uid/pid 10256/23100 AA=USAGE_MEDIA/CONTENT_TYPE_MUSIC
clientId=android.media.AudioManager@7eea05corg.chromium.content.browser.AudioFocusDelegate@89e7f65
callingPack=com.northghost.touchvpn req=1 flags=0x0 sdk=30 11-24


text:
Call history not showing when expanding the contact details
I am using Nexus 6P with Android 8.1 Oreo. I am not able to see the call history under the contact details. It used to display the most recent call history when opening the individual contacts. Below is the screenshot that I used to see the contact's recent call history (highlighted with a green rectangle).

Assuming that I am not having a few permissions on the Contacts app but not sure what kind of permissions I should be granting.
So far, I have tried clearing the cache of the Phone app & Contacts app. Also ensuring that the Contact App & Phone App has storage access.

Seems to work for me, and I have Call Logs, and Storage granted permission along with the natural Contacts and Phone.

Grant android.permission.READ_CALL_LOG to Contacts app.

@IrfanLatif, My phone is not rooted. So, wondering is there any UI/steps to grant this permission!

@wbogacz thanks for your reply. So, any idea what must be causing in my case! thanks in advance

@IrfanLatif, I have Contacts, Phone & Storage as an option(s) under the App permission section. Wondering how do I get the READ_CALL_LOG permission into this list.

@IrfanLatif it's an Andriod's stock App and as I mentioned, I don't have this entire list of permissions. I just have Contacts, Phone & Storage

Let us continue this discussion in chat.

I have a similar stock Android device with the Google Phone and Contacts app. And the call history under the contact has been missing since a long time now.
The only way to access the call history (for me) is to single tap on the contact name from the dialer/phone app and choosing history.

I know that's not your answer, but it is obvious that Google Contacts app does not have that implemented. You can probably choose a different Contacts app which has call log implemented under the contact details.
If it was working for you until recently, then uninstalling the updates for the app can help. You can do it in Settings > Apps. Probably an old version supported it and then Google decided to kill the nice functionality (as it always does).

Hmm, thanks for reply. Unfortunately, I don't even see the History as an option.I have Call, Tet, Set up & Pay as an options.

@SharK As I said, it is in the Google Phone (dialer app). It is not implemented in the contacts app.


text:
Imitate a swipe down gesture periodically
There's an app that allows for monitoring of some specific process. This app gets locked every 5 minutes unless a screen activity is detected. The phone itself is not locked, the only app's interface is blocked. There's no way to configure the app's timeout to 10 or 30 or 60 minutes at all.
Is it possible to imitate a swipe down gesture periodically (for example, every 60 seconds)? I need it to run on Android 4.4.2.
I have seen AutoInput, but it appears it's not free.

Welcome to Android Enthusiasts! What do you want to accomplish while swiping down?

If you have root access, you can use Tasker and input command to do this. The app AutoInput might also be able to help here.

Use Macrodoid. It offers 5 macros for free.

On the Triggers tab, under the Device Events section, select Screen On/Off then Screen On.
On the Actions tab, under the Device Actions section, select UI Interaction. Enable Macrodroid UI interaction accessibility option. Select UI Interaction, choose Gesture, then enter the X and Y values (X and Y screen coordinates: where to start and end the swipe).
Save the macro and give it a name.
Edit the macro. On the Actions tab, under the Conditions/Loops section, select Repeat actions, choose While 'conditions repeat. Add a condition (I selected Screen On, under the Screen and Speaker section, then Screen On/Off.
On the Actions tab, under the Macrodroid Specific section, select Wait Before Next Action, and set the time to 1 minute.
Click the up and down arrows on the Actions block, then move the items from steps 2 and 5 to be under the While/Do condition.
Save the macro. Click the 3-dot, then Test macro.

The macro will be like the image below:

When I tested it, I set the start values at X=100, Y=300 and the end values at X=500, Y=300 to simulate a swipe from left to right. The values on the steps described above should try to swipe the status bar down. I advise to change the X and Y values so they be based on your screen resolution and needs.

Thank you! I have installed the app and using your detailed reply created the macro. Will tune it for my needs.


text:
Disable vibrations for notifications on Xiaomi Mi A3
I have a Xiaomi Mi A3 on Android 9. I want to disable the vibration when a notification arrives for all apps.
I did not know that by disabling notifications, I won't be able to receive calls since notifications for the calls also did not appear, only the ringtone played, and upon unlocking the phone there was no display of who was calling.
Somehow I enabled notification for all apps but it is vibrating each time.
How do I disable vibrations for notifications like messages on Telegram, Facebook, WhatsApp?

Using appops: https://android.stackexchange.com/a/215658/218526

You wont find any vibration settings to change in Sound settings. You will have go for Settings › Accessibility › Vibration&Haptic › Notification to turn off vibration.

Ok I checked there is accessibility->interaction control->vibration->ring and notification vibration / touch vibration I turned both off.

Welcome to Android Enthusiasts! Please don't use "txtspeak" / "SMS lingo" on SE sites, but rather fully spell each word. Many users here are no native English speakers, and some already have a hard enough time to follow normal English.


text:
I installed and executed this app which is a virus or malware now what to do?
I had this message pop up and unfortunately
I installed and executed this app which is a virus or amalware now what to do ?
Please see the photo here

Of course I mean the app that came when I pressed the button in the captured photo?

I think the questioner's problem is that he clicked the link in the captured page and installed the malware and needs to know how to remove it.

Yes exactly I don't understand how can some one understand what I wrote in a different way !!!

If you want to be helped, please refrain from offense. I've removed that part from your post.

I already in installed it , should I worry about hidded app that install with it ?

PS: That the screen shown is telling you "no good things" is easy to see by multiple facts: 1) "act immediately" (with a count-down), 2) telling you your SIM would be affected (or, in some other cases the battery), 3) asking you to download, install and execute something directly (instead of giving general advice to install it from Google Play). I never understood how people fall for such a thing. Follow Firelords advice, hope for the best, and be more careful next time ;)

I found different versions of solide explorer, Do you mean solid explorer file manager?

That's a scam. They make you think you have a virus on your phone so you download the app. Just remove the app and carry on with your life.

Many if not most of the scams that use this social engineering method install malware -- key loggers, bots, etc. -- that need to be removed separately and with much more difficulty than just removing the app that the add pop-up installed.

@ZeissIkon Mobi doesn't use social engineering methods.

You became a victim of a typical phishing scam. The problem at this point may or may not be severe, depending upon the state of SELinux enforcement in your device and un-patched known vulnerabilities in platform software. I would suggest begin by hunting down any app which has been recently installed.
I tried App Detective1, Elixir 2 and Solid Explorer Classic and all of them were able to sort the apps by time of installation and/or update.
Note: If the app offers sorting then have it sort in descending order. Whichever app entry you would touch, you would be shown certain information. One such information is package name of the app. Note it down and so as the label/name of the app.
Now, in order to remove the app, go into application manager of your device. That would mostly be Settings app → Apps → All apps. Search for your app and uninstall it. Repeat the whole exercise if you installed more than one malware.
Note: some malware apps tries to be smart (funnily). Through phishing they have the user set them as device administrator, which makes them temporarily immune from force stop as well as removal. Under application manager of your device, if you find your malware with having Force stop and Uninstall button grayed out, then you may be dealing with a device administrator. In that case go to Settings app → Security → Device administrators → deselect the entry for your app.
If you cannot find the app by its label/name in application manager, then setup adb in PC and execute this command:
adb uninstall PKG  # PKG refers to package name of the app you intend to uninstall

Tip: all the three apps I tried, they also offered removal of a user selected app; at certain point of app removal, you might need the assistance of safe-mode.
If the app exploited a vulnerability then it may have become a system app. In that case, you shouldn't bother about removing the malware because you may not be skilled enough to ascertain where else the infection may have occurred. The cleanest approach is to have the stock ROM flashed on the device. For that, you may seek technical help from the  vendor or on this site or forums out in the wild. Anyhow, the details about flashing a ROM are beyond the scope of this answer.
(Click an image to enlarge it; order of images: App Detective, Elixir 2, Solid Explorer)

Lessons for future:

When browsing in any browser, ignore any warning -- no matter how convincing or scary it is -- that asks you to install an app or to share any piece of personally identifiable information. That's just spam and will always be.
Keep Unknown sources setting disabled. It's not a coincidence that it is a security setting.

1 Courtesy of HasH_BrowN for the answer here.


text:
What Tasker tasks require root access?
I'm thinking of installing Tasker on my phone, but I don't want to root it.  Is it worth my while?
What Tasker tasks require root access?  What can it do without root access?
Edit:
Here are some examples:

I would like to turn on the GPS whenever I start certain apps (various driving directions apps, for instance), and turn it off when I exit them.  I understand that apps can't turn on the GPS (otherwise the apps in question would do it themselves instead of directing me to the settings).  Tasker claims to be able to do that.  Does it need root for that?
I remember seeing somewhere (lifehacker maybe?) that Tasker can disable the lock screen based on location, such as when I get home, and turn it off when I leave.  Can it do that?  Does it need root access for that?

"Is it worth my while?" is too subjective, and "What Tasker tasks require root access? What can it do without root access?" is incredibly broad and would result in a never-ending list.  I suggest asking something specific like "Can I do X with Tasker, and does it require root?"

@Matthew: good point.  I updated the question with some examples.

The simple answer is that it requires root to do things that would require root if they weren't automated by Tasker and you were doing them manually.  Tasker is irrelevant.
Edit: Turning on/off GPS does not require root.  Apps must be able to do it, because Power Widget can.  As for the lock screen, I think what you read must have actually referred to the keyguard (the "swype to unlock" screen).  The phone is not locked the same way as it is with a pattern/password when the keyguard is on; it's just to prevent accidentally keypresses, not for security.  Tasker can disable the keyguard.

Actually, GPS turn on / off does require root. The Power Widget thing just takes you to the settings page

I was in the same boat as you. Wanted tasker, didn't want to root my app.
After downloading it, I did it find it fairly limiting without a root because as Matthew Read said, it basically only allows you to do the things that any other app could do. So unless your requirement are some niche thing that you wanted, there's probably an app that does it for you anyway.
Some of the things that can't be done without a root include

Turning GPS on / off
Toggling 3g on / off
Setting CPU speed
DPAD (allows you to script the phone like it was being used)
turn the screen on
reboot the phone

I mainly got Tasker as I thought I could optimize the battery life on my phone but without those settings, there's not that much I can really do.
Still worth the 2 bucks though, been great learning playing with it. And maybe down the line, I will go and root my phone.
EDIT - this answer is only for ICS and above. Not sure what it'd be if you were still on Gingerbread

I'm not sure what you're talking about, Tasker does not require root for any of its features.
From their website:

This simple concept profoundly extends
  your control of your Android device
  and it's capabilities, without the
  need for 'root' or a special home
  screen.

there are some tasks in tasker which need root privileges, i.e. toggle 2g only / 2g and 3g.

This answer is just wrong. There's lots (I would say most of the useful ones) of features it can't do without root. toggling GPS, DPAD, set CPU frequency etc.)

@Diskdrive this answer is right in literal sense. Tasker doesn't request root access, but due to Android API changes over the time, some of the functions need root, which Tasker can't do it. That's why there are 3rd-party app/plugins that require root access and accessible by Tasker.

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


text:
How can I forward a section of a WhatsApp conversation?
Suppose I had this conversation with someone on WhatsApp, consisting of several messages going back-and-forth. Now, I would like to forward that exchange to someone else...

on WhatsApp
via a plain-textu representation (which still makes it clear who says what, and isn't just a concatenation of the text)
via some reasonable structural represntation, doesn't matter exavtly which (e.g. XML, HTML, markdown, RDF, email-like quoting etc.)

Which of these options is feasible, and how?
PS - I use a Doogee X5 phone with Android 5.1, in case it matters.

Take Screenshots !!!
Works for everything !

That's not such a bad idea... but the WhatsApp interface doesn't seem to offer to let me do that. So, how do I take screenshots in WhatsApp?

Standard way: Hold Power+Volume Down

@GokulNC: That doesn't work for me, at least not with my Doogee X5.

Try Screenshot Easy app..

Simply copy multiple  chats and paste to the third person . You will have time and sender information as shown below in the screenshot

In response to comment asking how to copy, simply long press the chat (S) and copy highlighted chat using the icon pointed. Next, to paste, in another chat, long press and you get the paste option

What do you mean by "copy multiple chats"? How do I do that?

Explained that in answer

Haven't seen your response? Wondering if you had issues?


text:
Specs/Stats displaying on Homescreen on Galaxy S II 4.0.4
Having the following showing up on all home screens in the background. Any ideas why?

Check out your Live Wallpaper. Does restarting help?

To me this looks like a widget displaying system information. Tap-and-hold it, a trashcan icon should appear on your screen (most likely on the top, and most likely marked red). Drag the widget onto it, and let it go. This will remove it from the homescreen.

Looks like Factory Test Mode. You can remove it, but you need to have root access.
If you have root, do these:

Open a terminal emulator (e.g. Android Terminal Emulator)
Type su
Then enter the following after the #
echo -n ON > /efs/FactoryApp/factorymode

Yes, ON is the correct setting to turn it off. Exit the terminal, and reboot the phone.
Reference.
If that doesn't work, you may need to re-flash the ROM.


text:
How do I upgrade my Sony Xperia X10 mini to Android 2.1?
I would like to explain to my friend who lives in another country how to upgrade their phone to Android 2.1 so that they can use WhatsApp.
How can they do this?

See also: How do I update the OS on my device?

Try pointing them to this link on the Sony Mobile website: http://www.sonymobile.com/global-en/software/phones/xperia-x10-mini/
It has some software to download for mac or PC which will allow your friend to upgrade their device.


text:
Cannot upgrade Galaxy Y GT-S5360 with new firmware using Kies
Whenever I try to click "upgrade", my phone suddenly disconnects from Kies but the download prompt still runs. After the download process completes, Kies suddenly closes and there are no changes with my phone.

Try putting you phone in Download Mode and try again.

There are quite a few [tag:samsung-kies] questions here, and many of them have to do with update issues. Have you checked to see if any of them are similar to your issue?

Are you running the latest version ok kies?

If the answer to my comment is No, then update Kies, and try again.
If the answer to my comment is yes, then try the following:

Place your phone manually into download mode, and attempt the update again.
Kill all Kies processes using the task manager, and then open the program again.
Ensure your USB cable and USB port are working properly (sometimes a weak connection can cause issues)
Erase all the data on your android (do a factory reset) and try again (I put this last, as you lose all your data, so should only be tried AFTER you have tried everything else you can think of).


text:
Problem with accents in Xperia x10 Mini Pro using CyanogenMod
When you press and release the button in the bottom-left corner, it normally comes up with smilies and accents. If you hold down on it and press "e" once, it will give you "é".
But with CyanogenMod's mod, it doesn't work. It just does the same as the blue button. Can anyone help?

Maybe it might be worth your while to try the latest LegacyXperia to see if it fixes it up? CyanogenMod no longer support those devices, this is where LegacyXperia steps in, to continue the support from where FreeXperia left off, have it running on Xperia Mini, JB ftw.

As far I as I know this feature is available on Stock ROM given by the manufacturer. May be someone might consider this and do a work around to fix this issue on CyanogenMod ROM.
Even this key doesn't work with other soft keyboard applications.


text:
How to sync only Facebook contacts that already exists in phone for Android 2.2
Device: Samsung Galaxy Fit
Android: 2.2 Froyo
How can I sync only the Facebook contacts which already exists in my phone memory? I don't want to sync the contacts that are not on my phone memory.

You could choose to only show contacts that have phone numbers. If I remember correctly, this is in Contacts -> Menu -> Display options -> Only contacts with phones.
Another possible solution is to go to Settings -> Accounts & sync and remove the Facebook sync, Add account -> Facebook and in this process select Sync existing contacts only.
I'm not 100% sure about the menu item names, but they should be somewhat similar. It's been a while since I've used Froyo.

Whether Facebook shows up under Accounts & Sync will depend on your ROM and what apps it comes with or you have installed.


text:
How do I know which applications slows down the phone?
How do I know which applications slows down the phone, so that I could get rid of them?

The Watchdog Task Manager app is really great for these kinds of problems.

Although you can't find out what apps are 'slowing down' your phone, you can find out which apps are using your battery the most. Generally if apps are using a lot of battery power, they're probably slowing down your phone too.
You can find the list of apps vs battery usage in Settings > Battery.

My battery use is 57% screen, 25% voice calls 13% camera... If this is the only solution, I might as well throw the phone away. :'(

There is yet another aspect, Constantly running background (daemon) services that are usually associated with network updates, mails, facebook, sugarsync, dropbox etc.. can get the juice out of your phone very quickly, you need to keep track of  such 'zombie' apps that keep these background services running.
Look at them once and make sure you keep what you need. Be careful it can have lot of side effects.
Settings -> applications -> manage applications -> running (tab)
Hope it helps you.

Hmm.....Try "advance task killer" which force stop all apps except for selected. or manually by going to application select force stop on each application.

I tryed but it didn't help, but watchdog did!


text:
How to circumvent the market compatibility check?
Sometimes I would like to install some App on my Notion Ink Adam but the Android Market says that my device is not compatible with the App. ATM I simply google for the specific App and search some file hoster where I can download the apk, but this has several disadvantages (you never know if it is a hacked version, you don't receive updates, etc).
Therefore I would like to simply tell the market that I know about the incompatibility, but I want to simply install the App anyway. Does someone of you know a solution?

Typically these things are defined in the android_manifest by the developer if it's because it requires certain hardware (e.g., NFC, bluetooth, Android version, etc. etc.). The developer can also choose to not support specific devices when they publish in the Android market. It could be possible there is a valid reason why it isn't compatible. Which app is it?

Yes.  Unfortunately the Market appears to pull the version of Android directly from the system somehow, so I'm not sure how to get around apps that are limited by version.  However you can get around apps being limited to specific devices by editing your build.prop file.  See my answer here: How can I modify the phone model in build.prop to get unsupported apps?

There's an app called Market Unlocker (which requires root).

I tried it, but AFAIK the unlocker is more about the country and provider but not about the compatibility check, doesn't it?

A little leg-work is preferable in answers. "There's this app, look for it on Google" is far less helpful than a link to the app.

I would have posted the link, but my network's being filtered (proxy).


text:
How can I type special symbols on my Android device like ☺ or ♥ as a regular character?
How can I make special symbols on my Samsung Galaxy SII, like ☺ or ♥?

by hex subset: http://android.stackexchange.com/questions/38405/how-to-insert-unicode-characters-by-their-hex-codes-using-usb-keyboard-on-ics

You could also copy and pin them into your keyboard's clipboard if it has such a feature. GBoard, for example, has it

These are actually Unicode characters you can easily reproduce on your computer:
How can I get “WHITE SMILING FACE (U+263A)” with the keyboard?
The Android platform supports unicode and all its characters, however the soft keyboard that comes with your Android ROM probably won't carry all your desired symbols.
When long clicking on some symbols/characters on your soft keyboard you will see the key pop-up expanding to give you an additional choice of symbols, then drag and release your finger to print them.
Installing some 3rd party keyboards (such as GO-Keyboard) will give you access to more symbols.

The easiest, practical way is to Google Search the Unicode Names of these symbols and copy them (e.g. ☺ is WHITE SMILING FACE and ♥ is BLACK HEART SUIT). If you need to do this often though, you'd want to get an 3rd party keyboard.

Can you recommend a keyboard that does it by hex code? I could only find https://play.google.com/store/apps/details?id=uk.co.cwd.unicodekeyboard but it is paid. There are others that find the character to copy paste, but it's not very practical.

Activate keyboard (e.g by perfoming any type action)
Go to symbols.
Long-press this button •; you will see these: ♥♣♠♦♪.
When you long-press *, you can type ★.

Could you elaborate on how to "Go to symbols"? Or is this something special and obvious to Samsung users? I tried to follow your steps on my HTC running ICS, but stuck on step 1.

I think its universal. I did it with my Lenovo. I have GBoard (the google keyboard) app already installed I don't know if it is required. Click the ?123 key on the bottom left corner to show more symbols. Then  click on the =/< key to show even more symbols. You will find the required dot on the first row

There are dedicated Keyboards you can install. One of them is SymbolsKeyboard
See also (S2 relevant): How to switch Input Method / keyboard?

I wish this had an Unicode hex input.

I use google keyboard for texting. For this keyboard, u just need to go symbols, on bottom right, there's a straight vertical line | (like this o e) below the brackets. Press that and the heart shape will appear...

make a note and save ★☆♥☏✹✃✈✉☺☻™✽ッツ♨✆ ★★★★★ ♥

Seems like a "feel free to copy these few I incuded here" for later copy/pasting. Generally not a good solution.

I'm (still) using the average ICS (4.0.4) on a Motorola Atrix 2. If I go to the Symbols keyboards in the Standard Motorola keyboard input, and long press any symbol key, it will display a blue rectangle, showing the symbol, and whether there are other symbols available from that key. This is initially shown by an ellipsis (three dots: ...) to the bottom right of the symbol. If there are no other symbols, no ellipsis appears... Wait a bit longer and the other symbols will then be displayed in a new blue rectangle. Simply slide to the symbol you want. Most of the useful symbols are on the Second symbols keyboard, so press the [?123] key, then the [=\<] key, and Yes, the Heart (admittedly a black one) is under the • key.

For new versions of Android, the easiest way I have found is to use Character Pad - Symbols. It allows to add characters by

Simply tap a character to copy it to your device's clipboard, open any other app, and paste it anywhere you like

It also has a search function to allow finding characters by their names.
Disclaimer: I am just a user of the app.

If I tip the keyboard to horizontal then hold down the microphone key - I get emoticons as an option. (Samsung G4)


text:
Spica i5700: How to downgrade from froyo 2.2 to eclair 2.1
I have a Spica i5700 with Froyo version of 2.2.2.
I want to downgrade it to Eclair 2.1, because I find the screen often produces erratic movements such as auto-input to my password even if I am not inputting anything. It also auto-scrolls, even if I am not scrolling it.

You'll need to use Odin.  This blog has a guide for how to flash 2.1.  To summarize you put your phone in Download mode, connect it to your PC, load the firmware into the appropriate field(s) in Odin and hit Start.  The site has a link to firmware but if it doesn't work try samfirmware.com.


text:
HTC Evo 4g LTe Jellybean (JB) charge only
I just flashed a new stock JB ROM from viper boy over at xda.
What happened to the Connect to PC in the settings window? I can see my HTC Evo 4g LTE as a disk drive and media exchange, but it has no option for charge only. What mode do I need to be in to run cmd commands on my JB phone? Every tutorial for cmd says charge only.

Just to confirm my understanding, you are saying that there is a cmd commnd to enable charging, and this is what you are looking for. Is that correct?

As it is two questions in one, you need two answers:

To run commands via ADB, you do not need to set that mode now - you just need to have USB debugging enabled, and the cmd commands will work.
Just remember that having USB debugging enabled could warrant a security risk as it may allow someone that has stolen your phone to access it's data without having to unlock it, but as you seem to have had it enabled previously, then I believe you should understand the risks.
Concerning the USB connection mode: In the old Android version, that mode caused issues (due to manufacturer modifications), since jellybean, Android uses MTP, so that option became redundant.

Thanks, great site and even better contributors.. Merry Christmas.

For starters, this shouldn't be here, this should have been asked at the XDA thread itself. With all the tweaks they make to their ROM, it would have been a good idea.
Second, with MTP, there is no need for Charge only. The SD card and Phone Storage is always available when you are connected. "Charge Only" was relevant when you were on ICS or GB and you had UMS (USB Mass Storage).


text:
Endless updates on every boot
I have a treadmill (manufacturer gone out of business so no support there) that runs on Ubuntu 14 (2016) Android version 4.4.4. Every time I power on it goes through the "Android is updating" process
I can run update packages through the file manager that I have previously saved to a thumb drive. I can't run app updates through Google Play. (I suspect a minimalized browser setup). It is connected through WiFi to the internet. I have tried setting up an SSH connection to control it from my PC but no success there (probably my ignorance). There are no other connection points (ethernet, RS232, etc.) that I'm aware of besides the USB input. I need the "treadmill" software to not be damaged as I do not have a system image backup.
Ok on to the questions. The way I see it is that:

I need to make a system image backup before doing anything
I need to be able to get remote access working so that I can identify exactly what is going wrong and then fix it
I need to probably update to a newer version of Android/Ubuntu without losing the treadmill functionality (or find an alternative treadmill control program)
Or I have to live with the constant updates :-)

Suggestions, please.

Hi, could you clarify on "Ubuntu 14 (2016) Android version 4.4.4"? Considering that Android is not Ubuntu/Linux, did you mean it is running dual-boot? Or is the Android inside Ubuntu? Or otherwise, could you mention the model of the treadmill, in case we need to research more about this?

It's Android (4.4.4) running a minimalistic Ubuntu kernel.
The limited information provided is Kernel version 3.0.36+ root@es-ubuntu14 #73 Jan 13 2016.
See https://www.amazon.com.au/Sport-Pro-Treadmill-FEEL-FIT/dp/B07Y5HGQPP (read my review too -great mechanically, appaling software)

The combination of Android using an Ubuntu kernel is quite unusual. If I were you I would not take the risk of bricking the device. If the manual contains information about factory reset I would consider this as the maximum I would try. If you feel lucky you could try to get root (based on the kernel version the dirty cow exploit should work) just to learn how everything internally works but would not modify anything. The whole device too unusual to make any assumptions what can can be done without effects on the treadmill software.

I rephrased the problem and posted it here https://unix.stackexchange.com/questions/659568/setup-ssh-to-android-device/659610#659610 to try and get SSH to work so that I could understand what was happening.
Spent way too long getting the problem sort of fixed. The problem is the minimalistic kernel and lack of pre-loaded apps especially the lack of support for Google apps. I deleted all apps that were flagged as "downloaded". This fixed the "Android is updating" boot message. I also stopped WiFi as I suspect it was sending usage statistics to a non-existing website. I turned off Bluetooth and location support. Finally, I went through all the developer options and turned force GPU, etc one at a time (reboot & next...). I added Google keyboard input but whilst it fixed the Chinese characters I got the boot updating message again.
The software is now usable for the main functionality with much less lag. Long term I probably have to control the treadmill through a new standard tablet. With the tweaks I can now watch videos while running (off the USB not live) should I choose.
Thanks, Robert for the advice. Yep I was worried about bricking the device.


text:
Bridge phone's mobile data internet connection to a WiFi network without internet connection
I want to know if it is possible to basically bridge the mobile data connection of my phone to a WiFi network I am connected to where the WiFi network does not have a connection to the internet, so that the devices on the WiFi network can use the mobile data connection of the phone to access the internet.
I do not want to use a hotspot which is provided by the phone since I would like this to work automatically whenever I get in range of a device on the WiFi network and I don't want to have the phone's hotspot constantly enabled.
So basically, I want to use the phone as an internet connection for a WiFi network hosted by a different device. So, the phone would be the gateway/NAT for the WiFi network, which is hosted by a different device.
I know that it is possible on Windows since you can set a network device to use the computer's internet connection.
Is there a way to do this on Android? And if so, then how?

Possible with root. Let me know if you have a rooted device, I'll answer.

Unfortunately I do not currently have a rooted device, as all my previous attempts of getting root access have not been successful. I will continue try to get root access again though.

This Speedify app worked for me to bridge WiFi and cellular networks into a VPN profile.
Not sure how trustworthy they are though as I saw a few bad reviews online.


text:
Suspicious pre-installed Google Files app on Infinix HOT 10
I'm using Infinix HOT 10. I got tired of the buggy pre-installed File Manager, so I started looking for alternatives on Google Play Store. To my surprise, I found the Google Files app (which is supposed to be installed on my phone alongside the buggy pre-installed File Manager) in the search results with the option to install it.

I wondered "If it is already installed on my phone, how can the option to install it be there?". So, I installed it. Then I ended up with two apps that have the same exact name and icon but they look different when opened.

The Files app that is pre-installed can't be uninstalled. It also can't be force-stopped or disabled, unlike the pre-installed File Manager app, the Files app that I installed or other Google apps.
It's mentioned in the "App details" section in "Settings" that it's installed from Google Play Store. But when I chose to view it on Google Play Store, I got a message that told me to try again.

I find this to be suspicious and weird. Any explanations?

Without any details it is hard to say what files app you have installed, especially as some manufacturer replace or modify the files app. So there is no definitive answer unless you have checked the APK itself. So I would recommend to extract the APK and then verify it's signature  and check who has signed it.

Also, mentioning the package name for all your file managers would also be helpful for us to help you further.

The preinstalled Google Files is a DocumentsUI module, a part of the modular system components introduced since Android 10.
Searching for "aml_doc_302000001" returned an entry on APK Mirror for another Google Files with the package name com.google.android.documentsui. Then searching for the package name referred to the official documentation about the DocumentsUI module.
According to the overview of modular system components,

Android 10 or higher modularizes some Android system components and enables them to be updated outside of the normal Android release cycle. End-user devices can receive updates to these modularized system components from the Google Play Store infrastructure or through a partner-provided over-the-air (OTA) mechanism.

As such, this is actually a legit preinstalled Google Files that can be updated independently of the bigger OS update.

As an aside, Google actually has 3 Files apps:

Files by Google (com.google.android.apps.nbu.files), also available on Play Store.
Files (com.google.android.documentsui), AOSP file manager since Android 10, part of modular system components.
Files (com.android.documentsui), AOSP file manager app until Android 9.


text:
Phone automatically reboots
My Lenovo A850 reboots almost every time I answer a call. Using adb I redirected the output to a file. Then I tried tracking the reason for the forced shut-down but I am not sure. The phone has a lot of Lenovo's pre-installed apks. I am posting the stack trace of what I think might be the error that causes the reboot.
Unfortunatelly I haven't found a decent site to host the stack trace so that you can see the whole thing but I'll give it a try soon.

I/AEE/AED (10955): $** *** *** *** *** *** *** *** Fatal *** *** *** *** *** *** *** **$
I/AEE/AED (10955): Build Info: 'ALPS.JB5.MP:A850_ROW_S116_130922:MT6582:S01,Lenovo/aupres_row/A850_ROW:4.2.2/JDQ39/A850_ROW_S116_130922.1379859786:user/release-keys'
I/AEE/AED (10955): Flavor Info: 'None'
I/AEE/AED (10955): Exception Log Time:[Wed Oct 29 21:22:51 EET 2014] [99110.120000]
I/AEE/AED (10955):
I/AEE/AED (10955): Java (JE)
I/AEE/AED (10955): system_server_crash
I/AEE/AED (10955): system_server
I/AEE/AED (10955): Process: system_server
I/AEE/AED (10955): Build: Lenovo/aupres_row/A850_ROW:4.2.2/JDQ39/A850_ROW_S116_130922.1379859786:user/release-keys
I/AEE/AED (10955):
I/AEE/AED (10955): java.lang.RuntimeException: Error receiving broadcast Intent { act=android.intent.action.USER_PRESENT flg=0x28000010 } in android.widget.ViewFlipper$1@42fa4908
I/AEE/AED (10955):  at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:806)
I/AEE/AED (10955):  at android.os.Handler.handleCallback(Handler.java:800)
I/AEE/AED (10955):  at android.os.Handler.dispatchMessage(Handler.java:100)
I/AEE/AED (10955):  at android.os.Looper.loop(Looper.java:194)
I/AEE/AED (10955):  at com.android.server.ServerThread.run(SystemServer.java:1352)
I/AEE/AED (10955): Caused by: android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
I/AEE/AED (10955):  at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:5351)
I/AEE/AED (10955):  at android.view.ViewRootImpl.invalidateChildInParent(ViewRootImpl.java:1001)
I/AEE/AED (10955):  at android.view.ViewGroup.invalidateChild(ViewGroup.java:4199)
I/AEE/AED (10955):  at android.view.View.invalidate(View.java:10529)
I/AEE/AED (10955):  at android.view.View.invalidateParentIfNeede
I/AEE/AED (10955): Backtrace of all threads:
I/AEE/AED (10955):
I/AEE/AED (10955): "NetdConnector"  prio=5 Thread id=48 RUNNABLE
I/AEE/AED (10955):  android.net.LocalSocketImpl.readba_native(Native Method)
I/AEE/AED (10955):  android.net.LocalSocketImpl.access$400(LocalSocketImpl.java:29)
I/AEE/AED (10955):  android.net.LocalSocketImpl$SocketInputStream.read(LocalSocketImpl.java:92)
I/AEE/AED (10955):  com.android.server.NativeDaemonConnector.listenToSocket(NativeDaemonConnector.java:132)
I/AEE/AED (10955):  com.android.server.NativeDaemonConnector.run(NativeDaemonConnector.java:90)
I/AEE/AED (10955):  java.lang.Thread.run(Thread.java:838)
I/AEE/AED (10955):
I/AEE/AED (10955): "Thread-71"  prio=5 Thread id=71 RUNNABLE
I/AEE/AED (10955):  android.net.LocalSocketImpl.readba_native(Native Method)
I/AEE/AED (10955):  android.net.LocalSocketImpl.access$400(LocalSocketImpl.java:29)
I/AEE/AED (10955):  android.net.LocalSocketImpl$SocketInputStream.read(LocalSocketImpl.java:92)
I/AEE/AED (10955):  libcore.io.Streams.readFully(Streams.java:81)
I/AEE/AED (10955):  java.io.DataInputStream.readFully(DataInputStream.java:120)
I/AEE/AED (10955):  com.mediatek.agps.MtkAgpsManagerService$MtkAgpsIO.readInt(MtkAgpsManagerService.java:2011)
I/AEE/AED (10955):  com.mediatek.agps.MtkAgpsManagerService$MtkAgpsIO.run(MtkAgpsManagerService.java:1803)
I/AEE/AED (10955):
I/AEE/AED (10955): "AlarmManager
I/AEE/AED (10955): $** *** *** *** *** *** *** *** Fatal *** *** *** *** *** *** *** **$

As for "a decent site to host the stack trace", check for the term "pastebin" which several of them carry in their names. Guess for this current post, the formatting did the trick (it's not too long). // Looks like the "system server" crashes on you. As that's one of the "lowest layers", it takes the entire system along => Reboot. Not that I could name a cause or even solution...

Unfortunatelly pastebin.it doesn't allow for such a long file to be uploaded.

@GeorgeD, pastebin's limit is 512kb. Yours is a mere 3.25kb.

If it's rebooting, you should probably try logging some kernel or other system related messages that are saved after / during a crash, that could show later log messages which probably show what crashed in the lower layers.
Include the log directly before the crash and include it here if it doesn't break formatting, or upload it on pastebin or nopaste (larger size limit) if it does.
Try to gather as much information as possible and include these in your question.
Take a quick look at this for your question to be more likely to get answers :)
Also tell us: What version of Android or what custom ROM / recovery / etc. are you running exactly?
What did you do before this happened?
What did you already tried?
Here is how you can obtain the different logs:
How can I view and examine the Android log?
Android: How to get kernel logs after kernel panic?
Shutdown Log in Android


text:
How to control, monitor and limit bandwidth usage?
During my last holiday, an overeager podcast app used my entire quota for downloading one podcast.
Now I am looking for sulutions that will help limit bandwidth usage.

Primarily I would like to monitor and limit usage by apps (getting warnings,throttling and blocking  apps).
Sometimes up/down can be treaded separately (like photo backups)
I probably have a lot of apps that I can't monitor individually, I think I should be notified about those using resources, and then be able to set limits.
Would like the possibility of several different "policies", with automatic or manual selection. (I often use a mobile hotspot, so basing it on wi-fi or mobile data is not sufficient).  Can be home operator, roaming status/location, Hotspot name.
Sometimes the problem is hotspot clients of my device.  Some granular control would be best.
Perhaps granular control of browses - possibility to control websites, tabs perhaps by limiting heavy downloads like flash and photos.
Limit bandwidth used by ads.

On my phone I have a Data usage listing under Settings|Connections, which is somewhat useful.

There are several things you can do:

Restrict background data. You'll find this option in the Data Usage section of Settings.

Use an ad-blocker like AdGuard or Adblock to avoid wasting bandwidth on ads.
Navigate to the Settings page of your data-guzzlers and make sure they only do their data buffets over Wi-Fi.
Also do remember to check your Data Usage page regularly to stop any greedy apps you've forgotten about from chomping down all your data.

Your options will vary by version of course, but my rule of thumb when roaming is to disable mobile data altogether.  As an example of why, traveling to the UK from the US resulted in a two to three hundred dollar charge even with the purchase of an international roaming package.  Overage charges are too ludicrous to risk so I would stick to wifi data only if at all possible.


text:
What's a good place for public SSH keys on my filesystem?
I'm using an SFTP server app on my Android phone (RedMi 3S); it's a typical Android app, not something requiring root or run as an ARM binary from the command-line). This server app lets me define some username+password combinations for connecting. So far - so good.
Now, I want to use some public keys to allow password-less connection from certain people/hosts. But - where should I put them? What's the equivalent of the faux-user's $HOME/.ssh directory?
I realize I can just put them anywhere and it'll work, I'm asking what's the customary location for this kind of data.

Are you using some Android app to run server or running from commandline? If it's app, which app? If using commandline, from where did you get the binaries? Are they standard Linux binaries or modified for Android?

If the SFTP app is well designed it would allow you to import the user public keys into it's app private directory below /data/data. That IMHO best place where such file(s) should be stored.

@IrfanLatif: Using an app. See edit.

@einpoklum then best is what @Robert suggested. /data/data/<pkg_name> is a kind of HOME for Android apps because every app is a UNIX user and there is no /home on Android. /data/data/<pkg_name> is the most secure place because other apps can't access that directory. However if your app doesn't have option to import key, then you'll have to use /sdcard obviously. Termux also has a sshd server package and it uses /data/data/com.termux/files/home as $HOME.

@IrfanLatif: I don't have a folder named /data. At least - not that I can see, as a non-root user.

@einpoklum you can't access /data without root access. Only the installed app can access it data directory under /data/data/


text:
Schedule automatic updates - not from Google Play?
I don't use Google Play with my Android-based phone; mostly I use APKPure and its app.
However, I do want to be able to schedule periodic updates of all apps (or of some apps) - instead of me having to manually approve app update downloads and/op individual app update installation. It could be via APKPure or anywhere else that's sort of respectable, I don't mind - but it can't require something like logging into to Google/Facebook/etc.
Is this achievable?
Notes:

In case it matters - I use Xiaomi RedMi 3s, Android 6.0.1, MIUI 9.2.2.
I'd rather not have to root my device in order to do this. If you think I must, please explain why.

You can try APK updater , also available on F-droid ( if you add  Izzy's repo) and
is meant for cases like yours where you are not using Play store.

Update sources
  At the moment four sources are supported:

APKMirror
Google Play
APKPure
Uptodown

You can schedule daily or weekly updates, time of update and update on startup
Edit: It requires root permissions to update all. You can download the updates for apps you want to update by ignore others, followed by clicking the blue circle icon and install them.
You would need to give permissions to install from external sources. In screenshot below , I updated a single app "aSpotcat" which shows "installed" and other apps showing "Install"
Not an ideal solution for auto updates since it requires manual intervention if device is not rooted

I just searched on F-Droid using the app and it doesn't seem to be available... weird. But I did get it from the GitHub repo. Also - APKUpdater's settings say that automatic updates require root privileges.

Finally - this app doesn't even seem to have a "install all updates" button, nor an "install single update" button. Will it actually install them anytime?

For me, after I click the blue button it just has a list of updates, and doesn't seem to install them.


text:
How to clear space on your internal storage, other than the trivial measures?
After 3.5 years of use, my Android  device (a Xiaomi RedMi 3S) has its internal storage full almost to capacity. I can run its cleaning routine, I can remove photos I snapped and music files I may have stored on it - but over time, more files beyond just that seem to add up. Using the system settings cleaner - same thing: It helps somewhat, but over time, stuff accumulates that it doesn't clean.
I would like, or rather, I need, to remove more data. To do so, I need to be able to differentiate between apps themselves, their reproducible data, their logs/junk leftovers, and the history of interactions, messages and other artifacts due to use. I also need to know what can be deleted and what requires some app-specific deletion facilities.
Obviously I'm not asking for a long list of all of this information for every app; but I would like your advice on how to gather such information. Alternatively - other courses of action for clearing up space which I might not have thought about (Maybe - migration of data to my SD card?)
Note: In case it matters, my Settings | Storage screen says:

Apps & app data: 13.37 GB
Pictures, Videos: 1.94 GB <- Where are those hiding? :-(
Audio: 4.72 MB
Cached data: 539.65 MB <- After running the cleaner
Other files: 2.86 GB
System Storage: 6.24 GB

How disk space is used on Android device? and Where Android apps store data? and How to free Internal Storage by moving data or using symlink / bind-mount with Adoptable Storage? should answer your question.

continuing: What can I do to manage my phone's internal storage? // How can I deal with “Low on Space” messages on my Android? // our insufficient-memory tag wiki


text:
Migrating my data to a new MIUI Android phone
I'm switching from a Xiaomi RedMi 3S phone (Android 6.0.1) to a MI 9 SE which I just got. None of the phones are rooted. I don't have a Google account, nor a "Xiaomi account" -  but like any phone user, I have my contacts, history of phone calls, SMS messages, and conversation on various apps, and more generally a bunch of app data.
I would like to transfer, or back-up-and-then-"restore", as much of this data as possible; with as little work as possible. Specifically, I'm hoping to be able to back up multiple things at once, or with one tool / method, rather than looking for app-specific solutions for each and every app. But - I don't want to involve Google or Xiaomi in any of this.
What would you suggest?
Note:

I'm perfectly willing to do command-line work or adapt a script if that helps.
If a reasonable solution requires rooting one or both of the phones, it's a viable answer, but please explain why that's necessary (as, obviously, I've refrained from doing that so far).

I don't think you are gonna get something better than what's already discussed: [backup], [restore]. The second highly voted question here on Android SE: How to fully backup non-rooted devices?

@IrfanLatif: Saying "you should do a backup, then a restore", with those links, is a decent answer to this question AFAIAC.

@IrfanLatif: Also, the answer you linked to says: "This solution will not back up and restore contact, SMS or calendar information"

@einpoklum The answer you got is because of the restrictions you made. Backup on Android requires special permissions, hence on an unrooted device only system apps can do a "real backup". Therefore the only "all-in-one" solution in your case is a backup app from Xiaomi like the "Mi Mover app" (this app seems to work cloud-less, local data transfer only).

@Robert: So, you're saying that if I am willing to root my older device, I could do something more effective? Or do I need root on both devices?

@einpoklum Unfortunately apps that don't allow backup (e.g. via adb) can't be restored without root. Thus for a full backup both devices have to be rooted. But I am not sure how rooted backup apps handle the AndroidKeyStore. This is a central service that stores cryptographic keys on behalf of the apps. For some apps the only really working backup is the app-specific backup/restore provided by the apps itself.

@Robert: So, is it "worth it" to root my device just for this purpose? Or - how many is "some"?

@einpoklum In my opinion not. But the question is irrelevant in any way because in the process of rooting the device all user data is deleted for security reasons. Hence if your old phone is not rooted yet a backup using root is just impossible. And which apps can't be fully restored using root+backup depends on the apps you use. AFAIK a popular app that uses AndroidKeyStore is e.g. Signal. Other are mentioned in this issue: https://github.com/machiav3lli/oandbackupx/issues/96


text:
No USB debugging on Lenovo Tab 7 Essential
My Lenovo Tab 7 Essential (TB-73041, Android 7) doesn't have the USB debugging option.

Can anyone help me?

You can ask me to take any screenshot


text:
Force Google Photos to upload or sync photos when connected to WiFi even if the app is not open
Google Photos app has a cloud sync feature. However, based on observation, the photos are only synced when the user opens the app.
How to force Google Photos to upload photos when connected to WiFi even if the app is not open?


text:
Delete all files or reset phone automatically if I don't use my phone for several days
I want to set a time limit so that if I don't use my phone within that time limit, then it will delete/reset my phone data (everything).
Moreover, if I use/unlock the phone within that time, then the counter will start from the beginning.
Is it possible to do this?

Not sure, but check with Tasker ?

Factory reset would need root access, or a device admin app with delete user data feature.


text:
Keep/retain a syslog at lowest level possible even after a restart
Over the last several days, my phone suddenly started giving me a problem. It gets into a restart cycle - there is no pattern of when this problem occurs. It's very random, also the number of restarts in each instance is variable.
I did factory reset twice (including cache partition clear) and hard reset (from recovery menu)
Now I see some reduction in the problem, but it's not completely gone. It's my gut feeling it's a software issue.
Is there any way to keep debugger logs on at the sys level so that next time a problem happens and after a restart, I might get some clues?

Hi, questions directly asking for app recommendations are off-topic here, so I reworded it to make it acceptable. Otherwise, you might be interested in our sister site Software Recommendations Stack Exchange.

See last_kmsg / pstore and persistent logcat.


text:
Read input from stdin when using `pm install`
I would like to install an application using pm install but not provide the APK path and rather provide application data using stdin as shown in the documentation below:
install [-rtfdgw] [-i PACKAGE] [--user USER_ID|all|current]
       [-p INHERIT_PACKAGE] [--install-location 0/1/2]
       [--install-reason 0/1/2/3/4] [--originating-uri URI]
       [--referrer URI] [--abi ABI_NAME] [--force-sdk]
       [--preload] [--instant] [--full] [--dont-kill]
       [--enable-rollback]
       [--force-uuid internal|UUID] [--pkg PACKAGE] [-S BYTES]
       [--apex] [--wait TIMEOUT]
       [PATH [SPLIT...]|-]
    Install an application.  Must provide the apk data to install, either as
    file path(s) or '-' to read from stdin.  Options are:
      -R: disallow replacement of existing application
      -t: allow test packages
      -i: specify package name of installer owning the app
      -f: install application on internal flash
      -d: allow version code downgrade (debuggable packages only)
      -p: partial application install (new split on top of existing pkg)
      -g: grant all runtime permissions
      -S: size in bytes of package, required for stdin
      --user: install under the given user.
      --dont-kill: installing a new feature split, don't kill running app
      --restrict-permissions: don't whitelist restricted permissions at install
      --originating-uri: set URI where app was downloaded from
      --referrer: set URI that instigated the install of the app
      --pkg: specify expected package name of app being installed
      --abi: override the default ABI of the platform
      --instant: cause the app to be installed as an ephemeral install app
      --full: cause the app to be installed as a non-ephemeral full app
      --install-location: force the install location:
          0=auto, 1=internal only, 2=prefer external
      --install-reason: indicates why the app is being installed:
          0=unknown, 1=admin policy, 2=device restore,
          3=device setup, 4=user request
      --force-uuid: force install on to disk volume with given UUID
      --apex: install an .apex file, not an .apk
      --wait: when performing staged install, wait TIMEOUT milliseconds
          for pre-reboot verification to complete. If TIMEOUT is not
          specified it will wait for 60000 milliseconds.

However, I did not understand how to exactly provide an option to use stdin. I have tried:

pm install -
pm install '-'
pm install "-"

However, it does not prompt me for input using stdin but instead gives this error:
java.lang.IllegalArgumentException: Unknown option -
        at com.android.server.pm.PackageManagerShellCommand.makeInstallParams(PackageManagerShellCommand.java:2921)
        at com.android.server.pm.PackageManagerShellCommand.runInstall(PackageManagerShellCommand.java:1258)
        at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:194)
        at android.os.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:98)
        at android.os.ShellCommand.exec(ShellCommand.java:44)
        at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:26636)
        at android.os.Binder.shellCommand(Binder.java:965)
        at android.os.Binder.onTransact(Binder.java:839)
        at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:5206)
        at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:5281)
        at android.os.Binder.execTransactInternal(Binder.java:1195)
        at android.os.Binder.execTransact(Binder.java:1159)

What am I doing wrong?

Have you seen in the help text that you need to specify the size using -S parameter when using stdin?


text:
Chrome removed from launcher after update
I run EMUI 9.1, which completely supports Google Play Services (bought it before the ban). However, I used to update Chrome normally, but starting with version 91.xxx, it just updates fine, but the app icon is removed from the launcher, and can't start it.
Any solution? or I have to quit Chrome?

Are you using the stock launcher? Have you tried using a 3rd-party launcher? Or otherwise, uninstall and reinstall Chrome?

I tried stock launcher, and 3rd party launchers as well. Even trying to open a link won't give Chrome as an option although it is shown in installed apps list in system settings. I also tried both clearing data and disabling re-updating chrome. Nothing worked.

If it is listed in Settings->Apps & notifications, try setting it as Browser app.

Tried so. No luck.