text:
Why can't I get similar performance degradation with Monkey in different experiments?
I have configured experiments to test which among 10 launched apps impacts performance the most. But I can't make an objective comparison, because if I launch the experiment twice with the same configuration, I get very different performance degradation, in terms of memory occupied and launch times. This is a piece of code from one of the workload scripts. I set the seed to always generate the same events, I wipe the cache at the end of each experiment and clean up the apps before starting another, yet in two experiments with the same settings I get a memory occupancy that grows up to three times faster in one than in the other.
while true; do

adb shell monkey -p com.android.chrome -s 1 --pct-appswitch 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes -v -v 1

sleep 1
adb shell monkey -p com.facebook.katana -s 1 --pct-appswitch 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes -v -v 1

sleep 1
adb shell monkey -p com.google.android.apps.maps -s 1 --pct-appswitch 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes -v -v 1

done

Is there a way to get similar performance degradation in two experiments? Is it just me doing something wrong or is this something that can't be achieved because there are too many random factors at play?

I still don't fully understand what you want to achieve: "which among 10 launched apps impacts performance the most" what performance are you talking about and how it is measured? Do you want to develop some sort of benchmark? Do you mean performance of the app itself or how they affect a different app? Why do you use apps that heavily depend on random content from the internet (such as Facebook).

The overall experiment was to be this: do 11 experiments. In the first one I would launch 10 apps, while in the other 10 experiments I would launch 9 apps by varying the app I don't launch. Then I would have to analyze the data of the first experiment and try to predict, with different techniques, the absence of which app affects performance the most and then compare it with the experimental data of the 10 experiments. But if there are other factors that degrade performance differently in each experiment, I can't compare the degradation between one experiment and another. @Robert

In my opinion this is a useless experiment, especially as it mainly tests Android and the used phone instead of the "not launched app". Because your set of apps contains apps that mainly show data received from a web server (which you don't control) you have to perform each experiment may be 100 to 1000 times and then calculate e.g. the average or examine the 95 percentile.

I don't have a lot of experience with stress testing, but I do agree with you. I too had thought that it was necessary to repeat the experiments many times to get what I needed. The experiment done this way was not my idea. I was assigned it and was trying to complete it. I think it needs to be completely rethought though.

Another problem you will face is that you can't reset the "thermal state" of the device. The more the CPU/GPU performs work the more heat it produces. Even using active cooling solutions will not fully be able to reset the phone back to it's original temperature. Especially phones with a strong CPU/GPU can produce a huge amount of heat in a short time, so much that starts throttling. So for comparable results mind the environment temperature and allow the phones to cool down after a run (e.g. 30 minutes).

In short, I would need to get the ground truth to see if the techniques I use can predict well which apps impact the most on system performance degradation. Would you have any suggestions on how to get ground truth in my case? @Robert

That is, I should do experiments from which to deduce a ranking of the most impactful apps.


text:
RAM usage per app on Android?
Is there a way to tell the RAM usage per app on Android?
That's a basic feature on all Linux distros but I haven't been able to find that for Android. Only the total usage.

Does this answer your question? Android system RAM usage

You can try WhatsRunning. Disclosure: I'm the author of the app.

source: Stack Exchange

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

sort: votes


text:
Why does the use of symlinks in /system gradually erode available space?
I am working on a routine for swapping dictionaries on an e-reader (Nook Simple Touch--Android 2.1). I've got the shell commands nailed down and have constructed an app using Tasker. It all works great except that after a few dictionary changes the amount of available space in /system (where the dictionary databases are) decreases to the point that the stock dictionaries cannot be restored to their original place.
I start by moving the stock databases from their default location to a directory where all the dictionaries will be stored. One option is in /data/media and the other on the sdcard. Both appear to work fine. Once those are out of the way, symlinks are created to replace them, referring to databases in the dictionary storage directories. This is the general sequence in terms of shell commands:
adb shell ln -s "'/data/media/B&N Downloads/Dictionary/en-de.db'" /system/media/reference/basewords.db
adb shell ln -s "'/data/media/B&N Downloads/Dictionary/inflect-de.db'" /system/media/reference/inflectedwords.db

or, for the /sdcard storage option:
adb shell ln -s "/sdcard/Dictionary/en-de.db" /system/media/reference/basewords.db
adb shell ln -s "/sdcard/Dictionary/inflect-de.db" /system/media/reference/inflectedwords.db

These changes require a reboot to take effect.
To remove the symlinks in preparation for a different dictionary or before restoring the stock dictionary to its proper place:
adb shell rm /system/media/reference/basewords.db
adb shell rm /system/media/reference/inflectedwords.db

As I say, it all works fine except for the disappearance of available space in /system to the eventual point that you cannot restore the original dictionary.
Before doing any of this stuff I typically have about 80% of /system used. There should be about 55 mb still available (that's with the stock dictionaries in place). But after several dictionary swaps I show about 89% full and down to around 30 mb available. Restoration of the stock dictionaries requires about 57 mb available space.
I've looked through /system trying to find something "new" that is taking up space but have not been able to find anything.
I've never seen this issue addressed anywhere. I'd be grateful for some input.

you are probably wasting inodes or left file system dirty. /system is read-only partition reserved for ROM only, no userspace files (or symlinks) must saved there. userdata partition is mounted /data

Thanks to the comment from alecxs and additional research in that vein, I have arrived at a solution for at least my instance.
It is stated elsewhere that removing files which are being used by running processes will cause a loss of available inodes. Although I can't claim to understand all the inode nuances, this made me look at the background processes on the e-reader. One, com.bn.nook.reader.activites, has its tendrils in the dictionary. I therefore tried:
adb shell pidof com.bn.nook.reader.activities
This returns a four-digit number which I use as:
adb shell kill [pid]
Then I proceed to do my operations with the database files, including moving, deleting, creating symlinks, deleting symlinks, restoring the original files, etc.
It all works with only the expected changes in /system available space at each juncture. No data appears to be lost by killing the background process and the reader function starts up right away when a book is accessed with the new dictionary immediately accessible, no reboot required (a bonus).
So before every change from the Dictionary Management app I just get the pid and kill the background process. Works like a charm!
Thanks again, alecxs!

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


text:
Privacy of in-app purchases: how much user data does the app developer get?
When a you do an in-app purchase like buying a feature or subscription the the app and the developer is getting data on your purchase.
I searched a bit the Google documentation but I wasn't able to determine what user-data from the used Google-account used by the purchase is made accessible to the app and it's developer.
Technically it should be possible to implement this whole process in a way that the app and it's developer does not get access to any user-related data like Google account e-mail, user name or similar data. The app and it's developer should only get the data what item/subscription you have bought and may be a random user-id only Google can relate to your account.
Is there any official documentation available about the privacy of in-app purchases like what user-related data is shared with the app and it's developer?

I'm no developer, and have not used Google Play's services since ages. That said, it appears that during billing developer gets obfuscated account and profile id. But than, there is this API which pretty much leaks many sensitive info about the user. See https://developers.google.com/android-publisher/api-ref/rest/v3/purchases.subscriptions
Does this make any sense? I can't piece the two things together.

There's a self-deleted Q&A posted in 2018 about a similar topic: What personal information is shared from the Play Store to an Android Developer?

@Firelord The first link was really valuable. If I understand it correctly the app and it's developer don't get any information about your Google account at all. It works the other way, the app provides an (obfuscated) account/profile id. This means if the app developers was careless Google may get the account name or email of the app account  but not the other way around.

The second link seems to be related to a more general API, mainly designed for web services. This API provides detailed user information (name, e-mail, ...) to the developer using this API. Luckily all those privacy related fields are marked according to the description as "Subscribe with Google" only. Not sure if this service is available outside of the US (never heard of it). What I read it seems to be dedicated to website paywalls, especially for newspapers and similar sites who want to collect micro-payment for access e.g. to an article.


text:
How is "rooted debugging" allowed on a non-rooted phone?
I just installed Lineage 18.1 (Android 11) on an old phone.
Per the Lineage website, "Lineage is not rooted by default."
However, I am surprised to see the option "rooted debugging" is available in developer options and I can switch it on.
So my question is, how is it possible for me to allow rooted debugging if the phone is in fact not rooted.
What am I not getting?
Thanks!

Possibly related/dupe: if a user debug build comes with adb root access by default, does it contain the su binary?, which linked to a more in-depth technical explanation on What special privileges "/system/xbin/su" does have w.r.t. root access? and Why "adb root" does nothing?.

Are you sure this option has any effect on a non-rooted device? In which section inside developer options do you see this option?


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.

Hi, it's been a while, someone asked if you have found any solutions?


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:
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:
Consecutive photos are deleted
I have setup google photos as my gallery app on a Nokia 5.3.
Whenever I take consecutive photos, like for instance trying to photograph multiple pages of a book, or just taking multiple pictures in a row, only the first one will be saved. If I click on some of the subsequent ones in the little gallery preview in the camera app, they will show as "Processing" for a few seconds, and then just disappear, they're not on my phone (from what I can see at least) nor on the photos.google.com page.
I'm sure it's just some obvious setting I'm missing somewhere, but I can't seem to find anything anywhere.

I'm not sure Google Photos is relevant here. Since the little gallery preview in the camera app also has a problem, this really looks like an issue with the camera app and file writing (possibly corrupted data, I have experienced a similar issue with a solid-gray-image when using some 3rd-party camera apps).

I'm honestly not really sure what information is relevant. Googling around most information i could find was actually people that wanted similar functionaliy (deleting duplicate images) with most answers pointing to google photos as a solution. I've tried moving image storage to sd card in the camera app, without any change. So I wont rule out that it is a file writing issue, but even so, what is the issue and how would I fix it? I think the preview button uses the gallery app to open the image on clicking, btw.

default camera app has setting for change storage location to MicroSD Card. On the same settings I remember there was an initial note that consecutive photos still get saved to phone internal storage only (most likely because of speed limitation). maybe you can find pictures in /sdcard which is your Internal Storage. you can also try some disk digger app to find any existing files


text:
How to extract data from app?
So I want to switch pedometer apps but move over my data.
I thought I could just get the database, extract the relevant entries and inject them into the other app's database. But no.
First off adb backup does not work, files are 1-4 kB. Possibly to do with my custom ROM.
Also no relevant data in /sdcard/Android/data/com.name.
It will sync with google fit but not historical data.
I located the databases in /data/data/com.name/databases but the ones I could open had no relevant data. The ones I couldn't open (requires some password) were .workdb (no clue what that is) or .workdb-wal, these are ~90 kB so it might have the data.
The app uses google sync. I thought maybe I could get at the data there but was unable to find the backup in drive.
Any  ideas how I could get at the data and then inject it into the other app?

There's no universal way to extract & migrate data from one app to another. Without knowing the specific apps and how they work, we can't provide further helps.

If the apps don't provide an export/import functionality data migration needs very detailed knowledge on how the apps work internally.

https://sqliteforensictoolkit.com/how-not-to-examine-sqlite-wal-files

https://www.staff.hs-mittweida.de/~pawlaszc/fqlite


text:
FORTIFY: pthread_mutex_destroy called on a destroyed mutex
I own the LG G4 (Snapdragon 808 based device).
All files reference in my post are shared here.
I'm trying to get the camera working in Q, however, I get major issues with the camera daemon crashing.
We get errors like: FORTIFY: pthread_mutex_destroy called on a destroyed mutex
See the log file labelled "fortify - boot_lc_crash.txt" in the shared folder.
The lib at fault is : libmmcamera2_isp_modules.so
The issue is that the pthread_mutex_destroy is called within a loop. See the image labelled "mutex destroyed in loop.jpg" in the shared folder.
You can see the loop in lines 88-97.
We initially imported the same lib from another device with a similar chipset (oneplus2 - Snapdragon 808, just like the LG G4)
https://github.com/aoleary/vendor_lge/commit/72e3cb5fedd04e9daa99541d298037d81754daf0
But we had issues still after that.
So, instead, we tried modifying our own lib directly, to see if the outcome would be different.
We tried to reverse engineer the libmmcamera2_isp_modules binary. We tried fixing it by hexediting the binary so the loop only executes once.
But then we have these pthread join errors : invalid pthread_t 0xea776230 passed to pthread_join
See the log file labelled "pthread - boot_lc_crash.txt" in the shared folder.
We tried to edit the beq, the b and making param = 1 initially, but that didnt work out.
See the image labelled "modify pthread.jpg" in the shared folder.
Any ideas ?
ROM = https://github.com/AOSIP (ten branch)
https://github.com/aoleary/device_lge_h815/tree/aosip_Q
https://github.com/aoleary/device_lge_g4-common/commits/q_aol3
https://github.com/aoleary/G4-Titan-Kernel/tree/pie_mergeQ
https://github.com/aoleary/vendor_lge/tree/q_aol2


text:
Using android phone as a DMZ/access point
I had a router suddenly die, and was wondering if I could use a spare Android phone as a temporary replacement.
Currently the network has one laptop connecting via Wi-Fi, and one desktop connecting via WiFi or ethernet.
The laptop and desktop should be able to talk to each other freely.
The internet connection for both came via the router, which was set up to extend another Wi-Fi network.
Does anything like this exist for Android?
I have a few spare phones lying around, including a Google Pixel and Essential Phone.


text:
is there a way to lock down an android phone to a specific IP range (i.e spotify IP addresses only)?
Is there a way to lock down an android phone to a specific IP range (i.e spotify IP addresses only)?
We want our daughter to listen to spotify, but not access the internet in any other way. Right now, we have locked the phone down to spotify only.
However, for any links provided in descriptions in spotify, when she "clicks" on them, the browser opens.
Hence, we are keen to basically just lock it down to allowed IP addresses only. To keep our policing easy.

No, Android devices don't have that ability without root and custom unofficial applications.  Plus Spotify no longer uses specific IP ranges like they did several years ago, they have hosted servers all around the globe, and Spotify no longer provides those IP ranges to the public (filtering is done by content type now days). My suggestion would be to look into if your device has Parental Controls enabled.

What would be a better way to only allow internet access to spotify? We locked with parental controls to only give access to spotify, but clicking on any link in spotify opens the browser and the browser basically means unlimited access to the internet.

Theoretically a special VPN app (or service) could restrict network requests to certain IPs. However you should consider that Spotify is a service that AFAIK runs in the Amazon cloud, that means there are a large number of servers be used and their IP can change at any time. Also other AWS services may have a similar or even the same IP if common AWS servers are used.

This is just an idea, but maybe use a vpn directly connected to spotify

Use a parental control (some Kiosk app I guess) app (a separate app, not Google Play Parental Control) to restrict app access to Spotify app only

Perhaps a phone is not the proper device for this application... There are several MP3/Streaming players that can be purchased on sites like Amazon, that would only give access to music or streaming services.


text:
How to IP forwarding/NAT from WIFI -> Mobile data without creating hotspot/access point
I would like to be able to use my android phone as a backup internet connection if my home broadband goes down.
The idea is that if the network went down I would set up a static route on my home router to point all internet-bound traffic at the phone, and all the other devices on my LAN would be able to carry on using the internet without reconfiguring each one.
How can I get my android phone to perform IP forwarding/NAT from the wlan0 over the mobile data network? I don't want to put the phone into access point mode, but rather leave it connected to my home wifi network.
The phone is rooted so it feels like this should be possible with iptables but I'm not having much luck.

Commenting mostly to follow this, but I honestly don't think this is really possible as your stating it... You would have to have it hotspot mode, or wired USB tether mode (some routers support this), otherwise Android just won't allow this to happen, root or not.

@acejavelin I was able to get this working on my rooted Android 10 phone as mentioned in my answer. I believe the steps should be more or less same for all Android devices with changes in names of interfaces, routing tables, iptables chains, etc. @ Oenotria yes, I have used my phone's internet connection as a backup connection in my home router using a static default route with a higher metric than my main default route, and it works flawlessly as long as my changes are active on the phone.

Try to simplify this answer for your use case. Yeah I know it's for hotspot but the network interface is same in both cases. If you can't make it work I'll write an answer when I get time.


text:
Can I have screenshot notifications persist in Android 12?
I have a Pixel 6 Pro running Android 12. In previous versions of Android (not sure which ones), unless you disabled it, taking a screenshot would create a notification that persists in the notification bar until you dismiss it.
In Android 12 there is now just a temporary dialog that floats at the bottom of the screen. If I don't react to it before it disappears, I have to navigate to my screenshots folder in Photos which takes a few seconds and is annoying.
I'd prefer the older behavior where a notification is created, is it possible to restore this in Android 12?


text:
Group Text question
I use message+ for text. I am stuck in 2 group texts from hell. I didn't ask to be included, I just was & now I can't get out!
Is there anything I can do to leave these group texts? If I factor reset my phone will it stop? Do I have to go to the extreme & change my number?

Why don't you try using another messaging app instead of message+.i believe it would be much better than a factory reset. You could try wiping the App data (message+). Tell me if it helps


text:
Is it possible to do a full image backup of an android 11 phone?
Most manufacturers require a factory reset before sending away to be repaired. However if it's not a software fault then you are inconvenienced.
Is it possible to do a full image backup of the phone? I've read through a few of the answers here but they're a few years old.

depends on phone

If an app uses the hardware based AndroidKeyStore then it is not possible. As far as I know cryptographic keys in that store can only be accessed/used but not exported even with root permissions (if the key has been created as non-exportable key). If you perform a factory reset the necessary keys to decrypt those keys are gone.

D2D transfer apps are used to backup nowadays. I am not quite sure but this solution might use the same underlying technique https://www.xda-developers.com/lineageos-seedvault-open-source-backup-solution

So let's create a new fresh answer then. As mentioned in another answers [1] [2] one can do a full backup of

boot
system
data (there is a trick to include the Internal Storage)

by booting into TWRP and doing so called NANDroid backup (IDK, it's just a big "Backup" button on the main screen)
Once you find a TWRP image for your device, the process looks like this.
adb reboot bootloader

# when device at the booloader screen
fastboot flash recovery twrp.img

# be ready to press a key combo
fastboot reboot

Before the tablet/phone boots up hold Volume Down + Power buttons. This way we end up in the same bootloader, select Recovery Mode and it will load TWRP.
For more details read here


text:
How To Disable System Updates On Motorola Moto G Stylus 5G? Or How To Disable System App With ADB (Package Is Protected/Protected Package)?
I have a Cricket branded Motorola Moto G 5G Stylus running Android 11, and I'm trying to disable the system updates. I've already disabled system updates in developer options, but it still forces updates - I can delay the update for ONE day, and then it forces the update with absolutely no way to stop it, and no more delays. You get 24 hours and then it forces it.
I tried using ADB to directly disable the system update apps. There are two, both labeled "Cricket Software Update" with package names com.motorola.android.fota and com.motorola.ccc.ota. I disabled com.motorola.android.fota, but when I try to disable, uninstall, or clear com.motorola.ccc.ota, ADB gives an error "Cannot disable a protected package" or "Failure: package is protected."
I use this phone for reliability testing, and forced restarts for system updates break that. Not to mention the updates themselves often break functionality of other apps or system features. I don't need updates, don't want updates, so how do I disable system updates on my Motorola Moto G Stylus 5G? Or, how can I disable protected system packages/apps with ADB?

Do you have the ability to unlock the bootloader and root the device? That is about the only way on modern Android devices like this unfortunately. Last time I checked, Moto (Lenovo) eliminated the ability to unlock the bootloader back in like 2018 though.

You could try to use a VPN based ad-blocker (like Blokada) that allows you to define custom block lists. If you could find out the network names used in the update check process you could block them. Without a working network connection to the update servers the update checker will not work and no new updates will be downloaded.


text:
ITV Hub stopped working on Nexus 7 2013 (OS 6.0.1)
ITV Hub has suddenly stopped working on this - don't know exactly when, don't use it that often for streaming.
It still works fine on my Google Pixel 2 (OS 11) so don't think it is wifi network related.
The app starts OK, but on trying to live stream an error dialog merely says 'something has gone wrong, please try later' (001). ITV's help is not great, simply says it should work on Android OS after 5.0.
Tried reinstalling to no effect. I notice the app version (10.3.0) is the same on the Pixel and Nexus, but in the play store download, the Pixel version says 55MB, whereas the Nexus is 40MB.
I had exactly the same thing with All 4 some time ago, then suddenly it started to work again.

The Pixel will run the ARMv8 64bit version and your Nexus the ARMv7 32bit version, therefore the size difference. Also the screen size differes which can result in different image resources being used.


text:
How to change microphone volume/gain settings in LineageOS?
I'm using LineageOS (it says it is Android 10).
First time I'm trying to use headphone mic, and I got very surprised (and very, very pissed) that there isn't anything in Settings where I can regulate which mic do I want to be active, and the gain/volume for the microphone.
So is it possible to change microphone settings in LineageOS - and if so, how?

I also had a microphone volume problem in recording apps (not on phone calls).
It's probably very device and OS specific, but I was able to change it by editing /system/vendor/etc/mixer_paths_0.xml. It requires root to mount /system -o remount,rw and to write the file.
In the following section I changed the MIC3 Volume value from 4 to 25 :
        <path name="gain-media-headset-mic">
                <ctl name="MIC3 Volume" value="4" />
                <ctl name="MIC3 Boost Volume" value="2" />
                <ctl name="ADC Left Gain" value="127" />
                <ctl name="ADC Right Gain" value="127" />
        </path>

The phone is on LineageOS 16 (Android 9).


text:
Help with decompiled apks
when I decompile an apk I get several folders with weird names like a b a0 b1 and so on. same for Java source and smali file names. Is it possible to reconstruct the source hierarchy and resources like it was before the build?
Specifically I want to know what code is called when I tap on a specific button in the ui.

Those directories represent obfuscated code, usually created by Proguard. You'd need the corresponding Proguard definitions to deobfuscate them – which you can only obtain from those having run the obfuscation (so they are often not willing to provide them to you, should you be able to contact them). I'm not aware of any independent way of deobfuscation – but should there be one, I'm all ears…

@Izzy Is there any way to trace back to the code via the message that the button throws on screen when tapped? I was able to grep that string in resource files.

Note that we have a sister site [reverseengineering.se] that may specialize in this topic. They also have android tag.

Some times APKs contains some left-over strings that indicate their original names. Jadx is able to read and display those strings. Note that you can not simply rename the folders of a apktool decompiled app, as you would have to correct all references of the renamed classes in all decompiled smali files.


text:
Halp...soft-bricked A40 after uninstalling apps ADB
I may have just messed up my smartphone and really need your help. I wanted to get rid of some of the bloatware on my A40 and read online that one can actually uninstall many apps via the Windows command line. So I looked up a list of apps supposedly safe to remove and ran a batch file to uninstall them. This is as far as I got:
a40:/ $ pm uninstall --user 0 com.sec.android.app.samsungapps
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.app.camera.sticker.facear.preload
Success
a40:/ $ pm uninstall --user 0 com.sec.android.mimage.gear360editor
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.smartmirroring
Success
a40:/ $ pm uninstall --user 0 com.android.htmlviewer
Success
a40:/ $ pm uninstall --user 0 com.sec.android.provider.badge
Success
a40:/ $ pm uninstall --user 0 com.android.sharedstoragebackup
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.app.simplesharing
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.themecenter
Success
a40:/ $ pm uninstall --user 0 android.autoinstalls.config.samsung
Success
a40:/ $ pm uninstall --user 0 com.sec.enterprise.mdm.services.simpin
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.stickercenter
Success
a40:/ $ pm uninstall --user 0 com.sec.android.mimage.avatarstickers
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.knox.analytics.uploader
Success
a40:/ $ pm uninstall --user 0 com.sec.enterprise.knox.cloudmdm.smdms
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.app.camera.sticker.stamp.preload
Success
1|a40:/ $ pm uninstall --user 0 com.sec.factory.cameralyzer
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.sdk.handwriting
Success
a40:/ $ pm uninstall --user 0 com.sec.android.app.fm
Success
a40:/ $ pm uninstall --user 0 com.sec.enterprise.knox.attestation
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.mdm
Success
1|a40:/ $ pm uninstall --user 0 com.sec.android.widgetapp.samsungapps
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.app.spage
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.drivelink.stub
Success
1|a40:/ $ pm uninstall --user 0 com.wsomacp
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.game.gametools
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.game.gos
Success
1|a40:/ $ pm uninstall --user 0 com.dsi.ant.sample.acquirechannels
Success
a40:/ $ pm uninstall --user 0 com.dsi.ant.service.socket
Success
a40:/ $ pm uninstall --user 0 com.dsi.ant.server
Success
1|a40:/ $ pm uninstall --user 0 com.android.egg
Success
a40:/ $ pm uninstall --user 0 com.sec.android.easyonehand
Success
1|a40:/ $ pm uninstall --user 0 com.sec.android.app.launcher
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.mateagent
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.app.watchmanagerstub
Success
a40:/ $ pm uninstall --user 0 com.sec.android.daemonapp
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.app.social
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.wellbeing
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.da.daagent
Success
1|a40:/ $ pm uninstall --user 0 com.android.bips
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.authfw
Success

Right before that, I had moved apps related to "Knox" and "MDM" and everything seemed fine. But even while the last commands were running, the "desktop" disappeared (the home screen with all my app shortcuts) and some kind of "busy notification" was running instead (I think it said something like "starting up apps" or "launching apps"). But the phone didn't reboot, it just seems that the homescreen had crashed. I then noticed that I might have slipped in apps for deletion that I actually needed or was using, such as
com.sec.android.app.launcher
com.samsung.android.wellbeing

Since the phone seemed to be stuck in this "busy loop", I decided to restart it by long-pressing the power button and selecting restart. But from this point, the phone wouldn't restart and got stuck in a reboot loop, where only the Samsung logo pops up, followed by a short vibration pulse, then reboot etc.
At this point I panicked and started searching online for solutions (which also brought me to this forum). I've read about using OEM unlocking, firmware-flashing using Odin, Samsung Tool Pro, TWRP etc. but quickly got lost in the woods and didn't want to risk breaking things more.
There are log files I can access from the boot menu which might contain a lot of useful information regarding the cause of the problem, but it's way too much to type it:
/cache/recovery/last_log
/cache/recovery/last_kmsg
/cache/recovery/last_history
/cache/recovery/rescueparty.log
/cache/recovery/last_avc_msg_recovery
/cache/recovery/last_log.1
/cache/recovery/last_kmsg.1
[...]
/cache/recovery/last_log.9
/cache/recovery/last_kmsg.9

Is there a way I could somehow read these log files via a USB connection? For example, in rescueparty_log, there is some "serious-sounding" stuff:
!@*** FATAL EXCEPTION IN SYSTEM PROCESS: main
java.lang.RuntimeException: There must be exactly one installer; found []
?at com.android.server.pm.PackageManagerService.getRequiredInstallerLPr(PackageManagerService.java:4422)
?at com.android.server.pm.PackageManagerService.<init>(PackageManagerService.java:3954)
?at com.android.server.pm.PackageManagerService.main(PackageManagerService.java:2856)
?at com.android.server.SystemServer.startBootstrapServices(SystemServer.java:985)
?at com.android.server.SystemServer.run(SystemServer.java:762)
?at com.android.server.SystemServer.main(SystemServer.java:762)
?at java.lang.reflect.Method.invoke(Native Method)
?at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
?at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:945)
Error reporting crash
java.lang.NullPointerException: Attempt to invoke interface method 'void android.app.IActivityManager.handleApplicationCrash(android.os.IBinder, android.app.ApplicationErrorReport$ParcelableCrashInfo)' on a null object reference
?at com.android.internal.os.RuntimeInit$KillApplicationHandler.uncaughtException(RuntimeInit.java:144)
?at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068)
?at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1063)
?at java.lang.Thread.dispatchUncaughtException(Thread.java:1955)

Also, some more information from the boot screen output:
Android Recovery
samsung/a40eea/a40
9/PPR1.180610.011/A405FNXXU3ATA4
user/release-keys

#Reboot Recovery Cause is [system_server:7340 RecoverySystemRescueParty]#
Support SINGLE-SKU

Block-Based OTA
Supported API: 3

MANUAL MODE v1.0.0#

Is anyone perhaps familiar with this problem and knows of a way how I could get the phone to start up properly, so I can at least recover all my personal data?
My impression is that I might have deleted some important system app, since the problem occurred right in the middle of the uninstall process (see shell history above), and I'm a little bit hopeful that maybe it's possible to just reinstall it somehow. I haven't tried the "Wipe data/factory reset" option in the boot menu as I don't want to lose all my data.
Thank you so much for your help, any advice is super-appreciated!!


text:
How to connect over fastboot to Galaxy A50?
I'm on ubuntu 22.04 and I can connect over adb to my Samsung Galaxy A50, and do
adb reboot bootloader

it reboots to bootloader mode, but I can't use fastboot devices, it returns empty.
Other phones work in this computer.
lsusb shows
Bus 001 Device 015: ID 04e8:685d Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II] (Download mode)

All tutorials talk about a Windows driver, but what do I do for ubuntu?

Most Samsung devices don't have a real fastboot/bootloader mode. The lower layers of Samsung device are just a bit different. Also "Download mode" is also not fastboot mode you could better call it "Odin mode" (or "Heimdall mode" as you are on Linux).

@Robert oh ok. Is there an open source client for odin mode?

Search for Samsung + Heimdall and you will find what you need.

@Rafaelo see our heimdall tag wiki ;) P: here is a more up-to-date fork of it.


text:
How to disable a broken system service in Android 11
tl;dr: the fps_hal init service on my phone is constantly restarting, and since I don't use the fingerprint sensor I want to disable it.
Background:
Trying to debug my own app on LineageOS 18.1 (Android 11), logcat gave a ton of information about a system service going haywire:
06-25 15:50:23.258     0     0 I init    : starting service 'fps_hal'...
06-25 15:50:23.262     0     0 I init    : Created socket '/dev/socket/fpc_oem', mode 660, user 1000, group 1000
06-25 15:50:24.116 30815 30815 D fpc_hidl: fpc fingerprint hwbinder service starting
06-25 15:50:24.117 30815 30815 D libfingerprint_core: core_init
06-25 15:50:24.117 30815 30817 D libfingerprint_core: worker_thread: started
06-25 15:50:24.117 30815 30817 D libfingerprint_core: pick_task: suspended 0
06-25 15:50:24.117 30815 30817 D libfingerprint_core: pick_task: No tasks
06-25 15:50:24.117 30815 30817 D libfingerprint_core: worker_thread: Waiting tasks, suspended 0, on pause 0
06-25 15:50:24.120 30815 30815 I fingerprint_key_handler: Input device qpnp_pon (/dev/input/event0) supports KEY_POWER
06-25 15:50:24.122 30815 30815 D fingerprint-oem-server: install_oem_client_handler: installed ID 2
06-25 15:50:24.122 30815 30815 D fingerprint-oem-server: install_oem_client_handler: installed ID 3
06-25 15:50:24.122 30815 30818 I fingerprint_key_handler: key_thread: starting
06-25 15:50:24.124 30815 30815 I fingerprint_key_handler: Input device qpnp_pon (/dev/input/event0) supports KEY_POWER
06-25 15:50:24.126 30815 30815 D fingerprint-oem-server: start_oem_server
06-25 15:50:24.126 30815 30815 D fingerprint-oem-server: open_socket: pass
06-25 15:50:24.126 30815 30815 D libfingerprint_core: core_init fingerprint wakeup supported.
06-25 15:50:24.126 30815 30815 D libfingerprint_core: set_env: added key 'hal_dev' value 0x71ac4e7430
06-25 15:50:24.126 30815 30815 D libfingerprint_core: task_alloc: authenticate
06-25 15:50:24.126 30815 30815 D libfingerprint_core: task_set_suspendable: authenticate
06-25 15:50:24.126 30815 30815 D libfingerprint_core: task_alloc: enroll
06-25 15:50:24.126 30815 30815 D libfingerprint_core: task_alloc: remove
06-25 15:50:24.126 30815 30815 D libfingerprint_core: task_alloc: enumerate
06-25 15:50:24.127 30815 30819 I fingerprint_key_handler: key_thread: starting
06-25 15:50:24.133 30815 30815 D QSEECOMAPI: QSEECom_get_handle sb_length = 0x80
06-25 15:50:24.134 30815 30815 D QSEECOMAPI: App is not loaded in QSEE
06-25 15:50:24.134 30815 30815 D QSEECOMAPI: app_arch = 1, total_files = 9
06-25 15:50:23.346     0     0 W QSEECOM : qseecom_load_app: App (fpctzfingerprint) does'nt exist, loading apps for first time
06-25 15:50:24.257 30815 30815 D QSEECOMAPI: Loaded image: APP id = 69996
06-25 15:50:23.464     0     0 W QSEECOM : qseecom_load_app: App with id 69996 (fpctzfingerprint) now loaded
06-25 15:50:24.264 30815 30815 E fpc_tac : fpc_tac_transfer send_cmd failed -11
06-25 15:50:24.264 30815 30815 E fpc_tac : fpc_tee_print_build_info, fpc_tac_transfer failed -4.
06-25 15:50:24.273 30815 30815 E fpc_tac : fpc_tac_transfer send_cmd failed -11
06-25 15:50:24.273 30815 30815 E fpc_tac : sensor_command, Failed to send command: 4 to TA, status code: -4
06-25 15:50:24.277 30815 30815 E fpc_fingerprint_hal: fpc_hal_open failed
06-25 15:50:24.277 30815 30815 I scudo   : Scudo ERROR: invalid chunk state when deallocating address 0x00705c4e4350
06-25 15:50:24.277 30815 30815 F libc    : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 30815 (fpc_fingerprint), pid 30815 (fpc_fingerprint)
06-25 15:50:24.336 30823 30823 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
06-25 15:50:24.337   726   726 I tombstoned: received crash request for pid 30815
06-25 15:50:24.337 30823 30823 I crash_dump64: performing dump of process 30815 (target tid = 30815)

Pulling out some keywords, I ran getprop|grep "init" and all the init services are listed as running except this one:
[init.svc.fps_hal]: [restarting]

And that's where I'm stuck. service list gives me nothing to go on, Google gives me nothing, and my knowledge of the Android init procedure and directory structure is close to nil.
Can anyone help point me to where this service is managed from, and how to disable it? If the location is SELinux protected, is there a way to patch without re-flashing the entire ROM? Thanks in advance.

service list gives a list of Android framework services running in Java stack. fps_hal is an init service running in native stack. They are entirely different. You can do setprop ctl.stop fps_hal or simply stop fps_hal. Requires root.


text:
How to keep apps from being removed from recent apps list
With Android 7 (aka nougat), behavious of the recent apps list changed: instead of being "kept forever (until swiped out)", apps now get removed by whatever criteria (from my research it now "only shows the 5 last used tasks, and tasks used in the last 6 hours"), which is quite annoying. I found this question asked multiple times e.g. at Reddit or XDA, but no answer. With Android-7 and Xposed, one could use the Recents auto-removal override module, but that stopped working around Android-10.
So with Android-10 and up (I'm on 11 now), how can I keep Android from "expiring" apps from the recent-apps-list? Is there some "hidden setting" or other way to modify this behavior? Any solutions (including those requiring root, Magisk, Xposed) are welcome.


text:
Password unlock from recovery menu
What do I door the steps to reset or unlock the phone pin on a Motorola phone.. I have already powered device off and am. Ow at.the recovery menu so what do I do to unlock this phone e even have the mount option but Nothing happens when I choose it and bottom of phone screen says
Supported API:3 and has mounted/system 3 times under the api  anyone help me

there is no such password unlock from recovery menu. you can factory reset from recovery menu (but won't remove FRP)


text:
How to stop automatic copying to usb flashdrive
I have a OnePlus Nord N20 running android 11. Whenever I plug a flashdrive in, It dumps a bunch of empty folders onto the flashdrive. Alarms, Android, Audiobooks, DCIM, Documents etc. Does anyone know how to get it to stop doing that. Thanks.

Does this answer your question? Should a new microSD card appear to have folders in Android?

Related: How to stop apps writing to "Android" folder on the SD card?

Thank you. Your suggestion help me understand how the folders are getting there but not how to stop it from happening.


text:
Force network operator
I'm getting my phone service through a medium sized company in my country, which means they have their own LTE network (called ice+). With my current plan I have practically free use of this network, but in the cases I can't find that network, my phone will automatically connect to their backup one (called ice, which I believe they access through a cooperation with a larger company), of which I have a small limit on data usage. This has been working out great for the past half year, but recently my phone has started changing the network operator from ice+ to ice randomly, even though I know it has access to ice+ (it will change to and stay on ice when I'm at home, even though the phone has been lying in the same place the whole time). Even if I manually select ice+ (which takes a few minutes to find because of searching), the phone will automatically change back to ice without me touching it at all.
Because of this I need a way to lock my phone to ice+, so I won't have to deal with restricted access and high bills, which should be completely unnecessary. Does someone know how I could do that, if there's something I can change in the APN settings, or maybe some app I can download that will do it for me? Even something that will check the network and automatically change back to ice+ would be okay, if not as convenient.
For reference I use an LG G6.

Automatic network selection is by default a job of the SIM card if I remember correctly. Seems like your operator has updated the SIM card over the air. But in your case the network technology switch could ba an option if it allows to set the device to 4g only.

How would thay work though? ice is also a 4G network, so wouldn't it connect just the same?

Sorry then forget my idea. Your question seemed to indicate that only ice+ is a LTE network.


text:
IFTTT multiple notification triggers not working
I'm trying to trigger an IFTTT action (turning heating on/off) when I arm or disarm my alarm system. The alarm system does not offer integration with IFTTT but, since arming/disarming the system gives a notification on my phone, I decided to use the android service with the "notification from a specific app" trigger.
I can create a working trigger for when I disarm the alarm, as well as for when I arm the alarm by specifying a notification keyword, next to the app name. However, the moment I try to enable both of these at the same time, I find that only one of the two works.
Is there a limitation where you can have only one trigger checking notifications (from a specific app)? If so, are there ways around it?
I also tried location based triggers, but never got them to work (tried everything from disabling battery optimization, checking location service settings on my phone, enabling wifi/bluetooth for better accuracy and changing IFTTT apps settings).
I'm using Android 10 with the IFTTT app installed and running in the background.
I am currently unable to upgrade my android version as apparently nowadays phone companies think it is normal to stop all updates after 2-3 years, forcing you to replace perfectly good phones, which I'm not willing to do.


text:
What application is responsible for reporting seen SmartTags to Samsung?
There must be some kind of technology on Samsung Galaxy phones that report SmartTags seen t Samsung. Is that technology in,

The Samsung Android distribution
The SmartThings application
Something else.

What actually is responsible for seeing and reporting these devices?

How do you know those tags are reported to Samsung? I did not find anything online that SmartTags system works like Apple's AirTag system (all Apple devices scan for AirTags and send info on found tags to Apple).

@Robert it's the same system. They're both Bluetooth LE tracking systems.

The used technology doesn't indicate if or if not found tags are reported to a central cloud service. But I finally found what you are talking about, it is called the "Galaxy Find Network". From what I read on https://www.samsung.com/ie/support/mobile-devices/how-do-i-find-my-smarttag/ section "How can I join the Galaxy Find network?"  you have to agree to participate in this network. And it shows that scanning is not done by an app but a system service (as it is a system setting).


text:
Temporary root shell on unlocked bootloader?
My Pixel 2 "walleye" is already bootloader unlocked. I am wondering whether it's possible to get a root shell without first rooting the phone. Maybe via fastboot?

yes, if your device accept fastboot boot

https://twrp.me/google/googlepixel2.html

https://github.com/topjohnwu/Magisk

get a backup of boot.emmc.win, patch with magisk apk, and fastboot boot magisk_patched.img

How do I acquire boot.emmc.win?

fastboot boot twrp-3.3.0-0-walleye.img in TWRP menu - backup - boot

https://www.xda-developers.com/google-releases-separate-adb-and-fastboot-binary-downloads

https://i.sstatic.net/6EDK1.jpg
https://i.sstatic.net/H6DS4.jpg
https://i.sstatic.net/UMKKi.jpg

https://i.sstatic.net/B8aWV.jpg
https://i.sstatic.net/m8Qyg.jpg
https://i.sstatic.net/fs06m.jpg
https://i.sstatic.net/oJ03m.jpg


text:
The cause for sudden battery discharge?
I've bought already used phone (XCover 3 VE) half a year, but I didn't use it much, now it became my primary phone so I wanted to test the battery (poor reflex on my side).
So I turned off all services, apps, I removed SIM card, only SD card was present. And I turned on screen once a day to check the battery life.
Each day the reading was around 3% less than day before. On the third week the last readout following this pattern was 43%, and on the next day 10%.
My naive assumption is that if battery is used it shows faster discharge, but in even pace. But here it is 3% day after day, and all of the sudden 33% drop in single day. Battery cells are completely broken?
When charging it looks like it charges linearly from 0% to 100% (without gaps in 10%-43% range).
Anyway, I see battery is bad, but I am curious what is the nature/cause of it?
I hoped Android will show full history of previous days, but once I charged it again it shows only period from last full charge, which translates to 2 hours back, not even days.


text:
How can I run SetupWizardTestActivity on a rooted Nougat from the phone?
I'm trying to run com.google.android.setupwizard/.SetupWizardTestActivity as a solution to the following...
Moto C Plus phone suddenly turns off while in pocket. Turned it on. Turns back off. Plugged it to charger. Battery at %17...hmmm weird.
Phone turns on but now I see...

The icon size went to default from the small that I'd set it at. The screen time out went to 30 secs from the 2 mins it was set to.

The keyboard went to the phone's default keyboard from the one I'd installed.

The home and recent buttons - although they are registering the touch - are not doing anything when I press them.

The back button is working and is now the only way I can exit the current screen.

The screen lock pattern doesn't come on.

The notification bar cannot fully be pulled down.

The developer option now says "Developer options are not available for this user". Pressing Build 7 times doesn't activate it.

I came across this (first answer) as a solution in a couple of places. The solution they say is to basically run com.google.android.setupwizard/.SetupWizardTestActivity through NovaLauncher. But the problem is, I'm not seeing SetupWizardTestActivity where it's supposed to be. I'm guessing perhaps it's because I'm rooted?
So now I'm looking for another way to run it from the phone (because I can't connect the phone to a computer because the data pins in the charger port are missing from a botched charger port replacement job).
I came across this as a way to run SetupWizardTestActivity without NovaLauncher. It's...

adb shell
su
pm enable com.google.android.setupwizard/com.google.android.setupwizard.SetupWizardActivity

adb shell settings put secure user_setup_complete 0

The first command is case sensitive (SetupWizardActivity)

However, I'm not sure if the above is to be done through a computer or on the phone. If it's through the phone then i need a little help as how to exactly do it.
I'd REALLY appreciate if anyone can guide me through this in layman's terms. A simple step by step on how to go about accomplishing this would be hugely appreciated. Emphasis on "layman's"
Thanks in advance!

As you are facing so many changes is strange. Who knows what other changes were made you don't recognize? Therefore I would strongly recommend to perform a factory reset. If the problems persists you know that something is wrong with the OS itself (so it may be wise to reset the device completely using "Rescue and Smart Assistant").

I'm trying to run com.google.android.setupwizard/.SetupWizardTestActivity

Figured it out!
I wasn't able to do it through Nova Launcher as described here (because I don't see SetupWizardTestActivity on my phone, like you can see here).
So I found another app where I could - Activity Launcher.
Here's what you do...

Download and install Activity Launcher on your phone. You most probably won't be able to do so through Play Store because your phone won't allow you in the state that it's in. It'll just say pending when you click install. So what you'd have to do is download the apk and install it that way. A trusted website for downloading apks is apkmirror.com.

How to download...
Step 1:
Go here
Step 2:

Step 3:

Step 4:

Step 5:

Step 6:

Step 7:

Note: The latest version you see now might be different than the one posted above.

Install it. Pretty simple. Just follow the instructions.

Launch the app.
.

Scroll down and find Setup Wizard. Tap on (select) it (not the dots next to it).

Select the three dots next to com.google.android.setupwizard/.SetupWizardTestActivity.
Alternatively you could long press it to get the same result (which is to see the menus in step 6 below).

Select "Launch activity as root" (needless to say, your phone has to be rooted to select this option. I have no idea if it works without root. You could select this option if you're not rooted and let us know how it goes).

If you have SuperSU (or other variations) installed, grant (root) access.

A screen like this will pop up:

Select GET STARTED.

Follow the prompts.

It will ask you if you want to restore your account or create a new one. I'm assuming you're reading this guide because you want to restore your account so select "Keeps your apps & data).

It will want to connect to the internet to set up your account. If it takes a long time, click back and opt to proceed without pulling up your account. You'll get a prompt asking if you're sure, say yes and Viola! Everything will be the way it was before the problem started. You might have to renter your wifi password and change back your keyboard and some personal customizations that went back to default, but nothing major. Everything will be there the way you left it, even your recent and browser tabs.

Why this long explanation how to download an APK from apkmirror.com if you can simply get if from Google Play Store https://play.google.com/store/apps/details?id=de.szalkowski.activitylauncher IMHO for Apkmirror.com the link to the app would have been sufficient.

Thanks for your valuable contribution. Your solution to factory reset was steller!

Sorry but I don't know what "steller" means, no dictionary I checked knows this word. If it worked without factory reset for you good, I hope for you that there aren't any important options changed that don't have an UI.


text:
Is there a way to disable device encryption on nokia 6.1?
My phone is encrypted out of the box, I have tried formatting it the normal way, via settings, but afterwards, it is still encrypted.
Is there a way to remove the device encryption? I need to enable OEM unlock, and that cannot work when the device is still encrypted.
Device: Nokia 6.1
OS: Android 10
Android security patch level: 1st April, 2021

Where did you got the info that an encrypted device can not be unlocked? If that would be true all phones release in the last ~4 years could not be unlocked. Have you tried to enable OEM unlock in developer settings and then boot to fastboot?

The enable OEM option is there but it is deactivated. How can I be able to unlock it?

This page contains a nice list why oem unlock may be grayed out: https://nerdschalk.com/how-to-fix-oem-unlock-greyed-out-or-oem-unlock-disabled-problem/

in order to disable encryption one must unlock bootloader first. check for Björn Kerler's tools

https://github.com/bkerler/edl/blob/master/README.md#for-generic-unlocking


text:
WiFi stops working every few days
I have an Android 11 smartphone (Sony XQ-BT52). About every two to three days, I experience the following issue: All of a sudden, the phone stops recognizing any WiFi connections. The WiFi symbol shows that WiFi is on in principle, but no network is found. When I try to search for WiFi networks, it either takes forever or it does never return any results.
Most weirdly, when I try to turn WiFi off and on again, it initially shows the WiFi as being on, but if I go to the settings page again, it is shown as off again (see this video, approx. 10 MiB). No networks are ever found after this - it even seems that there is no search after this point. The only way to work around the issue so far is to reboot the phone as a whole, which gives me back WiFi connectivity as well as a list of all available WiFi networks immediately for the next few days. However, it is tedious.
This seems to be like a strange bug, but I could not find anything about similar issues. From related questions, I understood that any power saving settings may impact this, so I disabled everything I could for the sake of testing. However, the issue remains. The issue also seems to be unaffected by the charging state of the phone (it happens at 95% in the same way it happens at 30%).
How can I determine the cause of this and, more importantly, how can I fix it?

I recommend scheduled reboot daily, this is common for embedded devices (like your residential gateway for example)

@alecxs I do not want to do that - my SIM card requires a PIN code and I do not want to miss any calls because the phone automatically rebooted. All of my previous phones worked perfectly fine with respect to WiFi connectivity, even when they have not been rebooted for weeks on end. This seems like a bug and there must be a fix or at least a workaround.

you cannot fix yourself only Sony can do that


text:
How do I close apps on my phone with Google Assistant?
I have an older Samsung A6 (model SM-A600T) with OneUI. I have also downloaded the latest version of Google Assistant on the same device. Many Google Assistant voice commands work as expected or fall back to understandable defaults.
However, I have not been able to find a way to close applications by voice. Attempting to directly close an application with Google Assistant leads to a prompt to specify the device name. I have tried "My Phone", "Samsung A6" and "SM–A600T" (the latter two under "About Phone" under Settings). None of those have seemed to work so far. I have also been unsuccessful in finding a voice command to bring up the "Recents" menu under OneUI.  This menu typically displays currently running apps and allows them to be closed individually or all at once.
For clarity, Google Assistant and the apps I wish to close all exist on the Samsung A6. Also, I do not have any other Google devices with Google Assistant.
Is there a way to close applications on the same device with Google Assistant?


text:
Why can't I switch accounts after rebooting?
I have a lenovo android tablet with three users - The Owner user, which is the original user and is an Admin.  Then two users for my children, which are restricted users.
The tablet seems to be 'stuck' logged into one of the children's account.  From the lock screen, I can access the switch user functionality, but the other users are greyed/disabled and nothing happens when I touch them.  Same thing if I go to settings -> System -> multiple users.
From what I can gather, the tablet was signed into the child's account then lost power and has been stuck in this state since it rebooted.
I found this other question but it seems to be the opposite of my problem - in that case, they cannot use the child accounts until they log in with the admin account.
The device is a Lenovo TB-7306F running Android 11.

Which of the tree accounts is the primary account? The primary/master account always needs to be logged in first after a reboot.

The owner account is the primary.  Problem is, I can't log in to that account, as the lock screen only allows the child account that last used it.

You can try to boot to safe mode.
How to boot to safe mode -
Select the normal power-off/shut down menu and then click and hold the "power off/shut down" option for like 3-5 seconds and you will be given the option to log in to safe mode.
After you are logged into safe mode with your admin user account, reboot now to normal mode.
Let's see if the above exercise can be helpful.

By any change do you have USB debugging enabled or can you manage to enable it in safe mode?

Booting into safe mode did not allow me to change users.

I was also unable to enable USB debugging in either safe mode or normal mode.

By that I mean, I was unable to enabled the Developer options on this device.

I ended up doing a factory reset on the tablet just to make it usable by other people.

I have very same problem. @theycallmemorty How did you eventually solved the issue ? I mean in longterm ? Tablet with just one account ? No secondary account ?

@HoppusHoppard I'm sorry I never actually got this to work. I had to do a factory reset on the tablet and start from scratch.


text:
SD card / card slot suddenly stopped working
My sd card (or my sd card slot) suddenly stopped working.
All of the apps that used the SD card don't work anymore (obviously), however also other apps have problems. My banking app won't start. The google play store won't let me install any app (no warning, it just stops working). I have to fix that.
My questions are:

how to disable the 'sd storage' for the play store?

Right now I cannot install any app, because play store wants to use the sd card as storage. I spent an hour trying to find a way to disable the 'sd storage' in the play store, but I haven't found a
solution. I cannot 'normally' migrate the apps using the settings->storage menu back to the memory, because the sd card is shown as 'corrupted'

how to repair the sd card?

I have a ton of semi-important files on the sd card. I can't simply format it. Is there any software to mount and analyze the card?
I am using Android 9 on Umidigi A5 Pro

where do you get the idea that play store wants to use the sd card as storage? 2. is your SD Card formatted as internal adoptable-storage?

I am not sure. However when I click the 'install' button in the play store it becomes gray for few seconds, the notification 'sd card not ready' pops up, and I the 'install' button refreshes - becomes green again.  2. Yes, I have been using it for one year. I have a huge app, that was installed on the sd card, and needed to update it (ca 4gb of data). The update somehow 'broke' the card, and it is inaccesible.

on unlocked bootloader 'fastboot boot TWRP_Hadenix-A5Pro.img; adb shell twrp decrypt 1234; adb pull /data/misc/vold;' to obtain encryption key

For analyzing an sd-card use an USB sd-card reader and connect it to a PC. There you can check what files are on the sd-card.

Does this answer your question? Can't access my phone memory suddenly after using SD card as internal memory

Does this answer your question? Can't access my phone memory suddenly after using SD card as internal memory

I managed to disable the sd storage, and I am able now to use the internal memory for any operations.
I did it this way: I tried to install an app->android told me that there is no memory free->I entered the 'memory settings' -> I chose 'forget sd card'.
From this point on I am able to use internal storage to use the phone normally


text:
Is it possible to build a linux kernel/stripped down android version for Samsung Galaxy A5 and Tab 4?
I have been doing a lot of hobbyist electronics recently and was wondering if I can use my old Samsung Galaxy A5 duos phone, samsung galaxy core duos gt-i8262 and/or Samsung Galaxy Tab 4 7.0 3G in some of my projects. I don't have a lot of knowledge on android and was hoping I could skip having to learn android development, I was wondering if I can install a linux distro (like ubuntu touch) on these devices to simplify things, but my research so far heavily implies that's a no.
What I basically want to achieve is as follows:

Use aforementioned devices (and their peripherals like camera, accelorometer etc) in my projects, running programs in a familiar language (like c/c++ or python), in a close-to-linux environment
If i can't use the peripherals, at the very least, I want to use the CPUs on these devices to execute a program
Preferrably, not use android or at least not a heavy OS to dedicate as much CPU and RAM to my programs as possible
These devices would be controlling other electronics of the project using a microcontroller such as arduino
To summarise, I want to get these devices to work as much like a raspberry pi board as possible (excluding the GPIO pins part)

What I think are my options:

Building a linux kernel for these devices
Building a custom version of android for these devices
Just using the version of android these already have on them and somehow working on that

To top it off, the catch with the Tab device is that it won't boot beyond the samsung logo screen, so I'm not sure if I can get around having to install some new OS onto it anyway.
I know that phone manufacturers make it a lot harder for tinkering with the innards of their devices, so is it possible to have these functionalities on these devices? And are these the only options or is there a better way to go about doing this? Any help would be great. Thanks.

Does this answer your question? How to boot Ubuntu persistent live USB on Android?

@IrfanLatif Yeah I think I understand now


text:
Service "Finsky" loops indefinitely scheduling jobs and using large amounts of data traffic
Connected with ADB to a work device I manage, I see logcat with tag "Finsky" looping multiple times per second scheduling jobs and completing it. The logcat output albeit spammy is not a problem in itself, but I have a strong suspicion this is also what causes massive metered data usage for the Google Play Store app.
Attached is a screenshot where a brand new SIM card has been connected for about 10 minutes. Google Play Store has consumed 36 MB of data.
We have a fleet of devices where this one is included, managed by Mobile Iron, where this is a pattern that repeats itself. By the end of the month, Google Play Store has consumed 20-30 GB of data on each device.
The log segment that is repeating looks like this in logcat:
2022-02-23 15:57:14.698 20819-20963/? I/Finsky: [56] qla.apply(77): SCH: Scheduling 0 system job(s)
2022-02-23 15:57:14.699 20819-21030/? I/Finsky: [87] kmg.D(6): IQ: Pruning inactive install requests
2022-02-23 15:57:14.699 20819-21030/? I/Finsky: [87] kmg.D(45): IQ: No matching installs to run for jobs: []
2022-02-23 15:57:14.700 20819-21030/? I/Finsky: [87] qlw.r(4): SCH: jobFinished: 3-123627655. TimeElapsed: 17ms.
2022-02-23 15:57:14.702 20819-20819/? I/Finsky: [2] qmf.accept(49): SCH: Job 3-123627659 starting
2022-02-23 15:57:14.702 20819-20819/? I/Finsky: [2] InstallQueuePhoneskyJob.g(2): IQ::IQPJ: Handling expired job 123627659
2022-02-23 15:57:14.704 20819-21030/? I/Finsky: [87] khz.apply(79): IQ: Creating job 123627661, for (REQ_GEARHEAD_PROJECTION_OFF, IGNORE_HOLDOFF=true, NETWORK=UNMETERED, PROVISIONING_STATE=PROVISIONED, TIME=[2021-12-17T17:00:00Z-2021-12-18T05:00:00Z])
2022-02-23 15:57:14.704 20819-21030/? I/Finsky: [87] kmg.x(9): IQ: Bulk scheduling created jobs
2022-02-23 15:57:14.708 20819-20955/? I/Finsky: [49] qlq.accept(70): SCH: Scheduling phonesky job Id: 3-123627661, CT: 1645628234705, Constraints: [{ L: 0, D: 0, C: 1, I: 1, N: 2 }, { L: 0, D: 0, C: 1, I: 1, N: 0 }]
2022-02-23 15:57:14.720 20819-20955/? I/Finsky: [49] qla.apply(77): SCH: Scheduling 0 system job(s)
2022-02-23 15:57:14.722 20819-21030/? I/Finsky: [87] kmg.D(6): IQ: Pruning inactive install requests
2022-02-23 15:57:14.723 20819-21030/? I/Finsky: [87] kmg.D(45): IQ: No matching installs to run for jobs: []
2022-02-23 15:57:14.723 20819-21030/? I/Finsky: [87] qlw.r(4): SCH: jobFinished: 3-123627656. TimeElapsed: 40ms.

If I filter by "Scheduling phonesky job" I get like multiple entries per second, in the span of 90 seconds I got 571 hits in logcat which amounts to ~6.3 jobs per second.
This cannot possibly be normal?
I suspect Mobile Iron to have a part in this but I cannot see evidence of Mobile Iron in the logs (I've searched for package com.mobileiron.anyware.android). Reason is that this coincides with Mobile Iron not being able to automatically update apps from Play Store. Our apps remain stuck at older versions even when newer versions are available on Play Store. We've had 20-30 mails back and forth with Mobile Iron support without them being able to help us.

Anyone have any idea why this amount of jobs are scheduled?
Who is repsonsible for scheduling these jobs?
How can I verify that it's these jobs that cause data traffic?
Any other tips on how I can continue debugging this issue is appreciated


text:
S7 Broken/Black Screen and no Digitizer. Rooted with TWRP
I have broken my S7 screen and now its completely black with no touch at all. Phone is rooted with TWRP custom recovery. I can access it though ADB from recovery but when booted normally i'm unauthorized. I did tried to push my PC's RSA Key to the S7 without success. I want to backup my phone's internal photos but i can't do anything atm without authorization. Is there anything i can do without replacing the screen through ADB on recovery or i am doomed?! Also could i get an otg mhl adapter to get image through the usb so maybe i could do something there? Any help is appreciated. Thanks in advanced.
[dalvik.vm.dex2oat-Xmx]: [512m]
[dalvik.vm.dex2oat-filter]: [verify-at-runtime]
[dalvik.vm.image-dex2oat-Xms]: [64m]
[dalvik.vm.image-dex2oat-Xmx]: [64m]
[dalvik.vm.image-dex2oat-filter]: [verify-at-runtime]
[dalvik.vm.isa.arm.features]: [default]
[dalvik.vm.isa.arm.variant]: [cortex-a53]
[dalvik.vm.isa.arm64.features]: [default]
[dalvik.vm.isa.arm64.variant]: [cortex-a53]
[dalvik.vm.lockprof.threshold]: [500]
[dalvik.vm.stack-trace-file]: [/data/anr/traces.txt]
[dalvik.vm.usejit]: [true]
[debug.atrace.tags.enableflags]: [0]
[init.svc.adbd]: [running]
[init.svc.ldconfigtxt]: [stopped]
[init.svc.recovery]: [running]
[init.svc.set_permissive]: [stopped]
[init.svc.ueventd]: [running]
[keyguard.no_require_sim]: [true]
[mtp.crash_check]: [0]
[net.bt.name]: [Android]
[net.change]: [net.bt.name]
[persist.sys.dalvik.vm.lib.2]: [libart]
[persist.sys.root_access]: [1]
[persist.sys.usb.config]: [mtp,adb]
[ro.allow.mock.location]: [1]
[ro.arch]: [exynos8890]
[ro.baseband]: [unknown]
[ro.board.platform]: [exynos5]
[ro.boot.ap_serial]: [0x02F6CE577B5C]
[ro.boot.bootdevice]: [155a0000.ufs]
[ro.boot.bootloader]: [G930FXXU3ERL3]
[ro.boot.debug_level]: [0x4f4c]
[ro.boot.dram_info]: [01,05,00,4G]
[ro.boot.dram_rev]: [00000000]
[ro.boot.emmc_checksum]: [3]
[ro.boot.fmp_config]: [0]
[ro.boot.hardware]: [samsungexynos8890]
[ro.boot.hmac_mismatch]: [0]
[ro.boot.hw_rev]: [8]
[ro.boot.odin_download]: [1]
[ro.boot.sec_atd.tty]: [/dev/ttySAC4]
[ro.boot.security_mode]: [1526595585]
[ro.boot.selinux]: [enforcing]
[ro.boot.serialno]: [ad07160320f4e2aac2]
[ro.boot.ucs_mode]: [0]
[ro.boot.warranty_bit]: [1]
[ro.boot.wb.hs]: [030c]
[ro.bootimage.build.date.utc]: [1532923497]
[ro.bootimage.build.date]: [Mon Jul 30 04:04:57 UTC 2018]
[ro.bootimage.build.fingerprint]: [samsung/omni_herolte/herolte:6.0.1/MOB30M/4:eng/test-keys]
[ro.bootloader]: [G930FXXU3ERL3]
[ro.bootmode]: [unknown]
[ro.build.characteristics]: [default]
[ro.build.date.utc]: [0]
[ro.build.date]: [Mon Jul 30 03:59:52 UTC 2018]
[ro.build.display.id]: [omni_herolte-eng 6.0.1 MOB30M 4 test-keys]
[ro.build.flavor]: [omni_herolte-eng]
[ro.build.host]: [24fbe3db73ea]
[ro.build.id]: [MOB30M]
[ro.build.tags]: [test-keys]
[ro.build.type]: [eng]
[ro.build.user]: [jenkins]
[ro.build.version.all_codenames]: [REL]
[ro.build.version.base_os]: []
[ro.build.version.codename]: [REL]
[ro.build.version.incremental]: [4]
[ro.build.version.preview_sdk]: [0]
[ro.build.version.release]: [6.0.1]
[ro.build.version.sdk]: [23]
[ro.build.version.security_patch]: [2016-06-01]
[ro.carrier]: [unknown]
[ro.chipname]: [exynos8890]
[ro.com.android.dataroaming]: [true]
[ro.com.android.wifi-watchlist]: [GoogleGuest]
[ro.com.google.clientidbase]: [android-google]
[ro.config.alarm_alert]: [Argon.ogg]
[ro.config.notification_sound]: [pixiedust.ogg]
[ro.config.ringtone]: [Ring_Synth_04.ogg]
[ro.dalvik.vm.native.bridge]: [0]
[ro.debuggable]: [1]
[ro.hardware.keystore]: [mdfpp]
[ro.hardware]: [samsungexynos8890]
[ro.kernel.android.checkjni]: [1]
[ro.lcd_brightness]: [162]
[ro.lcd_min_brightness]: [0]
[ro.modversion]: [OmniROM-6.0.1-20180730-herolte-HOMEMADE]
[ro.omni.device]: [herolte]
[ro.omni.version]: [6.0.1-20180730-herolte-HOMEMADE]
[ro.product.board]: [universal8890]
[ro.product.brand]: [samsung]
[ro.product.cpu.abi]: [arm64-v8a]
[ro.product.cpu.abilist32]: [armeabi-v7a,armeabi]
[ro.product.cpu.abilist64]: []
[ro.product.cpu.abilist]: [armeabi-v7a,armeabi]
[ro.product.device]: [herolte]
[ro.product.locale]: [en-US]
[ro.product.manufacturer]: [samsung]
[ro.product.model]: [SM-G930F]
[ro.product.name]: [heroltexx]
[ro.revision]: [0]
[ro.sec.fle.encryption]: [true]
[ro.secure]: [0]
[ro.security.mdpp.release]: [8]
[ro.security.mdpp.ver]: [2.0]
[ro.serialno]: [ad07160320f4e2aac2]
[ro.setupwizard.enterprise_mode]: [1]
[ro.sf.lcd_density]: [560]
[ro.twrp.boot]: [1]
[ro.twrp.version]: [3.2.3-0]
[ro.url.legal]: [http://www.google.com/intl/%s/mobile/android/basic/phone-legal.html]
[ro.wifi.channels]: []
[ro.zygote]: [zygote32]
[security.mdpp.mass]: [skmm]
[security.mdpp.result]: [None]
[security.mdpp]: [None]
[service.adb.root]: [1]
[service.adb.tcp.port]: [5555]
[sys.usb.config]: [mtp,adb]
[sys.usb.state]: [mtp,adb]
[twrp.action_complete]: [0]
[twrp.crash_counter]: [0]

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

could you be more specific on what to look on those threads. Thanks

It seems that I have access. I can see the folder push content in it but the directory is empty. If I type ls in the data directory it's empty.


text:
Trying to mimic data usage through certain apps
my current data plan has unlimited usage for only certain apps;
Facebook, Instagram, Twitter, YouTube, WhatsApp, Facebook Messenger, and Telegram.
Any other form of data usage isn't unlimited taking from my limited data pool.
Would it be possible to mimic the data usage of a HotSpot to go through any one of these apps.
Any help would be greatly appreciated as my home internet is out for the next couple of mounths :)

Data plans with free traffic for certain apps usually uses the target server (e.g. DNS name) to determine if it belongs to an app with free traffic or not. So you won't succeed unless one of the white listed servers provides an proxy server.

I totally understand your concern but there's nothing you can do for this. Your telecom operator is doing the whitelisting (of those apps) on their end; there's nothing you can do as a client.


text:
Unlock Xiaomi without USB debugging
I'm currently having problems unlocking my Xiaomi Mi A2 Lite. I've tried hard resetting it through the old volume down (or up) + power but it always ends up showing "No command", no matter how many times I try it.
I've also tried entering recovery mode through ADB, but being that USB debbuging is disabled, it won't even detect the device.
I don't have a Google account linked to the phone, so I don't know what else to do.
All support is appreciated, thank you.

Does this answer your question? What does the "no command" screen mean? (Trying to execute hard reset Recovery)

Nope, thing is, I can't reach the Boot Mode Selection Menu, vol up + power will lead me to the "No command" screen, and vol down + power to fastboot (don't know if I can do something from here but I don't think so)

Ohhh it's true, I didn't correctly read it the first time, thank you so much!


text:
Oppo A73: adb works but fastboot won't recognize the device on either Linux or Windows
I'm badly in need of help with my broken Android device. The XDA community is where I always found most information on those matters so I'm hoping someone can help me out. Some background on everything that went on today: I recently bought an Oppo A73 (non-5G version), I live in Romania so the best I can offer are these links for the store I got it from:
Source 1
Source 2
My grievance with the device is how it comes with an Android distribution called ColorOS which is filled with bloatware and things being shoved in my face. I was discussing this today and someone brought up adb explaining how I could use the command to remove unwanted system packages. I used it to get rid of some things I wanted nothing to do with, such as Rakuten and Heytap. For some mind boggling reason it appears those garbage packages were connected even to the core system: The device became unable to start up and entered a boot loop. This forced me to do a factory reset from recovery mode, causing me to lose all contacts and SMS messages as I didn't think to back them up first. After that ordeal I want my phone to use the default Android distribution: I'd rather have just Google involved with my phone over all those insane extra services, I'm not going back to this broken bloated OS.
Someone explained to me the basics of ADB and DSU Loader. After enabling Developer Mode I was able to enable the "OEM Unlock" feature then use the DSU Loader option to download a DSU package. My two options are "GSI ARM64" and "GSI+GMS ARM64" I used the later as advised. After the download completed I was prompted to restart my device in order to boot into the new image which I did from the notification. The phone however would only boot into ColorOS each time. I was told this must be because I need to use the commands fastboot oem unlock and fastboot reboot after adb reboot bootloader. The problem is that while adb recognizes my device, fastboot does not due to driver issues.
I spent hours trying to find some format in which fastboot would detect the device but everything seems to be broken, that's presently what I need your help with. I only use Linux these days, Manjaro KDE more precisely: I have a Windows 7 image and in an attempt to find a solution I downloaded Windows 10 as well: I installed Win 10 in VirtualBox and proceeded to install every update and driver I could find, following articles explaining how to get the driver for Oppo A73. None of them would work however: Even with all those drivers installed, the device manager sees an invalid USB device and neither adb or fastbook see it from the VM... same story with Win 7.
https://romprovider.com/download-oppo-latest-mtk-qcom-usb-driver
https://oemdrivers.com/phone-oppo-a73-usb-driver

Can someone please tell me what OS and driver I need to get fastboot to recognize the device? If there's no way to, is there an alternative to fastboot to remove whatever's preventing the DSU image from booting and allowing me to flash it? Like I said I have access to adb on my main machine just not fastboot, anything adb can do should work.
I can't change my OS only for this task however. If I need Windows, is it not possible to do it from VirtualBox using the configuration in the screenshot above? If VBox is the issue, I will in an extreme scenario consider using a separate hard drive on my mother's computer to temporarily install Windows just to do this. I strongly hope that won't be necessary however, and this can be solved with a live tool or Linux distribution that has the necessary drivers.

https://developer.android.com/topic/dsu
https://developer.android.com/topic/generic-system-image/releases
I've attempted the manual technique using adb commands a downloaded image and of course setting the feature flag as indicated. Even with adb shell am start-activity the custom image refuses to load: The notification says "dynamic system is ready, to start using it restart your device"... I click on "restart" inside this notification, the phone reboots, I see the oppo logo for a little, but after that I'm back in the original OS. What's breaking it and not letting the DSU load?!

Oppo doesn't allow OEM unlock + disabled fastboot mode intentionally 2. on virtual machine usb passthrough is required 3. fastboot drivers requires windows driver signature verification disabled 4. there exist no "mtk-qcom-usb-driver" mtk and qcom are two different chipsets 5. unofficial unlock tools available for mtk and qcom

A guest inside a virtual machine can establish an USB device connection if the USB connection is correctly configured/forwarded but to my experience this connection is not good for device flashing especially if the phone disconnects and reconnects the USB interface (e.g. automatic reboot after flash of bootloader). Also the USB timing is different. Therefore I recommend to flash devices only with a real non-virtual OS, otherwise you have a slightly increased chance to brick your device.


text:
How to clear Google Play Store & Google Play Services data / cache without allowing Google to force-update all apps on the Android device?
I find the Google Play Store and Google Play Services to be quite buggy.  As such, I frequently need to delete the data and cache for each of them.
The trick is figuring out a way to do this without allowing Google to update all the apps on the Android device (sometimes new app versions are buggy, remove important features, introduce unwanted bloat, or are not truly compatible with the device).
In the past, this wasn't too difficult.  One could follow these steps:

Enable Airplane Mode on the device
Clear the data and cache for the Google Play Store and Google Play Services
Open the Google Play Store
Go into Google Play Store's settings, and instruct it to not auto-update apps
Disable Airplane Mode

Now, in their infinite wisdom, Google appears to have made this impossible.  If you try to open the Google Play Store in Airplane Mode, Google will not allow you to access the Play Store at all.  Google even prohibits the user from changing any of the Google Play Store's local settings.
I've even tried accessing the Google Play account from a non-Android device, but Google does not seem to make the auto-update setting available outside of the local Android device.  And since Google blocks access to their own app if you don't have an active internet connection, Google has created yet another impossible and frustrating situation for their customers.
The closest thing I've found to a workaround is to disable Airplane Mode and try to access the Google Play Store's settings before updates begin.  Unfortunately, that isn't usually possible.
This leaves the user with trying to figure out more extreme workarounds, such as trying to trick the Google Play Store app into thinking it has an internet connection without actually giving it one.  I would really prefer not having to spend my time trying to figure out hypothetical workarounds like this just to deal with Google's problems.
How can one clear the Google Play Store and Google Play Services data and cache without allowing Google to update all apps on the Android device?

Setting up an HTTPS intercepting proxy like Fiddler Classic or mitmproxy on a PC and then set it as http proxy on the phone would it make possible to allow only certain domains. I know that from Fiddler, Google Play does not trust the certificate of fiddler so you only see the initial CONNECT requests containing the domain name (if you have disabled privacy DNS on the phone).
Those CONNECT requests fail because of the non-matching certificate but they allow you to recognize the domain name and then add this domain to the HTTPS intercepting domain list (in Fiddler there is text field named Skip decryption for the following hosts there you can place a space separated list of domain names).
I would assume that you have to have to add the major domains used by Google Play before it detects that you are online. Most likely you have to skip decryption for the following domains connectivitycheck.gstatic.com play.google.com accounts.google.com android.googleapis.com.
But luckily the actual downloads of apps are served from different domains (Google has a large number of download servers on *.googleusercontent.com). So even if Google Play would detect that there is an update available it will fail to download the download so in worst case you would have to open the app update list and abort each scheduled download.
But as far as I remember Google Play is usually not that fast in starting automatic downloads.


text:
My android hotspot is not routing data
Currently I am on holidays in France. And strangely my hotspot stopped routing data from connected clients.
Phone: Samsung S20 5G FE
APN: Vodafone
Base country: The Netherlands
My phone's internet connection is running fine. On the phone itself I can easily access any Internet endpoint.
What I have tested:

Installed an FTP Server on my Android device. Connected perfectly from my laptop to this FTP server. This confirms that my hotspot is really connecting devices to my phone.
Installed an http proxy on my Android device. Configured the proxy server on my laptop. This works perfectly. Chrome is able to connect with websites through this proxy server running on my phone.

Why is my hotspot not routing data directly? What is blocking this?
I have access to three French operators. None of them seem to make a difference.

Are you sure your data plan allows tethering with a laptop? Some providers disallow tethering and blocking traffic that comes from a laptop OS. If you can try to tether a second smartphone and check if that works.

I checked with both ipad as well as another android phone which are both blocking. How can I find out if my data plan disallows tethering? It obviously was always working at home in the Netherlands and it was also working during transit in Belgium and maybe even Luxemburg.

At the way home as soon as I passed the border of Belgium towards the Netherlands suddenly my hotspot started routing again. I will call Vodafone hopefully to get some explanation.


text:
How to use scrcpy with a server?
is there a way to access an android via scrcpy and a server from anywhere?
I am looking for a way to help my parents around their android phones when I am not with them... I was wondering if I can broadcast the stream/screen from their phones via scrcpy to my server and view it on my PC or from the web, while not being on the same network?
This can be done with any solution, just that I can control the device remotely.
 It doesn't need to be scrcpy, it can also be some spyware tool or rootkit for all I care.
Thanks for the help in advance.

Questions about Android devices are not within scope.

scrcpy requires adbd running and authorized, that's kinda paradox to expect parents doing that all the time. server is physically located at parents home connected to same wifi?

@alecxs I am talking about a purchased VPS server that can act as a bridge for communication/sending data to it and viewing/controlling the device from it/web app.
Something like chrome remote desktop but as an apk/rootkit etc.

don't understand. but you should update your question with this information, so we can reject it back to superuser

You could for example use
TeamViewer,
free for private use.

Please do not answer off topic questions. You have been told this many times before.

@DavidPostill: I voted to migrate this question here. Now it's not off-topic.


text:
Access Android/data on parental-restricted phone
I'm looking for a way to backup a Minecraft PE worlds on a phone that has parental-control enabled (best in an automated way).
The Minecraft on Android has the ability to save the worlds in the "External" location, which in the newest version is in /Android/data/com.mojang.minecraftpe/files/games/com.mojang/minecraftWorlds.
Unfortunately, on parental-restricted phone, I cannot access /Android/data/ folder at all. I tried via Samsung's "My Files" app, as well as FX File Explorer - the prompt for "Use this folder" does not appear.
How can I get those files, so I'm able to push them to cloud for backup?

Have you tried to get access to those folder using a PC and connect the phone via USB?

Yeah, that's one way it worked. But I went with installing a dedicated app for MCPE backups. It did produce the "Use this folder" prompt, so now I started to think that maybe Samsung's "My Files" / FX Explorer use some kind of deprecated API, or they are bugged?