text:
Twitter badge wont go away
On the Twitter icon (both in my home screen and in my app list) I can see a badge with a "4", but no matter what I do, that badge will not go away, no matter what I do. All my notifications and mentions have been cleared!
What can I do to fix it?
INFO:
OnePlus 5T
Android 9
OxygenOS 9.0.9
Home screen App: [Evie launcher][1]

These may be unread tweets outside the limiting factor of the phone app, which IIRC is about 200. Does it go away if you bring up a browser and scroll farther into the past to assure the system older items are all read? You may have to go so far into the past where this problem first occurred, 1 day, 1 week, 1 month, etc.

I cant review all the 200 latest tweets... I need a way to mark them as read

Reddit posts suggest this may be because of multiple account usage on the same device. Is this the case?

No it's not the case

Notification badges will show counts for multiple types of notifications, which might be displayed in various places. Try long-pressing the icon with the notification badge; this should bring up a context menu that may list additional notices. You can swipe to clear individual notices. You might also see a "clear badge" command to clear all notifications.
If that doesn't work, try clearing the app cache:

Open the settings for the app:

Fast way to get to app settings: long-press the app icon and tap "ⓘ".
If there is no "ⓘ":

Open Settings
Go to App settings (the exact location varies). Make sure "All apps" or "Installed apps" is listed.
Scroll down to & tap Twitter.

Tap "Storage"
Tap "Clear cache"

Doesn't work! Cache cleared yet badge remains.
Unread notification count badge is off!


text:
How to safely remove, disable, freeze system apps on rooted device?
How to safely remove, disable, freeze system apps on rooted device (Xiaomi Mi9)?
I tried doing it old school on my Mi9 but after removing just absolute bloatware system doesn't boot, had to reinstall stock via fastboot (no biggie but I'd like to avoid that in future ;)

Welcome to Android Enthusiasts! Have you seen our bloatware tag wiki?

There is no safeway with what you are doing unless your OEM provides the source code of the Android your device is running and provided you can make sense out of it. All you can do is to take precautionary measure of making a backup using a custom recovery to fall back to when things go south.

Or to put it simply: some system apps are safe to remove, but the rest are necessary. GUI apps are usually safe to remove, but non-GUI apps (background services, etc.) are usually not.

source: Stack Exchange

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

sort: votes


text:
Programmatically add wifi networks on Android
I have a list of about 100 WiFi SSIDs and passwords that I've extracted from my old phone and I want to add them to the new phone that runs Android 10 and I couldn't find any useful information on the net as everything seems outdated and not working.
A bit about my phone: it's a OnePlus 7 with OxygenOS 10.0.1, rooted with TWRP and Magisk. The wifi networks come from an old OnePlus One with Cyanogenmod wich is not rooted. I obtained the passwords following https://www.reddit.com/r/Android/comments/86zkzf/restoring_wifi_passwords_from_old_device/
The closest thing I've found is this: https://github.com/steinwurf/adb-join-wifi but it works only one network at the time and it doesn't work very well, often passwords aren't added and I have problem escaping the SSID and passwords.
I've also tried to look for wpa_supplicant.conf but apparently it's not used anymore, instead I've found a file called WifiConfigStore.xml but I'm not sure if it can be edited manually or it needs a program, I tried to use wpa_cli but I get an error at startup, I looked for apps but nothing like I need.
I believe the way to go is through WifiConfigStore.xml but its format looks non trivial so that I'm not confident to update it manually plus there's the change it's managed by a service and any change I make will be erased.
How can I add programmatically my networks? Is there an adb command, a file I could edit on the phone or an app that can help me with this?

Is your device rooted?

Yes it is rooted. I've updated the post

Do you access to the old phone?

Yes but the old phone is not rooted. I discovered the wifi passwords following https://www.reddit.com/r/Android/comments/86zkzf/restoring_wifi_passwords_from_old_device/

Your best chance is to copy WifiConfigStore.xml from old phone to new phone.

Have you tried Google's backup service, which can migrate such data like WiFi SSIDs and network credentials?

No, I havent tried Google backup for wifi. Can Android 6 do it? (Meanwhile I'm searching myself...)

I've also had the same problem with losing all WiFi networks when upgrading LineageOS, so I've written a tool which will convert your old wpa_supplicant.conf to new WifiConfigStore.xml (and I'm not using Google accounts or other "upload all my stuff to some cloud" privacy nightmares)
You can find it here: https://github.com/mnalis/android-wifi-upgrade
Even with just SSID/passwords list and without original wpa_supplicant.conf file, file format for WifiConfigStore.xml is not really complex (it is just very verbose). With minimal programming you can use template in my code used for filling it to replace $SSID and other variables in order to generate it from your list).
Note that it will require root (or recovery rom with full adb or filemanager access) on your new android device in order to actually upload newly created WifiConfigStore.xml to the phone.

Thank you so much! I didn't want to spend the time myself to learn that format :D

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


text:
Do permissions have to be declared in the manifest for an app to have the access they provide?
I was using Universal Copy for a while to be able to copy text from fields that are not normally able to be selected, but due to it being able to see all contents on the screen when running, I would disable the it in accessibility settings until needed, which was a pain. I found Copycat, which does the same thing but with only one permission (run at startup) declared, and it states the following:

This app does not use any internet connection at all, So it never syncs any of your saved data anywhere. You can confirm it yourself by checking the app permissions. Your data is safe in your device.

On the surface, this seems great, since it appears there's no concern about giving it the access involved with the accessibility service. However, I know that Android permissions aren't so well-defined, unfortunately, and that if an app has any permission in a category, it has all permissions in that category. Since the "run at startup" permission is in the "Other" category, which is also where the internet permissions are located, it would seem that it would have that access, even though it doesn't specifically request it.
So my question is, is that true, or does an app have to declare a permission in its manifest in order to be able to use it, and does that declaration always mean that permission will show when viewing an app's permissions in the Play Store? IOW, is Copycat truly safe, or could it potentially still be sending information, and the developer is either misguided, which wouldn't exactly be promising, or outright lying, which would clearly be bad? I emailed them a few weeks ago but have not received a response.
P.S. I wasn't sure if this should go on Stack Overflow, since it relates to programming, or not, since it's not related to any specific code.

Android throws an exception error when a feature is requested by an app for which it has no requisite permission declared in its manifest. That said, an update can easily add the Internet permission and since that permission falls in the other category the user is never notified of it, even when sideloading the update.

If I'm understanding you correctly, you're saying since it doesn't declare internet permissions in the manifest (based on the fact they don't show under the permission details on the Play Store page), it can't use them even tho they're in the same category of the one it does declare/request, but it can add it at any time without me being warned b/c it's in the same category? If that's the case, I always check the permissions to see if any new ones have been added before updating apps, so that wouldn't be an issue.

Android permissions are classified as normal, dangerous, signature, signatureorsystem. There is another concept called permission  groups and any permission from any classification can be into a group. What you are referring to as a category is called a permission   group technically. If you grant one permission of a group, the system would automatically grant the rest of the permissions from that group, if the app requests them, without seeking user approval. Again, this is limited to a group, so just because an app can access a normal permission doesn't mean it can access all normal....

...permissions unless they are all part of a single permission group. An app must declare all the permissions it wants to access in its manifest, regardless they are into or outside a permission group.

To supplement @Firelord's comments, it's possible to grant only desired permissions from a permission group using command line tool pm. Also if you have a rooted device, you can trick Android to grant permissions not declared in Manifest (at least up till Android 9): https://android.stackexchange.com/a/217522/218526

@IrfanLatif - that brings up another question: can an app with su on a rooted device do anything, regardless of declared permissions, or is it still limited to those permissions it requests?

@vertigo obviously with true root privileges, apps can do almost anything which can be done through CLI.

A basic Android application has no permissions associated with it by default, meaning it cannot do anything that would adversely impact the user experience or any data on the device. To make use of protected features of the device, you must include in your AndroidManifest.xml one or more  tags declaring the permissions that your application needs. At application install time, permissions requested by the application are granted to it by the package installer, based on checks against the signatures of the applications declaring those permissions and/or interaction with the user. No checks with the user are done while an application is running; the app is either granted a particular permission when installed, and can use that feature as desired, or the permission is not granted and any attempt to use the feature fails without prompting the user.
Read more here https://developer.android.com/guide/topics/permissions/overview

So to clarify, it only gets the permissions it specifically requests in the manifest, which all of those would show under the permissions info on the Play Store page, and can NOT do things that require other permissions, even if those are in the same category of the one(s) it requests? The link you provided seems to indicate that, I just want to be sure. It's unfortunate Google isn't more clear and upfront about all this.

Absolutely. An Application only uses permissions provided in the manifest and not any other.


text:
Android-x86 8.1 in VMWare Workstation doesn't show GUI
I installed android-x86-8.1-r2.iso 64 bit version in VMWare Workstation 15.5.0 under Win10x64 1903.
It starts into the linux command line prompt, and I tried Alt+Fx, there is no GUI. I tried all four boot menu(normal/debug/debug nomodeset/debug VIDEO=LVDS...), all the same.

The solution is like @xavier_fakerat's answer in https://android.stackexchange.com/questions/171562/android-6-0-x86-64-bit-boot-stuck-at-rootx86-64-on-windows-hyper-v

To switch to GUI, please ensure that you have 3D acceleration turned on in VMWare Machine Settings.
If you still cannot see the GUI, try Alt+F7

Now the command line promt will continue to become a black screen with a non-flashing cursor, Alt+Fx has no response. What possiblly next?

Have you ensured that your virtual machine has been allotted adequate  graphics memory?

4GB RAM with 1GB GMEM for the VM, not working. Set the VDisplay to 1024*768 not working too. 4K60 monitor driven by NV1650 GPU.

Try running 'startx' in terminal.

It turns out that it not the GPU problem, it is still the menu.lst problem which I used before for Andorid-x86 4.2

I have also encountered this problem but managed to solve it by selecting the graphics card manually in VMWare mahcine settings.


text:
SDK versions in aapt command output
Update:
- My first question was answered here, thanks to Andrew's comment.
Quote:

If you specify API level requirements directly in your app's manifest
  file, the corresponding settings in the build files will override the
  settings in the manifest file

I was able to retrieve minSdkVersion and targetSdkVersion by aapt list. In this example, after converting from hex, they are 16 and 26, respectively. I am aware of minSdkVersion and targetSdkVersion which are usually declared in AndroidManifest.xml file. However, I have decompiled the APK file using apktool and checked the AndroidManifest.xml file but  could not see any declaration of targetSdkVersion or minSdkVersion either.
Was that because apktool did not decompile everything or these elements can be declared in other place of the APK instead of the manifest file? (my first question)
aapt list -a  0348e77633b7831d1d56cd2f45023bd4.apk | grep -i sdkversion
A: android:minSdkVersion(0x0101020c)=(type 0x10)0x10
A: android:targetSdkVersion(0x01010270)=(type 0x10)0x1a
...

By issuing aapt d badging. There are sdkVersion:'9' and targetSdkVersion:'26' in the output.
aapt d badging 0348e77633b7831d1d56cd2f45023bd4.apk |head
package: name='com.theborneopost.mobileapp' versionCode='60001' versionName='6.0.1' platformBuildVersionName=''
sdkVersion:'16'
targetSdkVersion:'26'
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.ACCESS_NETWORK_STATE'
...

So, are there any differences between targetSdkVersion in aapt and apktool output? Assume that targetSdkVersion is available in AndroidManifest.xml (my second question)
What is sdkVersion in aapt d badging output? (my third question)
Disclaimer: due to limitations, I could not add appropriate tags like aapt or sdkversion to the post.

Some insights on this on Stack Overflow

Andrew, that definitely helps. I will modify my question based on it


text:
Why can't Android device use Google service without permission?
Now Google doesn't allow HuaWei to ship their services with the phone and the install-after-shipment route is blocked too.
I think Google apps like Map/Gmail/Search/Youtube/Drive/Docs/Play/Assistant are all standard Android applications that can be installed on any Android compatible (no need to be certificated) devices.
Does the above fact means that Google's Android apps will use some DRM like mechanism to first verify whether the device is certificated or it won't run? If so, does this apply to all Google Android apps, or only some apps?

First the problem is mainly a legal problem, not a technical problem: Huawei is not allowed to install the Google apps.
Second the Google apps you mention are only the user visible part - similar to an iceberg there is a large hidden part you don't directly see:
The Google Play Services and it's, libraries.
This is not a normal "app" as it is running as a system app and therefore can't be installed by a user. And it is required by each app you mentioned and even more. Most of the regular apps you find in Google Play Store also make use of this service, e.g. for receiving push notifications. Therefore the impact of not having Google apps pre-installed on a device is larger than you expect.
And even if you manage to install the Google apps on a device Google will recognize that this device is not allowed to use Google apps: Every device and every firmware version is certified by Google. In that process Google creates some sort of fingerprint that allows to identify each device.
As an end user you can ask Google for an exception for your device by registering it's Google Services Framework ID at Google. This will then allow you to use Google apps until you do a factory reset.

Why does Android x86 contains some Google apps?

@jw_ Which apps are you talking about? Are you sure those are "Google apps" and not apps that are part of the Android OpenSource Project (AOSP)?

With Android x86 8.1r2, there are Gmail/Chrome/Play Store/Voice Search/Google.

@jw_ Well then they have integrated the apps with or without permission of Google. Most likely they have the permission because Google nowadays uses their legal department to prevent unauthorized use (that is e.g. the reason why there are no official CyanogenMod/LineageOS releases with Google apps)


text:
Is it possible to restore an ASUS Backup on an emulator?
I had created a backup file using Asus Backup app Link Playstore from my Asus ZenFone (Android 5.1).
I have lost my Asus phone and I'd like to restore the backup into an emulator.

Does Genymotion have any ASUS VM?
Is there any Emulator that support Asus Backup App?
Are there ASUS Zenfone Emulators?
Can I, in any way use Android Studio to restore my Backup created using ASUS Backup App?
Asus Provide System file from there official site. Can I flash that(Custom Rom) into any Emulator?

Is there any way I can install Asus Backup app in Laptop and restore the Backup I have made?
Is there anything that I can try?

Playstore link gives error in desktop,but opens correctly when choose open with playstore app in android

The app description is funny: "ASUS Backup will NOT backup the data stored in the internal storage" - if it does not backup the internal storage what else does it backup? Anyway I would first check the backup file itself if it is a known format. Use an hex editor to view it and test to with various tools like 7zip.

Means It does not backup pictures snd other suffs Example: If you backup Galley app, It doesnt backup images,videos etc... but it does backup Gallery app and App data like app settings etc..

extension,, format is .abu1

I think ASUS just just the wrong term because "internal storage" means normally all the data on your internal flash, this includes all apps, all app private data + the internal sdcard folder with music/pictures/videos. If the description would be correct the only part ASUS backup could backup would be data on the external sd-card.

The description is wrong.. I have used that app many times is past.. It does backup App Data

@Robert Can I do something with android studio

Android Studio is for developing apps, not reading Asus backup files. If you are a programmer you can reverse engineer the Asus backup app e.g. using Jadx or apktool. Additionally you can reverse-engineer the backup files you have, but that also requires a bit of experience.

@Robert Is there any way around by flashing custom rom on an emulator..see 5th point..

If such a custom ROM would exists, most likely yes. However custom ROMs for emulators are pretty rare as to find one specific for the old Asus device you are searching - unlikely. IMHO if the backup is really of that value to you you should buy a used Asus zenfone. Or try to to sind a smartphone test farm that has Zenphones (a test farm allows to remotely access a physical device for a limited time).

@Robert https://android.stackexchange.com/questions/218061/flash-custom-rom-on-android-emulator


text:
ID a caller regardless of custom number prefix and/or suffix
Where I'm living right now people can call you with reverse charges by adding 99 prefix to the call.
The problem if that the received call ID appears with 99 as prefix and suffix, and unless you know their number you have no way of knowing who's calling.
Example:

Let's say John's number is 5 123 4567 and he calls me with reverse charges. My phone caller ID will then display that 995123456799 is calling.

What I would like to do is to get the phone to both tell me it is a reverse charge call and who is the person calling.
Is there a way to do this other than creating an extra contact per person named "Reverse Contact"? (e.g. "Reverse John")

Heard something like this for the first time. Have you checked for any local app that does this thing for you?

It's possible to accomplish it using automation apps. I have used Macrodroid.

In the Triggers tab, in "Call/SMS" section, select "Call Incoming", then "Select Contact(s)". Choose "{Any Contact]", "[Any Number]", "[Non Coontact]" and "Unknown Caller". Click OK.
In the Actions tab, in "Macrodroid Specific" section, click on "Set Variable", then "[New Variable]". Click OK. Enter the variable name, set its type to "String". Keep it local then click OK.
In the Actions tab, in "Macrodroid Specific" section, click on "Text Manipulation". then "Extract Text" followed by OK. For the "Source text", click the 3-dot and select "Call number", then click OK. For "Text to match (regex)", enter ^99(.+)99$. Choose "Group 1", then for "Save variable to", select the variable create during step 1. Click OK.
Save the macro and give it a name.
Edit the macro. Click the "+" on the Actions tab. In "Conditions/Loop" section, select "If clause". Click the "+" next to conditions, then in "Macrodroid Specific" section, select "Macrodroid variable". Select the variable created in step 1, choose "Contains". Enter \w+ and enable "Enable regular expression matching". Click OK.
In the Actions tab, in "Notification" section, click on "Display Dialog". Enter the dialog title. For the dialog text, press the 3-dot and select the variable created during step 1. Click OK.
On the Actions tab, click the up and down arrows and move the Display Dialog created in step 6 between the "If" and "End If".
Save the macro. It will look like the image below.

Explanation: When you receive a call, the number will be stored in the variable. it will then be checked if it starts and ends with 99 using the regular expression ^99(.+)99$. If yes, the number without the 99s ( the (.+) part of the regex) is extracted and displayed in a dialog box. If no, then no dialog is displayed.
See Regular Expression

Thanks for answering, and sorry for not seeing it in so long. I had no internet access for a while and then I forgot about this.
The answer you gave does well at extracting the number, but it doesn't tell me which of my contacts, if any, is calling. It only displays the number without the surrounding 99's.


text:
Help with compromised phone Android 7.0
I want to ask if there's any way I can get rid of whatever's allowing my phone to be unlocked easily without any resetting or Google account?
My phone has been messed with and now it keeps getting unlocked no matter what I try, whether I put a lock-screen or change my Google password.
I don't think they would use spyware because it would cost money, but maybe they would but I think they did some configurations and/or exploited something in my phone for it to be unlocked easily.
Can anyone help me know what it is and tell me on how to get rid of it? Thanks
EDIT: My phone keeps getting unlocked because it's compromised which is why the lockscreen doesn't work as it should or it just keeps getting bypassed.

https://android.stackexchange.com/questions/217872

https://android.stackexchange.com/questions/217890/help-with-compromised-phone-android-7-0


text:
How can I install CWM on Android-x86?
I wonder how can I install CWM/TWRP to Android-x86 for rooting, flashing, debugging etc. ? Does anyone know how to do it?

Android-x86 comes rooted. What debugging are you trying? USB Debugging is available and works well.

I am using a VM - Also I need to flash ZIPs too.


text:
Do Firebase analytics work without Gapps?
Out of curiosity, if a user installs Android without Google Apps or APIs and then installs an app that includes Firebase analytics, will the analytics function? Will the app still send something to Firebase, or will it open an empty connection, or will communication be cut off?
To word this another way, is it the Google apps (Play Services, service frameworks, etc.) that open a connection to Firebase, or is it the app itself that does so? Or, does this vary from app to app?

As evident from these FAQs:

I don't want to use other Firebase products (such as Analytics).

Google Analytics for Firebase is enabled by default to provide the full range of FCM features. However, it can be disabled. The FCM SDK's only hard dependency is Google Play Services (which was also a dependency in GCM).

The code which creates connection to Firebase servers is part of Play Services. Apps make use of Google APIs to use that code. Without GApps none of Google Mobile Services will work and the apps heavily depending on those will refuse to start or may keep crashing. Developers can explain better.
RELATED:

What is the exact functionality of Google Play Services & Google Services Framework (gapps)?
How do certain apps show new notifications when internet access is restricted to them?

As an Android developer, I can confirm this: the user may only need to sideload new-ish Google Play Services to make Firebase works (because GPS SDK will also check the GPS version on the device and will not work with old version).


text:
change root location to /system/xbin android
i have a root android device, but su is located on /
So, i wanna change my su to /system/xbin or /system/bin. but i can't change su while i'm using it.
I also need to change 2 files that are located in / and /sbin
However, every time I change them android returns the previous files after reboot.

I am also facing the same problem.
I got a workaround that changes the installation scripts not to save the su image to / data, but to / system, and by modifying the su startup script to mount su into / system as well. However this method only works by installing su via recovery (using TWRP_3.0.2).
I am still looking for an alternative to do within the system
I changed the scripts from SuperSU-v2.82 tool
https://forum.xda-developers.com/apps/supersu


text:
Why does Play Store on Android Wear claim ten updates when there are only two?
My Ticwatch S2 notifies me when there are app updates available, which when tapped gives the option to update all or open (I have auto-update apps turned off). I picked open.

However, instead of the expected 10 pending updates, I'm only shown 2:

Note it shows 2 updates available (just barely visible at the top) and scrolling down just shows recently updated. When I checked each installed app individually, no other apps showed having an update (I'm not 100% the watch version of the Play Store does that, though).
This has been going on for a while. I've already tried:

Using "update all" instead of individually reviewing updates by hitting "open".
Clearing data for the Play Store, that cleared the list of recent updates and reset the settings for the Play Store back to defaults, but didn't solve the issue.

One thing I have noticed is that on the Play Store's main screen, it lists 8 apps on my phone that I don't have on my watch. Odd coincidence?

Not a coincidence. The Wear OS 2.x device's Play Store shows the pending updates both on the Wear device and the phone. This is because Wear OS 2.x allows standalone wear apps, and they can be installed/updated independently from the phone apps.
Thus, if the notification says "X new updates, Y updates total are pending", it means there are X independent Wear apps to update, but a total of Y apps both on Wear device and phone to update. Updating all from the Wear device will only affect the independent Wear apps, so the user still needs to use the phone's Play Store to update the apps on the phone.
From Android Developers - Package and distribute Wear apps

Distribution to Wear 2.0 watches
On devices running Wear 2.0, when a user installs a phone app that has an associated watch app (either an embedded APK or an APK uploaded via the Play Console), the user gets a watch notification about the available watch app. Tapping the notification opens the watch Play Store, giving the user the option to install the watch app.
Additionally:

[...]
When you upload a watch APK via the Play Console, you can update your Wear APK independently from the phone APK, and users receive updates via the watch Play Store.
[...]

(Emphasis mine)

Previously on Wear OS 1.x (and before, i.e. Android Wear), wear apps are embedded in the phone apps. To update the wear apps, the user has to update the phone apps first, then the Play Store will install the embedded wear apps from the phone to the Wear device.
Also from the same article,

Distribution to Wear 1.x and 2.0 watches
The standard distribution model for Wear 1.x was embedding a watch app inside a phone app. [...]. When a user installs your phone app, if you have a compatible Wear app in the Play Store, it will automatically be installed on Wear 1.0 watches.

Additional note: Ticwatch S2 runs on Wear OS 2.2.

Right now the notification is 1 new update, 9 updates total (on the watch). Just checked on the phone, there are 5 there. When I opened the play store (on the watch), there are actually 0. ☹ (BTW: The phone can produce a similar notification, on the phone, in which case "new" means since the last notification and "total" is higher if I've been holding off installing an update — so I had expected the similar notification on the watch has similar meaning.)

@derobert looks like you've updated some of the apps on phone and Wear device? Perhaps the notification is already stalled, try to clear the notification and wait for the new notification (if applicable)? I'm afraid I can't help further since the Wear OS
and Google Play Store help centers don't provide much info either...

I'll keep an eye out for the timestamp and see if that explains it. Good idea to check that.


text:
What are the pros and cons of running LineageOS?
Specifically, do Google apps (Maps, Play store) and third-party apps (Skype, Viber, etc.) work as reliably with it as they would with, say, Android One?
Or is it more of a hit-and-miss situation?

Pros:

you can run latest android OS on your device even after your manufacturer stops security patch/ os upgrades.

Experience pure stock android.

Nowadays builds are mostly stable with less bugs.
You don't have any bloatware on your device.

(Download from sites like xda, and official builds are best, for which developers release nightly, after bug removal.)

By rooting, you can take over control on everything on your device.

Cons:

If the developer stop support, you need to switch to another build (pixel experience, havoc etc)

You need to unlock bootloader which is a security issue.

Rooting also a security issue, some banking apps doesn't work on rooted device (This can be solved using MagiskHide method from Magisk Manager).


text:
Can disk quotas be disabled?
$ cp a b
Cannot write to 'b' (Quota exceeded).
# df -h .
Filesystem     Size  Used  Avail Use% Mounted on
/data/media    110G  102G  7.8G  93%  /storage/emulated

I can copy the file perfectly fine in the app's filesystem so it isn't a hardware failure
/dev/block/dm-2 /data

Android introduced filesystem quotas in Android 8 to get Faster Storage Statistics i.e. to make auditing and enforcing space usage limits to apps easy:

"This quota feature also improves system stability by preventing any single app from using more than 90% of disk space or 50% of inodes."

Particular usage is to clear apps' cached data files as the storage runs short and apps exceed their limits. OS calculates these limits based on different criteria and saves to file /data/system/cachequota.xml.
Disk Quotas is Linux kernel's feature which can be controlled from userspace using tools like quota-tools. They also work on Android:
~# quota -s -u 2000
Disk quotas for user #2000 (uid 2000):
     Filesystem   space   quota   limit   grace   files   quota   limit   grace
     /dev/loop1      4K  20480K  20480K               1       0       0

~# dd if=/dev/zero of=mountpoint/filler status=none bs=1M count=21
dd: error writing 'test/filler': Quota exceeded

However on Android "The quota feature is part of the default implementation of installd" - the daemon which handles (un)installation of apps at back end. If quota option is found in fstab file for userdata partition, quota mount options are enabled when init mounts the partition on boot. So in order to disable filesystem quota on Android, you need to remove quota option from fstab. See What is default “fstab” file in Android?
Simple approach is to delete unnecessary files the app is holding in storage. Or you can use a different app (with different UID) for copying as quotas are allotted on per UID basis.


text:
How to browse Google play store for Android TV without a ATV device?
Can we browse google play store for android TV on web? I know for example these two links but these are not comprehensive in any way!

List of apps (partial!)
List of games (partial!)

I don't have a ATV device (like Mi box , etc) and I need to browse the catalog.
UPDATE 1:
I set the user agent to a TV browser (Firefox for Fire TV in this link) and visited the store link, but no effect!
https://play.google.com/store/apps/

Please see the update @kirodge

Ok, changing the user agent doesn't seem to work (and that was what I actually meant when I wrote "http referrer") . I currently have no other idea. It seems that to get the same experience as on the ATV device you probably would need to edit build props (requires root and may break your device). By using privacy mode in a browser and just searching for "Android TV Games" in google play web store you can at least get a longer list https://play.google.com/store/search?q=android%20tv%20games&hl=en_US


text:
How to map keys in Genymotion?
I am using Genymotion to play Android games on Linux. But I can not play some games, as they have special control layout.
Do you know how to add keyboard mapping feature to Genymotion, like in other Android emulators for Windows such as Nox, Memu, BlueStack?


text:
Deleting multiple backed up photos
I am trying to un back up my photos from my Gmail account.  There are many and it would take a long time to go into each one and click on the trash icon. How can I select multiple photos to be sent to trash?  Every time I click an image it opens up and doesn't give me the option to delete lots at once by using SHIFT.  How do I send lots of photos to trash in one go?

If you are using Google Photos app, long-press on a photo. That would put a checkmark on that photo. Now single tap on as many photos as you want to select them. Afterwards, tap on the trash icon to delete them altogether.


text:
Phone not connecting in 4G
I have, since almost one year, a Xiaomi Redmi Note 6 Pro smartphone and never connected on 4G, in the tray bar there is always H or H+ (in the previous phone I had it was almost always on 4G). My  ISP is TIM and I set the APN to the recommended one but with no luck. I also set Prefer 4G from network settings but another time it didn't work.
How can I connect to 4G?

How old is your SIM card (old SIM cards don't support 4G). Are you aware that on some MNOs 4G is a special option that is not automatically included in every data plan? May be you have to change your contract and add this option additionally?

FrequencyCheck tells me that your phone is not compatible with the LTE bands used by TIM but check your model of the device on the website to double-check.

@Robert My sim card is less than one year old because I changed it for device compatibility. No, in the old phone it worked perfectly all the time, it doesn't have sense that it doesn't work on this one for this reason.

@CaldeiraG Oh I saw. I didn't know it couldn't support LTE, it's only two years old that model :( So I can't connect in 4G in any way?

So I searched deeper and I believe that if you have the Global version of RN6, it's supposed to have compatibility with TIM. I still recommend looking at the back of your phone, check your module there and search with it on the website. I do own a Redmi 5 Plus Global and it's compatible with TIM 4G.

If your phone doesn't have the LTE bands for TIM, there is no way you can connect in 4G.

@CaldeiraG Thank you


text:
Bluetooth headset overiding ringtones?
My Bluetooth headset (SoundBuds Rise) will play its own generic ringtone when it's connected to my phone (Moto Z2 Play). I just went through and gave a bunch of my contacts custom ringtones, so I don't have to pull my phone out to look at who is calling. Is there anyway to force my headset to use my ringtone instead of its?


text:
Does the use of Android One remove the risk of OEM spying?
China is forcing tourists to install text-stealing malware at its border.
Also, U.S. intelligence officials imply that Huawei, ZTE devices aren't safe for consumers (even in the West).
Some suggested avoiding Chinese phones:

Consider a scenario where you may use a Hauwei or KTE phone to have a
  conversation with a friend or a work colleague. It could be a
  discussion about a business deal, a programming project you’re working
  on, or important business meetings. You could inadvertently pass along
  proprietary information to a foreign government without even realizing
  it.
What global intelligence communities are hinting to the world is that
  there is enough evidence in their posession to warrant banning these
  phones from military bases and governments. Even if you don’t believe
  them, history has turned up enough wrongdoing by these companies to
  justify very real concern.
Avoiding phones made by Chinese manufacturers is a good start.

Assuming the accusers are correct, does the use of Android One, as is done by some Xiaomi phones, reduce the risk of OEM spying on you, or is Android One irrelevant here?
(There is a difference between trusting an American company, like Google, subject to US laws and regulations, and trusting a Chinese OEM)

Not at all. Android One makes it easy to get long term AOSP updates from Google. But after all device hardware and ROM is routed through OEMs, and they DO put a lot of stuff inside device. See /vendor partition on your device, those are all closed source binary blobs put by your OEM/SoC vendor. And then there are other firmware e.g. baseband processor (modem) which you never know what's doing in background, even when you think your device is powered off. And above all, Android One is a business deal between Google and OEM which makes sure every device has GApps; the legal way of spying.

@IrfanLatif Wikipedia says Google used to do the updates directly, but it's unclear how this is done now (The article on AO seems rather confusing)

Google might be updating AOSP directly, though it doesn't seems to be the case as discussed here. But the point is that Android != AOSP. See details of project Treble.

Unrelated to Android One, I believe I've heard about specialized Android phones to prevent this kind of privacy/spying threat (or whatever it is). Strange that I couldn't search and find it anymore...

So do you mean there are no laws and regulations (related to usage of technology) in China or those aren't trustworthy?

@IrfanLatif see the update (since you seem to be unaware)

The China one is a special case due to their law. However, the question seems to become more biased to China instead of global case?

@MaxB oh! That's an eye-opener. You seem to be aware of everything. But I wonder why you missed these: https://mythoughtsontechnologyandjamaica.blogspot.com/2015/03/NSA-CIA-smartphone-hack-Baseband-Processor.html - https://www.bbc.com/news/technology-39193008 - https://thehill.com/blogs/congress-blog/technology/249521-cisa-the-dirty-deal-between-google-and-the-nsa-that-no-one-is - https://www.tweaktown.com/news/57538/microsoft-gives-nsa-backdoor-complains-exploits/index.html - https://www.theguardian.com/us-news/2015/feb/23/nsa-director-defends-backdoors-into-technology-companies

The thing is you hear a lot of propaganda resonating around you against a country. Obviously when one is losing economic war, the frustration and anxiety is justified. But please be noted that there could be no difference between trusting an American company and a Chinese OEM for the whole world.

@IrfanLatif The US doesn't force you to install malware on your android phone, or go to prison if you refuse. You seem to be extremely biased here.

@MaxB you must be kidding, na? Did you read the first link I mentioned? NSA can remotely shut down your smartphone and use it to spy on you, according to ex-CIA and NSA contractor Edward Snowden as revealed in the article “How the NSA can 'turn on' your phone remotely”. What else a govt would want by putting a malware on a consumer's phone? Why would they do this by force when tech companies - in exchange for monetary or other benefits - are willing to let them do this to any Android/iPhone/Windows user? I'm sorry if I was unable to convey this simple thing.

-1: the question appears to be targeting Chinese practices, not recognizing that surveillance is not a Chinese problem only.

@IrfanLatif If the best source you come up with is "blogspot", I don't bother reading further. You seem to be very biased against America.

@MaxB come on man. Don't pose you are a newcomer to internet world. "CNN": “How the NSA can 'turn on' your phone remotely”: https://money.cnn.com/2014/06/06/technology/security/nsa-turn-on-phone/

@IrfanLatif Can you read? If and when the NSA can do it, it's a vuln. Not something the manufacturer intentionally put in at their request. Secondly, just because they "could" do it, doesn't mean they do. I'm getting tired of this. Your anti-American bias is obvious.

Sir I'm just overwhelmed by your sense of impartiality and logical reasoning based on solid facts.

AndroidOne can lower risk of spying due to vendor's negligence or non-systematic action (e.g., one employee adds some spying code without anyone else in the company knowing about that). The more modifications are there, the more places to inject some malicious modification and the more employees to care about.
You might argue that the vendor is just replacing the code from Google, so this is exchange of one potentially risky part for another part with the same risk. However, I would assume that the code from Google (especially the AOSP parts) get much more scrutiny both internally (within the vendor) and externally (by phone vendors and others).
When talking about some backdoors intentionally added (and probably approved by the management), AndroidOne cannot protect you. It might be harder to find a suitable place, but there always will be some:

There can be an additional app in AndroidOne. Nokia is known to add a controversial app for battery management. While this one is not known to be malicious, it shows that Android One can be less pure than you think.
The phone vendor can add some hardware-based backdoor.
The phone vendor can claim it is AndroidOne, while actually not fully being AndroidOne. This can be even obscured in some ways, so it is not noticable from the OTA update packages.

This makes sense, but I don't understand how Google can detect that the phone's been rooted, but it can not detect that the OS's been altered.

Google can detect root if you don't bother trying to hide it. Also, some apps need to use it, so you cannot hide root from all the apps. If the OS has been altered (especially altered by manufacturer), it can be virtually undetectable.

@MaxB @v6ak is right. You can't compare detecting the presence of /sbin/su binary or an alien magiskd process with detecting a modification to code where only kernel source is over 3 million lines. And why would Google detect that the OS is altered, OEMs are supposed to do alteration. Google only provides generic AOSP part, hardware-specific code is developed by respective vendors.

@IrfanLatif Well, with AndroidOne, OEMs are not supposed to do alternations, although they can provide additional apps. It is designed for some specific SoCs, so Google likely also provides drivers. But let's suppose they cannot add any additional apps, so Google can try to check it. The OEM technically can provide their own kernel that hides some processes. And if Google tried to read the kernel, it could provide them the original kernel. So, this is not going to work for an OEM that decides to break it…

@v6ak Google likely also provides drivers? Really? If by drivers you mean kernel, then yes, that can be true. Kernel is meant to be open-source. But what about the userspace HALs which interface with AOSP code? Are OEM/SoC vendors providing the source for those proprietary binary blobs to Google? If no, how is HIDL going to work without alteration to AOSP's reference implementations for hardware e.g. RIL? Including closed source code to AOSP should be considered alteration by the intellectual owner of that code, irrespective of who is practically doing the alteration.

@IrfanLatif I meant just that Google likely decides about all the drivers being used – their versions etc. It does not mean they are writing or even compiling them…

You could inadvertently pass along proprietary information to a foreign government without even realizing it.

This holds true when a person is using non-Chinese communication or computing devices as well. Just because western economies are also democratic countries do not mean that those democratically elected governments or their intelligence agencies do not engage in the activities the Chinese national government and the Chinese companies are alleged with. Here, try this food for thought.
If you get hold of the book Permanent Record, its author mentioned one obvious but highly uncomfortable point: the internet, the computing and communication hardwares, and the softwares upon which the world runs at large are mostly US centric (whether developed in the US or by companies from the US), so it is natural for US govt and its agencies to make use of this monopoly for ends that may not necessarily be in public interest.
Let this be clear that this aggressive anti-China stance in technological matters is not precisely because of Chinese intrusive activities in civil and military affairs of the US and its nationals (this has been going on for a decade or more), but because China had the audacity and showed the capacity and the will to buy leading chipset and communication device
 manufacturers of the US, and China -- a non-Western, non-democratic, non-NATO country -- further frustrated the US by beating it in developing, testing, and marketing the 5G (the next revolution in communications that would bring unimaginable amount of data -- currency for tech companies and billions of dollars to a 5G leader's economy). If there continues to be demand for Chinese 5G products (either by individual consumers for cellphones or by telecom operators for 5G communication and relevant equipments) in the US, its national security would continue to be undermined1 by China, so it is natural for the US to create this anti-China fear among its people and beyond.

Assuming the accusers are correct, does the use of Android One, as is done by some Xiaomi phones, reduce this risk, or is Android One irrelevant here?

If you do not have access to the source code of the software you are using;
If you cannot understand that source code in entirety;
If you do not have access to the blueprint (or whatever that is called) of the hardware you are using (including the software that is part of the hardware);
If you do not have the skills and the means to detect hardware vulnerabilities or backdoors;

than you cannot have absolute control over your device. You risk unwillingly giving away your private information to a party you may not even know. Everything than rests on trust (that you would not be harmed and the data not be collected involuntarily or misused) and the mitigating measures that you can undertake within the flexibility provided by the software and the hardware.
At last, if you want to stick with some western technological products, do it, but know that you are trusting one potential adversary with another. It is all the same if you are not from the western world.
1: FCC to vote to bar Huawei, ZTE from government subsidy program, sources say

+1 true........

It's like saying "Don't bother being afraid of cigarettes, because you can be killed by a freak lightening strike at any moment. None are safe! Don't delude yourself or others"

@MaxB I was not trying to be condescending  with my last sentence, and I apologize if it came out that way, but I am not a native English speaker so I am not good with articulation. Read my answer from the perspective of a middle eastern or a south Asian or an African. For them, it is all the same. As for the cigarettes analogy, this is not useful because some US or European products do give reasonable flexibility to take mitigative measures, but this hope is lost with Chinese ones.


text:
Is it possible to use 5Ghz OTG WiFi adapters on Android?
My phone is Xiaomi Redmi 6A. I cannot detect 5Ghz WiFi on my phone. Is there a way to use an external 5Ghz WiFi adapter(connected via OTG) to add 5Ghz WiFi capability? My phone is rooted, and I am ok to make modifications/ install drivers to support the adapter.

There are several videos on youtube showing how to do this with other products. Basically you need to be root to manually create the network interfaces, a prerequisite you have already, and then you would need the ARM source code for the device to make a kernel module (essentially the driver) which would be a but tougher. Even with that, other questions here, all unanswered, seem to show this is a much more complex task then it appears. Here is one example: https://android.stackexchange.com/questions/214579

Thanks. I cannot seem to find any videos on YouTube though, could you show me one?

https://lmgtfy.com/?q=USB+OTG+wifi+android&s=g


text:
How to fix: only official released binaries are allowed to be flashed(recovery) on device / FAIL! (Auth) on Odin3 v3.13?
I have Samsung S10 5G(Qualcomm) device. This device has unlocked bootloader but it is not rooted yet.
I am trying to learn Unpack-Modify-Pack the ROM images.
Currently, I have VZW stock ROM available for this device and I can flash it successfully using Odin3 v3.13.
After flashing this ROM, I have tried to modify system and recovery using tar, lz4, simg2img, mount, tune2fs and md5 tools available on my Ubuntu 18.
When I have tried to flash different tar files then the result is as following:
Success Attempts: If I will not modify anything and flash the Ap.tar containing any of the following file:

system.img.ext4.lz4
system.img.ext4
recovery.img.lz4
recovery.img

Fail Attempts: If I will just modify the init.rc file by writing a simple comment at the end of this file and flash the AP.tar containing any of the following file(which contain modified raw image at last level of its folder hierarchy):

system.img.ext4.lz4 which  contains a modified system.img.ext4.
system.img.ext4
recovery.img.lz4 which  contains a modified system.img.
recovery.img

When Odin3 v3.13 failed to flash the above modified files then it give below errors:

For AP.tar containing LZ4 file: FAIL! LZ4 is invalid

The device has no impact of this error and it stay in download mode.

For AP.tar containing ext4 or img file: FAIL! (Auth)

In this case the device display Only official released binaries are allowed to be flashed(recovery) or Only official released binaries are allowed to be flashed(system)

Please give your suggestions on:

This device is secure by Knox from Samsung. Is it causing this error?
If yes, is there any way to disable it in the VZW zip?
If no, what is the actual problem and how can I resolve it?

All Android firmware images are protected by a cryptographic signature. Any modification will cause the cryptographic signature to become invalid and therefore your device rejects the image installation. Only devices with unlocked bootloader (not every device can be unlocked) can install firmware images that are not properly signed.

My device has unlocked bootloader. So, Is still the cryptographic signature should be valid? If yes, can we add this after modifying the image file or the only Samsung can add this?

Only Samsung can sign an image. If unsigned images are not accepted your device is not unlocked. What did you do to unlock it?

Sorry for late reply. This device is unlocked by Samsung so I don't think they will cheat me. There must be some other reason. Perhaps they just unlocked the device but not turned off the Knox. Also, the device can be rooted by patching AP file by Magisk Manager so if they can patch it, I must be able to flash a simple change. What do you think?

modded Odin https://forum.xda-developers.com/showthread.php?t=3762572

With lz4 -B6 --content-size system.img.ext4 system.img.ext4.lz4 the Odin v3.13 is working fine without any patch. With Magisk patch FAIL! (Auth) errors disappear.

For LZ4 compression: lz4 -B6 --content-size system.img.ext4 system.img.ext4.lz4 command can be used to make a valid Odin Flashable file.
To Fix "FAIL! (Auth)", we need to truncate the vbmeta.img file and remove the signature from the boot.img. The detail is mentioned on Magisk install guide under Instructions section.


text:
How to call my own phone with a loud ringing tone (in order to find it in my house) even if it is in silent mode?
My phone (Samsung A3, Android 5) is nearly always in silent mode (for many reasons: work, or kids who should not be awakened by a ringing tone).

But sometimes I don't find my phone at home, and lose 10 minutes finding it!
A solution would be to call my phone from another phone (home phone)... but obviously this doesn't work since the phone is in silent mode!

Is there a way to make one specific number always ringing loud? (even if the phone is in silent mode)
Or is there an app such that my (lost-in-my-house) phone there could be called from another phone, or from a computer, with a loud ringing tone, even if the phone is in silent mode?

the ringtone/notification manager app i had on my old phone let you do this for specific contacts, if you called 3 times within 5 minutes for example

Possibly helpful: How can I distinguish important calls?

Owners of some smart watch types can trigger "find my phone" on their watch. It is exactly for this purpose.

You can automate the process. Install Macrodroid on the old phone, open it and add a macro. Then follow the steps below:

In the Triggers tab, in the Call/SMS section, select "Call Incoming', then "Select Contact(s)". Choose your phone number.
In the Actions tab, in the Volume section, select "Volume Change". Give the appropriate permission to Macrodroid. Select "Volume Change", enable Ringer and set the volume percentage.
In the Constraints tab, in the Screen and Speaker section, select "Ringer Volume", then Silent.
Save the macro, give it a name.

You may consider using Google's Find My Device (web version, app). I would not suggest a third-party app from unreliable sources (although you can't trust Google as well :p).

Whenever I can't find my phone, I google "where is my phone" and from there it's easy. Easy to remember.

Came here to write this answer.  Didnt even know the feature existed and googled "how to find android phone" on my ios device.  It answered my query with a map showing exactly where my phone had last been seen.

Another nice feature of this is that from the "find my device"-page you can write a message on the phone "Please deliver to 1234 X-street" and enter your (landline?) phone number as the only number the phone can call to, by pressing a button on the screen.
If the phone is lost, you can also wipe it, but that means you will not be able to locate it this way anymore.

Most folks don't live in a large enough house for the GPS resolution to tell you whether you left it in the living room, kitchen or office. This will do nicely, though, to discover whether you left it at the library or McDonald's.

@FreeMan, it gives you an option to ring your phone as well, just like the user has asked for.

Once left it at Walmart. Customer Service was relieved when I showed up and retrieved 'an unknown device constantly ringing'

Is there a way to make one specific number always ringing loud? (even if the phone is in silent mode)

Another solution could be that instead of putting the phone in silent mode, you can set the default ringtone to a silent audio file. Then, you can set a normal ringtone for the contact of the number you want to call from.

Good idea too! I'll try, but it seems that putting in silent mode is a quick shortcut for a few other benefits such as putting SMS notifications to silent (which I often toggle with silent mode on / off), maybe muting media as well, etc. So still using Silent mode on / off has benefits.

Another example: you want to enable loud ringing tone for a few hours: now I just toggle Silent mode off (it takes one click). With your solution, how would you do it? Go in Settings, Ringing tone, change the default ringing tone etc. It seems much longer on every day use

It is possible with Samsung Find My Mobile feature.
Register here, and you'll be able to make loud sound even If your phone is in silent mode.

Working indeed, I just tried! (I just hope it's secure because it gives lots of access to the phone)

Another solution would be using Termux (my favourite app). In silimar cases, I can SSH to my phone from my computer, adjust volume with termux-volume, play some sound file with mpv, or activate the motor with termux-vibrate.

If your phone is connected to the Google account, you can use a computer to find your phone. It won't matter if the ringer is off.
You could also use Do Not Disturb mode at home instead and allow only calls from specific contacts (home phone, spouse's phone, kid's phone, etc.). It might be useful since you can still allow calls from only a couple of contacts that might only call in an emergency.

Good to know, thanks! What are the main differences between Do not disturb and Silent modes? Does it affect apps, connectivity, etc. ?

"Do Not Disturb mode at home instead and allow only calls from specific contacts": in which menu can we configure these settings?

@Basj "Do Not Disturb" is more like a customizable "Silent mode" since it is configurable and allows some exceptions. Though, the configuration might be limited/extended by the manufacturer. (On Nexus/Google/AOSP/Lineage OS, it's possible to allow some callers to ring normally on "Priority only" mode)

Ok! Where do you configure these priority numbers?

In addition to the app mentioned in Reddy Lutonadio's Answer, similar apps like Tasker or the popular IFTTT can also be used to achieve this.
IFTTT is probably the easiest to configure: Just activate the 'Turn up volume if a specific number calls' task and input your home phone number.
You could also use 'Send a text to unmute phone'. It's an extra step but the advantage here is that it works from any device, in case you also can't find your home phone.

That's also a good idea, yes.. although I don't think you'll even need IFTTT on Samsungs. I'm not sure whether Android 5 already had that, but there might be an option in the DnD settings to "allow repeated callers" to ring anyways.

If you have a Google Home device (normal, mini, etc.), you can use "hey Google, where's my phone?" and it will ring your phone. (I don't remember what setup you have to do in advance, but I use this all the time.)
If you have a Tile device paired with your phone, you can push and hold the button on the Tile and it will make your phone ring if it is within range. (Tile is a tracker that you attach onto something like your keys and install an app on your phone--then when you have lost your keys, you go into the phone app and ask the Tile to ring. But in this example it also works backwards, when you can find your Tile but can't find your phone.)

Just in case you don't want to use the "where's my phone" functionality, as suggested by the other answers, you could create a contacts entry for the phone you plan to call it from, and assign it a special ringtone and flag it as emergency/VIP/starred contact (whatever your phone model uses). If you enable VIP contacts to ignore DnD/silent mode, this could achieve the same functionality without relying on external services.

I tried (add a contact to Emergency group) but it did not work, where is the setting to enable VIP contacts to ignore Silent? Could you add a screenshot?

@Basj This depends strongly on the manufacturer of the phone. I don't have a Samsung phone with your software version at hand, so I can just try to explain from memory.
In Contacts (or "People" on Samsung, I think) you can favourite ("star") contacts. In the Sounds->DnD settings you can then enable to allow calls from starred contacts.

There's an app I've been using for years called "Where's My Droid". You text it a specific code (using the default or a optionally pre-configured  code) from any number or a white-listed set of number(s) and it will ring loudly, vibrate and blink the flash.
It can also send you the phone's current GPS location. Send you a picture from both the front & rear facing cameras (so you can see who's absconded with your phone), and a whole host of features that I've never used.
*Not associated with the company in any way, just a pleased user of the free version of the app.

I use the Lookout app. It's a security app that scans for viruses, provides location, wiping, locking and scream (the feature that the OP is looking for) functions as well.
http://www.lookout.com

I use an app (similar to Lookout mentioned above, but no Anti-virus) called Prey.  The main goal of the app is to recover lost/stolen phones, but one of its features is to make noise when a certain phrase (e.g. "Wake up phone!") is received by SMS.
https://preyproject.com/


text:
Samsung Galaxy A asking for password although I never set it
I never had or used a password for Galaxy tablet A. However, it’s now asking for one to turn off the device to reset password. I am unable to turn off or start up the device.
Any suggestions on how I can solve the issue?

Welcome to Android Enthusiasts! I have modified the title and text body. If they don't reflect your issue edit them. Know that it's better to have short title and give as much explanation of the problem on the text body.

You can try google sign in to unlock the device. If this doesn't work you have hard reset as your last option to legally open your Galaxy tab A.


text:
Unable to configure wifi and/or bluetooth on Google Glass EE 2
I have a Google Glass Enterprise Edition 2 (yes). I am unable to connect either wifi or bluetooth (primary goal is wifi).
For wifi, I first tried the following:

On the glass: Settings → Wifi → Selected network.
On the MyGlass web site: "Continue with my computer" → Enter wifi info → Generate QR code.
Glass prompts to scan QR code, I scan it, it says "invalid QR code". Considerable searching yielded no additional troubleshooting info.

I then attempted to use the MyGlass app on an Android device. I tried the following on a Google Pixel and a Kyocera DuraForce Pro:

Install MyGlass app.
Enable bluetooth.
There aren't really any on-screen instructions; it appears there is supposed to be an embedded video tutorial in the app but it never loads. Clicked "find my glass" in the app. It did not see the Glass.

I tried pairing the Glass with the phones manually, first from the Glass side:

Enter Bluetooth settings on phone so it becomes visible.
Phone shows up on Glass, select it, pair.
Pairing appeared successful, but then it immediately disconnects.

Then I forgot all devices and tried again from the phone side:

Enter Bluetooth settings on Glass so it becomes visible.
"Google Glass Enterprise Edition 2" shows up on phone. Select it, pair.
Pairing appeared successful, but then it immediately disconnects.

In both cases, after pairing, if I select the Glass from the phone's Bluetooth menu it says "Connecting..." → "Connected" → immediately disconnects.
In all cases, I was unable to make any progress in the MyGlass app.
So I am unable to configure wifi, and unable to pair the device. Does anybody know how to do either of these?

All right, well I was able to configure wifi at least. I had to use the Android menus rather than the QR Code based UI:

I found an application called Vysor that allows control of the Glass through a PC, so I installed it, connected the Glass with a USB cable and did the rest through there.
From there I went to the device information card, clicked it 5 times (there's a countdown) to open the Android menus.
I then went to wifi configuration and entered the configuration there just as on any other Android device, and it connected just fine.

Still no luck with Bluetooth, but since my use for Bluetooth was just to configure wifi in the absence of working QR codes, and I was able to configure Wifi through the Android menus via Vysor, I don't really have a use for Bluetooth any more.


text:
Error: java.lang.IllegalStateException: command '1636 volume partition disk:179:64 private' failed with '400 1636 Command failed'
using the method described  here.
First command

adb devices

Output of first command

List of devices attached
  * daemon not running; starting now at tcp:5037
  * daemon started successfully
  26EBB18827208648        device

Second command

adb shell

third command

sm list-disks

Output of third command

disk:179:64

when I enter the last command

sm partition disk:179:64 private

last command output

Error: java.lang.IllegalStateException: command '1636 volume partition disk:179:64 private' failed with '400 1636 Command failed'

if I try to enter this command instead of the last command

sm partition disk:179:64 mixed 50

still an error shows up

Error: java.lang.IllegalStateException: command '1637 volume partition disk:179:64 mixed 50' failed with '400 1637 Command failed'

Phone:Huawei 7y prime
Any way to solve this?

Did you enter xxx:xxx literally or use the value from the 2nd step? Could you [edit] and provide the exact commands and their output?

Edited the question, i thought that it will be a security risk if i share those piecies of information.

Are you really sure you should try your hand at repartitioning phones, if you don't know how vold works?

@Death Mask Salesman what do you mean?


text:
(Semi) permanently disable touch input
I own a Samsung Galaxy S4 (GT-I9515L "jfvelte") running Lineage OS 16. It has a broken touchscreen which register random "ghost" touches.
I'm able to use it with the help of a USB mouse. To disable the touchscreen I use adb to open a shell on /dev/input and remove event3, which disables the touchscreen (renaming or moving the file doesn't work, only removing it) - until reboot.
How do I keep it disabled even after reboot? Preferably, I'd like a way that I can enable it later if I ever want to.

Turn's out there's init.sh support on Lineage (content of /etc/init.d/90userinit):
#!/system/bin/sh
# call userinit.sh if present in /data/local

if [ -e /data/local/userinit.sh ];
then
   log -p i -t userinit "Executing /data/local/userinit.sh";
   /system/bin/sh /data/local/userinit.sh;
   setprop lineage.userinit.active 1;
fi;

So I wrote a bash script that removes the /dev/input/event3 on boot, thus It disabling touch input on boot time:
/data/local/userinit.sh:
#!/system/bin/sh
rm /dev/input/event3

If I ever need to re-enable touch input, I can simply remove the bash script.


text:
Add icons to Glass Launcher
Is it possible to add app shortcuts to the Glass Launcher on the Google Glass (Glass Enterprise Edition 2 in my case)? If so, how?
To be clear, I mean I've developed an app and I'd like to add its icon to this screen (currently, the only way I know how to start the app is manually via adb):


text:
Clone android phone storage without root
Is there any way to clone the internal storage of a phone (huawei honor v10, android 8.0) if the phone is not rooted and USB debugging is disabled? I am currently locked out of the phone, but I want to preserve it's state (so I can recover photos in the future) and make the phone usable in the meantime.

Do you mean you don't know the PIN (or pattern or so), but you might remember it later? I am sorry, Android is designed to prevent it. And if you somehow manage to do it, it is likely to be far more expensive than buying a temporary phone until you remember the PIN.
Imagine what would happen when you were allowed to do that. You would be able to bypass any PIN protection. You would be able to do so even if the data were encrypted by the PIN, as this would allow you to brute-force the PIN.
As far as I know, the data are not encrypted by the PIN (or any key derived from the PIN by PBKFD or so). Instead, they should be encrypted by a key that is released from a hardware-based key storage after the correct PIN is provided. The hardware-backed storage should handle remaining PIN attempts and clear itself after the PIN attempts are exceeded.


text:
How can apps tell that they are running on a rooted phone?
I've heard that some of them refuse to run on rooted devices.
One might think that a rooted device would be able to present itself as a non-rooted one. Is that not so?

Most of them use SafetyNet. See https://android.stackexchange.com/a/161454/96277

@Firelord detecting su binary is more straightforward. Though SafetyNet provides additional integrity checks in one place, like bootloader unlock status, CTS certification, custom ROM etc. So is more preferable for developers.

There's a competition going on between both parties. Rooting solutions (particularly Magisk) have gone too far to make sure AMAP to hide root existence from apps which don't like it. It involves hiding modifications during boot, watching zygote & manipulating apps' mount namesapces. OTOH Google built a standalone service in Play Services (gms.unstable / SafetyNet) which does its best to detect root presence. So far the first party seems to be dominant but in fact it's very hard (or impossible) to hide root presence at least from native Android processes which are themselves running as root


text:
Google Assistant Routine custom commands weird behavior
I'm trying to setup Google Assistant Routine for my wake-up alarm. Whenever I create 2 or more custom commands, they tend to change after saving. I'm trying to add 2 commands: continue music and turn do not disturb off (both these commands are correct and work fine with Google Assistant). But whenever I press the save button and check them back, one of them changes to the other one. So I'm only getting either 2 do not disturb off or 2 continue music.
The question is: am I doing something wrong? Maybe I don't understand something about Google Assistant Routines?
My device is Xiaomi Mi A1 with latest Android 9 installed.

I get the same behaviour on Pixel 3 XL. Clearly a bug. A workaround is create a new Google routine containing all the things you want to do, and activate that single routine in the clock app.

Don't remember this helping me. Gonna check it.


text:
How to add multiple "Forwarding routes" to stock VPN client?
I am in need of adding two specific routes to the "Forwarding routes" section of the stock VPN client.  How can I accomplish that?
Lets say I need to add 1.0.0.0/24 & 255.0.0.0/24. I have tried adding them every way I can think of and I am unable to save as soon as I try to add the second route.
EG:
1.0.0.0/24
255.0.0.0/24
1.0.0.0/24 255.0.0.0/24
1.0.0.0/24,255.0.0.0/24
1.0.0.0/24:255.0.0.0/24
1.0.0.0/24;255.0.0.0/24
1.0.0.0/24255.0.0.0/24
1.0.0.0/24&255.0.0.0/24
1.0.0.0/24 & 255.0.0.0/24

None of these options worked.
I know that I can use 0.0.0.0/0 but I don't want ALL of my traffic to go via the VPN as the VPN doesn't provide internet connectivity & is just used to gain access to specific equipment.
If this is not possible with the stock app, is there any other solution?

I swear I tried it with a space a few times & it didn't work.  It's working now though.  =/

Community bump prevention: this question was closed because the question seems to have been abandoned (OP hasn't visited the site after posting the question, and no answers have score above 0). If anyone can evaluate the existing answers, feel free to vote accordingly and reopen the question (or mod-flag the question requesting for reopening). For anyone else having the same issue, please post a new question and refer to this question as additional context.

I think you are talking about PPTP / L2TP / IPSec VPN configuration in Settings:

I haven't used that, but according to this source a space between routes should work:

"In the Forwarding routes box, enter X.X.X.X/X - optionally, you can also enter Y.Y.Y.Y/Y Z.Z.Z.Z/Z (put a space between each entry)."

So this should work:
1.0.0.0/24 255.0.0.0/24

If it doesn't, I'm afraid rooting is the only way. Then you can modify routing policy (ip rule show) and kernel routing table (ip route show table all) as per your requirements.


text:
Find My Phone shows "No Active Devices"
I have a Moto G5, running Android 8.1.0 (the latest available version for this device). I previously used "Find my phone" and it worked.
I had to factory reset my phone.
Recently I wanted to use Find my Phone again, but I noticed that when I went to google.com/android/find it shows "No Active Devices".
Luckily I found my phone, but I wanted to make sure it would be findable by find my phone so I walked through the steps at https://support.google.com/android/answer/3265955
Confusingly, the device is turned on, it's signed into a Google account, it's connected to both mobile data and wifi, it's visible on Google Play, it has Location turned on, and it has "Find My Device" turned on.
If I go to (on the phone) Settings > Google > Device Phone Number it says "no number available", but the device correctly shows up on the webpages when accessed on pc. Also, if I go to Settings > System > About Phone > Status > Sim Status I expect to see my phone number listed, but it says "unknown" for My Phone Number. If I open Contacts it correctly lists my number, although I had to add this. If I go to https://myaccount.google.com/phone it correctly shows my number, and that it has been verified. I'm not offered an option to re-verify it.
I have downloaded the android app "Find my device" to my phone, and the app will show my phone as an active device and will ring it.
What do I need to do to make sure my phone is shown as active in the "Find my Phone" webpage?
(I don't know what appropriate tags would be).

Is the Google account you are using to "find" your phone the same one that is signed into the phone currently?

@acejavelin Yes, the account is the same on my PC and my phone.

I was able to install the app "Find My Device" to the phone. I then used the app to "secure my device". This caused my account to be signed out from the device. I had to sign back in. My device now appears in the Find My Device webpage.
This didn't fix any of the "phone number not available" settings, so I guess they're not relevant.


text:
Micro USB port charges only (no data)
I connected my Galaxy Tab S2 to my (previously working) Ethernet adapter, only to find it would only charge (no Ethernet). However, charging (up to 2A) still works fine.
I've tried:

connecting a new Ethernet adapter, a generic OTG adapter, and a USB cable to a PC (these all worked before). None of these worked, but they all worked on other devices.
checking the Micro USB port for damage. There is none.
Connecting the USB cable to a PC would start charging, but data did not work (it would be read as an AC charger, there would be no "Slow charging" message, and there was no "USB charging only" or "USB debugging enabled" notification).

Everything else (including charging as mentioned above) still works perfectly.
What is wrong with my tablet?

It is highly likely that the M-USB is faulty. Try another one.

@DanishShakeel A different device with a Micro USB port? I've tried that and all the adapters/cords worked on a different device.

Does the problem persist with all the cables?

@DanishShakeel Yes, I tried a 6ft nylon cable and the original Samsung cable and both of them only charged (syncing worked on other devices).


text:
Re-run Pixel 4 Setup
My girlfriend just purchased a Pixel 4 from Verizon. Apparently, the Verizon representative rushed through the initial setup flow, and my girlfriend didn't get a chance to configure her phone the way she wanted. Is it possible to re-run the onboarding flow?

I think everything that can be configured through initial setup wizard is also available in Settings.

If you are not familiar with ADB environment, then the most suitable solution for you is to Factory Reset your device. However, if you are familiar with ADB, then follow this:
adb shell su
pm enable com.google.android.setupwizard/com.google.android.setupwizard.SetupWizardActivity

adb shell settings put secure user_setup_complete 0

Please note that the commands are case-sensitive and require
  permissions.


text:
Google apps (Gmail, Maps, Play) don't work when on data connection (Android - Pocophone F1)
lately and seemingly out of nowhere my phone has stopped updating Gmail when on data, even when I manually try to synch. Google Maps and Play also won't work, although everything else does, like Reddit or Chrome. When on WiFi, no problems whatsoever.
I am using a Xiaomi Pocophone F1, running MIUI Global 10.3.8 / Android 9 PKQ1.180729.001.
This has been going on for weeks. So far I have tried erasing the affected apps' cache to no avail, and removed my Google Account from my device. When I tried this last step and tried to sign back in, I got a message saying "There was a problem communicating with Google servers.", so it didn't help either.
Any help would be hugely appreciated as I feel like this is way beyond my capabilities!

If you try using your phone as a mobile hotspot and let others connect through your hotspot, can they use Google services? Also, do others using the same SIM provider as you facing the same issue, or is it only you? Since you didn't do anything, and it happened out of nowhere, and you can still browse others, one of my suspicions is that your SIM provider blocks Google services for unknown reasons. Have you googled if it happens with others?

I haven't tried it with other people's phones, but when I hotspot my computer I can access Gmail so I don't think it's that? It's only me facing this problem with this provider, and none of the solutions I could find online so far were able to solve anything. Only thing I can think of is that this phone was bought in Singapore and I'm using it in Australia, where the device supports only 3 of the 4 bands the provider uses. But then again I didn't have any issue the first 4 months here...

Please run this on your console and revert: adb shell dumpsys telephony.registry

I followed several online troubleshooting guides for similar problems but nothing worked. In the end, I had to resort to a factory reset, and that sure fixed it.


text:
Unable to install/update apps from Play store on Xiaomi A3 on data plan
I am trying to download update/install apps from the Play store on my MI A3 Jio connection, but it has been unsuccessful. All services like Facebook, Whatsapp, etc are working fine.
The apps I am trying to download are the following:

Fancy Text+ Sticker Maker
Facebook Messenger
Personal Sticker for whatsapp
Stickers for whatsapp

But from past one hour, I am not able to download these apps on my Jio  data plan. This problem of not being able to download apps on my Jio connection is a frequent problem. What should I check? Any kind of  data saver is not on.
The OS this phone has is Android 9.
Following screenshot is the situation on my phone.

Here are settings for app download in playstore you can see that download using any kind of data mobile data plan or wifi both are enabled.

Wifi at my end was not working so at the time when I posted this question and now when I posted above image a friend came and change the setting of downloading apps on wifi only. So the apps which I could not download on my data plan could be downloaded on Wi-Fi connection.
I am not sure if it was a problem from mobile network service provider end or it is a problem in my phone or some thing which I don't know.

Are you trying to download them from the Play Store? Are you able to install any other app but them alone?

Yes I am trying to download them from.playstore. previously I have installed whatsapp etc from playstore.

See if after restarting the device you are able to download from the Play Store.

I had restarted phone before posting the question here and any other app also I am not able to download from playstore.

I am having this problem in Data Plan i.e. when I am using Data Plan then I can not download apps. But when I am able to connect to a wifi  then apps can be downloaded and installed via google play store.

For some reason, there's also a very recent & similar question regarding blocked Google services on mobile data. That said, Jio seems to block access to some websites, and there's a big possibility that this is also caused by a misconfiguration on their side. In that case, try VPN if it helps (though it's also known that Jio also blocking VPN), or contact them directly about this issue.

Yes now I am able to understand in a market competition to eliminate other company reliance jio is blocking every thing google telegram etc etc .


text:
Chrome user data taking up lot of space
Chrome in my redmi note 4 is taking up a lot of space. I tried clearing cookies, site data, cache and browsing history. How can i access this storage without root?
Edit : i've attached the screenshot of my apps settings page.

Open Chrome and open Settings -> Site Settings -> Storage. There you see the list of sited and their cached storage size.

@robert thats just 15 kb.

Is the screenshot from a built-in app or is it a third party app? If it is a third party app it can only show the info from Android package manager. Check Android settings -> apps -> Chrome for the displayed storage size.

Related: What's in Chrome's data?. Though from the structure (there's DCIM), this looks like on "external" storage? If so, then it's possible to browse without root access, unless I was tricked with the "Storage card" on the root path...

@Andrew, the entire disk space is composed of internal memory. And the question tagged by you doesn't seem relevant.

@robert, check my question again. I've attached a screenshot of app settings.

If it's in the internal memory and the device is not rooted, then the last thing you can try is to "clear data" since you can't browse it without root.

@Jai I agree with Andrew, this looks more like sdcard storage. Check /sdcard/Android/data/com.android.chrome and subdirectories in a file manager app, adb or MTP.


text:
Play Store can't update apps
I have a Xiaomi Redmi 5A with mi-globe MIUI 11 ROM, with Magisk 20.0 root. Yesterday, Play Store updates suddenly stopped working. I checked the logcat and it appears it's trying to link /data/app/com.google.android.apps.photos-Q_Pb6hixcLrelRKL6ammsw==//oat/arm64/base.odex to /data/app/vmdl1427524294.tmp//oat/arm64/base.odex. The "//" directory does not exist of course, but I don't know why is it trying to link. Here is the full logcat:
10-27 15:49:49.350   761  2417 E installd: Failed to link from /data/app/com.google.android.apps.photos-Q_Pb6hixcLrelRKL6ammsw==//oat/arm64/base.odex to /data/app/vmdl1427524294.tmp//oat/arm64/base.odex: No such file or directory
10-27 15:49:49.354  1552  1619 E PackageInstaller: Commit of session 1427524294 failed: Failed to inherit existing install: failed linkOrCreateDir(/oat/arm64/base.odex, /data/app/com.google.android.apps.photos-Q_Pb6hixcLrelRKL6ammsw==, /data/app/vmdl1427524294.tmp): android.os.ServiceSpecificException: Failed to link from /data/app/com.google.android.apps.photos-Q_Pb6hixcLrelRKL6ammsw==//oat/arm64/base.odex to /data/app/vmdl1427524294.tmp//oat/arm64/base.odex (code 2)
10-27 15:49:49.360   761  2417 E         : Couldn't opendir /data/app/vmdl1427524294.tmp: No such file or directory
10-27 15:49:49.360   761  2417 E installd: Failed to delete /data/app/vmdl1427524294.tmp: No such file or directory
10-27 15:49:49.365  3533  3533 E Finsky  : [2] qgv.onReceive(19): Error -506 while installing com.google.android.apps.photos: INSTALL_FAILED_INSUFFICIENT_STORAGE: Failed to inherit existing install: failed linkOrCreateDir(/oat/arm64/base.odex, /data/app/com.google.android.apps.photos-Q_Pb6hixcLrelRKL6ammsw==, /data/app/vmdl1427524294.tmp): android.os.ServiceSpecificException: Failed to link from /data/app/com.google.android.apps.photos-Q_Pb6hixcLrelRKL6ammsw==//oat/arm64/base.odex to /data/app/vmdl1427524294.tmp//oat/arm64/base.odex (code 2)

Backing up the apps' data in data/data then uninstalling and reinstalling them solved my problem, also the next updates worked, but can you help me figuring out why did this happen?


text:
Make second user also a device owner
I recently bought Samsung Galaxy tab s5e , and configured my account for it. Afterwards I created account (using android multiuser feature ) for my wife.
Hovewer the second account is very limited due to android security features . It lacks some serttings, Samsung DeX, and access to SD card. I do know the security reasoning for it ,and I don't care about them.
Is there some ADB command, tweak or some other way( for example after rooting device) to make the second account also a device owner (administrator ), grant access to sd cards and stuff , otherwise the security feature is kind of usseles if you realy want to have multi user experience on tablet

Same issue with Tab S6 Lite and secondary users I created for my kids - no SD card access.


text:
Broken Phone Power Button and ADB not detecting device. NEED HELP!
So the power button on my phone (Asus Zenfone 3 laser) no longer works and the phone is powered off. I have charged it up and gotten it to the android recovery menu by holding down power and simultaneously plugging it into my laptop. Unfortunately, I don't think USB debugging is turned on as adb devices and fastboot devices comes up empty. The phone does charge from being plugged in.
Since the power button doesn't work, I can move up and down in the recovery menu all I want using the volume keys, but cant select an option (which requires the power button).
Does anyone have a method of just getting it to turn on that doesn't require opening up the phone (as I don't want to buy the special screw driver to do so). I just want the photos inside, the phone is pretty much scrap metal.

If bootloader is unlocked you can boot twrp recovery from fastboot. fastboot mode is the other vol-key. you don't need usb-debugging for fastboot its just a cable/driver thing, and twrp has adb access by default

there is also a fastboot setting to boot when charging, try fastboot oem off-mode-charge disable

Thank you. I tried the second option and I think it may have worked. I used it in cmd and it said successfully finished. Will know if it worked or not tomorrow once my phone exits fast boot mode so I can put it on charge

Thank You SOOOOO much. It worked. I was a little scared it wouldn't since secure boot is enabled but it did. Ur my hero :)))))))


text:
How does Android do DNS name resolution?
I am learning about how Windows does name resolution and need to know how Android does it so an app will work on my Windows laptop and from my Android Phone.
Borrowing from a post on superuser.com, the normal resolution method on Windows is as follows:

The client checks to see if the name queried is its own.
The client then searches a local Hosts file, a list of IP address and names stored on the local computer.
Domain Name System (DNS) servers are queried.
If the name is still not resolved, NetBIOS name resolution sequence is used as a backup. This order can be changed by configuring the NetBIOS node type of the client.

I use dnsmasq to provide local DNS resolution so I can map my own made up hostnames to local LAN IP addresses. This also allows me to see, in the dnsmasq log file, the DNS query that goes from the client to the DNS server. While testing the website from my phone I could swear using the URL address http://mywebsite in a Chrome browser on the phone was loading the website and the dnsmasq log showed just that unqualified name - mywebsite - resolving to the desired local IP address the web server is at.
However that was a few days ago, now the dnsmasq log always shows that the DHCP server DNS suffix [home] has been appended. So I see mywebsite.home in the dnsmasq log even though I used the URL address http://mywebsite in the phones Chrome browser. I didn't change anything with the phone. It is still set up to get its IP address via DHCP, in practice it never changes.
So my questions are:

How does Android OS resolve domain names to IP addresses - what things does it try and in what order?
Any feedback on why Android seemed to be resolving the unqualified hostname in my browser originally without any DNS suffix being appended. But now the [home] suffix is always appended as reported in the dnsmasq log file.

Update 1
After some more testing I have again seen the scenario where the webpage http://mymovies loads from the Android phone but the dnsmasq log appears to show the name resolution happening on an unqualified domain name (bare hostname: mymovies).

The x's are my redacted routers public IP address.
Can anyone explain what dnsmasq is doing here?
Starting from 02:07:22 it initially seems to try resolving the name mymovies.home. This makes sense because the phones IP is dynamically allocated by the DHCP server and I can see on my laptop that the DHCP server sends the DNS suffix [home] as the connection-specific DNS suffix so it must be doing the same to the phone I guess?
The reason why it fails here is because I do not have an entry for mymovies.home in dnsmasq.conf - I commented it out. I DO have an address entry for mymovies in dnsmasq.conf and that seems to be why it can resolve mymovies to an IP address.
Is this a difference of name resolution in Android compared with Windows - that eventually Android OS WILL try to resolve an unqualified domain name (bare hostname) to an IP address?

How DNS queries made by a program are being resolved isn't specific to an OS, but depends on the resolver library the program is using. DNS resolvers have traditionally been part of OS's standard C library e.g. Bionic on Android, libcmt on Windows, glibc, musl, dietlibc, uClibc and others on Linux. Not all C libraries use the same approach to resolve host/domain names. While glibc and alike provide complicated but highly configurable mechanisms like Name Service Switch, others just rely on hosts and DNS queries to upstream nameserver as configured in /etc/resolv.conf. Android's resolver (1, 2) looks up cache, hosts and DNS:

"DNS lookups are centralized in the netd daemon to allow for system-wide caching, while apps call functions (such as getaddrinfo) in Bionic. The query is sent over a UNIX socket to /dev/socket/dnsproxyd to the netd daemon, which parses the request and calls getaddrinfo again to issue DNS lookups, then caches the results so that other apps can use them."

DNS server address is either received through PDP context on Mobile Data or through DHCP on Wi-Fi (also possibly to set manually) or the hard-coded value 8.8.8.8 is used. Since Android 9 Private DNS (DNS over TLS) may also be configured in Settings. It's also possible to set DNS and domain name using ndc resolver setnetdns command. See more details in How to configure DNS properly?.

dnsmasq log always shows that the DHCP server DNS suffix [home] has been appended

.home suffix is being provided by your DHCP server (router?) to Android as part of DHCP request (code 15). Android's DHCP client asks server for option 6 (domain name server) and option 15 (domain name), which are then forwarded to C library (_resolv_set_nameservers_for_net) through DnsManager, NetworkManagementService and netd.
On Linux DHCP client (e.g. dhcpcd) modifies resolv.conf itself or uses a program like resolvconf which is dedicated to manage resolv.conf. nameserver keyword defines DNS server and search defines search list for host-name lookup (DHCP option 119 or 15). Android uses default values hard-coded in different header files other than those received from DHCP or set manually.
Windows's DHCP client and DNS resolver support option 15. Additional configurations which are honored by DNS Client service (dnscache) and library can be made through Network Connections or Group Policy Editor or Registry Editor.

Is this a difference of name resolution in Android compared with Windows - that eventually Android OS WILL try to resolve an unqualified domain name (bare hostname) to an IP address?

As far as I have seen this is almost standard behavior for Linux libc's. Android's DNS resolver code is also based on NetBSD - another Linux-like operating system. A single-label unqualified name is first tried with DNS suffix appended, then tried without suffix 4 times (see "options attempts:n" for resolv.conf). For multi-label name the order is reversed while a FQDN (with trailing .) is never tried with suffix. On Windows you can append dot to unqualified name so that it's treated as FQDN. It's possible to set it as default behavior by adding dot (.) to "DNS suffix for this connection". See also for Multi-Label Name Queries.

I am learning about how Windows does name resolution and need to know how Android does it

As stated in the start, name resolution might not be persistent across whole OS. On Android, for instance, Firefox or Chrome will be depending on Bionic resolver while some busybox ping (or even some native libraries included with GUI apps) will be trying to read resolv.conf and make DNS queries directly.
Also network troubleshooting tools like ping and getent rely on OS's internal resolver libraries like NSS, while DNS diagnostic tools like nslookup, dig and host act as independent DNS clients - they don't read hosts file and may not honor resolv.conf in its entirety. dig provides commandline arguments to (not) use options set in resolv.conf, and similarly Windows nslookup has its own built-in resolver.
So even on same OS you can't expect same DNS resolution behavior when using different GUI/CLI programs because they could be using different libc and/or different resolver and/or different configuration.

RELATED:

How to ping a local network host by hostname?

Irfan.. thank you so much for this detailed answer. I can now see how DNS lookups are influenced by many factors. Interesting that Windows will not do a DNS lookup on a bare hostname but Android will due to different DNS resolver code. Cheers.

For reference: Starting from November 2021, Android resolver supports mDNS .local resolution.

Can anyone explain what dnsmasq is doing here?

query[A] = resolution request for IPv4
From: obviously the source, as you already stated, your router's public address.
forwarded to: is the URL forwarding to the DNS servers that you configured for such kind of URLs, in case that no config there, is using the default DNS servers or your GW.
reply: the DNS Server is not being able to resolve the host because that domain doesn't exist (mymovies.home) and therefore is delivering that "NXDOMAIN" as reply
192.168.1.124 is the IP that you have statically configured for mymovies


text:
Galaxy S6 - Can't unlock phone after factory reset
I just got a new Galaxy S9 to replace my 3-year-old Galaxy S6 and I will be giving it to my mother so I did a Factory Reset to my Galaxy S6. To my surprise, doing a factory reset didn't actually delete everything from the phone so I went into recovery mode and did a "Wipe data/factory reset" from there.
After restarting the phone and connecting to a WiFi network I'm asked to enter my Samsung Account, which I did, but I can't get past this screen! When I click on the "Sign In" button this is what happens:

The dialogs disappear and nothing happens. If I put a wrong password it tells me the password is wrong but when entering the correct one I can't get past this. I tried doing a factory reset again, unlocking the device from my Samsung account (which fails because it says remote access is not enabled or something like that) and even removing the device from my Samsung account. I also tried multiple methods that you can find online to bypass this but none of them work on Android 7 (Nougat).
I don't know what else to do, my device is just unusable now.

Ok, I finally got a solution to my problem, this is obviously a Samsung bug in their software because I can't unlock my phone with the legitimate Android account. The following method works for unlocking any Samsung phone which is good and, at the same time, bad because a skilled enough thief can unlock your phone (although he won't have access to the data because the phone must be wiped).

Download Miracle Box, at this time 2.58 is the latest version.
Put your phone in Download Mode and connect it to the PC.
Open Miracle Box and go to the Samsung tab.
Select the Reset Reactivation/EE Locks and click Start Button and wait for it to finish.
Your phone won't boot now, download a stock Samsung ROM with the same version as you had. I had Nougat so I have to download that, don't try a lower version because the bootloader won't allow you to flash it.
Use ODIN to flash the new stock ROM.
You should be able to boot your phone normally without entering the Samsung account.

If you think this is too much for you give UnlockJunky a try. It was going to be my last resource.