text:
Can I rename the external storage mount point on Android10 with root access
System: rooted Samsung Galaxy S10 with Android10
I have replaced my old external sdcard (128GB) with a new and bigger one (512GB). The old card was automaticly mounted to /storage/6639-3031. The new card is mounted to: /storage/9C33-6BBD. Since I have a lot of configured appz that use custom paths pointed to /storage/6639-3031/somesubfolder I would like to change the new id: 9C33-6BBD back to the old one 6639-3031 system wide.
Since there is no fstab in Android responsible for this and I cannot find where this id's are stored in Android, maybe some experts here can help me? It seems like a simple problem but I did not find the solution yet.
Some clues I already found:

Android equivalent of /etc/fstab?
Remount FUSE partition

Once I have found where this external sdcard id is stored, can I just change the id (I have root)?
Will it be stay changed after reboot?

As far as I remember the mount point name is taken from the volume serial number of the SD-card (which is generated when the volume is formatted).
This means you don't have to make changes to your Android system at all. You should be able to edit this ID e.g. using a hex editor on a PC or a rooted Android phone. There are also special editor for changing the volume serial number.
The Volume serial number is stored as little-endian integer value on the header of the volume (that means the four nibbles of the number are stored in reversed order).
Directly modifying it using a hex editor is theoretically possible, but the problem is that the contained sector is protected by a checksum. There is a Python script that seems to allow to calculate the correct checksum (more info can be found here).
Additionally the volume serial number is contained twice in the volume, first in the master boot sector directly at the beginning and then a second time some KB afterwards.
If you just modify the volume serial number of the master and the backup sector the volume becomes defect and can't be mounted anymore. Also Windows chkdsk can not correct the error.
For Windows there is the Sysinternals utility program VolumeId, which can modify the VolumeID of a volume. Unfortunately it does not work with not exFAT volumes, it can only handle FAT16/32 and NTFS volumes.
For Windows there are some tools available which can modify the volume serial number of an exFAT volume:

AOMEI Partition Assistant Pro (commercial)
KRyLack Volume Serial Number Editor (commercial)

I found a HEX editor on Windows, I right clicked on the sdcard also mounted in Windows and are now performing a search for 'BD6B339C'. The search is taking a long time so I guess the editor is searching the whole volume and not just the header. Any hints on doing this the right way?

@Kleajmp Make sure the volume serial number is correct. Windows also shows the serial when you execute dir on the sdcard volume (assuming the file-system is mountable by Windows like FAT32 for exFAT). The volume serial number should be in the first ~1KB of the volume. I used HxD for checking.

ok now I see I have to reverse the pairs of HEX numbers from the volume label, like you showed correctly in your example, I found: 'BD 6B 33 9C' and changed it to: '31 30 39 66'. I will switch the sdcard later to my phone and keep u informed. thanks a lot I think it will succeed.

This worked liked a charm! Thanks a million.

very strange after Android reboot the mount point changed back tobthe original one. How can I make this permanent?

@Kleajmp Have you checked what volume serial number is now saved on the SD card? I do remember that FAT file systems do store attributes twice for security. May be on reboot a file-syste!m check was performed and a second now inconsistent volume serial number was discovered and  thus restored?

I guess this was the situation. When I returned to my country I inserted the card in a Windows computer and the header was changed back to the old one with the original volume serial number. When I changed it again, unmounted and mounted again in Windows it needed to perform a chkdsk so I guess it detects the "volume serial number" is corrupt. I did not perform this chkdsk and inserted the card back into Android and the changed volume number appeared again as i want it. But how can I change the "volume serial number" permanently? So also the security backup?

@Kleajmp The backups sectors isn't the actual problem. There is also a checksum which is invalidated by modifying the volume serial number. I found the info that "AOMEI Partition Assistant Pro" on Windows has the feature to modify the volume serial number: https://gist.github.com/dreamer2908/59066658df2844746e5feadba7a589a2 Ian a MS forum there is some C code posted to modify the serial and update the checksum: https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/9468e325-49fc-41eb-b6ca-6cfc8b5ecf1d/how-to-change-a-disk-serial-number-about-filesystem-of-exfat?forum=vcgeneral

AOMEI Partition Assistant Pro did the trick! Now even after Android reboot the volume serial number stays to the modified value. Thank you for the tip. Should I make a new answer or will you add this info to yours? Problem solved now.

@Kleajmp Good to hear it finally worked in a stable way. I have added the AOMEI info to my post.


text:
Limit the phone to small list of whitelisted apps only (parental control)
Is there a built-in way on Android 9 phones to limit the access to only a list of specific apps (for my child)?
Example:

Phone app
Camera app
One or two games
No access to Chrome
No access to Facebook

Is it possible with Android 9's built-in tools, and no third party apps? (or in case an app is needed, I'm looking for a free app without ads)

There is no built-in way. You could try creating a secondary account and then disable for that account the apps you don't want your child to see. This is tedious and user-unfriendly way. Otherwise, look for a solution involving kiosk mode, app lock, and whatnot.

@Firelord are you speaking about a secondary account on the same device, or linking to another device which becomes "master" of a slave device? An answer about where (probably hidden in menus, submenus) to create a new account and how to switch to this 2nd account, and how to prevent the child to switch back to the main account (with a key/password?) would be super interesting! Thanks if you know how to do this!

See this: https://support.google.com/pixelphone/answer/2865483?hl=en#zippy=%2Cadd-user

You can try Google Family Link App which gives a reasonable informed control over multiple devices.

source: Stack Exchange

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

sort: votes


text:
How to disable the automatic saving of *any* wireless networks?
With wifi settings in Android:
I know that you can disable "auto-connect" for a specific network.
I know that you can "forget" a specific network once Android has automatically added it to its list of "saved networks."
But is there a way to completely turn off the automatic adding/saving behavior so that it never saves any network?
I find it annoying (because, "Hey, I didn't tell you to do that!" and also a potential privacy problem -- using wifi monitoring tools, people can see what networks your phone is trying to connect to, and thus, what networks you have been connected to in the past.

Android does only actively try to connect to Wifis that are hidden (they don't send out an SSID broadcast). All the other (non-hidden) Wifis are detected by passively scanning thee SSID broadcast messages received by the phone. So for regular non-hidden Wifis there is no privacy issue.

Any Device has to remember wifi credentials because if the signal fluctuates/disconnects, they need to reconnect.
It would be far more annoying to enter credentials every time the signal is lost than to "Forget" once when you don't need it.

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


text:
Xiaomi Redmi Note 4 mido userdata partition type / data recovery
I am doing data recovery on a Xaomi Redmi Note 4(x?) [mido] and I have finally gotten a flash dump ( the screen is scuffed and no perms have been set ( no adb,oem unlock, storage access ))
Only way to recover the data would've been to dump the userdata, loopback mount it and copy the files. simple enough, done a few.
except no. the tool I used to get the partition table and flash dump says
userdata: Offset 0x0000000148082000, Length 0x0000000d47779e00, Flags 0x0000000000000000, UUID 0f772dd9-b55d-1184-ecf9-bb352eb97272, Type 0x1b81e7e6, Active False

The 'Type' part is what confuses me most, it's twice as long to be a gdisk partition-id-thing and far too short to be a GUID
This wouldn't matter if I could mount it to begin with, but thing is, binwalk reports that at offset 0xDCDB29 there is a 'VMware4 disk image'.
I try to mount this via qemu-nbd but no ext filesystem ( or others for that matter ) is found
does the mido do FDE even without a passcode? the phone doesn't have one I forgot to mention...
And if that's the case, how do I even decrypt the data?
I've asked on a couple other forums for help already, nothing yet.
Honestly any method / guide to broken screen recovery on a full stock android is much apreciated!

https://forum.xda-developers.com/showthread.php?t=4061651

The phone was shipped with Android 6, so encryption would be a possible cause but the number of devices that come pre-encrypted was as far as I remember not very high. Do you see readable plain text when looking at the hex dump of the partition? If you see plain text then it might be a different file-system like F2FS.

security concern my cheeks, there's no pin/pass code/word to unlock it! never was either!!
thanks for the link @alecxs
no readable strings were found, besides I expect jpg png or similar files with binwalk I'm told there's a lotof those, the bit magic is all over the place with VDIs and Adobe Flash uncompressed data

kinda figured the bootloader part, from what I gather the keys change when bootloader is unlocked, I could also tell by hexdump rather quickly that it was encrypted.

exploit was discovered by xaacnz on Redmi 5a, untested on Redmi 4. have you seen twrp-hack.zip post #19 - you could try same for your current ROM. use edl.py from linux, no need to hassle with QPST rawprogram0.xml offsets


text:
Why is a vendor blob needed to build an Android ROM?
Why do we need a vendor blob in order to make our custom Android ROM from the AOSP project?
As far as I know, the vendor blob contains the required proprietary drivers.
But these drivers we could have used as modules in the kernel itself, then why do we use vendor blob as a separate partition?

Large parts of your question are already answered here: Which part of Android directories contains so-called proprietary blobs?

Proprietorship is the core of businesses revolving around Android. Everything built in Linux kernel has to be open-source. But the OEMs and vendors want their hardware drivers/firmware to be closed-source. So the HALs (userspace binary blobs) model fits best with the AOSP's Apache license.

Vendor blobs are required because the vendors aren't willing to release the source code of their Android drivers as open source. This may seem silly, given that the drivers are no use on any other hardware, but they doubtless have their reasons.
The most obvious one is that vendors who spend a lot on developing high-performance hardware will fear it being cloned by other vendors, who have not spent much on development and can thus sell their copied chips for less. For example, source code for drivers can be extremely helpful in figuring out how a GPU works.


text:
Where is the path to to the Google Chrome sqlite database on Android?
It seems like the known methods for copying open tabs out of Android Chrome no longer work (a debug interface was removed) and I'd like to see if I can squeeze the open tabs from the sqlite database.
Does anyone know where in the Android filesystem Google Chrome stores its database?

Some answers from the duplicate question (1, 2, 3, 4, 5) refer to file-based solutions, though looks like Chrome for Android uses a text file to store the tabs, not SQLite.

Thanks! I'm glad I asked this question since previous queries for "mobile chrome copy urls of all open tabs" didn't get me there.


text:
Control playback using headset media buttons when using Android Select to Speak functionality
What I ideally want to achieve: TTS for any text I see on my phone, with the user experience similar to my podcast app.
My current approach: Use Android Select to Speak functionality.
This works to read the text on the screen, works in the background, etc which is great. But it totally ignores any attempt to control the playback using media buttons on my headphones.
Question:
How do I make Select to Speak work with media buttons on headphones:

Play/pause
Skip back/forward (ideally allowing me specify time interval for this)

Or is there an alternative to Select to Speak that works better with media controls?

Hello. Are you trying to develop an app or is this an end user problem? Former is off-topic here.

Hi, I'm very much trying not to develop an app . I just want to find something that works (alternative to Select to Speak or a way to fix it)

I'm potentially open to building a small companion app that would redirect the media signals in a way Select to Speak would understand (or if it's Open Source - contributing it to the main codebase?).
But not re-implementing the full thing

You may be able to set up a custom accessibility service (https://developer.android.com/guide/topics/ui/accessibility/service) and listen for KEYCODE_MEDIA_PLAY_PAUSE using a background service (https://stackoverflow.com/questions/21175914/determine-if-headphones-are-plugged-in-through-appwidgetprovider-pause-music-wh).
Then, as you described, the custom accessibility service could detect that you've short-pressed (KEYCODE_MEDIA_PLAY_PAUSE) or long-pressed (KEYCODE_VOICE_ASSIST) the button on your headphones.

yeah, I can imagine I can build something that would listen for media events, but can this allow me to control Select to Speak somehow? or would I need to re-implement the whole thing from ground up?

I agree that I described an awful lot of work. What are you trying to hear when you use Select to Speak? https://play.google.com/store/apps/details?id=com.hyperionics.avar will let you use the headphone button. https://play.google.com/store/apps/details?id=com.messageloud doesn't appear at first glance to support headphone buttons but it claims to present a large on-screen button.

Something like "select any text on the screen and read it" mostly in the browser, but sometimes in other apps too. Ideally showing what is being read in the context. I've tried @voice before for browser use-case, it didn't seem to work that well. will try again


text:
Dropbox camera upload wrong file name
I often take pictures with a mobile phone A and send them via Bluetooth to mobile phone B. On mobile phone B, I move the pictures to the album gallery, such that these pictures are uploaded to my dropbox automatically with dropbox camera upload.
Sometimes, when I do this, the file names of the pictures in my dropbox are incorrect. For example, if I take a picture on 08.05.2022, 11.01.08, then the file name on both devices is IMG_20220508_110108. I sent the file via Bluetooth on 09.05.2022, 10.49.33 and the filename of the picture in my dropbox is 2022-05-09 10.49.33, i.e., the date when the file was sent via Bluetooth. Also, on mobile B in the photo app, the respective picture does appear at 08.05., but at the end, i.e., not sorted correctly. How does this happen and how can I avoid this?

As far as I know changing the modified file date on Android is not that simply. You should better change settings of your gallery app that uses the exif date like "picture taken on" as sort criteria. Or if it does not support sort by exif date use a different gallery app.

I created a dummy file named both junk.junk and temp.temp. I ran sha256sum on both files and they had the same checksum. I recommend you take all the files from both phones, run sha256sum or equialent on all files while capturing all the data and save it in a spreadsheet. Use the spredsheet to sort the files by checksum. this will line up all the equivalent filenames. Then create a script to change each filename to the other. In this fashion you will be able to restore all the names correctly.


text:
How to recover data from an erased android SD Card
Last week when my phone(Galaxy Note 10+) was stolen, I logged into my Google account from my laptop and chose the option to erase the device. The cops managed to catch the guy and retrieve my phone but by that time I had lost all the important stuff on my phone and my SD card. I tried to recover the data from my card by connecting it to my laptop (Windows 10) and using software like EaseUS, Recuva but both didn't find anything to recover. I don't care about anything but family pictures on my phone/SD card which were not synced to any cloud. I would really appreciate it if someone could help me with some suggestions on how to recover the erased SD card. I am also new to this forum so please forgive me if I am not following the best guidelines for asking a question and please let me know if there is any other information I should add

Don't you think an "erase data function" would be worthless if you could easily recover the data later? Phones are a bad place for storing important data you have no backup of as phones can get lost, stolen or destroyed. So always ensure you have the data copied to a safe place.

I understand and I wish I had them synced to secure cloud account but unfortunately I didn't and those pictures are fond memories with my family so I am trying really hard to get those back and I am hoping someone or some answer from the forum would be able to help me out.

was the sd card encrypted?

@alecxs No, I had never selected that option

https://www.klennet.com

@alecxs That couldn't find any erased files either :(


text:
Issue with the "open with" option Miui13/Android12
I have an issue with my smartphone, the "open with" option doesn't work properly, so when I click on a link (from gmail for example or to open a file) normally I am given the choice to choose on which application I want to open it, but since the last update (miui 12.5 to 13 / android 11 to 12) I can't choose , when I click on "plus" or "more" in the "open with" window to have the choices it doesn't show any suggestions and select randomly an application (sometimes chrome, other times tor/edge/mi browser ... etc).

device : xiaomi poco f2 pro
miui version : 13.0.2 stable
Android version : 12 SKQ 1.211006.001

Issue in the android framework(I think): com.android.internal.app.MiuiResolverActivity
What should I do? Please help me up.

I cannot add an answer but I have just resolved this by disabling mi browser (see which Mi native apps are being opened and disable those)

and how to disable mi browser please?

@Simona the question has been unprotected, feel free to post an answer.

Head over to Settings> Default Applications and see what your default Browser app is set to.
Then clear the "open with default" options under that respective app's "app info" section

no, that's not the problem, I don't have a default browser, I always prefer to select the app I want to use myself, but when I want to see the suggestions (When I press see more) for choosing an app It does not work.

I had the same issue with a Mi11 gadget. I removed some apps (MiBrowser that I never intended to use + Samsung printer driver + Samsung printer app) and it went OK again. Do you want to give it a try? Please share your experiences too :)

And how to remove a system application please?

It just let me remove them as normal applications... Do you have any different experience?

Yes, when I long press it, uninstall/remove doesn't show up in suggestions like other apps show.


text:
this isn't a supported file type - Images, movies, pdf files, voice messages cannot be opened after a while
A friend has a Nokia 7.2 (updated to Android 11) which has a problem opening images, movies, pdf files. When she makes or receives a photo or movie, she can open it normally, but after a while she gets the following message: this isn't a supported file type. So it looks like an app scans the system for media, then does something to it so it can't be viewed again.
She did a factory reset, but the problem persists.
Do you have any ideas how this works? Is this a virus? Did it infect the factory-image? How can this be fixed?

This depends on the apps. For example, WhatsApp cannot open APK files, thus they need to be opened from another app (e.g. file managers). Might help to mention which apps have this problem.

All apps have this problem. It has nothing to do with APK files, only media like photos, videos and pdf files.


text:
Grant shell user permissions to apps
Using adb, one has a lot of additional permissions, that apps running locally on the phone have.
Specifically, I am interested in the wm size command.
Is there a good way to allow apps access to those permissions?
The only way I know of, is to use adb tcpip, so that apps can connect to the adb server running on the phone. But afaik, thata wouldn't survive a reboot.

Based on your prior question I don't think it is possible without root (or at least having the user go through the hack) as adb is an obvious security liability. Sadly I think your desired behavior for your hardware project is only available via Custom ROM.

Yeah, those questions are related. I am running into different issues where I have a couple workarounds, but most of them require root or other not-so-cool things, which work for me, when I am using the keyboard attachment, but I am trying to make this a bit more accessible to other users. It's not a showstopper, but its just more comfort and stuff.


text:
For Android devices, is internal storage memory typically faster, slower, or equal to microSD card storage?
For Android devices, is internal storage memory typically faster, slower, or equal to microSD card storage?
For example, let's take the Samsung Galaxy S10 Android phone.  It comes in 128GB, 512GB, and 1TB storage configurations.  It also has a single microSD card slot.
The cost difference between the different tiers of integrated storage is slightly more than cost of a comparable microSD card, but not a big difference.
Which will result in better performance: An Android device with only integrated storage, or one with an equivalent amount of storage in the form of integrated storage + a quality microSD card?

The internal flash is usually way faster than an SD-card. In your example, the Samsung Galaxy S10 uses UFS 2.1 storage for interfacing with the internal flash chip.
UFS 2.1 for the 1TB storage configuration you can expect in reality about (maximum values):

1000 MB/sec sequential write speed
260 MB/sec sequential write speed
50000-58000 IOPS

If you try to get a micro SD-card, there are a few that are as fast as the internal storage, but they use the UHS-II standard or newer (max ~620 MB/sec). For UHS-II, the micro SD-card reader in the phone needs additional contact points, but only recent high-end phones have such a reader integrated (I have read that the Samsung Note 10 released 2019 was the first Samsung phone to have such a reader).
Another problem of micro SD-cards is their size. The faster cards require a lot of CPU speed of the CPU integrated in the card. Because of the small size the card is very limited regarding dispensing the created heat. If you for example use such a micro SD-card in a PC card reader the micro SD card is getting hot very fast and then starts throttling the read/write speed.
But development of UFS also does not stop. Just recently, UFS 4.0 has been announced which can reach transfer speeds that are common for NMVe SSDs in a PC (up to 5GB/sec).
Therefore, for most micro SD cards, I would expect that speed of a combined set-up of integrated storage + a quality microSD will not be faster that the internal flash chip alone. Because of the latency of the micro SD-card, it might be even slower (but that may depend on the used phone and the micro SD-card).

Very helpful answer Robert.  Thank you!  If you will, please confirm that the edit I made to the first sentence is correct.

Question regarding your answer: You mentioned a CPU in the 3rd paragraph from the end.  Are you referring to a CPU on the microSD card?

Based on your helpful answer, would a UFS 2.1 device with all internal storage be the fastest, followed by one with large capacity internal storage + small capacity microSD, followed by one with small capacity internal storage + large capacity microSD?  To keep the comparison easy, let's assume the total storage capacity (internal + microSD) will always be 512GB.

@RockPaperLz-MaskitorCasket UFS is the standard for the integrated flash chip not the SD card, I have corrected that. THE CPU is indeed the CPU of the microSD card. Often this is also an ARM processor but a much smaller one.

@RockPaperLz-MaskitorCasket And for the combinations: a larger internal storage should be faster. As internal and micro SD-card are not building something like a RAID where both storage systems are used at the same time for each request, instead it should be more like JBOD, some requests are processed by internal and some by external but never both (not sure how Android distributes them). Hence speed can be as fast as internal storage but I would expect them not to be faster. And how much slower depends on the used micro SD card (the capacity is not really important).


text:
Android Profiler does not show processes on rooted device
I try to create a memory profile for a specific app using a rooted device:

The app is not debuggable
The device is rooted and connected via USB
USB debugging is enabled
The device is shown in the android profiler menu
I use Android Studio 2021.1.1 Patch 1

My problem: My app is not listed in the attachable processes. In fact, the only process listed is, for some reason, Google Maps.
I tried to follow this tutorial, where it says that "The Android Profiler lists all running processes, even if they aren’t debuggable if you’re using the Android Emulator or a rooted device."

What device do you use (physical/emulator, model, Android version, ...)?

Physical device connected via USB, model SM-A526B, Android 12

Then my guess is that Android 12 makes the difference. That article was written in June 2021 where Android 12 was still in beta, so most likely the article was about Android 11 (or older).


text:
Unable to flash GApps zip after lineage OS 18.1 ROM
I have flashed a lineage OS 18.1 custom ROM on my Samsung A30 device. I am able to boot into the system successfully. However, I am facing issues while flashing Open Gapps. I have followed below steps:

Flashed Lineage OS 18.1 (lineage-18.1-20220414-UNOFFICIAL-arm64_bvS.img.xz) using TWRP recovery. (selected System Image)
Booted into the system.
Enabled 'USB Debugging' in developer options.
Turned off the device.
Booted into Recovery mode (TWRP)
Install > Install Zip > OpenGapps.zip
Got the error code 70 (insufficient space)
Again went back to home screen of TWRP
Wipe > Selected 'System' > Advanced Wipe > Resize File System.
Got this error - /sbin/e2fsck -fp /dev/block/mmcblk0p25 process ended with ERROR: 4 Unable to repair system
Tried changing file system of 'System' to EXT2 and then back EXT4. [I am little bit skeptical of this step, since I feel this would wipe out the entire partition (owing to my experience in installing Arch Linux, where the user should format a file in ext4 partition for /home). Nevertheless, I followed this because it was mentioned in of the forums]
Boot into system. Now the device is stuck in boot loop.

I am not quite sure, where I am going wrong. I am using TWRP 3.3.1-0.
Any help is greatly appreciated.

AFAIK, flashing Gapps should be done before the first boot. This is mentioned for all devices in the official LineageOS wiki: "NOTE: If you want the Google Apps add-on on your device, you must follow this step before booting into LineageOS for the first time!" Also, which OpenGapps flavor did you choose? /system partition usually doesn't have enough space, so only nano or pico is flashable (e.g. https://forum.xda-developers.com/t/rom-treble-lineage-os-17-1-android-10-q-galaxy-a30.4124411/)

Though, looks like there are actually 2 questions here? (1) how to flash Gapps on LineageOS (the title), and (2) how to get my device unstuck from the boot loop (the body)

@AndrewT. , I am using pico flavor. And, I even tried flashing Open Gapps immediately after lineage OS installation. It throws same error - less space available. My only question is how to flash Gapps on Lineage OS

Any catch on this ? I seriously need the GApps on lineage OS

after installing LineageOS + Open GApps: 'adb pull /tmp/recovery.log'

Should I paste this recovery log here ?

@alecxs You can get the recovery log here : https://pastebin.com/8BR77aNv

Looks like you're trying NikGApps? From the log: /system available size: 32912 KB | Total available size: 32912 KB | Gapps Size: 148559 KB and looks like that's the issue; there's not enough space available anywhere either on /system or /product. I'm not sure about the solution though, maybe try to resize the partition or reduce the size of the GApps (if possible).

what's the output of 'cat /proc/partitions' please?

there is enough size on partition 4800MB just the file system 1907MB is not using half of it. can be fixed with resize2fs
resize2fs /dev/block/mmcblk0p25 1171875

I tried resizing in TWRP terminal. It resized, but the new size is 63MB, which is still insufficient for the Gapps

assuming 4k blocks specifying size 1171875 as additional argument will increase to 4800MB


text:
Tweak rooted Android 12 to access SD card files from normal apps
I recently bought a Samsung Galaxy S20 FE with Android 12, and I quickly noticed that many applications were unable to access files on the SD card. For instance, I used to access local HTML/MP3 files from different browsers or music players. On my new system, these applications can see folders and navigate through them, but can not open or even list any regular file. There is a few exceptions, e.g. Total Commander or AIMP.
Note that the phone is rooted with Magisk.
From what I understood, this is a policy change from Google which appeared on Android 11 (API/SDK 30): https://www.xda-developers.com/android-11-all-files-access-permission-form/
I tried a few solutions I could find online, for instance:
pm grant com.XXX.YYY android.permission.MANAGE_EXTERNAL_STORAGE
appops set --uid com.XXX.YYY android:legacy_storage allow
This is not working because, probably, the application (i tried with Opera) is not requesting this permission during the installation. Also, most of the solutions I could find are related to apps under development, not apps installed from the store. E.g. https://stackoverflow.com/questions/62782648/android-11-scoped-storage-permissions
A workaround I could find is to move all the files in /storage/SD_CARD_ID/Android/data/com.XXX.YYY/files, however, this means that I have to copy these files each time I install a new app and for each app I use, which is quite stupid if I have GB's of MP3 or other media. This is also quite tedious to enter the full path in the URL bar as it is not possible to navigate to or open this folder easily.
I am therefore trying to find a way to enable the permission by default for all apps, or at least find a simple way to do it via the GUI. For instance, I tried to tweak /etc/permissions/platforms.xml with some more or less random tries as I could not find any documentation about the syntax of this file, but nothing worked.

legacy_storage was a workaround for Android 11 only. I don't think it still exists on Android 12.


text:
Interaction Audioserver and application
There is a way in order to understand who is interacting with audioserver?For instance if there is an application that uses microphone, is there a way to understand if an interaction between audioserver and application is occurred? And in particular what kind of interaction should be (socket , pipe , shared memory, etc….)?

As written I can't even tell what part of the OS stack it is directed at. It may help to read: https://source.android.com/devices/audio and https://developer.android.com/guide/topics/media-apps/audio-focus

audioserver native process hosts one or more framework services. The operating system itself and the apps interact with the services through Binder IPC. AFAIK there's no straightforward way to trace Binder IPC at kernel level. But there's a system service named binder_calls_stats. You can dump it and see if it contains your required info. I haven't checked though.


text:
Stuck on ,,Phone is starting" Screen after rm /data/system/locksettings.db
I got a phone with custom rom and root and usb debugging activated.
I forgot the pin so I tried this idea from @Max : Reset PIN from adb shell
adb reboot recovery
(wait for reboot)
adb shell rm /data/system/locksettings.db
and reboot into normal mode with :
adb reboot
I followed the commands and yes the lockscreen is now gone,
but the "Phone is starting" screen won`t go away, normally it stays for max. 5 seconds.
If the phone really needs to be factory reseted it´s okay, I just found out that I still have access to all the files via computer.
I want to ask is there any command/solution to solve this problem?
best reagards bam

try accepted answer instead

Okay, il will try it

Sadly, it did now work it says ,, /sbin/sh: su: not found" I guess i need another idea

just remove all 5 files mentioned (in recovery no su available)


text:
cyclic bluetooth issues using a Samsung Galaxy Tab Active 3
Anybody any idea what is the reason for cyclic bluetooth issues using a Samsung Galaxy Tab Active 3? The connection shortly breaks/drops/becomes very slow after 3 seconds before recovering after 1 second. So I get:

exactly 3 seconds of flawless Bluetooth
exactly 1 second of broken Bluetooth
exactly 3 seconds of flawless Bluetooth
exactly 1 second of broken Bluetooth
...

Background:  We developed an Android App for the Samsung Galaxy Tab Active. It connects to a self-made Bluetooth sensor and communicates with that sensor non-stop at maximum bandwith. Now we are migrating to newer hardware and everything is looking good except for this one major issue. Some component interferes with bluetooth every 3 seconds. It probably does not matter too much for most users, but when streaming data at maximum bandwith it is a dealbreaker.
We tried many things:
Does not help:

disable Wi-Fi
disable "improve location accuracy" using Wi-Fi and Bluetooth
disable Covid scanning
disable nearby device scanning
no bluetooth "app" to reset

Helps:

Fully disable location

Do you have any idea what is going on here and how to work around this issue?

Have you tried to perform your tests in a different environment? May be the problems are caused by other devices near-by.

@Robert good idea, but we tried different devices, different editions (T570 Wifi, T575 LTE), at diffferent locations, using different bluetooth sensors that work flawless with other Android devices. It quite certainly is an issue with the Samsung Galaxy Tab Active 3.


text:
Google Pay country not supported
My Google Play country used to be France. I changed it to USA, and can use Google Play myself, but I can't set up Google Play Family Library: "Country not supported. Confirm the country associated with your account in Google payments > Settings."
I have two payment methods, but one is expired. The expired card might belong to a relative in France, but I can't find a way to delete the expired card, only update its expiration date.
Note: my address under Payments Profile is a U.S. address.
Note: I see a link to "Close payments profile". If I do that, can I keep my gmail account and open a new payment profile associated with it?

Did you change your country in the Google Play app under Settings > General > Account and device preferences > Country and profiles or some where else? As far as I understand: to be able to do that, you need to wait 12 months after adding a payments profile (on pay.google.com) with your new country.

I have a similar problem. Did you come up with a solution?


text:
Is there a way to make the share menu suggestions more useful?
For instance: wanted to share a reddit link. So I hit the share button in Relay (reddit client). The first four suggestions:

Signal, a friend that I just texted a few minutes ago

Telegram, my kid

Telegram, a person I've texted exactly once and it was 2 months ago

Telegram, a person who I've texted 4 or 5 times but haven't used Telegram to message them in 5 months

Meanwhile there's a person I message on Telegram about 20 times a day and they are not in the suggestion list.
Same results sharing from Spotify so I think it's a system menu, not an app-specific menu.
Is there some way to reset these suggestions? They seem worthless/broken. It was the same way in Android 11. Surely there's some system process that's updating these values.


text:
How to list all apps with a specific permission in ADB?
I want to list all apps with a specific permission.
For instance, output the package names of  apps with the VIBRATE permission. The apps with a specific permission then be revoked or enabled as instructed here.
adb shell 'pm list packages -e' outputs all packages.

See if my answer is still useful: https://android.stackexchange.com/a/129474/96277 or this one: https://android.stackexchange.com/a/123100/96277

@Firelord I will eventually. I'm very sure that I've used a one-liner command to achieve this in the past (likely saw in a now-deleted Reddit post).

Looks like there's a one-liner on another answer, but it may have a caveat.

...I've used the command adb shell cmd appops set.

You can try this:
adb shell cmd appops query-op PERMISSION
For example:
adb shell cmd appops query-op READ_CONTACTS


text:
adb succeeds but sporadically returns exit code 1
I'm using adb in an automated setup for testing. The following commands, whenever I execute them, sporadically return an exit code of 1 with no indication of errors happening:

adb shell settings put global bluetooth_disabled_profiles 1
adb shell am force-stop [my app id]
adb shell am start -n [my app id]/[app activity id]
adb forward --remove tcp:8000

interestingly, adding port forwarding using adb forward tcp:8000 tcp:5050 always returns exit code 0

adb forward --list
adb devices -l

The exit code of the commands listed above is 0 more than 95% of the time it is executed. In the other 1%…5% of executions, adb returns an exit code of 1 but stderr is empty. In all these cases, the command worked fine, i.e. it seems like adb should always return 0.
I wonder why the exit code is non-zero. Should I get some additional info? Or is this a bug in adb? Is this a known issue?
Software info: I've tried different recent versions of adb on Windows 10, e.g.:
adb --version
Android Debug Bridge version 1.0.41
Version 31.0.3-7562133

maybe connection/speed issue. you can check logcat or try linux and check dmesg but I guess the only way to figure out is monitoring serial traffic. does it happen on adb over tcpip too?

I've had problems with adb push failing for no obvious reason.
It proved to be a problem with the USB-C socket the device was connected to; try a different one?

Thanks for the hint, but I'm seeing this issue on a few different computers, Google Pixel smartphones and USB cables, so it does not seem to depend on hardware (alone).


text:
ERROR: Could not build wheels for numpy, which is required to install pyproject.toml-based projects in Android Termux
I'm trying to install numpy in Termux in Android and I'm getting this error :
ERROR: Could not build wheels for numpy, which is required to install pyproject.toml-based projects

I tried
apt update && apt upgrade

And got this error :
 CANNOT LINK EXECUTABLE "/data/data/com.termux/files/usr/lib/apt/methods/https": library "libssl.so.1.1" not found

The second error happened the second time i run apt update && apt upgrade
is there any solution?

There was a recent discussion on this subject.
To install the up to date version of numpy (1.22.4), simply run
MATHLIB="m" pip install numpy

And numpy wheel will be build normally.
Your second error (with [...]/https) seems an Internet connection problem, but not sure.


text:
Firefox "Open links in apps" blacklist?
I'm generally OK with urls opening dedicated apps, but there's 2 exceptions:
youtu.be
youtube.com

i don't want these 2 urls to open in the dedicated youtube app. is there some way to blacklist these 2 urls from "Open links in apps" ?

in case you wonder, i have 2 issues with the YouTube app,
#1: there's lots of ads, and because i'm banned from YouTube (since 2018, but seems its a lifetime ban) i am not allowed to buy Youtube Premium even if i wanted to. Firefox supports uBlock Origin, the youtube app does not.
#2: the YouTube app does not support playing in the background/pure audio, while Firefox does.

Go to App info -> Open by default -> Open supported links and select Ask every time. // Another option is to uninstall or disable YouTube app.

@IrfanLatif there is no Open by default in App Info for both FireFox and Youtube, so "App info" where? also the uninstall button for YouTube is disabled (i'm sure it can be uninstalled via rooting/adb, but cannot uninstall it the normal way at least) - the phone is a not-rooted Samsung S22U with Android 12 if that's relevant


text:
Where are notes stored on Xiaomi devices?
The screen of my phone is dead, and I would like to find the notes I have on my phone.
I use a SD card. I found a folder on the SD card named com.miui.notes with a folder named files inside of it.
But this folder is empty although I had a few notes created on my phone.
How do I find them?

According to this post the data is also not stored in Internal Storage/Android/Data/com.miui.notes. That leaves only the app-private storage under /data/data/com.miui.notes/ where you only have access to on rooted devices. If you have adb access you can try adb backup com.miui.notes

Thanks for the answer, but how do I do that?

If you don't know how you have most likely adb not enabled on the phone and the PC authorized, then this option isn't accessible unless you can navigate on the phone blindly. Then the only way to access the data would be the Google Cloud backup if the apps stores the notes there and you have a Google-Account set-up on the phone + backup enabled.

you could try MHL HDMI multiport adapter and connect TV + mouse

Since the notes are stored on my SD card, if I put the card in another xiaomi phone, will I access the notes on the new phone?

I would be surprised if the notes app makes use of the sd-card. And if you have formatted the sd-card as internal storage everything is encrypted and bound to the phone hardware.

Notes are stored in SQLite database /data/user/0/com.miui.notes/databases/note.db and therefore the file is not accessible to user without root.
You can find your notes in Mi Cloud if MIUI account is allowed to sync.


text:
How to fix tecno spark 7 PR651 struck at boot animation?
I was trying an experiment on bypassing factory reset protection(FRP) on my Tecno Spark 7 F6317 PR651 Android 11. I bypassed the setup screen enter chrome and download Google Account Manager(GAM) and FRP bypass apk and install them, opened frp bypass apk and enter the bypass google account after that I try to go back to the setup screen like we normally do on Android 10 but unfortunate for me the phone rebooted by itself and get stuck at the boot animation.
And badly it refuses to enter recovery mode. I have tried if not all but most boot series:
Volume Up + Power Key
Volume Down + Power Key
Volume Down + Power Key then release Power Key
Volume Up + Power Key then release Power Key
Note: It is running on Unisoc(SoC) Processor

It is running on Unisoc(SoC) processor.

try spreadtrum frp remove tool


text:
MTP changes with Android 12 update on Pixel 5?
I have a Google Pixel 5 that recently updated to Android 12.
Since then, it has not been able to connect to my Debian 11 Linux desktop to transfer files in the usual way.
The "usual way" is, I have USB debugging enabled, connect the device to the computer by USB, select "Use USB for" -> "File Transfer" in the USB Preferences dialog that's available from the notifications. Then on the linux desktop, I do jmtpfs and transfer files. (This is a command-line operation.)
This is no longer working. The jmtpfs invocation reports:
$ jmptfs /mnt/android
Device 0 (VID=18d1 and PID=4ee2) is a Google Inc Nexus/Pixel (MTP+ADB).
error returned by libusb_claim_interface() = -6LIBMTP PANIC: Unable to initialize device
terminate called after throwing an instance of 'MtpErrorCantOpenDevice'
  what():  Can't open device
Aborted

If I change the selection away from "File Transfer / Android Auto" in the USB prefs, I just get No mtp devices found.
I also have an mtp-detect tool, which reports the same error:
$ mtp-detect
libmtp version: 1.1.17

Listing raw device(s)
Device 0 (VID=18d1 and PID=4ee2) is a Google Inc Nexus/Pixel (MTP+ADB).
   Found 1 device(s):
   Google Inc: Nexus/Pixel (MTP+ADB) (18d1:4ee2) @ bus 2, dev 92
Attempting to connect device(s)
error returned by libusb_claim_interface() = -6LIBMTP PANIC: Unable to initialize device
Unable to open raw device 0

I can use the adb tool. adb devices reports the device ID and "device", and adb pull /path/to/file destination works, so it is still possible to do the file operations I want to do, but I'm mystified by the change in behavior.
This activity is kind of irregular, so I can't prove it was the Android 12 update that caused it, there have also been routine package updates on the desktop, but the Android update seems like the logical suspect, given that Debian package updates rarely cause breakage.
The fact that adb works suggests the fundamentals (hardware, cables, device detection, Linux drivers) are probably OK.
Maybe some kind of extra layer of MTP permissions in Android 12? A change in the MTP protocol that's gotten ahead of the Linux command-line tools?
Any help greatly appreciated.
Android build is #SP2A.220505.002.
jmtpfs is the Debian-11 packaged version, and reports:
$ jmtpfs --version
jmtpfs version: 0.5
FUSE library version: 2.9.9
fusermount3 version: 3.10.3
using FUSE kernel interface version 7.19

mtp-detect is from the Debian-11 mtp-tools package, version 1.1.17-3.

"A change in the MTP protocol that's gotten ahead of the Linux command-line tools?" - Possible may be a minor bug that prevents connection. You are using Debian this is a realistic cause as Debian usually ships with pretty old software. But according to the jmtpfs repo on Github the last commit was nearly 10 years ago...

I have much better experiences using adbfs. Way better performance compared to MTP. And as you report adb pull and adb push is working for you I'm confident so will adbfs. (if that is a suitable solution for you just let me know and I expand it to an answer – or wait, I already did that here and here).

Thanks @Izzy, that does indeed work. I'm not sure how to read your evident snark, but if you expand it to an answer I'll accept it. In my diagnostic efforts, I did see a few references to adbfs, maybe even yours, but at the time I was not interested in "what is a way to mount my phone", my question was closer to "why doesn't jmtpfs work anymore". Still don't have an answer to that one, but workarounds also count.

MTP is a very protocol that does not allow concurrent requests. Is it possible that you have updated some UI related components or services that automatically try to access the phone via MTP concurrently and thus interfere with jmtpfs?

@Robert Good thought, this looks like it! I previously searched for mounts with "mpt" or "Pixel" in the name, and there aren't any, but following your hint, I searched the process table for "mtp", and found a /usr/libexec/gvfs-mtp-volume-monitor process, and sure enough, when you turn on file-transfer on the phone, a directory appears under /run/user/<my-uid>/gvfs/mtp:host=Google_Pixel_5_<phone_id>. This is also new-to-me behavior, but good to find!

While this doesn't explain why jmtpfs is having trouble or how to fix them, let's for a moment assume that's an XY problem and tackle the real one: How can you properly mount your phone so it is accessible in the Linux file system?
As you state that adb pull and adb push are working fine, the first option coming to mind is using adbfs – which is what I do successfully for about 10 years now and am quite happy with. adbfs sits on top of ADB and utilizes ADB pull/push for file transfers plus other ADB commands (e.g. adb shell ls) for other background information. It works reliably and stable, is transparent to the entire system (so you can access the device from the command line as well as from GUI applications), plus transfers are much faster than via MTP.
For setup etc. please refer to my answers here, here and here. An advanced setup for multiple devices connected at the same time plus integration with Midnight Commander you can find in my answer here.


text:
How to override (or a least view) the RDNSS ipv6 DNS? (root)
As far as ipv4 DNS is concerned, Android (at least version 9) can override default DNS settings fairly well.
Firstly, it is possible to set net.dns* to the desired value.
Secondly, iptables -t nat works, and lets the user redirect the packets to port 53 anywhere required.
With ipv6 however, things are not that easy. Android 9 (at least mine) does not support  ip6tables -t nat. Moreover, Android sets some internal DNS-related setting when obtaining the DNS address from SLAAC/RDNSS, which is not reflected in getprop, and insists on using it, regardless of what is in net.dns*.
The only tool I am aware of, that might be somehow useful, is ip6tables -t mangle, but it still seems quite limited.
How can I override (or at least view) the default DNS address obtained from RDNSS?

Try dumpsys connectivity | grep CONNECTED | grep -i dns

try disabling ipv6 and try. Thats how I got to use nat table on ipv6 traffic. I have never seen and android version with ipv6 nat.


text:
Prevent app icons from being added automatically to home screen on a Motorola device running Android 11
I am running stock Android 11 on a Motorola device. I am trying to disable the feature that adds newly installed apps to my home screen.
I read an article How to stop new apps from being added to your home screen on Android Oreo that says

How to stop new apps from being added to your home screen on Android Oreo |

Navigate to your Android device’s home screen
Locate a blank section of the display and long press on it
Three options will appear. Tap on Home Settings
Toggle the switch off (so that it’s grayed out) next to Add Icon to Home screen

but the switch to "Add icon to home screen" is missing.

Can somebody help me disable the feature?

I think it also depends on the launcher apps, whether they add this setting or not, so you might want to check if the setting is still available on the Play Store instead.

@AndrewT. Sorry for late reply, I couldn't manage to find any such option in Play Store; However, when I searched for the same in my settings apps, I saw that option but when I clicked it, it redirected me to the same page with no such option. I think it is probably a bug? Anyways can I forcefully change it by modifying system files?

Instructions are missing a step - added below

Navigate to your Android device’s home screen
Locate a blank section of the display and long press on it
Three options will appear. Tap on Home Settings
Tap Home Screen Style, then the settings cog next to App Tray
Toggle off "Add app icons to the Home screen"


text:
Can I make NFC payments using Google Pay while in airplane mode?
Can I make NFC payments using Google Pay while in airplane mode, like when I don't have cell phone or wifi service (particularly when travelling)?

The payment system of Google Pay uses tokens for non-online/non-website payments:

Google Pay does not send merchants their customers' actual card numbers when they pay in stores; instead, Google Pay facilitates a process called tokenization in which a token stands in for a customer’s actual credit and debit card numbers.

As far as I know Google Pay stores a limited number of prepared tokens in the app so that you can pay without the necessity of data transmission by the phone if you want to pay something. But if these prepared tokens are used-up you need an online-connection for making the next payment.

Customer tokenizes card: A customer adds their card to Google Pay.
Then, their mobile device stores a payment token that is encrypted
using a limited / single-use key.
Merchant receives token: When the
customer taps their device on an NFC-enabled terminal at the store’s
point-of-sale, the device sends the token, token expiry date, and
cryptogram to the terminal via the NFC protocol.

https://support.google.com/pay/merchants/answer/6345242

Do you have a rough idea of how many of these limited tokens are prepared at a time? like, it is just 1 or 2. or a dozen?

@Gabe based on quick research (e.g. Reddit), looks like it depends on the financial institution. It may have 5, or 10, or none at all.


text:
"media: inaccessible or not found" error when attempting to control device volume via ADB
I'm trying to change volume on my device via ADB.
When for instance running
adb shell media volume --stream 15 --set 0

...this error is returned (regarding the volume streams):
/system/bin/sh: media: inaccessible or not found

Oneplus 5T, LineageOS 18.1 (Android 11)
Android documentation

To send adb command to Android 11 or 12 devices, the syntax of controlling volume has changed:
adb shell cmd media_session volume --set 10

This is used to set the volume at 10 — just replace 10 with your desired value.

The index range appears to be between 0 and 25: Error: invalid volume index 60 for stream 3 (should be in [0..25])

output for $ cmd media_session volume --set 10: [V] will set volume to index=10 \ [V] Connecting to AudioService

In Android 11 and Android 12, media utility no longer exists. That's why you got the error since your shell could not find the utility in locations  mentioned in its PATH. That utility's commands have been moved to a service name MediaSessionService. To access those commands invoke this service using cmd command.
adb shell cmd media_session

Example:

$ cmd media_session
usage: media_session [subcommand] [options]
       media_session dispatch KEY
       media_session dispatch KEY
       media_session list-sessions
       media_session monitor
       media_session volume [options]

media_session dispatch: dispatch a media key to the system.
                KEY may be: play, pause, play-pause, mute, headsethook,
                stop, next, previous, rewind, record, fast-forword.
media_session list-sessions: print a list of the current sessions.
media_session monitor: monitor updates to the specified session.
                       Use the tag from list-sessions.
media_session volume:  the options are as follows:
                --stream STREAM selects the stream to control, see AudioManager.STREAM_*
                                controls AudioManager.STREAM_MUSIC if no stream is specified
                --set INDEX     sets the volume index value
                --adj DIRECTION adjusts the volume, use raise|same|lower for the direction
                --get           outputs the current volume
                --show          shows the UI during the volume change
        examples:
                adb shell media volume --show --stream 3 --set 11
                adb shell media volume --stream 0 --adj lower
                adb shell media volume --stream 3 --get

The examples section above has not been updated in the source code to reflect new changes, that's why it still recommends using media or adb shell media.

I still get the error when running media_session list-sessions: /system/bin/sh: media_session: inaccessible or not found. cmd media_session outputs the same info as in your answer body. Hopefully I didn't make any obvious mistake, I'll look more into this tomorrow

You have to use cmd before media_session. cmd utility is used to call shell commands offered by system services.


text:
Wifi connects disconnects on android
I have android device with stock android(moto edge 20). Whenever the wifi signal(router) are weak the wifi disconnects. This problem is frequent when my device is connect to a Bluetooth device. This problem mostly occurs when wifi signal is weak and I am doing some internet heavy task, like watching 1080p YouTube video, as the buffering starts the wifi disconnects. I have tried this on many device and the problem is only coming with phones with stock android and not with phones which have some other custom skin.
Stock Android devices I have test this issue with are,

Moto Edge 20
Moto One Fusion Plus
Asus Max Pro M1
Xiaomi Mi M1

With all these devices I am facing the same issue. I have also tried this with Realme Narzo 30 5g and Samsung M51 and for both of these devices there is no such problem.
Can anybody give a fix for this?

I assume you refer to a personal mobile hotspot rather than a router.
You could try Settings > Connections > Mobile Hotspot> changing the AP band to 5.0Ghz.

No, I am referring to a router.

The signal is weak from the start. But since it's only these set of phones. I suggest changing the setting of the router to a lower AP band and try it. If it doesn't work, try a higher band

The setting comes with the IP address of the router itself not the ISP. I had similar problems with the Ghz, some phones tend to only accommodate lower band

Yes I have tried, no help.

Both 2.4Ghz and 5.0Ghz

Yes, I have confirmed this problem with many people who are using stock android and they all have confirmed.

Okay, it seems to be an issue with it being a stock android, some features are lacking. I suggest a move to custom rom if you don't mind; if not, a little tweaking from bootloader but might involve changing your network settings and a possible brick.


text:
Take front/selfie photo if wrong password is input on the lock screen
Operating systems like iOS include the system that when another person tries to unlock your phone without your permission, it takes a photo of that person and warns you.
Is it possible to have this on Android?

Asking why Android (assuming AOSP, the code base for all Android ROM) doesn't have this feature is rarely fruitful because unless this has been brought up officially, we also don't know why (which makes the question opinion-based). I edited the question to make the question on-topic, feel free to improve it further.


text:
How to determine if device supports 802.11ac?
How to I determine if an Android device supports 802.11ac (5Gz WiFi)?

Read the device specification. A pretty useful device database is for example https://gsmarena.com/

@Robert BLU V50 doesn't appear in that database.

https://www.droidafrica.net/blu-v50

Check CPU Info's Hardware tab, item "WiFi 5Ghz".

goto Settings - WiFi - show available networks. if you see 2.4G/5G your device supports it

I don't see any 2.4 or 5G icons on mine. I'm wondering if the hardware is 802.11ac capable and the software is disabling it. The BLU V50 is a fairly recent, low-end phone (a 2013 Galaxy S4 supports 5GHz).

That 2.4G/5G badge seems to be a proprietary modification of your phone manufacturer, because on my Pixel 4a stock Android 12 such badges do not exist.


text:
Backup Pixel 3 before erasing phone with TWRP
I am attempting to take a recovery/backup of a Pixel 3 using TWRP.  I do not need to flash TWRP, just boot from it to perform the backup.  Meaning, I don't care if TWRP is installed permanently.
The problem I am running into is that I need to unlock the bootloader before I can boot TWRP.  And if I unlock the bootloader, the data on the device will be erased.
My question is: If I unlock the bootloader, will I be able to boot back into fastboot mode, and thus boot into TWRP, before the erasure occurs?  And if to, how do I perform this? (I presume that if I hold the volume down button it will before rebooting it will go back into fastboot mode.)
I am trying to obtain a backup of the phone before the erase script is activated.
I have searched around and have not been able to resolve this question as of yet.
Thanks in advance for any assistance provided.

Does this answer your question? FBE encryption bootloader state in keys

Not quite, but in part yes. Thank you @alecxs

in other words, even if you could unlock without erasing userdata, still it's impossible to decrypt because of bootloader state is involved in encryption

Does this answer your question? Is there some way to move apps and settings from an Android phone to another?

Thanks @alecxs, appreciated.  Really what I am trying to do is get a full nandroid backup of the phone.  If erasure is unavoidable, I'll go with that.  But I am trying to first get the nandroid backup before erasure occurs.

This appears to be the answer to my question:
Pixel 3 (blueline) immediately wipes the data partition upon unlocking the bootloader.  It appears there is no way to boot it back into fastboot before erasure occurs.


text:
Route some traffic via VPN while the rest routed as usual (non-VPN)
I manage some servers where VPN is the only access for maintenance. On Linux, we use xl2tpd, strongswan-starter, and ip-route. I want to gain access to my phone (Pixel 3, Android 12) such that traffic for the servers routes via the VPN, and all else remains routed as usual, not via the VPN.
How may this be done on Android 12?

How to exclude a specific destination IP from VPN?. With small changes you can make it like "How to route a specific destination IP through VPN?". Requires root.

See also https://android.stackexchange.com/questions/236859/how-can-i-enable-vpn-only-for-a-specific-app

You don't give a lot of detail for understanding your situation thoroughly, but perhaps take a look at split tunneling. I use ProtonVPN's Split Tunneling function for this purpose. Excluding IP-addresses thus does NOT require root, except when having to use ip-tables.
https://docs.strongswan.org/docs/5.9/howtos/forwarding.html


text:
Why notifications sound is controlled by media sound settings?
I have a Samsung Galaxy S9+ with Android 10 and I have the following problem - in the sound settings, I have media and ringtone set to halfway, but notification and system sound set to 0. But I can still hear notification sounds, and they are as loud as I set the media sounds settings. Why are notification sounds controlled by the "media" and not the "notification" setting? How can I fix this, to have silent notifications, but still hear music?

Are you talking about all notifications or notifications of a specific app? May be the app that plays the notification sounds just plays them using the regular media API and thus they are controlled by the media volume.

It happens to more than one app. I am sure that Messenger and Outlook have this issue, I don't remember if other apps do it as well.


text:
Restore data from Pixel 3a to Galaxy S22
I am trying to restore data from a Pixel 3a cloud backup to a Galaxy S22. Both are running Android 12 with the May security update. When I go to restore, it says, "This backup is from a device with a newer version of Android. Some data may not restore to your new device." Is there any way around this?

Google not only provides security updates but als feature updates every few months may be that is the cause of this warning. On the other hand Samsung makes a lot of modifications to Android so no matter what you try both phones even on the same major version and patch level will always be different to a certain degree. But the differences should be marginally only affecting a few features. So the only way I see is to accept it and after migration check all (for you important) settings.

D2D transfer apps should have full access 1, 2 (never used)


text:
Do Google & OEMs always have backdoors in Android devices?
In a helpful comment on this Android Stackexchange question, prominent contributor alecxs states:

google and OEMs will always have own backdoors in propritary [sic] blobs for baseband/modem etc - you are already hacked at moment of using smartphone

I have much respect for alecxs, and they have provided helpful answers to my questions in the past.  So when alecxs writes something I don't already know, I pay close attention and try to learn form it.
Is it accurate that Google and OEMs always have backdoors in Android, and therefore one should consider any Android smartphone to be already hacked?
If so, why does the baseband/modem require such a backdoor?

For a lot of Open Source enthusiasts every closed source blob is a horror. As they can't look into it they anticipate the worst which means that the blob is insecure and contains backdoors. That is my understanding of such statements.

Rob Braxmann has some nice videos about

1, 2, 3, 4, 5, 6

I don't think you'll get an answer like "Yes. I have a proof". But after this we don't have a reason to believe the other way.

what we can proof is the possibility of baseband hacking. Ralf-Philipp Weinmann reverse engineered Qualcomm "One of the exploits he found required nothing more but a 73 byte message to get remote code execution. Over the air." (there is a 10 years old yt video about)

google itself confirmed they can silently install apps without notifying you (although its no baseband hacking - google play required)

carrier can lock phone if you don't pay the bill
https://www.xda-developers.com/google-device-lock-controller-banks-payments


text:
Is there a way to unlock my son's Galaxy Tab A (SM-T580) with Family Link?
My son has not used his Galaxy Tab A (SM-T580) for months and he has forgotten his 3x3 unlock pattern/password.  The tablet is linked to Family Link on my Samsung phone.  How do we access his device?

There's no "parent access" link from the lock screen? If so, https://support.google.com/families/answer/7307262


text:
Is it possible to allow Private Number or Hidden Number calls past DND?
Background: My wife and I are foster parents, and our sponsoring agency uses its on-call phone system to call foster parents for emergency placements. The system has a single inbound number that forwards calls to the cell phone of the case worker who's on call that week, but for whatever reason* outbound calls placed from that case worker's cell come across with CID hidden. (I've seen both Private Number and Hidden Number, which I assume are carrier-specific variants.)
*I'm aware of the personal privacy and work/life balance reasoning behind the decision. I just don't know why, instead of hiding the CID, they don't set the CID to the inbound number.
Context: I've got a OnePlus 9 Pro 5G that was recently updated to Android 12. During the workday (8A-5P) I have Do Not Disturb enabled, with calls from Starred Contacts allowed. I also have the "2 calls within 15 minutes" rule enabled, but I don't know how that works with non-CID calls.
Question: Is there any way to allow non-CID calls past the DND feature?


text:
How do you record the first time setup of an Android device without USB Debugging enabled?
I'm trying to record the initial setup of an Android phone/tablet for my company but i'm running into an issue where none of the Android to PC mirroring programs work during this part without having USB Debugging enabled. The problem is that these settings are not available because of the company settings and even then trying it on a private Android device it seems that when you Factory Reset the device the enabled USB Debugging setting is reset to its default which is off.
So my question is how do people take pictures or recordings of the initial Android setup with this conundrum in mind?

Robert's suggestion of taking a screenshot helped. I used screenshot key combination Power + Volume down button wherever I needed to take screenshots during device setup. Those screenshtos were saved to the Gallery.


text:
Disable auto-rotate does not work in certain apps
In android 11 I disabled auto-rotate of the screen by setting to "off" Settings > Display > Auto Rotate.
however in certain apps that doesn't seem to make any difference and the screen is still rotated when I move the phone orientation
I assume that's because the app developer has decided to override the android auto-rotate setting, or would there be any other reason for this behavior?
Alternatively is there a way to set the gyroscope manually so I can set the orientation of the phone without it being automatically detected

It is not only app, but also view specific inside each app: I had a new app where disabled auto-rotate worked perfectly just the "latest news" view had auto-rotation always active.

Thanks for the reply. I have since located an app called Ultimate Rotation Control that enables locking on the rotation which offers a 7 day trial. I was not able to find any other solution to this words cannot describe how infuriating this can be!

Yes, the developer may override this, mostly for user's convenient (e.g. playing games exclusively for landscape mode will be awful if it's rotated to portrait, and vice versa), or otherwise because the app hasn't supported layout for both mode and the dev thinks it may have buggy behavior.


text:
Using a Partitioned drive on an Android TV
I've got a partitioned drive - A USB drive, where i've got 2 of the partitions formatted ext3, one of the partitions as a FAT32, and the last one as FAT12. I wanted to access the FAT32 partition using an Android TV, however, the TV gives an error message "Unrecognised USB". Is there a way I could access individual partitions using the TV?
(PS: It is a MI TV)

Are you sure the HDD works at all when connected to MI TV? Such devices usually don't provide much power so the HDD may fail to start because of insufficient power. Use an active powered USB hub in between or HDDs with own power supply to avoid such problems.

@Robert, sorry, forgot to mention, I'm using a USB drive. Btw, when you mentioned HDD, I just remembered that my TV seems to support Partitioned HDD disks just fine. This is really wierd. However all the partitions on that HDD were FAT32, so I think that could be the difference.

android only provides 1st partition, repartitioning should work

@alecxs, The TV simply tells me the drive format cannot be understood, Does not even gives me the first partition :(  ... Android is a linux, it must be able to recognise and read ext3, which is the first partition. And in the case I mentioned in my initial comment, it perfectly recognised all of the partitions. I'm bit disinclined to repartition the drive, since it'll need me to reconfigure certain extra things as well.

@alecxs So, Is repartitioning, the only way?

Does this answer your question? How would you use your ext4 formatted thumb drive via OTG on Android?

@alecxs, The linked question didn't help :( Root access isn't there, I checked using adb.

@alecxs, sorry for the incredibly late reply; here is the screenshot: https://imgur.com/5NLIKa4.png

should be possible to root with this tool
https://forum.xda-developers.com/t/3786991

@alecxs, I know I'm being really picky, but I don't want to root TV either. I'll try repartitioning my drive.


text:
Can somebody reset my phone without opening screen lock?
Suppose somebody took my phone and reset the phone ( all files will be deleted like factory reset ) without knowing my screen lock password or even opening my phone.
Is that possible? if possible then how can i prevent that technically?

You cannot prevent that. Only your device vendor can. All you can do is to keep backups of important files.

it is possible to create custom ROM with user-settable root of trust that can run on locked bootloader. but even if you disable recovery and download mode still attacker can flash stock ROM in EDL/bootrom mode or erase data via JTAG


text:
Enable ScreenCast from ADB - TV
I would need to be able to remotely control and monitor a TV running Android 9.0. In order to do so, I have been using WebKey without major issues...
One problem is happening with one TV model is that it says that screencast is not enabled and therefore, WebKey is not able to get video from the screen.
Is it possible to enable this option from ADB (eg. modifying some configuration file)?
I have been looking around the filesystem and trying with "getprop", "settings" but could not find a possible solution or workaround. I have also tried using scrcpy and it works fine using ADB over Ethernet in the same LAN (both video and control works ok).

scrcpy copies it's own binary onto the Android device and runs it for generating the video stream. Also a program started via adb has permissions apps don't have. ScreenCast my be disabled/not present to avoid conflicts with recording of DRM protected material.

Thanks @Robert, is there a way to enable ScreenCast from "outside" the TV?

try to sideload 3rd party apk http://www.amazon.com/dp/B00JHMPP9S


text:
Why I can't I add contacts on my Telegram?
I can't add more contacts to my Telegram account. They said "[Name] is not on Telegram yet, would you like to invite them to join?" but the contact is indeed already existed on Telegram. I change my phone already and the setting was good but still the same I can't add anybody on my Telegram.
So I just want to know if there are any solutions and suggestions that I could do to deal with this. Please help me.

Almost exact dupe, but not answered yet: Why can't I add existing contacts to my Telegram account?

I think I had this same problem and I had to change my privacy settings to public, then asked the other party to discover me and send me a message so that I could add them in my contact list.

Their privacy settings is hiding the info from you.
Tell them to send their telegram username from Telegram> hamburger menu > settings > username. There also is a link that opens direct chat with them.


text:
Taking screenshot inside Android TV apps or while watching TV channels
I can take screenshots of the screen of my Android TV (Philips device, Android 9) with an external keyboard using the PrintScreen key, and also with a button remapping app. It works just like on an Android phone: a white frame appears on the screen border, it fades away and a PNG file is saved in the Screenshots folder.
But as opposed to phones, on Android TV it only works on the home screen and on the Android menus. But when any app is open or when a standard TV channel is being reproduced, it doesn't work (no white frame, no click sound and no PNG file)
Is this by design or can it be configured to behave like on Android phones?

Some apps can prevent screenshots: Disable Screenshot Security.

Ok, just like in smartphones... but for some reason in smartphones you get a notification that the screenshot was not taken and on Android TV you don't get any feedback


text:
How to create OTA zip and update OTA zip file into target device (android11)
I am working on Android 11.
Cloned & compiled source code , all images are generated.
Now I am trying to generate OTA zip file and update into target device.
Can you please help me to generate OTA zip(Major & Minor) file and update procedure or steps for Android 11.
Thank you.

Does this answer your question? How to create manually create my own OTA update file to be used for adb sideload?

May I know the command to create OTA ZIP in android 11.


text:
Where and how to get POP3 emails off Samsung Phone?
I recently did a backup of my email account using the Samsung Email app on my mobile phone (Galaxy A31 model SM-A315F), as it was set up as a POP3 account, then I changed it to an IMAP account, but all the POP3 emails did not back up and restore.
Is it still anywhere on the phone? Where and how can I retrieve it?

Possible dupe: Where do I find emails sent from the Samsung Mail App using a POP3 Mail Account?


text:
How to change my install directory on Android 10?
I have an Alcatel phone that has Android 10 on it. I want to change the installation directory from phone memory to SD memory but it doesn't have such an option in it's settings. So I want to know should I root the phone to get such an access or there is another way doing that?
Also like to know if it is safe doing that using Magisk or there is something better? Because I also do have my bank application, Amazon, etc. installed on my phone!

adoptable-storage

@alecxs: As I said in my question, my phone doesn't have this option on it's default settings. I want to know if any other apps/ways I can do it?

@alecxs: In many tutorials they say go to settings, storage settings, then format the SD card as internal storage, but my alcatel 5004R device only has format options and doesn't have any other options to make the SD card as an internal/default storage.

try to partition from adb shell https://android.stackexchange.com/q/213312

if you're planning to root your phone 1) get full ROM dump 2) unlock bootloader with mtkclient 3) patch boot with Magisk 4) disable vbmeta from fastboot 5) try to port from other device TWRP (optional) 6) disable encryption (optional, edit super.img) 7) install Link2SD

Does this answer your question? Update to Magisk 24.1. Support for XPosed modules / Changes


text:
How to find app permissions in the new Google Play Store web version?
In the new updates, the Google Play Store web does not show the permissions of apps.
If I want to check the permission of an app before downloading it, how can I do it now?
In the picture, missing permissions section in Google Play:

Please specify yout device model number and play store version. The option 'does' show up on my phone (rmx2193 with play store version 30.6.16-21)

@karthiknair looks like this is about the new web version of the Play Store.

@AndrewT. Oh wow so they're finally redesigning it after an eterenity and removing vital things (ah Google it it is)


text:
Tried downgrading from 5.1.1 to 4.4.4 nexus 7, and it is bricked
As the title says, I rooted my Nexus 7, and it was working fine on 5.1.1 - albeit very very slowly - I got tired of the lag, and tried to downgrade to 4.4.4 following this link. The tablet went into bootloader(fastboot) mode, and stayed there for a long time. At this time I could cycle thru START, RESTART BOOTLOADER, POWER OFF, AND RECOVERY MODE options but NONE of them work except OFF. So I switched it off, and now, it does not boot up at all, not even in the recovery mode. It is just blank, I see no sign of life at all.
I cannot get it to start, so there is no way I can use ADB or Fastboot for this.
Is there any way I can solve this?
I already have adb/fastboot setup on my pc, but it does not recognize the tablet.
thanks for any help.
I did go thru the similar questions here - link1 - link2. but they did not help.

Flashing Nexus devices is typically not a big problem. Therefore I assume your device has a hardware problem. Check the hardware keys if the are constantly pressed. If the device has a flash memory problem then the device is EOL. But 10 years would still be a good life time for a tablet.

Yes, I know. I have another Nexus 7, and it works flawlessly, on 4.4.4, having set it up as a digital clock. That also, I had rooted, and then unroot/stock with Nexus root toolkit.
This nexus also I had rooted with the root kit, and it worked though very slowly. It was when I tried to downgrade that it completely broke.
Its 10 years, yes, but I would still like to use it as a music player, if it can be sorted out.


text:
Failing to flash custom (Magisk-patched) boot.img to Samsung S20 FE (4G) with Heimdall
I am attempting to flash a Magisk-patched boot.img from Linux onto my unlocked SM-G780G. I have so far tried doing that using fastboot flash ... to which the device responded that it doesn't know the command.
The device is a Samsung Galaxy S20 FE (SM-G780G).
I then tried Heimdall v1.4.2 (on Ubuntu 20.4) and got this:
$ sudo heimdall download-pit --output bla.pit --verbose --stdout-errors
Heimdall v1.4.2

Copyright (c) 2010-2017 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...
      Manufacturer: "Samsung"
           Product: "SM8250"

            length: 18
      device class: 2
               S/N: 0
           VID:PID: 04E8:685D
         bcdDevice: 0100
   iMan:iProd:iSer: 1:2:0
          nb confs: 1

interface[0].altsetting[0]: num endpoints = 1
   Class.SubClass.Protocol: 02.02.01
       endpoint[0].address: 82
           max packet size: 0010
          polling interval: 09

interface[1].altsetting[0]: num endpoints = 2
   Class.SubClass.Protocol: 0A.00.00
       endpoint[0].address: 01
           max packet size: 0400
          polling interval: 00
       endpoint[1].address: 81
           max packet size: 0400
          polling interval: 00
Claiming interface...
Setting up interface...

Initialising protocol...
ERROR: libusb error -7 whilst sending bulk transfer.ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
 Retrying...
ERROR: libusb error -7 whilst sending bulk transfer.ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
 Retrying...
ERROR: libusb error -7 whilst sending bulk transfer.ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
 Retrying...
ERROR: libusb error -7 whilst sending bulk transfer.ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
 Retrying...
ERROR: libusb error -7 whilst sending bulk transfer.ERROR: libusb error -7 whilst sending bulk transfer. Retrying...
 Retrying...
ERROR: libusb error -7 whilst sending bulk transfer.ERROR: libusb error -7 whilst sending bulk transfer.

ERROR: Failed to send handshake!ERROR: Failed to send handshake!ERROR: Failed to receive handshake response. Result: -7
ERROR: Failed to receive handshake response. Result: -7
ERROR: Protocol initialisation failed!

ERROR: Protocol initialisation failed!

Releasing device interface...

I've tried both with and without superuser context (sudo) and the result is always the same. I am also unable to retrieve the PIT file from the phone.
However, the boot loader is successfully unlocked as I can see in the freshly initialized (due to the data wipe) Android, while running, and also during boot (shows a warning regarding the unlocked state, which has to be dismissed before the boot continues).
I am successful in entering ODIN/download mode (holding both Volume keys while the phone restarts, followed by Volume+), but still nothing seems to work when attempting to communicate with the phone.
I also tried using JOdin3, which detects the device and all, but already fails to retrieve the PIT file as well. I suppose it must be using Heimdall under the hood (?) ...
What part am I missing? Has the procedure somehow changed for newer Samsung phone models?

NB: in order to get fastboot mode to work (which I had tried before), I had to disconnect a Yubikey that I was using on the system. After that fastboot devices properly showed the phone, but using fastboot flash ... was equally unsuccessful (I tried fastboot flash boot <file> and fastboot flash boot_a <file> to no avail). Prior to unplugging it (although connected to a different root hub), it failed to detect the phone in fastboot mode.

how about Magisk Installation Instructions

@alecxs could you point me to the part you specifically mean? I read it, yes, but as I tried to point out in my question any attempts with fastboot failed. Which was when I found out Samsung uses a proprietary mode and proprietary tool called ODIN of which Heimdall is an open-source counterpart.

patch the whole AP_*.tar.md5 file, flash from Odin together with BL, CP, and CSC

@alecxs Right, you realize that ODIN runs on Windows, though? Which is why I was using Heimdall in the first place. I'm on Ubuntu (also noted in the question).

if heimdall issue is with reading pit only, you can get pit from stock firmware too. you can get partition+file names from pit with hex editor manually or with PIT Magic, PIT Viewer. if flashing succeed but you get "Only official released binaries are allowed to be flashed" check KG/ RMM state

Thanks for the pointers, @alecxs! Much appreciated. Yep, it seems like I have to set up a Windows in a VM or on a laptop and try ODIN instead.

https://forum.xda-developers.com/t/4188991

from github issue #414: 1) make sure it's not usage problem with --no-reboot --resume flags 2) add 50-android.rules to /etc/udev/rules.d 3) compile libusb from source + recompile heimdall

from github issue #482: try this prebuilt heimdall

@alecxs it's not the --no-reboot --resume issue, but I'll try the other advice. Failing that I may have to install a Windows and use ODIN. I don't quite dare running ODIN inside Wine


text:
Receive IR signals through camera
I want to receive IR signals on my phone. The camera can see IR, but I cannot tell which button I pressed. (yes, I know that's not how it works).
No app on the Play Store could help me because they all want to send IR signals. I tried to install LIRC through Termux, but it did not work.
After I receive the signal, I want to send it through a network socket.
Information:

Model: Motorola Moto C
Unrooted
Android 7.0
No extra bells and whistles

Yes CCD camera sensors can detect IR signals, but I am not sure if they can be used to read RC IR signals. Remote control IR signals usually have a frequency of 30-60Khz, most are at 38KHz. If I remember correctly for reading an analogue signal you need at minimum a measure frequency twice of the carrier signal, so you would need a measure frequency of 76KHz - which is a value I don't think that is technically possible with a CCD sensor eben if you only measure a small region of the chip. But you may want to ask the people at https://electronics.stackexchange.com if my assumptions are correct

You need external IR recievier hardware to be able to reliable read IR signals (I guess you use TV remote or similar). Phone's camera is not meant to read signal (it's able to receive it, but not to read the message).


text:
Reading incoming SMS from a computer through an API over WiFi or internet
I want to read incoming SMS'es from my computer, through an API, preferably in Python but I can write the Python code myself if the API is plain HTTP or JSON.
The phone uses the same WiFi as the computer, but the phone is not rooted and is not cable-connected to the computer. Is there a way to do so?

Welcome to Android Enthusiasts. Please note that app development is off-topic since Android Enthusiasts focuses on end-users or power-users (but not necessarily developers) solving their issues, so we can't really help with APIs and code-related issues since they are out of scope.

You need a couple of things for this. First, in recent Android versions only the default messaging app can read and send SMS. So you need an app that can be set to be default as SMS app, and that also allows at least a CLI functionality to allow accessing SMS. Second, you need a trigger for incoming SMS. Your SMS app or an automation app should provide a way to inform us about an incoming SMS. Third, you need a server (that would provide API) to act on that trigger and start accessing relevant SMS. NodeJS in Termux can be the server that would provide API. It can listen for events.

use old phone with old apps, no need to set as default then. I used to chat in realtime via sms on windows PC few years ago with MyPhoneExplorer (works even on wifi via adb tcpip)


text:
How to get lyrics for currently playing song on spotify app?
I would like to learn lyrics of songs playing on spotify but not every author gives them permission to publish it I guess.
I'd like to read the currently playing song and get the lyrics from some service.
Do I need some library from their documentation or is there just some available intent?
If there is already some nice app, you can point me in comments ;D

While the overall question seems on-topic, please note that app development is off-topic since Android Enthusiasts focuses on end-users or power-users (but not necessarily developers) solving their issues, so we can't help with SDK library or code-related issues.

Thank you, I wasn't sure what is the scope of this exchange. I found that on spotify app there is option for allowing others app to see currently playing song. I found SimpleLyrics finally. If somebody knows better apps feel free to add.


text:
How to know if it's hard bricked or a hardware problem?
Phone:
Moto C Plus, rooted.
How it started:
I was on F-Droid, downloaded Bromite (a browser). While installing it, the phone froze/hang. I went to the kitchen, came back, and i see the recovery TWRP logo screen. It was just frozen on that logo screen.
What I did:
I took out the battery, put it back in, tried to turn it on...nothing. Plug it to the charger...nothing. The computer...nothing.
Took it to a shop. They hooked it up to a power supply...
The reading was 0.7, too low. They said that means it's the AC. I don't know, is a reading of 0.7 not consistent with a hard bricked phone? Or is it a case of replacing or reballing the AC like they said?
I'm willing to do whatever it takes to revive this thing because I need what's in it.
Where do I start?

If you won't trust the expertise given you, why do you go there? You have the $$$ in your pocket that they want, so it is expected they do what is right for you. Absent another opinion of someone who can actually experiment with the device and diagnose, why would an impersonal, fact-lacking, INTERNET-based, opinion mean more?

What did they measure? You forgot to mention the unit of the value 0.7, was it Volt, Watt, Ampere, Apples, Bananas?

@wbogacz because experience my friend. Because this "impersonal, fact-lacking, INTERNET-based, opinion" came through so many times in the past when these so called experts told me its unfixable, or actually messed it up themselves. They are mobile technicians, they are not regulated like doctors. Most do not even know the term "hard bricked" or have the right tools to do the job. So I am always weary

@Robert Sorry, amps. It was very difficult getting the right info. I asked them what the machine is called, and what they are doing exactly. But they couldn't make it clear. All they said was "not many technicians know how to do this". Which wasn't my question. So I had to guess what it was, get online with that guess and figure out what they were doing. Thats how i found the picture of the device. So yeah, Ampere i deduced.

But 0.7 Ampere on USB (5V) would be 3.W Watt, which would be a common value for a phone (without charging). So it is still not clear why somebody claims a phone is dead by just reading 0.7A. May be that the phone does not charge is what they wanted to tell you.

@Robert OK, here is more detail... They hooked up alligator clips to the phone's battery positive and negative terminals. The machine was set to 4 volts (the number which is showing 31.6 in the picture above). Then they press the power button on the phone to see the reading. They said if the phone was good then the number would be above 1. Another guy said 4...but I didn't see what volt it was set on. Something else he said is that as soon as he let go of the power button on the phone, the number should decrease gradually and not instantly like it was doing on my phone. Makes sense to you?

as your device is rooted, is it by any chance unencrypted? so you can just read back userdata partition from SP Flash Tool (no battery needed)

@alecxs Hi Alexs, good to hear from you...I'm getting nothing when i connect it to the computer. Not even that windows tone you here when you first connect the phone.

@alecxs I just did it - lsusb. Not detecting.

@alecxs Its a USB Live. Tried with battery out. Still nothing. What should i do next?

Does this answer your question? How to get data off a completely dead Android phone?

@alecxs My goal here is to be able to log in normally as what I need are the apps and their data which I'm logged in to and no longer have the passwords or emails connected to them. I've been using them for years without logging out. I did make a nandroid backup but don't know how useful that is since the phone is completely dead. Also the nandroid backup is a bit old. I'm trying to troubleshoot right now to try to figure out what the exact problem is. The link you gave gives 2 options - JTAG and chip-off. I want to be %100 sure those are the required solutions for my particular problem first.

your phone is dead. Idk how to fix it. if you already have backup just send it to https://www.closingtheloop.eu


text:
What is Google up to? Google Play Store updating apps even though auto-update is disabled
Recently, I've noticed Google Play Store automatically "updating" apps, even when auto-updates are explicitly disabled.
I put "updating" in quotes, because all the apps in question don't truly have any updates available (according to the Google Play Store).  Yet Google Play Store is downloading updates for these apps, and tools like SD Maid indicate recent "Last update" dates for each of these apps.
This updating is happening to almost every app.  It's not limited to 1 or 2 apps, or a few specific developers.
An example is Date Calculator Pro.  Google Play Store indicates the last update for that app was the 25th of December, 2020.  But I caught Google Play Store updating that app today.
I suspect Google changed some policies and either Google itself is pushing updates to non-Google apps, or developers are scrambling to issue new "updates", even when no new functionality is added.  But what's really weird is that the Google Play Store does not indicate any recent updates for any of these apps, and version numbers are not incremented.
Those are just my guesses.  What's really going on?

There is a new updated Play Store policy about updating apps, see this article from Ars Technica. But if apps are scrambling to update because of this, they should have newer version numbers/last updated dates.

Actually, apparently updates for bug fixes don't need a new version number, so possibly updates for newer "target API version" don't either. Also, according to this reddit thread, this has been going on for years

Have you see how large the updates were (bytes, kilobytes, megabytes?)

@Robert in these cases, nothing actually updates. You can compare the old APK and the new one using some diff tool, and the code is exactly the same.

@Robert I don't know the exact size of what is being pushed by Google, but given the time it takes to download each pseudo-update, I (roughly) estimate 1-4 megabytes per app.  That's a very rough estimate based on the duration of each download given the network congestion at the time.

Apparently, what's happening here is that  Google Play support libraries get auto-updated regardless of your update settings. If an app you installed relies on those libraries, an "update" to the app is triggered, even if no code in the app has changed, only some libraries it uses.
Since there isn't a way to stop Google Play auto-updating, there isn't a way to stop these app updates either.

Google made a change recently to the Play Store and the visibility of certain updates that used to occur silently. Now, when Play Support Libraries are updated, it will cause apps to "update" if the update replaces the support library version an app is relying on, so the app is essentially reinstalled when this happens—but with the only change being the Google Play Support Library version—not the app's code. The support libraries are what brings newer Android API features to older Android versions without having to be on the newer OS version (it doesn't bring everything, but it improves compatibility, allows for a unified experience across Android versions, and does sometimes bring features). So the older the version of Android, the more this is going to happen, since the older the OS version, the more the support libraries have to bring to that older OS version to bring it up to date.
And since Play Support Library updates can't be disabled, neither can the pseudo-update of the affected apps. There's no new code from the developer. It's just Google updating their part, and the app being rebuilt around the new update.

Source + more info: this Reddit post

wait, so if I deliberately don't update in order to avoid newer features, Google is going to make an end run around my choice and force those features on me anyway by back porting them and forcing me to update to those???

@Michael you mean updates to Play Services? yes, Google Play Services updates whether you want it or not. The only way to avoid this is to remove Google Play Services entirely, which means you can't use any app that relies on them.

Comments are not for extended discussion; this conversation has been moved to chat.

@Michael The app‘s code itself is not changed, so you won‘t get any new app features if you don‘t want them. Only Google Play libraries get updated, which now triggers a reinstall of the app with the same version as before - this should not affect your experience with the app.