text:
Google don't track my location anymore
I was using location history all the time, on one quick walk when I took photos with my DSLR I've notice that my location was way off from my walk so I've set in settings for my location to use only GPS (no WiFi and no GSM data) and now when I check my location for that day there was no tracking. I've set it back to all data, but still no location for second day.
In mean time I've installed GPS Logger application.
How can I make my tracking working again?

change the settings to HIGH ACCURACY and turn on 'google location history' and restart(reboot) the phone.

Thanks it works, so if you change GPS settings you need to restart your phone (I use GPS only and it give more accurate results).

I'm not sure what the solution is to get it working for you again, but I can say that setting location to GPS only does not ensure that it will actually look for your location via GPS, it just means that it will only ever log your location based on GPS. This means that, when you're out traveling somewhere and you use an app that has permissions to access GPS data, that app will enable GPS and use it (such as Google Maps), then Google will create the log of the location data while GPS was on. However, the moment an app finishes using GPS, Google is no longer logging data because you aren't using GPS anymore. This is done to save battery on the device.
If you want to test this, you could use a GPS app (like a different map software, to ensure that the location data isn't just being shared from Google Maps to your location history), ensure the app is actually turning GPS on, and then check whether Google has logged that location data at the end of the day.

I think you're right yesterday I had GPS option on with GPS logger and I have location history from yesterday but today I was not using the app and no location for today (unless it update next day but I doubt it).


text:
HTC One wireless hotspot not turning on
My HTC One won't turn on its hotspot. It always displays the message:

There is a temporary network problem that prevents the enablement of Mobile Hotspot function. Please retry later"

What can I do to turn it on?
I don't want to root my phone. The last time I tried, I crashed the phone completely

try to reset the network settings in the reset option in the settings.

source: Stack Exchange

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

sort: votes


text:
SSH client for Android with scp and sftp features
I have tried SSHjuice and Termius and neither of these have the scp features ( I couldn't find it in the free/trial version ).
So can anybody tell me is there any SSH client (free version) for Android that have scp (secure copy ) or sftp features.
I couldn't find it in Google. thanks .

Install openssh on Termux

Related: How to run SSH/SFTP server for multiple user logins with password authentication.

For ssh and scp, use Termux. It's a full-feature Linux-type terminal for Android. Use it like a normal Linux terminal.
Sftp, scp, and ssh are all included in the OpenSSH package.
It's also free and open-source

Download Termux.

apt update && apt upgrade

To install OpenSSH run pkg install openssh

thanks for the suggestion. Is it possible to install the SSH server as well in termux ?

@JustKhaithang I do not think so, not without root it won't work

I just installed tmux and SSH client and I want to copy a file to my android from my Linux server. what would be the command for that ?

Standard Linux usage. See scp --help

in tmux my home directory is
/data/data/com.termux/files/home . So do I have specify this path for the target destination? that's what I wanted to know.

@JustKhaithang if termux has storage permission just push to /sdcard

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


text:
Developer Options screen opens for a second, then closes
I'm using an LG4c Android v5.0.2.  I have enabled Developer Options - it is in the menu where I can tap it to open it.
When I tap it, it opens for a split second - long to enough to see that it is on (blue button is on) and but turns off almost instantly so that in effect I cannot access it.
How can I get it to stay on?  Why does it not stay on?

try it by going on safe mode(hold the power off option and click ok), after that use the developer options and by the same procedure , reboot into normal mode.

Hi.Thanks. I tried it but it didn't work either.  Same behaviour.  Screen opens for a split second and disappears before I can do anything.


text:
How to create a copy of a file immediately when it's created?
I have an Android app that will create a file and immediately delete it. I want to know how can I catch this file or create a copy or even disable user permissions to delete a file. I have root access to the device.

I'm pretty sure there's a way to monitor a directory for changes, at least sometimes... I'd start by searching for that

@Xen2050 i find the answer i can do it with inotify but because the linux is on android i can't install it easily im trying to install it

I think inotify's right, no idea how to get it working with android either. Possibly a program/script that just reads a directory every second & immediately copies new files might work too, but might be resource intensive & slow things down

@Xen2050 its on an emulator so i don't care about performance

Could just loop some find/ls & sleep 0.25 commands then, maybe with an array of found files, then when it changes do something?

@Xen2050 there is a great app named busy-box and the app have all the important packages including inotify and its super easy to use and install too

You can achieve this using inotifywait from inotify-tools. Your kernel must be built with CONFIG_INOTIFY_USER=y for this to work. You can confirm with:
~# zcat /proc/config.gz | grep INOTIFY

Or the existence of /proc/sys/fs/inotify directory. /proc/config.gz may not exist on all devices depending on kernel build configuration.
Let's say /data/data/com.xyz/files/ is the directory you want to watch.
~$ mkdir -p /sdcard/backup/
~# inotifywait -rm --format '%w%f' -e create /data/data/com.xyz/files/ |
while read file
do
    [ -f "$file" ] && cp -av "$file" /sdcard/backup/
done

-e create is the event that reports that a file/directory is created in watched directory, --format is to get filename with complete path, -m is to watch continuously and -r establishes watches recursively. -d can daemonize the process i.e. run in background.
All newly created files in watched directory or in any sub-directory will be copied to /sdcard/backup.
You can also use busybox inotifyd for simple use case as explained here. For more options see inotifywait(1).
RELATED: How to identify the app/process which re-mounts partitions R/W, creates files and changes file permissions?

hi link the easiest way is to work with this c library

I could not make this way to work but the c script is worked just fine and a lot easier but maybe the problem was with my execution.

hi im steel stuck can you please help me a little bit? im really confused i can't execute this c script either

Well, there is no reason fo both of my methods I mentioned here and the other one to not work. They are very straightforward. And C is not a scripting language. What you have written is a program in C language, which needs to be compiled into an executable binary using some compiler.

hi, I got the file with termux inotify but its a .so file not dex

@Amin Looks like you only got the library (libinotify), not the command-line tools (inotify-tools). Anyway you never get dex file, dex is Java code, and is not executed on command-line level. Command-line tools are native executables.

All Android kernels should support inotify tools because Android API contains FileObserver which bases on inotify. Hence any official kernel have to support it otherwise it could not pass the Google compatibility test.

is there a way to replace the file immediately after its creation?

@ddddavidee replace with what? inotify informs you as soon as the file is created (or modified, or deleted). Now it's up to you what you do with the file (or with something else).

I have an app creating a file and loading it in memory. I would like to replace it before being loaded...


text:
Huge battery power consumption with one particular SIM card
I have a Vodafone SIM card in an Android phone. In that phone, there is a 2000 mAh battery. I had noticed that the battery was discharging very fast, about 2%/hour when idle!
At that time, no battery consuming apps were running and all other mobile radios were switched off.
The discharge rate should have been less than 1%/hour.
I thought that this might be a problem with the battery, but when I tested with another Vodafone SIM card, I saw that the discharge rate has again gone down to 1%/hour!
Can anybody say what is actually happening?
Additional information: Few days ago, accidentally, there had been a half-hole on the SIM card. So, is the problem due to this hole?

How old is the SIM card? The required power voltage of SIM cards has AFAIK changed over the years. Therefore older SIMs need more voltage and usually more power.

No, that was relatively a newer SIM card.


text:
Why is there "/proc/net/snmp" file on my device? Could it be due to a malware?
After reading this paper I observed a little and I realized that an SNMP socket (exactly two: v4 and v6) exists when I use ls /proc/1/net. I see them clearly.
My question is simple, do the bootkits exist on Android? I suppose yes, if it is the case would you have documentation to recommend me at the security level? Especially the use of SNMP, is it normal? For example a use by the phone operator for material supervision? But this phone is a second hand with a different operator that does not make sense for my case.
Two days ago I asked a question here related to mediatek and strange files and files saturating the memory space. But I did not find an answer in relation to audio_dump folder in the paper of blackhat, but some matches that are cold in the back.

There is no piece of software that has zero probability of being infected by some kind of malware. But in general, Windows by design is more prone to infections as compared to Linux and other UNIX based operating systems. Android is also based on Linux kernel, plus it has additional security mechanisms related to booting part, such as locked bootloader and Verified Boot. So generally we don't see Android devices hijacked by bootkits.
That said, init is the very first userspace process started by kernel with PID 1. It's a generic piece of AOSP, developed by Google and not modified by phone OEMs or network operaters (AFAIK). However its configuration files *.rc can be modified / added / removed easily to start / stop services and daemons on boot.
Presence of /proc/[PID]/net/snmp indicates that your kernel has ability to support an SNMP agent if run on your device. This is common, modern kernels are built so. Alarming is if there is an agent running in background on your device, something listening on UDP port 161 from an SNMP management console. You can analyze all listening ports using netstat or ss. Both are shipped with Android.


text:
Remove Play Store access without removing Play Services
I have built AOSP for the kiddo's phone. My goal was to remove the Play Store so that he can't install games or other apps.
However, we use Google Fi for our phone service, which requires Google Play services to function. That alone isn't a big deal using Open Gapps. However, I would like to remove the Play Store, but keep Google play services so that the Fi app can be used.
From what I can tell, Play Store and Play Services seem to be married (i.e., removing Phonesky.apk with Titanium Backup removes both the Play Store and Play Services).
Is there any way that I can remove the Play Store, but keep access to Play Services so that the phone can still register through Google Fi?
Note: this is on a rooted Pixel 1. AOSP is not a strict requirement, just something I was trying to use to solve my problem. If it can be done on, i.e., the stock ROM that'd be great too.
Note 2: I realize the Play Store can be disabled in the apps settings, but this kid is smart enough to figure that one out. I also tried hiding it in Nova Launcher Prime, but it still shows up in search results within the launcher.

For my purpose, the following works in adb shell (as root):
pm disable com.android.vending

Of course, now I need to figure out a way to make this persist over a factory reset...

It's equivalent to Disable app from app settings. You can't make it persistent across factory resets.  It's just a configuration written in /data/system/users/0/package-restrictions.xml which is wiped on factory reset.

Yeah, I figured this out in some further research. But, oddly enough it actually doesn't entirely even persist through a reboot. Initially, it will be disabled, but within a minute it magically reappears. I guess that Play Services is forcing it to re-enable a short time after login. Even setting enabled="2" (DISABLED rather than USER_DISABLED) doesn't keep it from getting re-enabled.

It's also unfortunate that there is no system-level package-restrictions.xml that can be used as an inherited default. I also considered making him a second account on the phone while I kept admin permissions (and my Google account) but in order to unlock the phone on reboot you need the admin PIN.

You can't fully disable Play Store. Play Services make use of many activities from Play Store app even when it's disabled. Uninstall it if you don't really need it. See this: https://android.stackexchange.com/a/209870/218526

On the LeEco Le Max2 with LineageOS 16, I am the admin and my child is user 10.
pm disable com.android.vending
did not work, but
pm disable --user 10 com.android.vending
has the effect that the Play store disappears. At least the icon, not sure if it is possible to get it back. Google Play Music works, so my child can hear music but not install apps.

Replace disable with enable in your command to restore the Play Store app, whenever needed.


text:
How to completely save large chat history of WhatsApp in Android phone
To save a large (group) chat history of WhatsApp on an Android phone, I have looked to the internet for help - but still cannot save/backup the entire conversation/chat from the beginning.
For information, my example is a group chat with history composed of maybe a few hundred text messages (starting in 2017), containing maybe thirty images, a few videos, and some short voice files. It definitely should not exceed the limits of the WhatsApp system. There is nothing rude in the chat but some strong feelings are expressed by some, in any case, should not fall foul with any censorship.
I can see the entire chat (from beginning to current) on my phone, but when I export the chat via email and Gmail it only shows approx. one month of chat.
I use the procedure advised by the internet including this forum that I am writing in. I use the selections: More, Export Chat, Include Media, Send chat via (and each time click Email or Gmail), type into the To field, then send. It sends but in checking the sent mail, can only see recent chats.
So why can I not backup the entire chat history? What is limiting and preventing seeing (exporting?) the entire chat history?

Does this answer your question? Whatsapp: Export chat with media does not work properly

There is a limit which is imposed because of the maximum sizes of emails.
See the WhatsApp FAQ section of their website

If you choose to attach media, the most recent media sent will be added as attachments. When sending with media, you can send up to 10,000 latest messages. Without media, you can send 40,000 messages. These constraints are due to maximum email sizes.

there is nothing specifically different in having to save chats in groups differently.
Suspect this would be worth raising a support ticket with WhatsApp

justamarkprime, thanks for quick reply. I knew WhatsApp had the limits (with / without media), however, our group chat history is only composed of maybe a few hundred text messages (quite short and starting in 2017), it also contains maybe thirty images, a few videos and some short voice files. That size of history should not exceed the WhatsApp limits mentioned. It would be very surprising if it did. If it did exceed limit, why when I export via Email/Gmail it can only backup about one month worth of chat which is about 30 messages???

Surely something else must be causing the limit/restriction? If these constraints are due to maximum email sizes, how do I backup the chats that are over a month ago all the way to 2017 when the group chat began?


text:
Android Rotation issue
I am a complete noob with Android so please forgive me.
I am tasked with installing Android on a Custom Board from China. Its InsydeH20 BIOS and something called "BayTrail".
Basically, the board is installed inside a Hand Dryer (dont ask). The concept is to install an APP (which is already available), that links to a website, users can play Advertisements through the screen by creating them on the website, the playlist syncs to the app, voila ads play on the Android Board, nifty concept, in reality its a nightmare to get working.
I have tried numerous versions of Android, the App best works on 4.4 but I have it working on 7.1 Nougat.
The main issues I have are:
Teamviewer Host (needs to be installed for future support of the units. This, I have only got working on 1 version of Android (Prime OS)
Screen Orientation - this is my main issue, the screen is 1080x1920 resolution. using a screen rotation app (on Phoenix OS v1.5.0) I can get the screen to display in LANDSCAPE at 1920x108 - great, App works, screen is landscape, Teamviewer DOES NOT work, bummer!
On Prime OS - the rotation app just does not work, it sort of goes in landscape, but in portrait view? The screen is 1080x1920 across the MIDDLE of the screen, with black bars at the top and bottom. Please see this link for screen shot.

But TeamViewer works, and the unit seems more stable on Prime OS, so I think once I have the screen sorted, it will work fine, hopefully?
Things I have already tried.
ADB Build Prop adding these lines, and rebooting - does absolutely nothing!
ro.sf.hwrotation=0

ADB Shell - adding these lines
 1. adb shell root
 2. adb shell remount
 3. adb shell setprop persist.demo.hdmirotation portrait
 4. adb shell setprop persist.demo.hdmirotationlock false
 5. adb shell setprop persist.demo.singledisplay true
 6. adb reboot
 7. adb shell wm size 1920x1080

This is how I have got it to where it is now, but the thing will just not rotate and use LANDSCAPE and FULL SCREEN, like it does on Phoenix OS.
Sorry, if I have repeated myself, hopefully the screen shot will give you a better idea of where I am at, what I need.
And hopefully someone can help?
Currently running Prime OS Standard at this link -
Prime OS Link

Try setting the default offset using hwrotation= ...
HW Rotation props are not intelligent, it will not understand that by 0 you mean landscape...
You need to actually set it to a value of rotation out of 360 degrees.
So...
ro.sf.hwrotation=270

OR
ro.sf.hwrotation=180

OR
ro.sf.hwrotation=90

OR
ro.sf.hwrotation=0

If that still is not fixing the issue, then please let me know...
It is most likely being set by default.prop as part of the boot.img   -   Default.prop properties take priority over Build.prop properties.

Is this achieved by adding the line to build.prop?

Yes... However if it has been set in default.prop, the value in default.prop will be used.... Default.prop is part of the boot.img

Yeah I've tried all those numbers in build.prop and it does nothing at all.

Try in default.prop... You need to extract boot.img and edit defult.prop under the ramdisk folder...

Thanks, I have extracted "ramdisk.img". I get a file called ramdisk, which I can open in notepad. The first 20 lines are readable, and look like default.prep. There is no mention in there for rotation. So I have added the line.

The question is, if there is no mention of rotation in that file or build.prep, where is it getting its default rotation, and why do rotation apps work on Phoenix OS Android 5.1 and not Prime OS, or any version of stock ROMS that are on the Android X86 website.
I have no idea what I am doing, but out of all the websites/forums I have asked this same question, you are the only one that has helped, so I am eternally grateful.

Nothing seems to work.

Hmmm... May be the problem is because you've already set a persistent prop for portrait using Adb shell... persist.demo.hdmirotation portrait try persist.demo.hdmirotation landscape


text:
Accessing a USB device in phone in absence of compatible drivers / modules
My android device has an MTK6797 Soc(Xiaomi Redmi note 4x mtk version), and the company never released the kernel source, now I want to connect a USB device through OTG and control it from a chrooted Linux environment inside android, the problem is that the precompiled kernel that ships with the android device doesn't include the driver for the USB device, the kernel also has CONFIG_MODULES disabled so I can't compile the driver as a module and load it to the kernel, so now my only option is to run a completely emulated Linux VM(kernel and userspace) inside android and connect the USB device to the VM and load the required module from there(just like you would do on a PC with something like Virtual Box).
The problem is that I can't find an arm emulator that runs on android, I found Limbo PC emulator which is based on Qemu but it emulates X86 and not arm, running an X86 VM inside Limbo PC is very slow so I instead I want to run Arm VM hopefully that would provide a bit of performance push compared to emulating X86.
I can't seem to find any thing that can emulate Arm inside android, Qemu is an open source project so It's hard to imagine that no one ever though of running Qemu arm emulator inside Android.
Regards

Have you checked this source code release? https://github.com/MT6797

@Robert Yes I've already compiled https://github.com/MT6797/kernel-3.18 and tried to run it on my device and no joy, the source doesn't contain the config and device tree for my device, and even if I spent two week trying to get it to boot by decompiling  and reverse engineer as much as i could from the original kernel I will probably be disappointed eventually by the lack of some critical driver (e.g touchscreen driver).

Hello. I have edited the title to point out the actual problem, instead of going in XY direction of finding an emulator. On a side note, can anyone tell me if this is even possible for a VM (assuming on a PC) to access a USB device for which the host machine OS has no drivers to  communicate?


text:
Android viruses are infecting my phone
My phone has been infected with viruses for 6months now.
At first it was just a virus in disguise called "settings", but then it spread to my browsers opening many different sites. I had to disable my browsers. And now there are 3 other viruses on my phone. One called "clockwallpaper", second is the "lake worth isd". It creates a fake duplicate of an app that I'm using, and after I closed that duplicated app, the original app starts lagging and then crashes. It also activates the silent mode of my phone. The third one is called "system", which pop-up tons of ads that is really annoying. It also makes an app that I'm using to lag and stop working.
I tried to use Malware Bytes and Bitdefender antivirus softwares. At first it was good and they removed the viruses, and I thought the viruses will be gone permanently. But I was wrong, after an hour or less they get installed again, even I have an internet connection or not.
So I performed a factory reset on my phone to get rid of it.
And they were gone. But then later on they get installed again and my phone was now like before.
Please help me!

The malware apps have gaoined root access and modified your system rom. The best way would be to re-flash a full factory ROM image.

@Robert makes a really good point, with root access, the best thing really would be to reflash a factory. Theres a decent guide here that covers steps to take with an infected phone techadvisor and XDA developers provides a good resource for hot to reflash a factory rom xda developers

Before using any steps backup your personal data
Use a Bloatware free Stock-Rom or Custom rom which has support of your Android Phone. You can find your phone's stock rom on XDA-Developers forum.
Now comes the flashing step.
You can do it in two ways:-
1. Flashing from androd Recovery Mode in TWRP. Requires root
See Here to know how you can do it:-
https://www.google.com/search?q=flashing+roms+with+twrp
2. Flashing rom from PC. This doesn't requires root.
See here to know how to do it:-
https://www.google.com/search?q=how+to+install+custom+rom+on+android+using+pc
These steps will remove the virus apps which were in your root and will give your phone a relief.


text:
Fastboot commands are not working
I have tried to relock my Zenfone Max pro m2,but after installing stock recovery when I tried to run relock.cmd, it is not working showing that
write to device failed(invalid argument)

Even when I have tried to find the device info using fastboot command, but I'm getting the same error as
write to device failed( too many links)

Please help me with this.

I don't get it: where are you issuing fastboot commands? Are you on bootloader mode or in recovery mode?

Bootloader mode

Did you enable OEM unlocking in development options?

Yes , I have enabled usb debugging

No, I mean OEM unlocking

No , that is not turned on

Go back there and enable OEM unlocking. Reboot from ADB to recovery then run relock.cmd file

But that is not listed in developer options

Hum don't own this phone, so I cannot check. Try instructions from here: https://forum.xda-developers.com/asus-zenfone-max-pro-m1/how-to/discussion-unlocking-bootloader-t3786698/post76439671#post76439671

I don't know if you are running relock.cmd as a file or a command, but the usual way to lock the bootloader in Fastboot is
fastboot oem lock

Try
fastboot devices

And wait until you see your device is found, then do the lock
fastboot oem lock

Try also,
fastboot flashing lock
fastboot flashing lock_critical

Those commands are not working

Try fastboot flashing lock  - or - fastboot flashing lock_critical

Yeah it worked ...!!!! , i tried changing the usb port. and thanks for your suggestions


text:
The lowest in-call volume level
I have a redmi 4x, lineage os 15 official.
I have the lowest in-call volume level as big as 20%. I can't make it lower and in a quiet room almost everyone can hear my phone conversation. I tried different apps, some of them worked: they could lower the volume to 0% but the effect was temporal. I'm looking for a constant solution. Can anybody suggest a method how to lower the in-call volume below that level?

Welcome to Android Enthusiasts! It seems that you have lost access to your account. To regain access or to merge your multiple accounts, please follow the link here.

The cause is Volume Steps are set to 5 ... At 20% you must have only 5 steps and 20% per step... You need to modify your build.prop and add more in-call volume steps.. Here's an example of 20 steps... 20/100 = 5% volume as minimum..
Soo...
If you MUST Have a minimum of 0 or 1% then set the steps to 100... I recommend 20 however..
Add to build.prop

Go to Development Options
Enable Root Access for Apps
Open a root explorer
Open system / build.prop
Edit this line if it exits, or add it if it doesn't...
ro.config.vc_call_vol_steps=20


text:
Copy entire phone to the same device?
I bought second Asus ZS570KL as backup phone since my old one starts to do... weird things. I created full backup using:
./adb backup -apk -all -obb -shared -v -f /backups/phone8.ab

And later performed
./adb restore /backups/phone8.ab

But it only restored files. When I checked out adb logcat -b system I noticed:
04-06 22:29:45.596 10100 10256 W DefContainer: Failed to parse package at /data/cache/backup_stage/pl.m4x.sphinx_customer_android_mobile_app_v2: android.content.pm.PackageParser$PackageParserException: Failed to parse /data/cache/backup_stage/pl.m4x.sphinx_customer_android_mobile_app_v2
04-06 22:29:45.617  2214 10078 D BackupManagerService: [discarding file content]
04-06 22:29:45.624  2214 10078 I chatty  : uid=1000(system) adb-restore identical 52 lines
04-06 22:29:45.624  2214 10078 D BackupManagerService: [discarding file content]
04-06 22:29:45.625  2214 10078 I BackupManagerService: Package pl.neptis.yanosik.mobi.android not installed; requiring apk in dataset
04-06 22:29:45.625  2214 10078 D BackupManagerService: APK file; installing
04-06 22:29:45.625  2214 10078 D BackupManagerService: Installing from backup: pl.neptis.yanosik.mobi.android
04-06 22:29:49.671 10100 10256 W DefContainer: Failed to parse package at /data/cache/backup_stage/pl.neptis.yanosik.mobi.android: android.content.pm.PackageParser$PackageParserException: Failed to parse /data/cache/backup_stage/pl.neptis.yanosik.mobi.android
04-06 22:29:49.699  2214 10078 D BackupManagerService: [discarding file content]
04-06 22:29:49.805  2214 10078 I chatty  : uid=1000(system) adb-restore identical 100 lines
04-06 22:29:49.805  2214 10078 D BackupManagerService: [discarding file content]
04-06 22:29:49.805  2214 10078 I BackupManagerService: Package ru.dront78.pulsedroid not installed; requiring apk in dataset
04-06 22:29:49.805  2214 10078 D BackupManagerService: APK file; installing
04-06 22:29:49.805  2214 10078 D BackupManagerService: Installing from backup: ru.dront78.pulsedroid
04-06 22:29:49.811 10100 10256 W DefContainer: Failed to parse package at /data/cache/backup_stage/ru.dront78.pulsedroid: android.content.pm.PackageParser$PackageParserException: Failed to parse /data/cache/backup_stage/ru.dront78.pulsedroid
04-06 22:29:49.812  2214 10078 I BackupManagerService: Package ru.zdevs.zarchiver not installed; requiring apk in dataset
04-06 22:29:49.813  2214 10078 D BackupManagerService: APK file; installing
04-06 22:29:49.813  2214 10078 D BackupManagerService: Installing from backup: ru.zdevs.zarchiver
04-06 22:29:50.296 10100 10256 W DefContainer: Failed to parse package at /data/cache/backup_stage/ru.zdevs.zarchiver: android.content.pm.PackageParser$PackageParserException: Failed to parse /data/cache/backup_stage/ru.zdevs.zarchiver
04-06 22:29:50.304  2214 10078 D BackupManagerService: [discarding file content]
04-06 22:29:50.305  2214 10078 I BackupManagerService: Package simple.hexadecimal.color not installed; requiring apk in dataset
04-06 22:29:50.305  2214 10078 D BackupManagerService: APK file; installing
04-06 22:29:50.305  2214 10078 D BackupManagerService: Installing from backup: simple.hexadecimal.color
04-06 22:29:50.470 10100 10256 W DefContainer: Failed to parse package at /data/cache/backup_stage/simple.hexadecimal.color: android.content.pm.PackageParser$PackageParserException: Failed to parse /data/cache/backup_stage/simple.hexadecimal.color
04-06 22:29:50.473  2214 10078 D BackupManagerService: [discarding file content]

So it seems to crash. Google backup only seems to back up 80 of my 380 apps and definitely doesn't back up largest ones. What are my other options to perform full device mirror including all apps data, settings, credentials and everything? I'd like to have exactly mirrored 2 devices.

You didn't state the Android version on your two devices. A guess: Nougat (Android 7)? And what failed where all those apps? Known bug then. If you still have the original install (i.e. didn't factory-reset after the backup), take a look at my tool Adebar. Let it generate the backup scripts, perform the app backup (gives you one archive per app), and then use abrestore from the tools/ subdir to restore, which works around the bug (details don't fit in a comment here).

Yes all apps failed. I used ASUS Device transfer but it only transferred .apk files (without data). Most of apps that had data "failed to install" while I performed cloning but in fact were installed properly so I assume "fail" part was about data cloning which maybe required rooted device? idk.

It's Android 8 btw. I used Adebar with much better results than my naive attempt to use adb backup. It's still far from perfect but at lest some apps properly migrated settings so I guess that's already something.

Apart from those that failed with a file size of 41 or 0 bytes (usually because their devs opted them out from backup) which cannot be restored: did the restore work directly, or had you to revert to tools/abrestore? Oh: and no, data should be backed-up and restored fine without root this way. Except for those where devs disallowed it for their apps.

@Izzy I used standard restore (userbackup/sysbackup + userrestore/sysrestore) just added -obb flag to script. For some reason shared files backup done by Adebar didn't work so I used adb backup -shared directly to restore files before using Adebar restore scripts. As result most of apps migrated properly. Most of those which didn't either required user to log in (so I assume those apps had disabled backup). Others backed up partially (eg. settngs didn't get restored but bookmarks did or other weird cases of partial settings restoration). I copied settings manually so now it's ok.

Thanks! So it was not the Nougat-Restore-Bug (where restore only succeeds if the app is already installed; hence abrestore unpacks the APK, adb installs it, and then runs the adb restore) – but some other Oreo-Restore-Bug… If all else worked out, mind mentioning your device+ROM in #7 (supported devices)?

@Izzy I think it was this bug if it works the way you said. I didn't mention but I used Asus Data Transfer before Adebar to migrate all apps (without settings) and then Adebar scripts to restore settings. So I in fact used Adebar to only restore settings, not apps since they were already installed by Asus app at the time of running userrestore/sysrestore. That said I tried to do adb restore after adb backup -obb -all having apps installed by Asus app before and it also didn't work. So I guess bulk restore of all apps settings never works. Nasty issue. Gave me real struggle.

Ah, thanks! Now it's clear. Took me quite a little to figure that one out as well. Luckily I did :)

To manage the system and not give it root access, you neex to use a custom recovery.
A custom recovery will allow you to backup your DATA & SYSTEM Partitions so thst you can restore everything easily and safely.
The most common custom recovery in my opinion is TWRP or Team Win Recovery Project, this would be the newest most common in succession from Clock Work Mod as the most common.
I searched for TWRP for your device, and i got this installation guide... .
Zenfone 3 & 3 Delux TWRP
Once you've successfully flashed TWRP you can do the device clone that you want by going to Backup and performing a full device backup to the External SD Card.
Now install TWRP on Device 2.
Place your SD Card from Device 1 with the new backup into Device 2
Boot into TWRP on Device 2
Go to Restore and select External SD
Select your backup
Restore the backup.
The second device will be entirely replaced with the data from the first device excluding some stuff like IMEI number etc, depending on your TWRP Version....

Locked Bootloader ?
Asus provides an Official unlock tool for your specific device at the Asus website...
Here's a direct link...

Asus Unlock Tool

Reference ;
www.asus.com/Phone/ZenFone-3....

I assume it requires unlocking bootloader? Zenphone 3 Deluxe has factory locked bootloader.

@Lapsio yes it does. Even if you just want to run it (fastboot boot twrp.img) instead of flashing it. Someone said having seen exceptions to that, but those are very very rare.

I looked into the guides everywhere, and i can't find anything about unlocking your bootloader.. Are you sure you can not just run fastboot oem unlock or fastboot oem unlock-go

With a method i used, i somehow managed to unlock my bootloader by looking at the actaul handling of the unlock, Using certain commands before using unlock will allow the Unlock... For example the unlock code has this comment written by the developer... "If unlock fails, try lock first" ... So i managed to find 3 commands that needed to be run consecutively to unlock a locked bootloader... The first command ( i can't remember ) it was something like fastboot flashing unlock and then fastboot oem lock & finally fastboot oem unlock........ It will look like the first two commands fail !

UPDATED ANSWER WITH OFFICIAL UNLOCK TOOL FROM ASUS.

@Zillinium Thanks. I'm marking as solution since it probably would work. I know about tools from Asus. But I have locked bootloader and unrooted phone by choice, not because I have to. It's just significantly more difficult to bypass locked down phone up to point where it's rarely worth it. (I know it's possible tho, I worked with specialized mobile forensics tools made for police etc. that provided images signed by all major manufacturers. They're actually available to public, just pretty expensive). I do use full Android encryption but still unlocking bootloader opens more attack vectors.

How do the image's signed by major manufacture's help in any way ? .. You can obtain these images by using the law also, it is part of the Open Source license to Android that kernel sources etc... must be provided if anyone asks for it, to comply with the open source license of Android...... Android uses open source linux and java etc, they can not claim ownership of Linux or Java therefore Android Must be an Open Source Project.

P.S.. I'm a bit of a self proclaimed MTK Guru so i could help alot more if you had an MTK CPU, i could help you install TWRP without unlocking the bootloader and without gaining root access... I'M currently on a Cloned device ATM, IMEI number, Mac Address etc... I cloned the entire device in every aspect down to the binary code !


text:
How to use mobile data instead on WiFi (while WiFi is on) on Android phone?
I am looking to use an Android phone as the proxy server, so I set up "Proxy Server" on my Android phone -> Connected phone to Wifi -> Got local IP of phone -> Connecting to phone thru LAN (from my local computer) thru the proxy and it's working, but the phone is using same WiFi connection to connect back to the Internet.
So I got 2 questions:

Is there any way to force Android to use mobile data to access the internet while having the WiFi on?

I can not connect thru that proxy from the Internet when I am using my phone's IP address. I am getting the error "Connection refused", I did some research and looks like some ISP blocking some or most ports. How do I deal with/bypass that?

(1) Why don't you connect PC to phone through hotspot, and phone to internet through mobile data? You can go other way too; create hotspot on PC and connect phone to it through wi-fi, as well as to internet through mobile data. Its also possible to connect to a third wi-fi source while the phone is using mobile data for internet. All situation require some manual configurations on both sides, and necessarily a rooted phone. (2) You have to deal with Carrier Grade NAT. See this: https://android.stackexchange.com/a/205807/218526

You are trying to connect to a local network from a public network..
Using WiFi allows the local connection as you've mentioned but using Internet is different because it is not a device on the same WiFi network ( local )
To connect to a public ip, the device should have a server... Try looking into making a simple http server for either the PC or Phone.


text:
Will clearing image cache delete images from phone?
In my Oppo A3s, in the settings app, there is an option to clear image cach(approx. 900mb).
I just want to know, if it will delete the image from the device(or sd card) or not.
Thanks.

Posting duplicate questions is not okay. Use the contact button at the bottom of this page if you have lost access to your account and wants to regain the access.


text:
heimdall libusb error -1
I am trying to flash TWRP on Samsung Galaxy S6 that I inherited from someone else, there was already some custom software on it, but I am not sure what exactly. File transfer to a computer works fine. The computer I am using has ubuntu 16.04 installed and heimdall from the official repositories v1.4.1) and the following works fine on an S4 mini:
$ heimdall print-pit
Heimdall v1.4.1

Copyright (c) 2010-2014 Benjamin Dobell, Glass Echidna
http://www.glassechidna.com.au/

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://www.glassechidna.com.au/donate/

Initialising connection...
Detecting device...
libusb: error [_get_usbfs_fd] libusb couldn't open USB device /dev/bus/usb/001/018: Input/output error
ERROR: Failed to access device. libusb error: -1

Try to run heimdall as root. sudo heimdall whatevercommands

already tried, did not work. I just made it work by switching to LXDE, it was probably missing a library and I am not sure why it did work on the s4 mini

Good that you found a solution. Answer the question for others who may have the same problem in the future.

it just stopped working...  not sure why. I set up the permissions for adb to work without sudo some time ago, I have to recheck, maybe I have add some rules.

Does this command work? sudo chmod o+w -R /dev/bus/usb/whatevernumber. Also remove udev restrictions.

no, still the same error. If I use sudo, the error changes: ERROR: Failed to send handshake!ERROR: Protocol initialisation failed!

Same error(s) with heimdall v1.4.2?

just compiled and tried heimdall 1.4.2, same problem.

the problem must be on the side of the s6, I was just able to flash twrp. Heimdall works, but only for a moment after entering download mode. Thanks for the help!

The problem must have been on the side of the s6. I was able to run heimdall print-pit successfully, but only for a moment after entering download mode.


text:
Copy a complete chat from whatsapp to PC
Anyone an idea how I can download a complete conversation with voice messages and pictures to an xls file with date and time? I can do it manualy by copy paste and save every individual voice message but that is a lot of work. Can this be done on another way?
Thanks,
Jan

Open the conversation. Enter options menu -> more -> export chat -> with media -> send via email
Check your email. Save all attachments to disk.
Open the text file with Wordpad. Press CTRL + H. Replace string - Name 1: with the string |Name 1| and repeat for Name 2. Save it.
Open spreadsheet, and use | as separator, when importing a text file.


text:
How to access PC disk from adb shell?
My emulator can't do adb root. Anyway, I can do adb shell and then do su and get root to do my things. But how to copy some file from my PC to connected device using adb shell? Where can I access my disk? cp Mypc/somefile /Myandroid/comewhere ?
EDIT: I can't also do adb pull :(

Lol, I just set everything to 777 with su:

x86_64:/ $ su
x86_64:/ # chmod 777 /data/mi
misc/     misc_ce/  misc_de/
x86_64:/ # chmod 777 /data/misc
x86_64:/ # chmod 777 /data/misc/
adb/              cameraserver/     media/            shared_relro/     vold/
audioserver/      dhcp/             net/              sms/              vpn/
bluedroid/        ethernet/         perfprofd/        systemkeys/       wifi/
bluetooth/        gatekeeper/       profiles/         trace/            zoneinfo/
bootstat/         keychain/         profman/          update_engine/
boottrace/        keystore/         radio/            user/
x86_64:/ # chmod 777 /data/misc/key
keychain/  keystore/
x86_64:/ # chmod 777 /data/misc/keystore/
x86_64:/ # chmod 777 /data/misc/keystore/user_0/
x86_64:/ # chmod 777 /data/misc/keystore/user_0/*
chmod: /data/misc/keystore/user_0/*: No such file or directory
1|x86_64:/ # chmod 777 /data/misc/keystore/user_0/*
chmod: /data/misc/keystore/user_0/*: No such file or directory
1|x86_64:/ #

And it worked :)))
marat@marat-desktop ~/Desktop> adb push charles-ssl-proxying-certificate.cer /data/misc/keystore/user_0/charles-ssl-proxying-certificate.cer
charles-ssl-proxying-certificate.cer: 1 file pushed. 5.4 MB/s (1348 bytes in 0.000s)
marat@marat-desktop ~/Desktop>

Fix the permissions afterwards or else you just opened up a vulnerability on your devices data partition.

@Cookie you are in a sense making fun of Discretionary Access Control, like Windows did with UNIX and now they are fighting with malware. If everything is to be chmodded to 777, why there other permission modes exist! Instead of changing permissions of directories, do adb push to some writeable directory like /data/local/tmp and then use cp or mv from su shell.

Yeah, cp is more elegant way to do this. But i was using anbox and it cant even set pin code for ssl by android'd os requrement :(


text:
Is it possible to open a locked android device or access it's files without knowing the password?
I have a Samsung phone which is password protected it also has fingerprint enabled.
I don't need to know how to open it I just want to know if it's possible to unlock it or access its files?
There is someone claiming that he can open it without losing any of the data for a certain amount of money?

Some Samsung devices have a bug in the MTP protocol that allows to access files on the sdcard section from a PC via USB while the device is locked: https://medium.com/@richarjb/exploit-test-samsung-s6-s7-arbitrary-file-read-write-on-locked-device-via-mtp-626396f7482

I wouldn't accept this if someone offered me such a service... You can find ways to unlock the system and remove your locks from data...


text:
GPS Rollover on Android Smartphones
Regarding the GPS weeks rollover which took place on April 06th 2019. all the websites are talking about the phenomenon but they are not explaining what are the side effects on end users devices if the week number will be 0000.
How an Android smartphone GPS users could be affected regarding this rollover from 1023 to 0000 weeks ?
Regards

From what I know the rollover is not the only problem, also an additional week counter 13 bits is introduced. A new data format (with larger data) can of course cause problems if unsupported by the GPS receiver firmware.
Also I have read that some GPS devices use the week counter for plausibility checking of the received data. If the week is smaller than the manufacturing week the data have to be invalid so the simple but bad logic. After the roll-over it will simply reject all incoming data as the receiver thinks that the received data is invalid (e.g. because of radiointerference).

"the week counter is increased..." makes it sound like the 10-bit week code is changing.  That's not happening.  The legacy (ICD-200) message continues to encode a 10-bit week number.  There are additional messages (such as in the CNAV data) that transmit a 13-bit week number for newer equipment to read.  There's no compatibility issue for older equipment.

@BowlOfRed Theoretically you are right, however programmers often develop such bad code so that any changes (even those already described in the standard) can and will lead to program failures even if it should continue to work without problems.

I'm unaware of any changes to the data format related to April 6.  The 13-bit week number data format has been broadcast in CNAV packets for several years (but only from newer satellites).  GPS III sats will also be a change, but none are marked operational yet.

The problem on my device (old Samsung xCover2) is that GPS tracks recorded after April 6th, 2019 have an invalid date.
Check out "GPS Test" app from Google Play to see what date/time your device reads from the GPS system. For example on my phone on April 17th, 2019 it displays September 1st, 01.
Different applications will interpret it in different ways so in other applications you might see dates in 1099 or 2099 or 2999 year etc.


text:
Phone not charging
My phone doesn't charge at all, even when is charging while switched off.
And I have tried it with many chargers and battery.
But same thing keeps happening

Do you see any charging indication in your phone when you plug in?

Based on your description there is one very likely reason for your problem:
The USB port of your phone is defect. It is loose and has lost connection to the circuit board it is placed on, therefore no (or very little) power can flow through it. This usually happens by too many movements of the USB plug while inserted into the USB port (the USB plug works as a lever and the longer the plug is the more force it can put on the USB port of your phone - this is called "principle of the lever").
Depending on your phone and how large the hardware defect is, often it can be fixed by re-soldering the USB-port to the circuit board. However this require soldering experience and the right soldering equipment.
In some devices the USB port is located on an small extra circuit board that can easily be replaced with a new board.

May be worth measuring your battery terminals with a DVM and seeing if its greater than 3.6V. If your phone is on charge but is in some form of a charge loop you can take out the battery and manually charge it up to >3.6V using a TP4056 circuit and some test probes (with steady hands, patience and a lot of care). I've only had a charge loop once before but i'm guessing its probably not what your experiencing.
If you want to see if your charger is active then you can plug in a USB charger doctor inline with your USB lead and that may tell you a lot.
Note - If your battery measures <3V, you may want to purchase a replacement (for safety reasons).


text:
Google photos uploads everything from DCIM folder
So in my Redmi Note 7 Pro, the screenshots and screen recordings all go in a subfolder inside DCIM folder. Photos (app by Google) simply uploads everything in the DCIM folder. I have tried this, but it did not work (hence asking a new question).

You should be able to configure the folders you want to sync: https://www.androidcentral.com/how-set-google-photos

It doesn't contain DCIM folder (and DCIM subfolders).

There seems to be no clear solution to this.
I have had to manually move the sub folders within DCIM to outside the DCIM folder using a file explorer so that I can later individually choose which folders should get backed up in Google Photos.

- Settings
- Backup & Restore
- Select Account
- Unselect Sync Photos

Now in each app...

Open Photos ( The app by Google )
Go into settings
locate sync or Save Storage features
Disable sync

Look around for any other apps using synchronization and disable it...
I think Google Drive does this for Photos as well as other apps.


text:
Rooting Honor View 10 WITHOUT unlocking Bootloader?
Does anyone know if it's possible to root the Honor View 10 without unlocking the Bootloader first? Huawei no longer provide Bootloader unlock codes, but I can't work out if the Honor View 10 can simply be rooted without flashing anything, i.e. as a separate and distinct process.... If so, does anybody have/know of a procedure for this? ....(Lots of conflicting opinions on this!)....Cheers, River

You need to get the unlock code with GSM Multi Hub and then Unlock the bootloader... Then flash TWRP with Fastboot & Then root with Magisk.zip.... Found Full Software on Google Drive here https://drive.google.com/file/d/0B41hcbd6Ki6ocENEcmhxbEh0dlU/view   & Found Guide for usage here... https://erdentec.com/huawei-bootloader-unlocker-tools/#5_Huawei_Code_Calculator

Buy an unlock code somewhere. Don't even think about rooting modern phones with exploits.

Have already tried to buy a Bootloader code, but it seems it's just impossible now...Even 'funkyhuawei' can no longer supply for the extortionate price of $155


text:
how can i gain access to texts if i dont have the phone in hand
So let's just say I dont trust my husband, and I want to access his calls and texts on my computer. I dont have his phone right this second, but I am the account holder for both phones and they are linked by gmail and yahoo accounts. Is there a way I can remotely gain access to these?
I have tried calling my cell carrier, I have tried different applications, not sure what else to do.

What Android version & Device is he on ?
It is extremely important to know if the target device has a Firmware update coming soon and also it is important to know what Android Version the device is running on, both these pieces of information can be obtained by getting the target to load a website and provide data to the website for loading.
I made this page as an example of a browser user agent string reader Check Device & Browser example php
After you know the Android version is not going to change ( No Updates ) and you know what the Android Version is.. Then you can look into remotely monitoring that version of Android.
Let me explain some more,
On Android 4.4 or below,
You can track the text messages, calls, call history, message history, application launch history etc..
You can use several application's below Android 5.0 to monitor android almost invisibly.
My favourite would be the simple ones like SMS Forwarder and mainly any Parental Control apps, have a look around at the options, i haven't used Android 4.4 for age's so i can't even remember any others.
Android 5.0+
On Android 5.0+ Things get a lot, A Lot, Harder !
In Android 5.0 you need to select the SMS Handling application, this only allows 1 single application to Read the SMS Messages being sent !
However you can still receive SMS Message's easily using a Broadcast Receiver ( For Phone Number Verification in Applications )
So, on Android 5.0+ it will be very difficult without modifying the system of the phone to allow a monitor application.
Logs and LogCat Reading,
You can still read the sent message's using a Log reading method, It waits for the SMS to go into OutBox or Sent and then uses Read Messages permissions to list all message's in the default SMS App, once it has listed all the message's, it then checks by time to see was last sent.
However Android 6.0+ Implemented
( On Demand Permission Acceptance )
With Android 6.0+ you need to accept the permission to receive calls, sms sent & sms received information at each read... Their goes Invisibility...
Due to the massive number of permission changes to Android, it is probably going to be a fight to get an app working with all permissions permanently accepted so as to stay hidden.
You are the owner of both accounts
I have seen accounts being used to bypass the Messages & Calls & Contacts permissions by using Google Backup...
The Application initiates a Google Backup of everything on your device and then you can access that information by restoring it onto another device that you own.
Conclusion

Permission acceptance can stop monitoring software from working.
Default SMS Application Selection can stop SMS Sent monitoring.
Android 6.0 Stops Monitoring by using Permissions & SMS Application Selection.
Android 5.0 Stops Monitoring by using SMS Application Selection.
Android 4.4 or Below will not stop Monitoring at all.
OTA Updates can update your Android Version and bring about new problems as I've mentioned.
Both Devices Accounts are linked, so data can be accessible by Google Backup & Restore.
Some stuff can be monitored invisibly, however you need to accept the permissions permanently so the user never See's it.

Other methods than Malware or Spyware
A method sometimes used by Law Enforcement Agencies is to Clone the SIM Card, you can buy many SIM Cloning device's online and blank sim cards to clone into... However many ISP or MSP's are monitoring for Cloned sim cards and only allow 1 device to receive the message or call..
Sometimes it is at random who gets the text or call, but only 1 of them gets it.
SS7
SS7 is a security protocol that we all accept when using an Android device, as part of that we allow all our information to be accessible through the security protocol SS7... Even your Camera is accessible while your device is switched Off...
Many hackers have hacked SS7,
You can even use whole website bots that do the hacks Automatically by purchasing an account with them, software can also be purchased that hacks SS7 Automatically as well.
Root Access & Spyware
If the target has Root Access, thing's get a lot easier... Root Access Spyware can literally be invisible... You could manipulate the stock messaging application and also implant spyware into the system, i will not cover that here.
My Advice

Ask him, tell him that you are unsure about his commitment to the relationship and you would just like to have some closure by looking through his phone ?

It is easy to delete a message and call history i know, but trust is a very powerful thing.


text:
What can be removed from Android Tablet?
I was recently given a roverpad tesla 10.1 tablet :
(https://www.imei.info/phonedatabase/16842-roverpad-tesla-101/)
It is total garbage as a tablet but I would like to use as a controller for a mini robot via an android app (via bluetooth). So in order to get a better experience I would like to remove all the unused features (multi apps ? multi screens ? logging screens).
Right now even after doing a 'one click root' = KingRoot (but it is not a total root, so I can delete apps but cannot change the OS) and deleting all the non system apps from the tablet it is still quite laggy (but battery life is way better).
Would you have some advice on how I can optimize it for one single usage (running an app to control a robot via bluetooth) without routing it (well if someone knows a way to root this poor soul, that would be quite awesome).
Thank you in advance,
Artiom

What do you mean with "can not change the OS"? Please tell us exactly the command you are trying and the error message.

I just meant that it is a kingroot type of root, so I can't change the OS as I only have root permission for given apps, in order to boot on a new OS I would have to do a permanent root, which I could manage to do.

You can gain root access depending on your Android version using various methods on that device.
Try these first,

FramaRoot Application
TowelRoot Application
Then, only if they failed !
KingRoot 4.9.6 Application

Kingroot will root %99 of Android device's running below Android 5.0, however it is annoying to remove it, that's why i suggest FramaRoot first.

Thanks for your answer, but I already use KingRoot (that's what I called a 'one click root' sorry if it's not the appropriate name), using it I already deleted all the base app package on the tablet, such as play market or google chrome. But I cannot change the OS using such type of rooting.


text:
How can my recorded data usage be 5x higher than what's shown in the apps list below it?
On the data usage screen, it says 1 GB used at the top, but if I add up the data from the list of apps below, it only adds up to about 180 MB. What are the possible causes?
I'm talking about this screen: https://cdn.guidingtech.com/media/assets/WordPress-Import/2015/09/ImageJoiner-2015-09-21-at-7.07.57-pm_result.png (not my actual screen, just an example)
And -- there's only 3 apps that really used any data (hotspot, maps and chrome) because the rest (about 10 others) only used less than 1MB and so it's really easy to see and I'm not miscounting.
I have an S7 Active running 7.0.

I have understood your question, but haven't quite understood those screenshots. In the screenshot everything looks fine. You gave an example screenshot, but it is not sufficient, you need to give your device's actual screenshot so that we can understand the problem clearly.

No, I don't need to include a screenshot of my device. The screenshot wasn't even necessary -- I just wanted to be extra clear the screen I was referring to. All you need to know is the data usage summary at the top far exceeded the list of apps below. It is the default android data usage screen in the settings.

How often do you disconnect mobile data or are there frequent coverage holes on your daily way? How large is the data packet size your MNO uses for calculating the data usage (10KB, 100KB or larger)? Smaller data connections are rounded up to that value. In case of frequent disconnections this may end up in a lot of data usage by rounding up.

I solved this. It was due to having the wrong APN settings, which like Robert said, probably caused a lot of issues even though I was in an area of good coverage. It was an unlocked phone.


text:
Can't use Gmail and Google play store
In my Samsung galaxy on nxt, android version 8.1.0. in my phn I can't use Gmail as it is showing msg that Google play is updating. And same time can't sign in Google play store. What to do?

You can check the internet connectivity. Other thing is to reboot the phone. Ideally this should help and if it doesn't you need to go to customer care of Samsung.


text:
How will I know whether my phone supports wireless charging or not?
I am planning to buy a wireless charger for my phone, and then planning to make one myself.
But I don't want to waste my parent's money to buy that unnecessarily if my phone doesn't support that feature.
How can I understand whether my phone supports wireless charging or not? means, whether it has that hardware or not?

Usually, the Phone's specifications on manufacturer's website and info on Gsmarena.com are sufficient to conclude the presence or absence of it.

Is there any app for checking that?

Seems the best way is to just sit it on a wireless charger.

If you can remove the battery, chances are that you do not... If your phone Back battery cover has an aerial on it, the aerial is for Wireless Charging... You can convert device's to have it with certain battery's that have the aerial built in, because you can convert the device that doesn't support it... You can not really get an accurate result from an application.. The software is no different than a device that doesn't support it, so it is not easy to detect....... However this application says it can..https://play.google.com/store/apps/details?id=com.wikimediacom.wireless.charging.checker


text:
Forgot password on Samsung Galaxy S7 Edge, trying to access for Google Authenticator
I never wrote my password down for my old S7 Edge and managed to forget it.  Overthinking the security and privacy, I also never signed up for Samsung's service and Google's Find My Phone only recognizes my current phone -- so I can't use those online services to reset the password.
I'm wondering if there's a super-user method to get into the phone (or extract data) without wiping the data with a hard-reset.
In the Android Recovery screen (volume-down, home, and power buttons held simultaneously), I have the "Apply update from ADB" option but sideload seems to be the only functionality and the handshaking seems wrong.  The resulting messages on the Android are:
    Finding update package...
    Opening update package...
    E:footer is wrong
    [...]
    E:signature verification failed

I found online somewhere that the password file for the phone model is in
/data/system/gesture.key and
rm /data/system/gesture.key
would be ideally what I'd like to bring about.  However, I can't use a command such as adb shell on it without the password.  I also haven't figured out a way to inject and run a script (particularly with the handshaking and with adequate privileges for the phone) with that rm command using adb sideload.
More details or seeming dead-ends:

The phone was not rooted.
I'm fairly certain I enabled USB debugging.
It's a SM-G935W8 (Canadian) model with hero21tebmc (firmware?).
Samsung's Smart Switch software is also not an option to transfer data (w/o knowing my old password).
The third-party software I've seen and tried on a friend's Winwoes laptop doesn't have the password-reset capability on the S7 Edge... it would work if it was an S6 or older unfortunately.
the Android Recovery screen has other options including: "Apply update from SD card", "Mount /system", "Wipe cache partition", and the dreaded "Wipe data/factory reset".
I'm using a Linux distribution (Ubuntu 18.04) and would use heimdall on the command line (instead of the Odin software).

These links, Official TWRP for Galaxy S7 edge (hero2lte) or Flashing Firmware on Linux/Ubuntu using Heimdall, are likely to be the instructions I'd follow with due care.
If I persist and try to use TWRP or some sort of program to "recover" my data it seems highly likely to wipe it (even if I don't proceed to root it).
Along the same line, I suspect installing LineageOS would wipe the data in the process and there's probably no way to sift through the wreckage of the data (which is probably without pointers/inodes but presumably not outright erased) in some kind of brute-computational-force way either.
Is there any way to get at the data (instead of waiting every hour to try to re-discover a strong and essentially gibberish password)?

You have two problems:
First, when the bootloader is locked, you can not use fastboot. Unlocking will wipe your data. If the bootloader is unlocked, you can just boot twrp without flashing (fastboot boot twrp.img).
Second, the data partition is encrypted, and even if TWRP should be able to manage decryption, the pin is reqired.
You have no other option than brute force. If USB-OTG is working and it is a 4 digit pin, this can be done with Teensy or any other microcontroller. But this may wipe your data after 10 attempts, depending on gatekeeper settings (afaik not for S7).

Some Samsung devices have a bug in the MTP protocol that allows to access files on the sdcard, see comment from Robert https://android.stackexchange.com/questions/210051


text:
Cannot install TWRP
I am trying to install TWRP on my android phone. My problem is that when I try to flash the img file the download starts but it doesn't get all the way through and just throws command failed at me. Any idea why this might happen?
By the way, I do have an unlocked bootloader, I have spelled the img file name correctly, and I have checked that the device is connected before flashing with adb devices.
My phone is the Huawei Honor 8 (FRD-L09), and I am using the SDK platform tools to flash the recovery
The commands are:
adb reboot bootloader
fastboot flash recovery img file

and then it fails.

IIRC, Huawei devices starting from Oreo has a recovery_ramdisk partition instead of recovery, which by the way requires corresponding recovery ramdisk images.

Would be nice if you include the error that you see. Because without that it's going to be tough.


text:
What happens under the hood when a network request is made by an application
I'm interested in knowing what happens at the kernel level when an application makes a network request. While playing with strace I was hoping to find system calls like connect() to make a connection with an IP socket but instead, I found connections to local Unix sockets. From what I understand these connections may be for logging or any other system service. A lot of ioctl calls were also made which I'm guessing were for binder communication.
If the application is not servicing the request, is it being passed on to a system service using IPC which then sends back the response to the application? I was wondering if these requests could be captured at the system level using ptrace in order to monitor/block them.
I'm using a rooted device running Android 7.1.2


text:
Is there a way to check the default web browser that is set up on my smartphone?
I want to use "Chrome Custom Tab."
However, to use "Chrome Custom Tab," the default Web browser must be set to "Chrome".
Is there a way to determine which default web browser is being used on your device?

you can check standard browser from app settings. this is for android 7 (german translation)
Settings -> Apps -> Chrome (App info, scroll down) -> Browser App -> Browser App (again)

Is there a way to check using Java Source Code in Android Studios?

https://stackoverflow.com/questions/23611548


text:
Remove additional date from notification and lock screen
In my Samsung Galaxy S8, Android 9, I see an additional date, showing in parentheses, both on the lock screen and in the notification bar when I roll it down. For example, right now it says "16:58 Mon, April 8 (FAR 19)".
I'm attaching a screenshot of the lock screen, but it also appears in the notification bar.

I checked within all the apps I could think of, also looked to see that I don't have any "other calendar" or "alternative calendar" configured. Also, I found out that FAR is a Persian calendar which makes no sense for me...
Tried already contacting Samsung chat support but the couldn't help (they did ask me to reset my phone configuration and to clear caches and other stuff).

Can you try what is suggested here: https://www.sammobile.com/forum/threads/37711-How-to-change-G955F-CSCcode-to-simcard-code-for-your-OXM-country?p=193910&viewfull=1#post193910 ?

@ReddyLutonadio that means resetting my device to factory defaults? that's the last thing I want to do...

I found out that it's not something that can be changed via settings - it come's like that out of the box when the device is meant to be sold in a different market.
In my case, every time I insert a new SIM card into the phone and restart it I got a notification saying that in order to set new settings for the phone I must do a factory reset. So when putting back my own SIM I also got this message. Once I did that suggested factory reset phone started fresh with a factory configuration that matches my region, making the Persian calendar disappear and also enabling other features that weren't enabled before, such as native call recording
(worked on both Samsung Galaxy S8 and S20)


text:
How to sync facebook contacts with ASUS ZenFone 5Z (Android 9)?
ASUS ZenFone 5Z Android 9 and latest ZenUI
This question has been asked before, but none of the answers address what I'm seeing on my device.
I've added the Facebook App, and I've added my Facebook account, but I still don't have the option to sync my contacts from Facebook.
When I look at my Facebook account, I see this:

The menu ellipsis on the second screen only has one item: "Sync Now" which doesn't seem to do anything. I don't see the options to choose what automatically syncs and what doesn't, that are referenced in other answers.
I've looked through my mobile data settings, and I can't find anything that might be preventing Facebook from using data, AND I've been connected to WiFi all morning. I've tried removing the account and uninstalling the app, and then reinstalling/re-adding, but to no avail.
A lot of the other answers (like this one: https://android.stackexchange.com/a/123271/292111) reference an item in the "Network & Internet" menu. The "Data Usage" sub-menu is supposed to have a menu ellipsis with a toggle for "Auto Sync Data" which, when turned on, causes the sync options for the Facebook account to appear on the second screen I posted above. In my case, there is no menu ellipsis in the "Data Usage" sub-menu.
My expectation is that Facebook would eventually show up as one of the contact sources in my Contacts app.
Any suggestions?

It looks like this hasn't been supported since 2016: https://m.facebook.com/help/community/question/?id=1028796497164750
I suppose it makes sense that if your social network data is your bread and butter, you probably don't want to be delivering it for free to just any old device out there.
It seems odd to me that this information was so hard to find, though.


text:
What steps are taken by the OS when an app is uninstalled?
I recently reported bug for two apps that I use. The support guys replied that I need to delete cache and unblock notifications, set battery optimization and putting that app to sleep to turned off. These are understandable steps to fix an issue.
What puzzled me that both the app support guys additionally suggested that I should uninstall the app and reinstall. Which I will not do because that will mean I have to manually download all the downloaded content again (more then 50+). Seems like a nuclear option.
I am not an Android developer, a .Net full stack developer. Their response made me curious and now I want to know what happens when an app is uninstalled. What made the support guys of these renowned apps to tell me to go nuclear and uninstall the app and then reinstall again?
Additionally which these steps can be performed without uninstalling the app to verify if issue is not with code of the app but it is some other factor?
This question is not regarding those two apps that has bugs but rather to get better understanding of the life-cycle of an Android app.
As of my understanding, in my .Net app most bugs usually are caused by either code or cache issue (tbh cache issue is also due to code not properly handling caches).
As my understanding in Android is limited, I tried to research what are the events and tasks that Android OS performs, that might cause an app's bug to get fixed (Not an effort to fix issue for those apps, rather to understand what Android OS does) however I didn't find much resource on the internet.

By deleting the app data all problems that may be caused by data migration issues are gone. Because of the high update frequency of apps migrating the app-specific user data is a big topic and a potential source of problems. Also it is an "easy solution" - from the app developers perspective of course.

Uninstalling an app will remove entry from /data/system/packages.xml, and delete package from:

/data/app/ (apk file)
/data/data/ (user data and cache)
/data/dalvik-cache/arm/ (translated java bytecode to executable dalvik bytecode)

Clear cache can performed from the android settings. Custom recovery twrp has option for wipe the dalvik cache.

In addition to /data/app/ and /data/data/, directories from /sdcard/Android/data, /data/misc/profiles/ and /data/user_de/0/ are also deleted. Other files which may be affected include /data/system/packages.list, /data/system/packages.xml, /data/system/users/0/runtime-permissions.xml, /data/system/appops.xml, /data/system/users/0/package-restrictions.xml, /data/system/notification_policy.xml and /data/system_ce/0/shortcut_service/shortcuts.xml. /data/dalvik-cache/ is only used for system apps, not for user apps. User apps' cache is located in /data/app/<PKG>/oat/.

thx i was wondering where dalvik-cache was gone after kitkat. seems for system apps are just symlinks, they have moved too

I think links are for framework (usually .jar) files. Apps (.apk files) don't contain executable (.odex or .oat) files, so those are created in /data/dalvik-cache/ for system apps.

Application updates do not recognise OTA Updates..
I have had several problems lately due to the fact that still use Android 5.0 and updating an application built for Android 8.0 or Android 7.0 will not work on my device..
The application will install the update, however the Data is still configured for Android 5.0 so the application can not read its own data...
Uninstalling the application will erase the Data and allow a fresh installation to initialize the data for a newer configuration.
From my point of view as a developer, i believe that Uninstalling & Reinstalling can be an over kill of a method.
As a developer, i see two options...
Delete All Data to the Application to reinitialize the configuration when you reopen the app.

Open Settings
Open Apps
Find and Open the Apps
Select Clear Data & Clear Cache

...
It may also be a file on the primary SD Card, this is the last stuff to be deleted ( .Android folder )

Open your primary SD Card
Open the hidden folder ( .android )
Open OBB  folder
Locate large data that is linked to the application package name...
Move the OBB Files to a backup folder
Open the .android folder again
Open the other folders and locate the Apps data
Leave the Apps data if it is too large to re download, sometimes you must re-download the data because the app has had the data reset it won't think the data exists until you complete a new data download.

Uninstalling has already been explained, i just wanted to add my suggestions on wiping data for the app, rather than uninstalling.

This makes a lot sense now. That those apps might be having the data configured for older version of Android. I reported the first bug after a week of my phone getting upgraded from Android 8 to Android 9. And the second one might be same too even though I found the issue one month later. I got into that bug reproduction scenario only when I actually started using the feature. The issue might have been there since my phone's upgrade.

If the app stores most of its data online (in the cloud) through an account, then uninstall/reinstall isn't actually that nuclear. All you'd have to do upon reinstallation is sign in and the app should pull all your content back from the cloud. That's the ideal case at least, but of course you never know.
To answer the original question though, uninstall/reinstall is supposed to give you a clean slate and rid you of any accumulated crud and other subtle anomalities in user data. May or may not make sense in theory but practice has shown it helps get rid of problems surprisingly often. This is not restricted to just Android, a similar approach often helps on many other platforms, mobile, desktop, and elsewhere.


text:
Recorded calls of WhatsApp
I need one call recording through WhatsApp.
I have searched for too long, but I didn't find the solution anywhere.
From where I could get my own WhatsApp call recordings?

Call recording has different laws in different countries across the globe, so it can't be a standard feature. WhatsApp doesn't record calls, you have to set up manually. But most of the third party solutions don't work either, particularly without rooting phone.

WhatsApp does not record the calls automatically. So, if you didn't rely on a 3rd party app (I can't make a recommendation) and you did not record the call when it happened, you cannot find any recordings of the same. This makes it impossible to get that call conversation back.

WhatsApp introduced recording voice calls in v2.12.45 beta version, which is capable of recording voice calls. It is a leaked internal-only version, which is presently being used by the engineers for testing and debugging VoIP calls.
Thus, depending on the WhatsApp version, you may find it on /storage/emulated/0/WhatsApp/Media/WhatsApp Calls.


text:
Is it safe to reinstall with a Google prompt linked to my account?
I might put LineageOS on my phone, but I currently depend on it to perform two-factor authentication prompts for my Google account. Should I take any precautions to preserve access to my account?

Yes, of course. You can turn off two-step authentication temporarily, then set it up again on your "new" OS. You should also generate a set of one-time use passcodes to allow access (and keep them safe somewhere), which you really should have generated the first time you setup two-step authentication. You should also have one (or more) account recovery methods setup. These things should be done period, even if you don't change anything on your phone.

I already have backup codes and TOTP from an external device configured, so I suppose I'm good to go!


text:
How do I remove GIF emojis from Gboard?
I can see how to remove emojis from Gboard, but is it possible to remove just the GIF emojis?

Play Store -> GBoard -> Uninstall -> Select the three dots on upper right -> disable auto-update
This will mean that your version of GBoard is without gif functionality, as it was introduced in a later update

Hi @Chris, thanks for the answer attempt, and the effort of putting a picture too...  However this doesn't really solve problem because it assumes someone has the old version, but the asker has the GIFs already... Keep trying and contributing!

This will only work if Gboard is installed as a system/built-in keyboard (it will say "Uninstall updates" instead to revert to the oldest version on the device). If it's installed as an additional/3rd-party keyboard, uninstalling and reinstalling it will still install the latest version with the GIF emoji feature already there.


text:
Alarm behaving very strangely
There is already another question like this (Alarm is disabled when device is switched off) but my question is slightly different from those.
In my new phone with Android 7.0 Nougat, I found something strange.
Suppose, I have set an alarm at 7:00 AM and at that time, the phone is switched off. I found that the alarm works absolutely fine - the screen turns on and the ringtone is played.
But, if the screen is not touched within about 15 seconds, such as, snoozing or dismissing the alarm, the screen turns off permanently, means that even if I hold down the power button, it doesn't turns on. But the ringtone continues to play.
Then I need to pull out the battery, reinsert it and again restart the phone.
Now I have somehow coped up with this issue by setting the Automatic power on time to two minutes before the alarm, that is, at 6:58 AM. But, that is not the solution, because I may sometimes set the alarm to before the power on time and I may forget to change the power on time. I am really fed up with this problem.
Why does this happens and how can I solve this issue?

Seems like an issue with the device's firnware/configuration. This should mostly be handled by the OEM. Can you check that you have all OS updates installed?

Do you mean OTA updates? No, my device has still not received any OS updates.

That's sad. You can check the phone manufacturer's website if any offline packages are available to update your smartphone.

Is there any root-related method to fix the issue? Because I don't think it can be solved without rooting.

Kindly mention rest of the device details. Also check out forums for your device on XDA, or you can download fastboot rom (stock) from OEM's website and try flashing it. This might possibly fix the issue

My device is Micromax Bharat 3 Q437 with Android 7.0 Nougat (stock ROM). MediaTek quad-core 1.09 GHz CPU.


text:
Sniffing SSL/TLS connections with BURP
I want to sniff SSL/TLS encrypted traffic of my installed apps using BURP.
After installing the burp certificate on my One Plus 5T and moving certificates through the Magisk tweak "Move Certificates" there are still applications like mcdonalds that I can't sniff because tell me there isn't Internet connections. I'm sure that Internet connections there is because another app like deliveroo work perfectly with burp.
I was wondering if there was a solution to this problem.

If you have a rooted device with Magisk it is IMHO much simpler to just disable SSL/TLS certificate checking and pinning for traffic sniffing:

Enable Zygisk mode in Magisk
Install LSPosed for Magisk (Zygisk)
Install the Xposed module Trust me already
Open LSPosed app and configure Trust me already module: enable it for all apps you want to intercept traffic (system apps are hidden by default in LSPosed, you have to make them visible using the tree dots menu)


text:
What is the "u#_everybody" UID?
In (multi-user) Android there are UIDs like these:

u0_everybody
u10_everybody
u11_everybody

Those seem different to the usual uXX_aYY UIDs used for the applications. What is their purpose? Is this a way to make files available to all applications (share between applications of a user account)?

As stated here:

Cross-user interactions are blocked using the everybody GID.

Android reserves UIDs / GIDs ranging from 10000 to 19999 for apps. AID_EVERYBODY is one of the special groups, which is used to control app's read / write ability to external storage (/sdcard). This group has GID 9997 for device owner. If there are profiles or multiple users, GID takes form XX09997, where XX is UserID. So u11_everybody resolves to UID 1109997 and u11_a500 to 1110500.
Starting with Android 6, every app has it's own view of /sdcard, which is controlled by exposing /data/media/[UserID] with different permissions. This is achieved by making use of an emulated filesystem (previously FUSE, now sdcardfs) and mount namespaces. For device owner i.e. UserId 0, /sdcard appears with following three VIEWs of permission sets:

For processes running in root mount namespace such as init, netd, vold etc., permissions appear as 0.1015, 0771.
For processes having android.permission.READ_EXTERNAL_STORAGE, permissions appear as 0.9997, 0750.
For processes having android.permission.WRITE_EXTERNAL_STORAGE, permissions appear as 0.9997, 0770.

Screenshot shows three emulated VIEWs with different gid and mask values to get different permissions sets:

* Files never have executable permission i.e. mask=6 becomes mask=7 for files.
* mask=23 is appearing wrong, may be a bug? In actual it's mask=27.
Considering three distinct VIEWs, we come with four situations:

Processes running with root privileges i.e. UID 0 have always R/W access to /sdcard. However if a non-privileged process running in root mount namespace wants R/W access to /sdcard, that would be controlled by group AID_SDCARD_RW (GID 1015). An example is ADB daemon which runs with UID / GID 2000 but 1015 in its supplementarry groups.

Since every app runs with its unique UID in a separate mount namespace:

Apps without READ/WRITE_EXTERNAL_STORAGE permissions won't be able to read or write to /sdcard.

Since every app is a member of everybody (9997) group:

Apps with READ_EXTERNAL_STORAGE permission will be able to read the /sdcard.
Apps with WRITE_EXTERNAL_STORAGE permission will be able to write to /sdcard. So the app has full R/W access to shared / external Public Storage including other apps' Private Storage.

There's an exception to above rules for apps; every app has always R/W access to its own External Private Storage. Let's take example of app com.xyz with UID 10500. Apart from internal data directory /data/data/com.xyz, app has a Private Storage directory /sdcard/Android/data/com.xyz with owner UID 10500. So this directory is always readable / writable by the app.
 Please note that /sdcard/Android/data is traversable for all apps, but no R/W access.
In the same way it works for other user accounts / profiles.
Opaque Binary Blobs: (OBB)
Some apps need additional storage to save large files which can't be included in .apk file due to 100MB maximum size limit. There are two possible obb locations where these files are saved: /data/media/obb/ and /sdcard/Android/obb/. The former was introduced before multi-users concept, so it's only available to device owner. Later is available to apps in multi-user accounts / profiles as well.
Access to former is controlled the same way as to /sdcard, while later is always accessible by an app as is the private external storage.

RELATED:

What is /storage/emulated/0/?
Public and Private files on External Storage
Why is the 'storage/emulated/' directory inaccessible?
How Android's permissions mapping with UIDs/GIDs works?
Are multiple-users protected from each other differently than apps?
How disk space is used on Android device? (see directories occupied by an app under APPS SPACE USAGE).

considering the length you did go (i.e. reference parts of the source code) I can appreciate the effort put in this answer and thank you.   Here as comment also some points it'd be great to get confirmed.  1) with Android 6 different users (multi-users) are better isolated, than just mere apps (using mount namespace), true?   2) the various types (i.e. per user) of the everybody (9997) GID serves the purpose to give access to /sdcard access to apps, allow apps to access a common place /sdcard and not only their "app private" /sdcard/Android/data/com.xyz, correct?

there is(?? was )  this obb folder in Android, does this "share between users"-mechanism still work in combination with the mount namespace isolation?

@humanityANDpeace 1) I have mentioned this in a comment on your previous question, can add as answer if needed. The only notable additional isolation between apps of different user accounts is the separate shared storage (i.e. /sdcard). 2) Yes, everybody group is only to control apps' access to shared public external storage (/sdcard) and other apps' private external storage (/sdcard/Android/data/*). An app has always R/W access to its own private external storage /sdcard/Android/data/com.xyz. OBB section is added to answer


text:
Alternative "File Open" (not stack "DocumentsUi") for WhatsApp?
DocumentsUI, the AOSP standard "file manager" is quite buggy here (I use Lineage 15.1), especially in the context of multi-user and work profile (meaning it does not show files for other users then the main user and is hence not usable).
For "simple" file browsing, I therefore substituted DocumentsUI app (com.android.documentsui) with com.simplemobiletools.filemanager.pro which works much better.
My issue and the core of the question is, that the glorious "facebook" WhatsApp Manager when attempting to attach files, resorts to opening the intent specifically for com.android.documentsui and fails even to open com.simplemobiletools.filemanager.pro even in the case that it is the only filemanager still installed. Hence I cannot attach files in other users in Whatsapp, due to the buggy DocumentsUI and WhatsApp not being willing/capable/well-enough-designed to make a general "FileOpen" intent, instead of referring directly to com.android.documentsui
I understand that WhatsApp is particularly made very little IT-able persons, who do not care about privacy very much, therefore it is clear that the WhatApp is not geared to allow/accomodate for educated and more able users which might desire to use not the standard com.android.documentsui.
An answer to this question would be to provide an insight which com.android.documentsui would be able to integrate well with WhatsApp Messenger

May be this is not exactly the answer to you question because I don't have any of your version of Android and WhatsApp to test. But on my Pie ROM with WhatsApp v2.19.53, I can pick attachments with any File Manager that registers one of its activities as a preferred activity for some implicit intent action; android.intent.action.OPEN_DOCUMENT in our case. I use MiXplorer, so:
# /data/system/users/0/package-restrictions.xml

[...]
<preferred-activities>
    [...]
    <item name="com.mixplorer/.activities.BrowseActivity" match="600000" always="false" set="0">
        <filter>
            <action name="android.intent.action.OPEN_DOCUMENT" />
            <cat name="android.intent.category.OPENABLE" />
            <cat name="android.intent.category.DEFAULT" />
            <type name="*/*" />
        </filter>
    </item>
    [...]
    <item name="com.android.documentsui/.picker.PickActivity" match="600000" always="false" set="0">
        <filter>
            <action name="android.intent.action.OPEN_DOCUMENT" />
            <cat name="android.intent.category.OPENABLE" />
            <cat name="android.intent.category.DEFAULT" />
            <type name="*/*" />
        </filter>
    </item>
    [...]
</preferred-activities>
[...]

When I tap on attachment icon in WhatsApp, it opens WhatsApp's own DocumentPickerActivity from where I can pick files:
ActivityManager: {cmp=com.whatsapp/.DocumentPickerActivity (has extras)}

Or I can opt to choose some other File Manager by tapping Browse other docs on top. This way Android's internal resolver goes through configurations and opens up available options for me:
ActivityManager: {act=android.intent.action.OPEN_DOCUMENT cat=[android.intent.category.OPENABLE] typ=*/* cmp=android/com.android.internal.app.ResolverActivity (has extras)}

To pick attachment, I can choose MiXplorer app:
ActivityManager: {act=android.intent.action.OPEN_DOCUMENT cat=[android.intent.category.OPENABLE] typ=*/* cmp=com.mixplorer/.activities.BrowseActivity (has extras)}

Or Files / DocumentsUI app:
ActivityManager: {act=android.intent.action.OPEN_DOCUMENT cat=[android.intent.category.OPENABLE] typ=*/* cmp=com.android.documentsui/.picker.PickActivity (has extras)}

First thing to check is if Files / DocumentsUI app is not set as default app (always="true"):
# /data/system/users/0/package-restrictions.xml

[...]
<preferred-activities>
    [...]
    <item name="com.android.documentsui/.picker.PickActivity" match="600000" always="true" set="2">
    [...]
</preferred-activities>
[...]

If this is the case you need to reset its defaults (App info > Open by default > Clear defaults).
You can also try with a different File Explorer app and different WhatsApp version to test if it works. I'm not sure if there are any changes in implementation of com.android.internal.app.ResolverActivity across AOSP updates, so consider updating Android version if possible.
RELATED: Why WhatsApp is suddenly unable to open any APK shared by users?


text:
Walking: counting steps when walking back and forth in a circle
I am aware of the fact that Android devices can count the number of steps taken by a person as they walk. However, I am uncertain as to how they do this. Do they rely solely on GPS? If so, if someone keeps on walking in a circle so that their position does not change much and stays within a few meters, then is the device successful at reporting number of steps walked?
If not, what other data do they use and how do they carry out the computation at the device level and how does the computation work?

The step counter is usually not GPS based. Instead the accelerometer sensor of your phone is used.
When walking for every step your body moves up and down a bit which can be easily measured by this sensor. Using the accelerometer instead of GPS has multiple advantages:

The accelerometer requires only very little battery
The accuracy is better - no need to define your step length
It works at location without GPS signal (indoor, staircase)


text:
How do I bookmark a page in Google Books?
Google Books has a feature whereby you can bookmark a page by tapping any corner of any page of a book you're reading. However, I was unable to do this. Could someone please provide some help as to what I might be doing wrong, perhaps with a few images illustrating what should be happening in the user interface?
Thanks.

You need to specifically tap the top right corner to add a bookmark. Also, be sure to only tap once. A double tap will result in a zoom.
Alternatively, you can swipe down from the top of the screen, tap the three dot menu, and select "Add bookmark."


text:
What can happen if I pull out the battery without switching off the device?
I just want to know what can happen if the battery from an Android device is pulled out without switching off the OS.
Will any serious or irreversible harm occur to the software or hardware? What can happen?

Things that may go wrong:

If you were working on files that were not saved, they will be lost.
No proper shutdown means that the OS and other apps opened and were using some files, plus the file system was in use. They can become corrupted. Worse scenario will be the OS itself to get corrupted. For example, if you were updating the OS, and for whatever reason, you had to remove the battery. The consequences could lead to losing your data (files), even brick the device.
Some phones (mine included) lose the date and time. (Not that serious but hey...).

You can use network provided time by going to System settings->Date and time->Automatic date and time, then select Use network provided time. By this setting, your device can update the date and time from network if it gets lost.

I do. But because I switch off data when I don't want to be disturbed, that's why I am aware of the lost of date and time (the SIM is unable for whatever reason to get automatic date from the network unless data or WiFi is on)

I have a question. You said that the file system was in use when the OS is on. But, only read operations are done from the file system to run the OS and other applications, and write operations are very less. So, how can read operations corrupt the OS? Please correct me if I am wrong.

Sometimes, the touchscreen of my phone stops working completely. So, in that case, I need to pull out the battery because without the touchscreen I can't switch off the OS. So, how can I switch off the OS in that case? Is there any hardware button combination?

Yes read operations (or even read-only file systems) should prevent errors or corruption. But to read a file, the OS (kernel) has to open an handle to it, what happens if during that operations the battery was pulled out? Even if the probability of the file(s) becoming corrupted is rare on read-only file systems, you only need one instance (~bad luck) to have a problem (even though rare). I also unfortunately remove the battery when the phone is too slow or freezes. The best way will be to hold the power button to restart the device.

Thanks for the explanation. But unfortunately, my phone doesn't have the program to restart itself by holding down the power button.

Pressing the power button around 10-15 seconds should restart the phone (if I am not mistaken from at least Android 6+). If not you can use the combination power + volume down, or power + volume up,, or power + volume up + home, etc. It's always better to shutdown devices gracefully, but if you have to remove the battery to restart, then go for it.

No, none of the combinations are working. I think I need to contact the device manufacturer for this information. Anyway, thanks for your engagement in this question.


text:
Phantom Vibration from com.android.providers.downloads
I've found the source of roughly 10x phantom vibrations (e.g. vibrations without notification or clear cause) daily.
startTime: 9 Apr 2019, 15:20:33, effect: Waveform{mTimings=[0, 100, 150, 100], mAmplitudes=[0, 255, 0, 255], mRepeat=-1}, originalEffect: Waveform{mTimings=[0, 100, 150, 100], mAmplitudes=[0, -1, 0, -1], mRepeat=-1}, usageHint: 5, uid: 10016, opPkg: com.android.providers.downloads, type: null

All originate from the package
com.android.providers.downloads

I am trying to determine what the root cause for this issue is.
Device Details:
Huawei P30 Pro (VOG-L29) running 9.1.0.124

Do you have a pending download or a downloaded item you have not opened?