text:
What makes Android running on a TV resilient to abrupt power off events?
What makes the Android running on a TV aka Smart TV resilient towards abrupt power off/outage events?
By abrupt power off I mean manually turning off the electrical switch to which the power cord of the TV is connected to, or removing the power cord from the electrical outlet, while the TV is still functioning.
If I do the same thing to my PC running a Linux distribution, on next boot my OS would always find that the system partition is in inconsistent state and the OS would try to repair it before moving on with the boot process. That being said I always expect that some of my programs and the data associated with them might no longer be in consistent state. Perhaps the changes I made to my document were no longer saved, or the N number of file that I instructed my file manager to copy seems to not have been copied correctly, and so on.
On an Android TV how come this problem of file corruption and inconsistency not affect the Android apps per se? They all seem to work fine no matter how many times I abruptly turn off the TV. In fact, my Sony Smart TV running ancient Android 4.4 does not offer Shutdown/Power Off option at all. There is only standby mode. One manufacturer, Philips, also recommends turning off one of their TV model completely by pulling out the plug from the electrical outlet. To me TV manufacturers are very confident that their Android TV would continue to work correctly after all these abrupt power outages.
How come? And if Android on a TV is so much resilient than why do Android phones offer such fancy Power off feature where the user has to wait for N seconds before the phone completely shuts off? Why not just kill the power from the processor? That would be convenient to the user. I press Power off, and lo and behold, the phone shuts down right there.
I tried to search about Power related docs on developer.android.com and source.android.com but could not find the answer.

Android apps habe to be aware that they may be killed at any time because of low system RAM, so they have to be developed a little bit carefully with that in mind.

I don't think there is a verifiable answer that we can give you, but generally the system is "protected" and things load into RAM and run, were as in PC's most things run off the filesystem into RAM but are read/write from the filesystem regularly... Your TV is more like you phone, with a bootloader and system partition that are generally read-only during normal use, and apps load into RAM as needed and not run consistently while read-writing the file system.

even phones can't power off completely

Possibly related: https://e2e.ti.com/blogs_/b/industrial_strength/posts/how-to-manage-processor-power-during-an-uncontrolled-power-off

A term from that document is input capacitor’s discharge time so it may be worth noting how long it takes for the TV's power indicator LED to discharge after your remove it from mains power.


text:
Get one static MAC address for Doodgee N30
tl;dr How to force Doodgee N301 (or any other device with Android 10) to use single, static MAC address, if Use static IP checkbox is not available in Wi-Fi Settings?

To allow my Doodgee N30 to access my home Wi-Fi, I must add its MAC address to the router settings (I have MAC filtering enabled and I am not going to change this). The problem is that, when I type Mac into Settings' search box, I see two different places with MAC address:

MAC address in ⚙ → Network & internet → Wi-Fi → Wi-Fi preferences: Keeps changing all the time.

Wi-Fi MAC address in ⚙ → About phone: Always the same.

What I learnt so far:

First one looks like an Use random MAC address feature enabled by default, but I don't know how to disable it; there is no Use static IP checkbox below.

Second MAC address is... wrong. I don't know, what it actually is, but adding to router does nothing (i.e. does not enable phone to get access to my home network).

Is there anything I can do to force this phone to use one, static IP address? Or the only option is to replace it with any other model that has Use static IP checkbox?
1 This is about Doodgee N30, a rather niche phone, but probably fits to many devices with Android 10 that faces the same problem, i.e. no Use static IP checkbox.

Your comment looks like a perfect answer. And it does solves my problem. Care to write one? Plus: In my case MAC address is not fixed per WiFi. It changes from time to time. That's why I am wondering, how to use such device with a Wi-Fi networks having "MAC filter" enabled?

You could consider both comments in your answer. For example: "An additional issues is that MAC filters don't (...) and that's why randomized MAC address is enabled by default on most new Android devices". Or sth. There's one last thing that bothers me. If (as you say) MAC addresses are randomized per network then what is that single MAC address displayed in ⚙ → Network & internet → Wi-Fi → Wi-Fi preferences? It can't be per network because it is signle one (and there are many networks). And it isn't device MAC (because that one is in ⚙ → About phone). Maybe you can cover that as well.

each device must have unique hardware mac address per law. that is the real mac address you see in 2. and it should also printed on a sticker you got together with phone, or printed on box. in case you can disable randomised mac address, the real one should become valid for wifi. also please note the bluetooth mac address. you can check mac address here https://macvendors.com

Android device like other Wifi devices have one fixed Wifi MAC address. This MAC has been generated by the Wifi hardware or the device manufacturer and should be unique to your device. This is the MAC address you can see in Settings → About phone.
As having a unique MAC address which is used in any network packet transmitted over Wifi is a bad idea from the privacy perspective Google introduced in Android 8 MAC randomization (which is enabled by default since Android 10). The randomized MAC is the one you can see in Settings → Network & internet → Wi-Fi → Wi-Fi preferences .  There two variants of Wifi MAC randomization. Which mode is active can usually be selected in Developer Options -> "Non persistent random generation of MAC addresses":

Wifi specific randomized MAC, called "persistent randomization"
True random MAC address, called "non-persistent randomization"

Wifi specific randomized MAC
By default this mode should be enabled since Android 10, unless you or the device manufacture changed the default configuration.

Android generates a persistent randomized MAC address based on the parameters of the network profile including SSID, security type, or FQDN (for Passpoint networks). This MAC address remains the same until factory reset. The MAC address does not get re-randomized if the user forgets and re-adds the Wi-Fi network since the MAC addressed depends on the parameters of the network profile.

True random MAC address

Under the non-persistent randomization type, which is used for some networks in Android 12 or higher, the Wi-Fi module re-randomizes the MAC address at the start of every connection or the framework uses the existing randomized MAC address to connect to the network. The Wi-Fi module re-randomizes the MAC address in the following situations:

The DHCP lease duration has expired and more than 4 hours have elapsed since the device last disconnected from this network.
The current randomized MAC for the network profile was generated more than 24 hours ago. MAC address re-randomization only happens at the start of a new connection. Wi-Fi won't actively disconnect for the purpose of re-randomizing a MAC address.
If none of these situations apply, the framework uses the previously randomized MAC address to connect to the network.

MAC filtering
In your case the device seems to use a random non-persistent MAC address. You can try to switch to persistent mode in Developer Options -> "Non persistent random generation of MAC addresses" (disabled = persistent mode, enabled = non-persistent mode).
Also on most device you can totally disable MAC randomization for one Wifi in the settings of that specific Wifi.
No matter what way you chose you first have to connect to that Wifi so that Android creates a Wifi config for that network. If you have chosen the persistent mode you can open settings of that Wifi connection and see the MAC address that is used in that Wifi network. Add this MAC address to your MAC filter. Or if present you can disable MAC randomization for that Wifi in it's settings. Then use the real MAC address of your phone shown in "About phone"
Please note that MAC filters or totally useless from a security perspective because they are transmitted in plain text (not encrypted) with every network packet one of your Wifi devices sends in your network. So if I would want to break into your network I would sniff a few seconds or minutes the Wifi traffic in your network, pick a MAC address that is white-listed and then use root permission on my device to change my Wifi MAC to the one I captured from one of your devices => MAC filter bypassed

A perfect answer, thank you. Now, the only question left, if we should kill each our comments under the questions (since matter discussed there has been clarified in your answer) or we should rather keep them for future reference?

source: Stack Exchange

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

sort: votes


text:
Fastboot failing with error: FAILED (remote: unknown command)
I am trying to run the following command against a Samsung Galaxy Tab A7 SM-T505 (2020):
> fastboot flash vbmeta vbmeta.img
target reported max download size of 797411328 bytes
sending 'vbmeta' (9 KB)...
FAILED (remote: unknown command)
finished. total time: 0.016s

But as you can see, it fails with remote: unknown command.
When I check the fastboot options, I get (partial):
> fastboot --help
usage: fastboot [ <option> ] <command>

commands:
  update <filename>                        Reflash device from update.zip.
                                           Sets the flashed slot as active.
  flashall                                 Flash boot, system, vendor, and --
                                           if found -- recovery. If the device
                                           supports slots, the slot that has
                                           been flashed to is set as active.
                                           Secondary images may be flashed to
                                           an inactive slot.
  flash <partition> [ <filename> ]         Write a file to a flash partition.
  flashing lock                            Locks the device. Prevents flashing.
  flashing unlock                          Unlocks the device. Allows flashing
                                           any partition except
                                           bootloader-related partitions.
  flashing lock_critical                   Prevents flashing bootloader-related
                                           partitions.
  flashing unlock_critical                 Enables flashing bootloader-related
                                           partitions.
  flashing get_unlock_ability              Queries bootloader to see if the
                                           device is unlocked.
  flashing get_unlock_bootloader_nonce     Queries the bootloader to get the
                                           unlock nonce.

confirming the particular command I am using is supported:
flash <partition> [ <filename> ]         Write a file to a flash partition.

I believe the arguments are set correctly and the vbmeta.img file exists in the directory I am executing the command from, but have also ran the command fully qualified path.  Always the same error.
And
> fastboot devices
R9TR11AW1N     fastboot

So the device is running fastboot.
I have found other posts on FAILED (remote: unknown command), but so far, they have all been about oem option for fastboot, which is not in fastboot help, nor am I using this particular option.

So, what am I missing here?  Why is fastboot complaining about flash
option?

Background
I am trying to root a Samsung Galaxy Tab A7 SM-T505 (2020) following this guide. I get through all the steps 1-6 without issue, but am stuck on step 7 and unable to get into recovery menu to factory reset. It appears that Knox fuse is triggering and preventing recovery menu. These are my steps.
Step 1) Enable OEM Unlock
Settings > Developer Options > OEM unlocking enabled
power off tablet

Step 2) Unlock bootloader
Press volume button (up+down together) then plug in usb -> tablet will boot into Odin mode.

in Odin mode > volume up to unlock bootloader

Tablet reboots

verify OEM unlocking is greyed out

Step3) Download firmware package from Samsung official update server
> samloader -m SM-T505 -r BTU checkupdate

T505XXU4CWA1/T505OXM4CWA1/T505XXU4CWA1/T505XXU4CWA1

> samloader -m SM-T505 -r BTU download -v T505XXU4CWA1/T505OXM4CWA1/T505XXU4CWA1/T505XXU4CWA1 -O .

Step 4) Decrypt and Extract
> samloader -m SM-T505 -r BTU decrypt -v T505XXU4CWA1/T505OXM4CWA1/T505XXU4CWA1/T505XXU4CWA1 -V 4 -i SM-T505_3_20230113142541_erh3m0ivc4_fac.zip.enc4 -o SM-T505_3_20230113142541_erh3m0ivc4_fac.zip

Step 5) Use Magisk to patch the firmware image
> adb push AP_T505XXU4CWA1_T505XXU4CWA1_MQB61232139_REV00_user_low_ship_MULTI_CERT_meta_RKEY_OS12.tar.md5 /storage/emulated/0

> adb install /path/to/magisk/Magisk-v25.2.apk

run magisk, select md5 image pushed earlier, and patch it.

> adb pull /storage/emulated/0/Download/magisk_patched-7tzTQ.tar  \path\to\firmware\imagefiles\

Step 6) Flash patched AP firmware using Odin - deselected auto-reboot
rename magisk_patched-25200-7tzTQ.tar to magisk_patched.tar

Odin crashes at PRISM segment if not renamed:
Faulting application name: Odin3 v3.14.1.exe, version: 2019.5.1.0, time stamp: 0x5cef2bf9
Faulting module name: Odin3 v3.14.1.exe, version: 2019.5.1.0, time stamp: 0x5cef2bf9
Exception code: 0xc0000409
Fault offset: 0x001cb10a
Faulting process id: 0x2f58
Faulting application start time: 0x01d9424e6340c61a
Faulting application path: C:\Users\Me\Documents\Android_OS_Imaging\Odin\Odin3 v3.14.1\Odin3 v3.14.1.exe
Faulting module path: C:\Users\Me\Documents\Android_OS_Imaging\Odin\Odin3 v3.14.1\Odin3 v3.14.1.exe
Report Id: 5faed018-fdf7-422d-b1ba-31f45a6b53dc
Faulting package full name:
Faulting package-relative application ID:

Unplugged USB, restarted tablet (Power + Volume Down), hold Volume whilst plugging USB back into tablet (Odin mode). Start Odin again.
Select respective files and click Start
<ID:0/007> Added!!
<OSM> Enter CS for MD5..
<OSM> Check MD5.. Do not unplug the cable..
<OSM> Please wait..
<OSM> Checking MD5 finished Sucessfully..
<OSM> Leave CS..
<OSM> Enter CS for MD5..
<OSM> Check MD5.. Do not unplug the cable..
<OSM> Please wait..
<OSM> Checking MD5 finished Sucessfully..
<OSM> Leave CS..
<ID:0/007> Odin engine v(ID:3.1401)..
<ID:0/007> File analysis..
<ID:0/007> Total Binary size: 6852 M
<ID:0/007> SetupConnection..
<ID:0/007> Initialzation..
<ID:0/007> Set PIT file..
<ID:0/007> DO NOT TURN OFF TARGET!!
<ID:0/007> Get PIT for mapping..
<ID:0/007> Firmware update start..
<ID:0/007> NAND Write Start!!
<ID:0/007> SingleDownload.
<ID:0/007> abl.elf
<ID:0/007> xbl.elf
<ID:0/007> xbl_config.elf
<ID:0/007> tz.mbn
<ID:0/007> hyp.mbn
<ID:0/007> rpm.mbn
<ID:0/007> devcfg.mbn
<ID:0/007> cmnlib.mbn
<ID:0/007> cmnlib64.mbn
<ID:0/007> km4.mbn
<ID:0/007> storsec.mbn
<ID:0/007> NON-HLOS.bin
<ID:0/007> dspso.bin
<ID:0/007> qupv3fw.elf
<ID:0/007> apdp.mbn
<ID:0/007> uefi_sec.mbn
<ID:0/007> msadp.mbn
<ID:0/007> sec.elf
<ID:0/007> bksecapp.mbn
<ID:0/007> icccgrd.mbn
<ID:0/007> vbmeta.img
<ID:0/007> blgrd.mbn
<ID:0/007> grd_fw.img
<ID:0/007> vaultkeeper.mbn
<ID:0/007> recovery.img
<ID:0/007> dtbo.img
<ID:0/007> super.img
<ID:0/007> userdata.img
<ID:0/007> metadata.img
<ID:0/007> vbmeta.img
<ID:0/007> vbmeta_samsung.img
<ID:0/007> boot.img
<ID:0/007> cache.img
<ID:0/007> omr.img
<ID:0/007> prism.img
<ID:0/007> optics.img
<ID:0/007> RQT_CLOSE !!
<ID:0/007> RES OK !!
<ID:0/007> Remain Port .... 0
<OSM> All threads completed. (succeed 1 / failed 0)

Step 7) Fails - Holding Power + Volume Down for ~7 seconds then when tablet screen turns off Power + Volume Up.

I have not found a way around Knox yet. Any guidance on how to get around or another rooting method altogether would be appreciated.
I am able to get all the way through using original AP file:    AP_T505XXU4CWA1_T505XXU4CWA1_MQB61232139_REV00_user_low_ship_MULTI_CERT_meta_RKEY_OS12.tar.md5
instead of magisk_patched.tar - all the way to factory reset, reboot, settings developer options enabled.

[Auto-generated]: Comments have been moved to chat; please do not continue the discussion here. Before posting a comment below this one, please review the purposes of comments. Comments that do not request clarification or suggest improvements usually belong as an answer, on [meta], or in [chat]. Comments continuing discussion may be removed.

After some effort and community assisstance, I finally got root access, which is/was the ultimate goal of the question.
Following this guide, and a little patience, I was able to get through.  This guide is very good, but does not mention a rather significant point in my process, or does not give enough detail, which is the display after reboot of the Samsung warning screen, which displays for ~3-5 minutes.  It pauses longer after the first reboot than subsequent boots.  While it's mentioned that the first boot is long, it does not mention the warning screen.  If you wait out this screen and not attempt to access recovery menu (which the guide states as a step), then you should get through.

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


text:
Is a Google-free work-phone possible using Microsoft 365?
We are a small company, and in the past, we used Windows Phones; since we are very much based on Microsoft's services. Now that the Windows phones have all been replaced by Android phones, our smartphones at work are in a sort of limbo state.
Without a Google account, the Play Store is somewhat limited, and new apps need to be installed via side-loading. While this is feasible if you restrict yourself to trusted sources; however it could also be a disaster waiting to happen.
Is there a way to get a functioning Play Store without creating a Google Account for every employee? One might be forgiven to think that must be a solution to this problem already being thought of.

The reasons why we would like to avoid this are as follows:

All work-related communication should run over our Microsoft 365 services, i.e., Outlook for Android, since then they are automatically synced to other devices. If Gmail was available, one can surely bet that some communication will run over Gmail, which would only complicate things.
The same holds for the Calendar. I bet with a Google account, some people will (knowingly or unknowingly) use the Google Calendar for work-related dates, which will essentially hide those dates from others who use the Outlook Calendar.

Its hard. MicroG and Aurora will give you back quire a bit of functionality including pulling play store apps.  An easier, but more limited alternative would be to use the Fdroid app store.  Of-course - and I hate to say it - thevfruit brand may be a better fit - no hacks and no Google hooks - but no free lunch either.

As commented by davidgo, this depends on which Android devices and how strict the non-Google policy is, because most devices have Google apps by default where employees can (accidentally or deliberately) log in using their own personal account and use it, unless the apps are disabled. Another possible problem is checking if Microsoft 365 apps depend on Google Play Services or not, which occasionally needs to be updated. The usual solution for this kind of situation is by using MDM, like Android Enterprise Management.

Just FYI: Microsoft 365 has a Mobile Device Management solution

I would suggest that you stay with the Play Store for safety.
It is perfectly possible to use the same Google account on all devices.

You don't need to have separate accounts.
This is not a problem, as long as you don't need to differentiate their activities that use a Google Account, such as a calendar.
Data will be differentiated for all apps that use email or phone numbers for accounts.
It is possible to have multiple accounts when for the odd person, they may want to keep some Google Account activity separate from others in the group.

As an example
We as a family use the same account to install all apps.  Then we switch over to our individual accounts.  An advantage of this is that we just have to pay once for many of the apps.  They use the Google account to verify the purchase.
Another use of multiple accounts
Some apps require that you be in their particular country.  Each Google account is tied to a country (as defined in the Payments section).  And you can only change this once a year.  So, I have 3 accounts for three countries where I have to use their banking apps.  For some apps, I also have to switch the VPN at the same time.


text:
How to access the block device that represents the SD card on an android device thru ADB?
My android's SD card got corrupted while trying to access the data with a card reader. I'm trying to create a dd image of the block device that represents the SD card. Can this be achieved thru ADB (Android Debug Bridge)?  Don't want to reduce my chances of data recovery even further. This is for an android 11 device. Any advice will be greatly appreciated!

Accessing a block device on Linux requires root permissions (thus a rooted device).

Let's assume I have rooted the device already. What commands do I need to execute to create the SD card image in my computer? Thanks!

On that level Android is simply a Linux system so dd or if you can find a version for arm/arm64 dd-rescue can create an image of a block device.

not for android 11 but the cloning of MicroSD card is the same https://android.stackexchange.com/q/222394

Thank you for the guidance so far.


text:
ADB sideload regularly loads LineageOS ROM, but gets stuck at 0% with stock firmware, why?
I'm trying to restore the stock firmware for a Samsung S10e.
It's currently setup with the LineageOS recovery image, and the LineageOS firmware.
I've rebooted in the (LineageOS) recovery, factory reset everything, and now I'm trying to sideloading the factory image (G970foo_bar_baz.zip), however, it's stuck at 0%.
If I try to sideload LineageOS again, it sideloads without any problem.
Should I keep waiting?
Since the factory ROM is very large (5.9GiB vs 800 MiB), it's possible that it's normal that it takes a long time before the sideload starts, however, I don't know how long should I wait.

Where did you got the factory image from? Are you sure it is designed to be side-loaded and not just a ZIP file for downloading multiple files together?

stock ROM flashable zips usually perform some health checks which you obviously cannot pass on modified device

@Robert ah. This could be the cause - the zip comes from sammobile.com, and it's described as "firmware" (https://www.sammobile.com/samsung/galaxy-s10e/firmware/#SM-G970F), but I'm not entirely sure that it's the expected one.

@Robert Odin loaded the zip correctly (but I had to unpack it first), so you're correct that the firmware archive, as is, it's not intended to be sideloaded (I wasn't aware of the difference!).

Not every ZIP file can be side-loaded.
I am not sure what properties need to be fulfilled by an ZIP file that can be side-loaded.
One indicator is the existence of the directory META-INF/com/google/android/ inside the ZIP file. And inside there should be an file named updater-script which is required for installing the ZIP file via side-loading.
If that file is not present then most likely your ZIP file is not side-lodeable.


text:
recover data from Huawei G610-U20 boot loop
My phone is stuck in boot loop, I think because not enough memory (RAM) is available to start the updated version of Android. In fact, after upgrading Android in 2021 the boot loop appeared, and then after 30 mins of loop the phone would finally start. This happened a few times, before I upgraded again and it's been stuck in boot loop ever since. On my computer, I have noticed that androidx86 is stuck in boot when not enough RAM is available, therefore I deduce this might be the cause. Internal storage should not be full on my phone...
I could try and downgrade the Android version, because I can't think of any other ways to access the internal storage (either by disassembly or by alternative boot options).
I can start recovery mode POWER + VOL+, however if I press VOL- + POWER, then only one line of microscopic writing appears on the bottom of the screen, and it's impossible to decipher what is written.
Wiping cache does not help. Firmware download mode accessible. As far as I remember: Not rooted, USB debugging enabled.
Any help to find some way and recover my data from the internal storage? Thanks a lot.

Why do you think that the installed upgrade has "not enough memory (RAM)"? Official updates you receive from Huawei are usually well tested so that they fit to your hardware. Or may be you wanted to say "Flash memory" and your internal flash memory was almost full when installing the update? (RAM is not Flash memory).

I've added details to my question!


text:
Is there a way to permanently delete specific (phantom) alarms using adb shell?
My phone has mysteriously created a phantom alarm meaning that no GUI app or widget shows this alarm on my phone and thus nothing allows me to see to set, delete, or view this alarm.
Using adb dumpsys alarm, I've found the offending alarm, which goes off M-F at 0630 HRS and it's incredibly annoying.
Using adb, I'm able to find the alarm daily, which means I'm able to find the Alarm ID, which in my case, right now, is ff691fe.
Is there a way I can delete this alarm permanently using adb? I'm assuming that this particular ID is likely not the root ID, but perhaps someone knows how I can find that? I'll keep looking around.
I just tried (with result from command)
b0q:/ $ service call alarm 3 i32 ff691fe
Result: Parcel(00000000    '....')

and this did not work, unfortunately. One thing I suspected and confirmed is that the ID changes after a timer elapses, but I've not yet determined how to get a parent ID (probably not correctly named there) for the alarm. Moreover, it's likely I'd need that ID to successfully permanently delete alarms.
Any assistance on this would be greatly appreciated. This seems like a huge bug in the android OS.

Doesn't dumpsys alarm also show the package name of the originating app?

Yes, that's correct. For posterity sake, I'm using this as a go-by: https://stackoverflow.com/questions/28742884/how-to-read-adb-shell-dumpsys-alarm-output

I have learned that the phantom alarm is coming from sleep mode, which I deleted, but the alarm lives on. I don't have any way to delete this alarm as far as I can tell.

OK, it turns out that the service call did work, as far as I can tell. I just needed to tweak the command a little.
Most important thing was to correctly determine the ID of the alarm. Using the link here, one can find the ID. Note that the ID is in a specific section of the dumpsys alarm command. The format of the output for that command is confusing at first, but essentially you're looking for something like:
where ### in this is a number representing the number of alarm (not ### literally)
### pending alarms:
...
...
...
    RTC_WAKEUP #88: Alarm{5d74fad type 0 origWhen 1677671101000 whenElapsed 1028621179 com.sec.android.app.clockpackage}
      tag=*walarm*:com.samsung.sec.android.clockpackage.alarm.UPCOMING_ALERT
      type=RTC_WAKEUP origWhen=2023-03-01 04:45:01.000 window=0 exactAllowReason=permission repeatInterval=0 count=0 flags=0x5
      policyWhenElapsed: requester=+7h4m50s571ms app_standby=-1m20s270ms device_idle=-- battery_saver=-55s468ms tare=-2m1s488ms gms_manager=--
      whenElapsed=+7h4m50s571ms maxWhenElapsed=+7h4m50s571ms
      operation=PendingIntent{493d673: PendingIntentRecord{4efa417 com.sec.android.app.clockpackage broadcastIntent}}
      idle-options=Bundle[{android.pendingIntent.backgroundActivityAllowed=false, android:broadcast.temporaryAppAllowlistReasonCode=302, android:broadcast.temporaryAppAllowlistDuration=10000, android:broadcast.temporaryAppAllowlistReason=, android:broadcast.temporaryAppAllowlistType=0}]
    RTC_WAKEUP #89: Alarm{e3b8930 type 0 origWhen 1677671507448 whenElapsed 1029027627 com.samsung.android.rubin.app}
      tag=*walarm*:com.samsung.android.rubin.alarm.ACTION_PENDING_INTENT
      type=RTC_WAKEUP origWhen=2023-03-01 04:51:47.448 window=+2h0m0s0ms repeatInterval=0 count=0 flags=0x0
      policyWhenElapsed: requester=+7h11m37s19ms app_standby=-1m20s270ms device_idle=-- battery_saver=-55s352ms tare=-1h17m15s404ms gms_manager=--
      whenElapsed=+7h11m37s19ms maxWhenElapsed=+9h11m37s19ms
      operation=PendingIntent{e4639a9: PendingIntentRecord{84e3864 com.samsung.android.rubin.app broadcastIntent}}
...
...
...

In this example, RTC_WAKEUP #88 is the pending alarm. In that string, the output Alarm{5d74fad type shows the alarm ID, which is 5d74fad.
Now, executing:
service call alarm 3 s16 5d74fad

deleted my alarm. Whether this works for others or not, I cannot say. It worked for me. The output from the command is nebulous at best. I basically just had to wait for the next day. One thing I noticed, though, was when I ran this command, my phone switched to GMT (rather than localtime). Simply going in to settings for date time and toggling on/off the automatic daylight time and automatic date time fixed that.


text:
Missing gmail notifiation when turning phone on?
I was playing with using gmails snooze function for reminders. I tagged certain messages and only allow notifications for these messages. This seemed to be working well. But this morning my phone had run out of charge, I switched it on and I appeared to receive no notifications for the unsnoozed emails when my phone was off.
This is annoying, I want reliable notifications that I don't miss. Does gmail not send notificatios when it starts and is there a way to make it do so?

AFAIK, Gmail only shows notifications when the app syncs in the background and there are unread emails. I'm unsure if there's a way to force automatic background sync on startup.

@AndrewT. Thanks... I guess I'm happy as long as the sync happens evetually for my phone. I tested it with unsnoozing messages when my phonen was on.


text:
How to transfer user data, namely tracks and favorite places, from OsmAnd to OsmAnd+ application?
I used to use OsmAnd application, and while using it have created a few favorite places, and recorded a few tracks.
Now that I switched to OsmAnd Plus, I'd like to copy all user-created data, like favorites and tracks, from OsmAnd to OsmAnd Plus, and then delete OsmAnd to save space.
How can I do that?

Have you tried to export the data and then import? Menu → Configure profile → Actions https://osmand.net/docs/user/personal/import-export/

Thanks, that worked, though I had to save the exported file (via Google Drive), and then open it... exporting to OsmAnd+ directly via share menu somehow didn't work.


text:
How can I make WhatsApp use the "File As" field?
In the Google Contacts app, I can enter a value in the "File As" field in a contact's details. I can search for contacts using this field (both in the Android app and on the web https://contacts.google.com ).
I would like to make WhatsApp use the "File As" field when displaying the name of a contact. I would also like it to display that user in the search results when I search for that contact using the "File As" value. How can I do that?
It would also be useful to be able to search in WhatsApp for contacts using the "Nickname", "Phonetic first", "Phonetic middle", and "Phonetic last" fields. Right now, WhatsApp only seems to search the "Prefix", "First name", "Middle name", "Surname", and "Suffix" fields.

Without probably some hacky/modded apps, I don't think this is possible without relying on WhatsApp developers because of how it is currently coded inside the app...

Related for more general case: "File as" not working for Contacts


text:
Reset Digital Wellbeing timers
Everyday I set digital wellbeing timers to zero(0) and increase then by 5 minutes everytime I need access to an app, this is how I'm coping with my phone addiction.
Sometimes if I extend an app timer to 30mins someday it remains the same and I will use the app for 30mins everyday until I realise and put it to 0-5mins again.
So, is there a way to reset these timers everyday to zero ?


text:
Is it possible for a Bluetooth device/button to wake up an Android phone and take a picture (hands free)?
Long story short, I am taking daily progress pictures and I am trying to take a picture with the phone without touching it or using a timer etc. Totally hands free.
The phone is a spare Samsung note 10+ mounted to the bathroom mirror and permanently connected with the back camera facing forward. Touching the phone isn't suitable because it's facing the wall and movement has the chance of bumping the position slightly (not ideal).
After experimenting with Bixby many thanks to the comment by @Morrison Chang, I found it does work hands-free suitably for my partner and myself, however listening to my partner trying to tell the wall to take a photo in a slow robotic voice is not optimal. So, the question remains,
Can a Bluetooth attached button wake a phone and trigger a picture to be taken?
Note: I am a career programmer so writing a simple app isn't out of the equation if need be.

Unclear if you tried enabling Bixby Voice wake-up and using a Bixby voice command to take a picture.

@MorrisonChang updated. Yes, thanks a lot for that, the bixby voice command does work for both of us, and we will fall back to bixby if need be., though I'm still curious about a Bluetooth button (remote camera button)

Based on Android Doze Mode - Bluetooth and accounting for https://dontkillmyapp.com/samsung it seems possible. Found https://github.com/michaelruck/ESP32_phone_camera_remote_shutter but Doze mode / holding wake lock would need to be tested. Accessing Bixby is via a Samsung feature means less concern about waking up phone/camera app.

@MorrisonChang thanks once again, very interesting, yeah it seems the sleeping might be an issue, agreed that Bixby would likely bypass that, however, that raises the question, the phone must be processing audio all the time for Bixby to wake :/ not that it's a bit deal.

See my answer to Does Android hold audio in RAM when listening for ‘hey google’? for references as to how 'wake words' work. The github project references the remote control feature of the open camera app. You may want to try with a bluetooth keyboard to see if you can make it work.


text:
Xiaomi Portrait Mode: Where is the original data stored (before depth-of-field effect)?
My Xiaomi 10T Pro has a "Portrait Mode" which blurs the background. When opening such a photo in the Gallery, the phone offers the option to adjust depth-of-field.
By default, a medium amount of depth-of-field is used. If I transfer that JPG to my computer, the background is slightly blurred.
When I open the picture in the phones Gallery app, it allows me to adjust depth-of-field and make the background more crisp. That must mean the phone stores the original image data somewhere. Otherwise, it wouldn't be able to un-blur the JPG file.
Where is that original image data stored?


text:
How to determine the architecture (32 v. 64 bit) using only the phone
On a computer, it's pretty easy to find out if the system is 32 or 64 bit.
I have a Nokia G21 and a Huawei P10 in front of me, and both tell me the various things: the model designation of the phone, the CPU, the Android version; but nothing tells me explicitly the architecture, i.e., whether it's a 32 or 64 bit device.
Microsoft Windows, on the other hand, tells me in no uncertain terms at Settings -> System -> Info which one it is. Linux is also pretty forthcoming with this information.
Is there any means from the on-board tools of Android to find this out?
I.e., not asking the internet, not connecting to a PC and not installing any additional apps.

If you enable Developer options (usually tapping the build version in about phone enables it) on my device the first entry is about how much RAM is installed/available. If this entry shows more than 4GB then it has to be a 64 bit device.

Well, that's indirect and covers only a subset of cases, i.e., phones with more than 4 GB of RAM. If my phone reports 4 GB or less, then I am non the wiser.

On a terminal emulater app or ADB shell type uname -m.

@IrfanLatif there is a catch. OP mentioned the restraint: "not asking the internet, not connecting to a PC and not installing any additional apps". :)

@Firelord noted. But many ROMs have a terminal emulater app built-in, usually disabled in developer options. It's a basic utility for any power user, not something additional :)

@IrfanLatif Of all the devices I have ever used (up to Android 10) none of them had terminal emulator builtin on vendor provided stock ROMs. On custom ROMs, I did find terminal app in Dev options. It could be that stock ROMs for Android 11 and above come with terminal app in Dev options so I can't comment on that.

@Firelord you must be right. OEMs have a lot of their own bloatware to bundle with their devices. I had custom ROMs in mind.

This is a shot in the dark. Go into Developer options, bug report -> select "Full report" if a dialog comes up. Wait until you get a notification that bug report has been generated. Click on it to share it (save it into your file manager). Here's where things get uncertain. If the vendor provided or user installed file manager has Zip/Unzip support and text-view/text editor support than extract or view the bug report -> fs -> data -> tombstones or anr -> open any of the files in text editor. Among the first couple of lines would be "ABI".

@Firelord You deserve a medal for this insanely convoluted way to determine the sought after data. Although, I haven't test this yet; this sounds weirdly plausible.

In my mind, smartphones are crummy computers. There are 32 and 64 bit ones, but it's not straightforward to find out, what they actually are.

@DohnJoe 32/64-bit is info which the target audience (which we are not a part of) of smartphone need not to know. The device ought to perform and apps ought to work nicely on them and get the job done for the user. The way Google's Play Store works, it removes the need to know anything about the device specs to get apps -- the one thing user would be depending upon mostly.

The motivation for my question was me looking for an app outside of the PlayStore. There, the app was available for arm and arm64. So, my question isn't entirely academic.

that's trial & error with 50 % success. arm works on arm64 too. smartphone without internet and no connection to PC, how do you install the app? MicroSD card on PC? https://deviceinfohw.ru

Yes, one can google this information. However, even the specs of the manufacturer are sometimes silent on the bitiness, e.g. here: https://www.nokia.com/phones/en_int/nokia-g-21/specs?sku=719901183451

Spreadtrum T606 comes with ARMv8.2-A Instruction set (64-bit) but the ROM may built as 32-bit. It really depends on ROM

another funny method: calculate 2147483647 + 1 if the result is negative it's 32-bit signed integer echo $((2147483647+1))


text:
Is there a way to disable the inactivity screen lock?
And I don't mean the Screen Timeout or the actual phone lock.
I have a Samsung Galaxy A8 running Android 9, and since I found out it hasn't been updated since 2018, AKA before OneUI, I decided to do it.
But since that update, when I don't touch it for a bit, LESS than the ten minutes I set the screen timeout to be, the phone screen get dimmer and lock itself with a 'drag to unlock' message.
It is annoying as I am using a third party program to help me grind in a mobile game, and what it feels like every five minutes I need to unlock the phone screen so that it can keep working. The screenlock must be new because it didn't happen before I updated it.
I tried to see how to turn that off, but all I find is the Screen Timeout and the phone's actual lock, same for google searches. I can't find ANYTHING on this screen lock.
Hell, even the 'Don't go to sleep while plugged it' dev setting doesn't stop it.
Edit : Added a picture to show what I am talking about.

The thing that cause this screen to appear is Game Booster.
I turned it off and I am on my way to uninstall it forever.
Here's the link to a reddit post related to how to turn this thing off.

Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.


text:
How does Tasker share data with plugins?
After years of struggling with near "blindness" from using Tasker 1.3.3u2 on an old e-ink device (Android 2.1), I decided to take a serious look at modifying the theme. I finally managed to chase down all the textColors and change them to black while changing almost all backgrounds to white. This required changes in not only layout xmls but also a few smali files.
Needless to say, the signature is broken, but a resigned copy still functions well--except for plugins.
I knew this was coming because a few years ago a software update for the e-ink device made it refuse to install the original Tasker app--unless I resigned it. I still don't know why.
To the point: how does Tasker pass information to plugins? I thought there might be a shared uid but nothing in packages.xml suggests any connection between Tasker and any of the plugins I use (Minimalistic Text, Rotation Locker, Screenshot Easy, Desktop Visualizer).
Task steps involving plugins are ignored if Tasker is resigned. Compiled kid apps (using App Factory) work as intended, including plugins. This is good because I never use Tasker itself unless I am working on a new project or debugging an old one. I always make stand-alone apps.
But...I can keep one device with the original version of Tasker (and old software) for development, except the whole idea was to make it easier on my aging eyes when I'm doing serious creative work, so that's a loss.
Does anyone have an insight into how plugins communicate with Tasker and if there is a way I could restore those lines of communication in a resigned Tasker? (I've already tried resigning the plugin apps with the same signature. No dice.)

sharedUserId was also my first guess but have already excluded that. But there is a similar possibility using "signature protected" intents and services. Check the permission entries for one with protectionLevel=signature.

I was unable to find any instance of "protectionLevel=signature" in the manifest of either Tasker or any of the plugins (or packages.xml). I should have mentioned that I had occasion of resign RotationLocker a few years ago after retheming to make user options actually visible on the e-ink device. This resigned app still works with Tasker (the original signature) as a plugin. So whatever this is, it doesn't seem to depend on the plugins.

Tasker has documentation for creating a plugin, if it may provide any insight.

Yes, I've read through that. Unfortunately the technical nature is above my pay grade :-(


text:
Samsung Galaxy A10 asks for password after update to Android 11
After updating my Samsung Galaxy A10 to Android 11, I get the message "your password contains at least 4 characters, including at least one letter" so I can't unlock my phone's screen. I didn't set any password before, I had a swipe lock. I want to copy all data to the computer and then do a hard reset (I have password to google account so FRP won't be a problem).
I tried to unlock my phone and backup to Samsung Cloud via Samsung Find My Mobile but remote unlock is disabled.
When I connect my phone to my computer, file explorer doesn't detect my phone (I can't enable MTP mode).
USB debugging is disabled
Entering default_password also didn't help (maybe it's new default password for Galaxy A10?)
Is there any way to copy all data to computer or unlock my phone without losing data?


text:
Google On-device encryption Google Passwords
I recently decided to enhance my online security by changing all my passwords and activating Two-Factor authentication for most of the services I use. I updated my passwords in Google Password Manager and enabled on-device encryption.
After updating my Google Account password, I was automatically logged out of all my devices. However, when I tried to access my passwords in Google Password Manager, I received a message saying that I couldn't access my encrypted data on the device I was using. The message suggested that I should try using a device that I recently used to sign in to my Google account:

for security, you can no longer access your encrypted data on this device. try again using a device that you’ve recently used to sign in to your google account.

What I have tried:

Checked the Web & App Activities settings on your Google Account and turned it Off and then On again.
Checked the cookies settings on your browser.
Confirmed that Sync is not paused in Google Chrome.
Cleared data in Google Chrome and turned Sync off, signed back in, and turned Sync on again.
Checked the Device Activity page on your Google Account and confirmed that Sync is On and not paused on the devices you recently signed out of.
Restarted my device and waited for bookmarks and passwords to load.

Despite trying these steps,I still cannot access my encrypted data on the device I am using, and I am looking for further help.

Hi, glad to hear that you have found the answer yourself! Just curious, did you use any assistance (e.g. AI Chatbot) while trying to fix this, particularly from "Based on your message, [...]"?

Hey Andrew,
Indeed I made use of an AI, which I only used to summarise what I did myself. Please forgive this mistake.

No worry, it's not really a big deal in this case, though a disclosure beforehand is encouraged because of the referencing policy on Stack Exchange, and also the caveat that AI might not always be correct :)

So I found my answer, there is a message saying that you need to complete Chrome's safety check:

You’re using on-device encryption. To check your passwords, go to Password Manager on Android or use Chrome’s safety check.

After this you should be able to access your passwords again.


text:
Is there any way to turn off/on a grayed out notification from an app through an ADB command?
My default phone/call app doesn't allow me to turn off notifications.
When I go into the 'Apps and notifications' and find the phone/call app and try to turn them off, the switch is grayed out and does not allow me to.
Is there any ADB command I can do to overwrite this and allow me to control the notification?

Welcome to the Q&A site Android Enthusiasts. Just in case it's relevant, could you [edit] and also mention the device model and Android version?

Try this answer: https://android.stackexchange.com/a/120417/96277


text:
The Android system can access the microphone when it is used?
The android blocks multiple aplications using the microphone at same time, for example, but the internal apps or the system can have access to it even on use?
I'm asking this question because I want to prevent mic uses from apps that I don't want to.
For example: the Android system can interface the hardware to apps, blocking the most apps, but Google apps, for example, can access any time


text:
Best way to achieve offline folder sync in Android?
The Google Drive client for desktop platforms allows to Make Available Offline any folder you want, usually inside a virtual drive (e.g. G:/myFolders/syncedFolder in Windows).
How can I achieve the same offline folder sync in Android devices?
I've tried 3rd party software that does it, but it's too buggy to use with important files (it accidentally deleted my data once).

As commented before, you can't. You can download any file using the app and save it to the local storage provided you have enough, of course.

By "offline sync", do you mean synchronizing folders between your Android device and your computer? Because "offline sync" using a cloud is hardly feasible ;) If I guessed right, what OS must be supported on your computer? Reading between the lines, most likely Windows – but would other OSes also be acceptable? Also, if it comes to (3rd party) software needed, any restrictions concerning pricing and license? Further it would help if you mentioned what you tried already, so we don't recommend something which you already know doesn't work for you.

@izzy - I tried some paid apps available at Google Play and found none suitable. I don't have any requirement or restriction, I don't care about the OS, it can be Mac or Linux, too. The apps I've tried were doing just that, copying some folder from the cloud and updating it with new content when they detect changes (new files, deletions, etc.) in the android-synced folder... I will try some DIY solution with termux and rclone/rsync in the meantime.

Thanks, that sheds some light. Then maybe I misunderstood what you mean by "offline": You want to sync files from some cloud storage for offline use then? If that's the case, maybe Tacit's FolderSync could be an option (they have a "free" testing version available if you want to give that a try).


text:
Change WiFi Roaming Agressiveness - Xperia 1 IV
I've just got an Xperia 1 IV and I've noticed that it's not roaming between the access points in my house, which is an absolute nightmare.
I've looked, and I can't seem to find this setting anywhere.
Could someone please point me in the right direction?

Have you checked if your Wifi routers and the phone support any of the roaming related Wifi improvements (802.11k 802.11r 802.11v). As far as I know without those standards roaming isn't working very well.

I would assume so since the phone is new and no other device on my network struggles with this.

[Caveat: I have zero knowledge about network engineering.] My Xperia 10 III wouldn't connect to our work wifi, but it would connect to the same network elsewhere and maintain the connection if I walked back to my office. This has now been resolved, and I was told the problem was that our access point used 802.11r (fast transition). From what I read online, this has to be supported by your device driver. I agree that it's strange that this wouldn't be the case for new Xperia models, but maybe they are using old parts?


text:
How to disable cutting sound to headphones at moments of low volume during playback?
Since starting to use USB-C headphones (my new phone has no audio jack), I notice this (to my ears) very annoying issue: during playback of any audio, the sound output will be cut during moments of (very) low volume in the audio stream. For example: listening to an audio book, after every sentence, when the narrator pauses, you will hear a noticeable cut of all sound output, where normally there's always a little white noise in the background. I guess it's an optimization of not sending any audio signal when there is nothing to be heard, but to me these constant breaks in the background white noise are very annoying. As reference: this did not happen when using the audio jack on my old phone. The background white noise was just always present during playback.
I tried to research this issue, but it seems to be either almost impossible to set the right search terms or no one else is complaining about this. Although I find the latter hard to believe, since my partner experiences the same. Also in the Android settings I cannot find anything related to this.
Still I hope there is a way to resolve this. Either by applying a certain (advanced) setting or maybe by using some other workaround trick. Any insight and/or help in this matter is much appreciated, thanks!
PS: I assume this is standard Android behavior for USB-C headphones and not headphone specific. Please enlighten me if I'm wrong.

Android knows when audio playback is active or not so stopping audio transmission via USB-C on low volume doesn't make sense in my opinion. Therefore my guess is that it is caused by the headphones. May the the headphones use an integrated digital-analog converter which is shut down on low volume.

FYI there has been reports of this since early days of Android: 1 2 and there is an issue for AOSP: 3

@Robert It is not caused by the headphone. (1) This issue has already been reported by many people (2) You can try using the same headphone but attached it to a Windows device, or with an iPad (that comes with USB-C) using the same adapter. You won't get any sound cut off.

I have the exact same issue with two pairs of USB-C headphones on my brandnew smartphone, while my old one with analog audio jack does not show that problem. I am not so much annoyed by the cut out silence but by the missing beginning of each sentence after a brief silence in podcasts or songs. There really is missing information, half or full syllables being cut off ten times per minute. I am so annoyed, I could scream instead of fall asleep with my podcasts. How can this be left unaddressed in Android?!?

From what I know this is not easily achievable. There is no built-in setting for this, although you may get around the issue using (1) a ROM with a patched kernel (2) a third-party app.
This has been reported since early days of Android 1 2, and there is an issue on AOSP that is marked as "won't fix", although I don't agree with that assessment. This might get more traction and get addressed if someone can confirm that (1) This is indeed a problem in AOSP (2) creates an issue that clearly states that this is not a problem in custom ROMs.
This may also be related to the fact that the output volume for USB-C headphone/headphone using USB-C adapters is applied by software rather than using DAC hardware volume. In other words, Android applies the system media volume to the sound signal and then sends it to USB-C, during which the sound may be distorted/filtered. 1 2. There are reports that you can use the Hiby app or USB Audio Player PRO app to control the volume of the DAC, which may help fix this issue. (I did not have luck there.)

I was happy to come across your post as I have had the same issue on multiple android devices. Initially I thought it was the specific device, but after having the issue reproduce itsself on a new device later on, I re-initiated a search on this. Unfortunately I agree towards the same conclusion in that either no one experiences the issue or simoly finds another alternative (non USB-C headphones if possible etc) or simply loves with is (as I have had to do on occasion). It is annoying though as I either have to bump the volume so that even the quiet parts have the background noise fuzz loud enough for the audio to not cut out or simply deal with the cut-outs.
The issue is not related to the headphones as the issue does not exist when used on windows devices for example.
The only solution I have found is to use a frequency generator, put it on a low Hz so that you only have the white noise remain and then play whatever audio you wish to play on a low volume (I too fall asleep with audio books etc and the cutting out is annoying).
Yet to look into whether specific frequencies are a bad idea in terms of sleep etc, but thought I'd give you a potential work around if you have not yet found one or wish to consider it.

Hi Sheldon, thanks for your reply. Indeed such an annoying issue that should not be too hard to solve on the Android side I'd say. I also recently found the workaround you described. You can also set it to a very high (non-audible) frequency. As long as something is playing in the background, the system will keep the audio channel 'open'. Not ideal but at least it works. Thanks for taking the time to write your answer!

Really doesn't feel like this should be the solution but a frequency generator set to max has done the job. Astonishing noone at androids thinks this is worth fixing


text:
Android scoped storage on Android 11 - permission denied
The scenario is that one app is creating some files on its external storage /sdcard/Android/data/myPackageName and during testing automation I need to retrieve some files from that folder using adb.
The compileSdkVersion and targetSdkVersion are set to 31, and also uses:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

For some reasons, the adb pull command doesn't work (permission denied) on Android 11 but it works on Android 13 (I used real phones not emulators)
These are the mount points:
Android 13 (Pixel 5)
/dev/block/dm-40 on /storage/emulated/0/Android/data type f2fs (rw,lazytime,seclabel,nosuid,nodev,noatime,background_gc=on,discard,no_heap,user_xattr,inline_xattr,acl,inline_data,inline_dentry,flush_merge,extent_cache,mode=adaptive,active_logs=6,reserve_root=32768,resuid=0,resgid=1065,inlinecrypt,alloc_mode=default,checkpoint_merge,fsync_mode=nobarrier,discard_unit=block)

id result:

uid=2000(shell) gid=2000(shell) groups=2000(shell),1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),1078(ext_data_rw),1079(ext_obb_rw),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats),3009(readproc),3011(uhid),3012(readtracefs) context=u:r:shell:s0

Android 11 (Pixel 5)
/dev/block/dm-12 on /storage/emulated/0/Android/data type f2fs (rw,lazytime,seclabel,nosuid,nodev,noatime,background_gc=on,discard,no_heap,user_xattr,inline_xattr,acl,inline_data,inline_dentry,flush_merge,extent_cache,mode=adaptive,active_logs=6,reserve_root=32768,resuid=0,resgid=1065,inlinecrypt,alloc_mode=default,fsync_mode=nobarrier)

(the only differences are: discard_unit=block and checkpoint_merge)
id result:

uid=2000(shell) gid=2000(shell) groups=2000(shell),1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats),3009(readproc),3011(uhid) context=u:r:shell:s0

I read a lot of posts, Android documentation etc and but I wasn't able to figure out the reason why this is happening. Why it works on 13 and not on 11? Any idea?

The reason why I posted the question here is because I feel that the issue is related to file systems, so not exactly related to Android development. Anyhow, I can move to SO no prob

Then it would be good to generalize the question, so instead of "my app" use "one app". Please name the phone models you have tested.

can you please update question with output of id? actually never tested A11+ but my assumption was adb can access the whole emulated storage /sdcard

answer updated. The only difference is that the output of id on Android 13 has these additional ids 1078(ext_data_rw),1079(ext_obb_rw), 3012(readtracefs)

1078(ext_data_rw),1079(ext_obb_rw) are exactly the permissions missing. please double check the storage permissions for the app com.android.shell


text:
How to find remaining files and folders from already deleted applications?
I see folders .com.taobao.dp and anycast with some files (about 500Kb) but Taobao and AnyCast applications were deleted a long time ago.
So, is there a way/tool to find such files? (for example by application name or package?)


text:
Why are files with wrong character encoding name write-protected?
I'm unable to delete the files with wrong character encoding in names on my phone. I plug it into my Windows PC and try to delete it in File Explorer. It says the files are write-protected:

This guide tells me to
su
restorecon -v -R /data/media

The output is
u0_a82@j1x3g:/ $ su
root@j1x3g:/ # restorecon -v -R /data/media
Function: selinux_compare_spd_ram , priority [2] , priority version is VE=SEPF_SM-J120H_5.1.1_0069
SELinux: Loaded file_contexts from /file_contexts
SELinux: Skipping restorecon_recursive(/data/media)
root@j1x3g:/ #

But the deletion still doesn't work. Nevertheless I can do this via adb.
Do you know why this happens?

From what OS is the first screen shot. Assuming you are trying to delete a file on an Android phone how is the PC connected to the Android phone and how do you try to access/delete he file (MTP protocol?).

Yes. I'm unable to delete it on my phone. I plug it into my Windows PC and try to delete it in Fine Explorer. Probably it is via MTP

What Windows version do you use? The dialog does not look like Windows 10 or 11. Older versions of Windows my contain bugged MTP implementations and thus fail to delete the file, or it is a general bug that affects all Windows MTP implementations. Unicode can be sometimes pretty complicated when it comes to characters that can be written as one or two characters.

It's Windows 11 though


text:
USB tether to router and then connect to the WiFi of the router no longer possible on recent Android versions?
I have somewhat of an unusual problem that wasn't a problem a few months ago, I had an Xperia X with Android 8 on it, and I used it to provide Internet (4G) for my devices using a router. It worked like so:

Connect to the router's USB
Configure router
Enable USB Tethering from the phone
Internet

This is the usual method, of course. The thing is, I have a NAS attached to the router as well, and I used to enable the WiFi on my phone (with USB Tethering on), and sync/connect with the NAS without losing Internet connection.
I upgraded to a Pixel and then a Samsung running Android 11, 12, and now 13, and there seems to be a change in what WiFi is. It's now related to the "Internet" instead of being a networking means that can be used to get files from a local server offline. Now because of this change, whenever I connect to the WiFi network of the router, I lose Internet (on Samsung) or simply the WiFi wouldn't even connect unless I disable the data (Pixel).
Is there a solution to restore the old behavior or at least workaround it?

I got around this by connecting a $50 Amazon USB-C Dock with a 1Gbs Ethernet port connected to an Android phone (Samsung Galaxy S22+ Ultra, 256GB, latest updates), then turning on ethernet tethering works like a charm. I connect it to a DD-WRT ACM3200 Linksys and share 5G with the network via ethernet and WiFi and get 300Mbps down and 50-60Mbps up, from ethernet and WiFi access from devices connected to the router.
I use it in a warehouse in the boonies and has no problem with 4 NetGear Arlo cameras, Samsung SmartThings with 2 Kwikset 914 ZigBee (door locks now on the remote control and a history log of when locks were unlocked), a laptop (with TeamViewer access for remote control), and 4 WiFi energy monitoring outlets to all things but ceiling lights, running 24/7.
I also use AirDroid to remote control the Android phone in case the ethernet tethering disconnects so I can re-enable it, but after the first few days, it has been stable for weeks.


text:
Is Samsung Knox really that great and how can I achieve near-Knox level security on a rooted device?
When I first started learning about installing custom ROMs like LineageOS, it wasn't long before I was made aware of the security implications involved, particularly with unlocking the bootloader. The rooting is not as big an issue in itself once the custom ROM installed from what I know. The ROMs come with things preinstalled and configured the way they should be. Rooting more risky for security on a non-flashed device, but in the case of installing a custom ROM, it's still important to know the implications of leaving the bootloader unlocked.
The device I had at the time was a Galaxy A20 and not officially Lineage supported. Being my first Galaxy device, I noticed this new feature set called Knox. From what I know about Knox it is a hardware-based security scheme. This sounded like something pretty fail-safe to me when I first heard about it, and something that would probably be better left alone.
When I first learned that rooting has the side affect of affecting your device's security, in the particular case of my Galaxy device, Samsung Knox was one of the first things that crossed my mind. I can only assume that rooting the device would nullify most of the benefits of the Knox security platform.
It was at this point I decided that, as much as I may want to de-Google my phone, until I upgrade to an officially supported Lineage device, a custom ROM would probably not be ideal for my case with the A20 running Samsung Knox, due to the security implications involved.
For context, I'm a longtime Tracfone user and have never invested much into my mobile device. The last couple phones I've owned have had enough limitations and missing features to persuade me to upgrade early. I finally decided to step it up and upgrade to a Galaxy S10e. This device is officially supported by LineageOS, but being a Galaxy model, it still has Samsung Knox. I am excited to finally own a custom ROM officially supported device, but again, my primary reason for upgrading was the storage space and feature set. I'm still trying to weigh the benefits between testing Lineage and giving up Knox.
Perhaps a Pixel with Graphene would be a better device to de-Google but I am new to custom ROMs so between what I learned about having an unlocked bootloader and the benefits of running Samsung Knox, I've sort of reached a point of needing more info on Knox. I don't really know the specifics of what I'd be giving up by rooting a Knox device. I am aware of some of the soft features such as secure folder and secure WiFi. That's about it though. Some reviews even indicate it might not be all it's played up to be. But this page from Samsung's website has me pretty sold on its ability to block advanced attack methods by implementing government grade-security. Reminds me of some new PC features like secure boot and core isolation.
I need to ensure my device's data is protected and safe if lost or stolen. Some of what I've read has made me wonder if this is even a use case for Knox. It seems like it according to Samsung though. It then occurred to me, "can I 're-lock' the bootloader, so to speak?" If I were to do this, would it be at all comparable to my formerly Knox-secured device? Is it even possible?
That's when I discovered that Android has something called user-settable root of trust. The problem with locking the bootloader after flashing a custom ROM is the risk of the bricking the device. From what I can tell, this is where user-settable root of trust comes in. On certain Android devices, the user can add the new ROM as a valid signature when the device boots.
So in summary it appears one thing I can be sure of is that if I root a Galaxy device, I will be giving up Samsung Knox because the Knox Warranty Bit will be tripped. But perhaps there is a way to either encrypt the device or implement user-settable root of trust, depending on the device. Would such a device keep its data secure if lost or stolen and how well would this compare to stock ROM running Knox?

To my understanding a triggered Knox Warranty Bit does not mean all security is disabled on Samsung devices. A lot of Knox features deal with MDM features and detecting "illegal states" (like rooted devices) remotely in a way that can not be bypassed easily. These are the features that do no longer work with a triggered Knox Warranty Bit.

First of all, rooting does not make your device insecure by design. It adds one more opportunity in the list of existing attack vectors that can be used to compromise your device with no guarantee of success. This opportunity is more intriguing to compromise because gaining root privileges as an attacker just yields more benefits than compromising the device with any other attack vector. Having knowledge of presence of root on a device is not enough to compromise it though. There is no guarantee of success here either. As much as it is hard for the attacker to gain root access, it is also as hard for you to maintain the operational security of the rooted device which is why it is not recommended to have.
Samsung Knox is a ARM's TrustZone based integrated TEE chip which is a mandatory standard in android 8+ devices. The features TEE offers are provisioned by OEMs in the form of Trusted Apps (TAs) inside TEE. To support android keystore system, TEE is provisioned with the same set of features that are common across android devices. These features are:

Storage encryption, Screen lock authentication & Biometrics
Cryptographic operations
Hardware-backed Play Integrity attestation (previously called SafetyNet)
Google Widevine L1 DRM
NFC payment

Because of project Treble, custom ROMs do not have to modify the vendor partition that contains Hardware Abstraction Layers (HALs) which support the hardware including TEE, so all of the features mentioned above will work fine with custom ROMs with the exclusion of Google Widevine L1 DRM and NFC payment. That is because TEE does not actually protects the OS, it protects itself from the OS and as an extension, its own security gives protection to some of the components of the OS too. As DRM contents and NFC transactions can be tampered with by a compromised OS, their trusted apps are disabled when the bootloader is unlocked or when custom AVB is set.
Samsung provisions custom trusted apps in Knox that are not covered by android specs. They have listed 5 of them in their blog. These are mobile device management and enterprise mobile management features. These will not work in an unlocked bootloader and I don't think they are of any use to you anyway. They are 2 more interesting features offered by Knox for consumer devices explained here:

Samsung Knox adds an enhancement called Trusted Boot, which goes a step further by taking snapshots during the boot process and storing the results in the TrustZone Trusted Execution Environment (TEE). The goal of Trusted Boot is to ensure that older, trusted bootloaders that might have security vulnerabilities in them can’t be used, as part of the Rollback Prevention process. As the system is booting, TrustZone Trustlets check the snapshots. If they determine that an older bootloader was used, certain security-critical operations can be blocked.

I am not sure how it is different from embedding minimum allowed version of the bootloader into eFuse. Google Pixel did it last year.

Real-time Kernel Protection (RKP) & Periodic Kernel Measurement (PKM)
PKM is a passive check: It is software that runs in the TrustZone TEE regardless if anything is trying to touch the Android kernel. PKM periodically checks the kernel to detect if code or data have been modified by malicious software. PKM also checks the integrity of key data structures used by SE for Android to detect attempts to disable those security checks.
RKP is an active security check designed to block tampering with the kernel. With RKP, critical kernel events are intercepted and inspected in the TrustZone TEE. Events that impact the kernel can be blocked or logged to indicate suspected tampering.

This will not be available when you will flash custom ROM. The real cost of flashing custom ROM is explained in this article, Samsung will let you unlock your Z Fold 3’s bootloader, but at the cost of your cameras.

Samsung’s Knox documentation says that, if you root your phone and flash it with an unofficial Android build, anything having to do with its Knox security will be permanently disabled, and will only be restored if you replace the phone’s hardware. This means that, if you root a Samsung phone, features like Samsung Pay and Secure Folder won’t ever work again. To be clear, this doesn’t happen if you just unlock your phone’s bootloader — it only occurs after you make changes to the phone’s OS (though doing so is the main reason to unlock your bootloader, so it’s perhaps a distinction without much difference).

It makes no sense for Samsung to permanently kills hardware features. TEE is designed to be tamper resistant so even with root access, it can't be tampered with. Samsung should restore Knox features after reverting the phone back to its factory state. It is understandable to permanently revoke warranty but the reason of killing other features cannot be explained by infosec and makes it look like a poor engineering design.
Near Knox level security is not possible to achieve with rooted custom ROM as you won't be able to use specific features of Knox. I also don't think that you need to have Knox fully operational in order to be secure. It depends on your threat model. As long as your purpose is achieved with common android security features of TEE and you have custom AVB enabled, a good operational security of your device is enough for you.


text:
Does Android support Wi-Fi Management Frame Protection?
I am trying to find out whether Android supports Wi-Fi Management Frame Protection.
From my understanding, this is standardized in IEEE 802.11w, so if Android supports that, it also supports MFP.
However, I can't find any source on whether Android supports this or not. I found some articles about it but they only mentioned specific phones, and not the entire Android specification. The Android Source Docs don't say anything on this, and the Android Enterprise Security Whitepaper only states that Android supports WPA3, Wi-Fi Enhanced Open, and 802.11i.
Do you know whether Android supports MFP or not?

According to https://en.wikipedia.org/wiki/IEEE_802.11w-2009#Usage it is implemented in "recent Linux kernels" (the sentence seems to be added some years ago so most likely it has been already taken over by Android). So should check if the compile flag(s) that enables this implementation is active in the standard Android kernel.

Following @Robert s suggestion, I dug deeper to find out if Android uses a linux kernel with MFP enabled.
I found this commit to the Android source code, which enabled PMF (= Protected Management Frames = Management Frame Protection) in January 2014:

Android: Enable 802.11w (PMF) support in wpa_supplicant

I also found out on wikipedia that WPA3 (which Android supports) requires MFP:

Protection of management frames as specified in the IEEE 802.11w amendment is also enforced by the WPA3 specifications.

So yes, Android supports Management Frame Protection.


text:
how do you scroll through discord servers on the discord app?
how do you scroll  through discord servers on the discord app?
I figured it out for how to do it on a laptop/desktop.. On that it's a mouse wheel or touchpad or autohotkey shortcut to simulate scrolling.
But how do you do it on android in the discord app?

Swipe thought the servers icons on the left of the screen


text:
Can an app access my browser history from other apps?
I've always thought that if an app has to get access to certain information on your phone, you have to give it permission in the "permissions" settings in phone settings.
However, on Google Play, it says under the "Data safety" tab,in "Data Collected", that TikTok (and other apps, such as the YouTube and Facebook app) can access "Web Browser History". What I find especially strange is that it says that TikTok's access to this is "optional". Where on earth can I, if that's the case, change the setting?
I am rather shocked, as this is a far reaching privacy intrusion, and there's no way to stop it. It isn't listed in app permissions in the phone settings. Access to web history isn't even a permission anymore. That made me believe that it's not possible for another app to get access to web history.
Have I misunerstood something here? How can it say in Google Play that an app can access your browser history, when it is not possible to grant that permission in the phone setting?

The field "Data Collected" is a declaration by the app manufacturer. And in case of TikTok I assume this is related to the fact that if you click a link in Tiktok it uses a built-in web browser instead of the default system web browser. And in this internal web browser has a history and it even injects custom TikTok JavaScript into loaded web pages if I remeber correctly.

Thank you for answering! I would guess so as well, but wouldn't that be under "app activity" and not web browsing history? "Web browsing history" sounds like it's collecting data from the main web browser. I don't believe that's actually the case though.

It isn't the case.

As Robert has mentioned, the "Data safety" is a self-declaration by the developer, and the options are predefined by Play Store, meaning that they cannot modify the items inside each category but can only choose whether they use the data or not.
Also note that the wording is "Web browsing history", not "browser". The intention based on the official documentation is this:

Category
Data type
Description

...
...
...

Web browsing
Web browsing history
Information about the websites you have visited.

...
...
...

It doesn't mean the web browser (app)'s history, but a history of web browsing from their own app. Since this is a self-declaration, developers might have a different interpretation, like even opening TikTok links from their own app counts for analytic purposes (in this case, they declared it for "advertising or marketing" optionally).
Since this is a self-declaration, there may be no relevant Android permissions that are automatically detected by Play Store and the Android system. The relevant settings might even be placed on the app or web instead, like an option to opt out from targeted advertising based on web browsing history (if there is one).

As for whether apps can access browser history, the browser history is commonly stored inside the internal app-specific storage which can only be accessed by the browser app itself. Thus, unless the browser provides a way to access it like using a content provider or exported APIs, there's no way for apps to access the web browser history.


text:
How to import module files in to a program?
Supossing i have a folder update from a update_full.zip that contains:
OTA_update.tag
PTABLE.APP
ptable.img
sec_xloader_header
SOFTWARE_VER.mbn
SOFTWARE_VER_LIST.mbn
UPDATE.APP
UPT_VER.tag
VERSION.mbn

I want to compile an app or execute a serie of command instructions (maybe from a terminal emulator) and take as import modules certain files from update folder, for example to be specific i want to "Replicate" Bluetooth activation (as work in settings) but externally, is it not necessary to act entirely as original but maybe connect to other devices and listening for connections, i am a bit new to android programming and developing apps but once i get some basic knownledge about network locations inside this folder (WI-FI, BLUETOOTH) i think i can compile an apk file or something like running on a Termux session. Any help is appreciated thanks.

OP's previous question which might be related as additional context.

Not clear what you're asking, but you cannot install modified update.zip because these zips are signed with Huawei private key (you don't have)


text:
How could I open a hidden partition on a USB driver from an Android tablet?
There is a USB GPT driver. One partition is hidden. How could I open that partition on an Android tablet?
I know I can unhide that partition on Windows system. But can I open it on Android?
Thank you for your help.

@IrfanLatif Thank you for your information. I'm not going to develop an app. I am just a user. I check the link you give me. It seems like a function.

Link fixed. mount it if it contains a supported filesystem.

@IrfanLatif Thank you very much. I will try it.

On Android, only the primary partition is mounted by VolumeManager. You can access other partitions with 3rd Party app.


text:
Stopping Verizon from installing apps on your phone without consent?
I recently switched cell phone providers from T-Mobile to Verizon. The next day, I noticed a ton of crappy apps, mostly dumb games, were installed on my phone, a Samsung Galaxy S22.
As I already have a lot of problems with bloatware, I uninstalled these apps, and want to ensure that Verizon doesn't install anything else without permission. The idea of a big creepy corporation installing unknown things on my cell phone is unnerving.
My phone's not jailbroken. However, a lot of guides suggest uninstalling the app called "Verizon App Manager", but I didn't even have an app called "Verizon App Manager", just "Verizon Services". Then I uninstalled all the app's updates, and viola, its name reverted to "Verizon App Manager". However, the app can't be uninstalled.
I removed all of its permissions, but as Verizon was able to install this app without permission, I doubt how long that will work.

This is just a broad answer. You can uninstall system apps from adb. search for "pm uninstall" you will find a lot of answers.
However, something to add from my side:
Prepare for data loss. you can easily soft-brick device by disabling the wrong package. There is no way to undo this other than factory reset then. So be careful with that, and always do a backup beforehand.
This free open source tool is a little assistant to perform the adb commands more comfortable
https://github.com/0x192/universal-android-debloater


text:
Take/Submit Bug Report on Android TV
I can't find option in developer settings to take/submit a bug report on android TV. Is this option not available for android TV or maybe hidden somewhere?


text:
How to check if my Android Phone USB C connector has DP Alt Mode capability?
My Android Phone has a USB C adapter, how do I know that it has DP ALT mode capability before I buy a USB C to HDMI extension cable?
This question is similar for that inquires the same for laptops.

As far as I know there is no way to test if USB-C supports DP-alternate or not without trying it. So the only alternative is tell us your phone manufacturer and model name and hope that somebody has already tried it with your phone model or search common Android forums for topics on USB DP-alternate for your model.


text:
Protecting google account password reset from device pin/password compromise?
Today I realized that by just knowing the phone PIN it is possible to reset the Google account password... doesn't matter what 2FA/Backup codes you configured.
For example, you can go under the account's security settings, click to change the password, speicify that you forgot the password. Then you can specify access via Screen unlock, where you can use the PIN to reset the google password.
Question:
Is it possible to remove the "access via screen unlock" from that setting?
Resetting the google account password should, IMHO, always require:

either the password itself
or a backup code

Is it possible to achieve this? If I forgot my password I want to be kept out until I manage to retrieve one of my backup codes.
Is the only """solution""" to ditch PINs and use strong password for screen unlock?
Why would a credential for a physical device be enough to reset the credential of the google account itself? I don't want these to be linked. This sounds like a huge security issue to me. I always assumed that there would NOT be an option to use the screen unlock via PIN/fingerprint to reset the google password.
Maybe I could understand if someone does not have backup codes, but if I have backup codes available, IMHO, they should be the only backup method to reset the password. So is it possible?

I think there's nothing you could do except for adding a 2FA. OR you can create emails on a separate device/incognito and then login on your phone. Because the device on which the accounts are created are considered the owners and it's always possible to reset from it (except if u try want to edit some source codes, took a look at your stackoverflow, it's great :) OR you can reset your device, I think that creates a new login session but google stores the device id so I'm not exactly sure if they let you reset still. Also if someone has your pswd there's many things he could do apart from that

@Aayush adding 2FA does NOT prevent this exploit. When you are asked for 2FA there is an option for "tapping yes on your phone" which an attacker having your phone and knowing your PIN can access. Therefore knowing the PIN means you can bypass any sort of 2FA even if it is set to something that is not that device. Right now the only mitigation seems to use a strong & long password for screen unlock as to reduce the risk of shoulder surfing... except everyone has a camera in their hands, and a short recording of typing a password can be easily achieved no matter the strength of the password

I'm specifically thinking at the scenario (which is happening in real life right now) where people are out drinking in a pub or something, during the evening they will unlock their phones multiple times, sometimes the OS will ask for the PIN/PAssword instead of fingerprint/FaceID, you leave the phone on the table 1 minute while talking/going to the bathroom and someone snatches it... in a matter of 60 seconds you can be 100% logged out of everything and they may access all credentials stored in Google's password manager, which probably means access to bank accounts.


text:
Upgrading Magisk to latest version: Boot image kernel_dtb was patched by old (unsupported) Magisk
I installed a custom ROM (MIUI Splitfire) on my phone with Magisk 23.0v.
Later I saw Magisk update, so I decided to upgrade to the latest version which is 25.0v from the app and got this error:
- Target image: /dev/block/sde45
- Device platform: arm64-v8a
- Installing: 25.2 (25200)
- Unpacking boot image
- Checking ramdisk status
- Magisk patched boot image detected
- Patching ramdisk
! Boot image kernel_dtb was patched by old (unsupported) Magisk
! Please try again with *unpatched* boot image
! Installation failed

Screenshot of the installation log

Your issue is a known one.
Because your boot image was patched with an old Magisk you can't upgrade it. What you can do is completely uninstall the Magisk from the app and clean flash it again.
The Issue


text:
What's the difference between two-layer and one-layer mode on Asus Zenfone home screen?
On my Asus Zenfone 8 running Android 13, there is an option to set my home screen layout to two-layer mode or one-layer mode. (Accessed by long pressing empty space on home screen, then selecting Preferences > Home screen > Layout).

The description says the two-layer mode has an "All Apps button", but I don't have one in either mode. The only difference I could see when switching to one-layer mode was that my icon locations were reset. (The icon locations were restored when switching back)
What is the difference between the two-layer and one-layer modes for the home screen?

One layer is the imitated UI of an iPhone where all's apps are present on the main screens. Of course they can not name it "iPhone style"...

The Asus' FAQ  [ZenFone] Change Home screen layout explains the difference.
In two-layer mode all apps screen aka app drawer screen is accessed by performing swipe up gesture on the home screen. There might be a little upward pointing arrow on your home screen as well.
In one-layer mode "all apps" screen is accessed by swiping leftward on the home screen. In other words "all apps" are shown on one of your home screens.
The source of confusion for you is that term "All apps button". All apps button aka app launcher button is a legacy, a thing of the past. It was replaced by swipe up gesture a couple versions ago in some vanilla release of Android. Asus ought to fix this annoying but harmless bug.

Just for additional context, Samsung still provides the "all apps" button, though I agree I can't see anything similar even on Asus Zenfone's own FAQ.

To amplify a bit on previous answer:
(My previous Android experience was YEARS ago, back on Android 7.x, and now I've been transported from Android 7.x to Android-13:  Wow...my world has REALLY CHANGED!)
Two weeks ago, I bought a new Android-13 based phone (Samsung Galaxy-family). To summarize, I've struggled
getting home-screen(s)? and app-screen(s)? arranged
to my satisfaction, and have had to do 'factory-resets'
a couple of times in the interim, due to what I'm calling 'bugs' (to be honest) and calling 'anomolies' (to be kind).  Today, I learned some history: that my new Android-13 phone comes with a built-in 'skin' known as "One UI" (version 5.1, to be exact).
Let's talk about this (new?) 'two-layered' arrangement of 'icons'.  In two-layered mode, it seems that all pre-installed icons are in alphabetical order. (Notice however that when you install more apps, they just get inserted into the next empty slot at the end, thus breaking any initially alphabetized ordering.)
At any rate, I think that these DRAWERS refer to levels. So, left-right swiping is staying within either the HOME-DRAWER (level) or the APP-DRAWER (level), and each drawer has its own separate series of 'dot-counts' (near bottom of the page) that indicate how many screenfuls of icons there are, and which position-relative horizontal screenful of icons that you're currently looking at.
So 'app-drawer' screens can be identified by fact there is only a 'search' field at the very top, and the
'dot-counts' at the very bottom...remainder of page is a full matrix of icons.
Whereas, 'home-drawer' screens can be identified by
the fact that, at top of the page appears the "time/temperate/city-name" line of info, and near bottom are the 'dot-counts' and at very bottom are a single row of your favorite/most-frequently-used icons.
But now I've got to add what I REALLY think:  This is a PISS-POOR initial design/layout they begin with!!! What they SHOULD HAVE DONE is to have the built-in wallpaper
for the HOME-DRAWER (aka the 1st-floor) be 'light-yellow' [day-light metaphor] and DIFFERENT colored-wallpaper for the APP-DRAWER (aka the basement) be a'dark-ish' gray [night-light metaphor].
(Damn...wish I could figure out some way to ACHIEVE that background coloring, but so far, that doesn't seem possible !!!)
The 'show-stopper' in this whole mess is that their decision to even allow a SINGLE-LEVEL layout concept
is a FLAWED idea!
Because, notice that there's even an additional setting to have 'hidden' sub-group of app-level icons.  As it
turns out, even if you knowingly never explicitly turn on 'hiding', their algorithm being used when you choose to switch from two-level mode to one-level mode, they
will just DISAPPEAR some icons on you, leaving you totally in 'MUMBLE-MODE', and deciding to return your
'broken' phone rather than resorting to 'factory-reset'!
Don't fall for it...STAY in two-level mode, as though
your life depended on it!!!
My 2-cents worth.  Hope this helps.

Note that you are free to download and use a 3rd-party launcher app to your liking though.

A suggested fix for this issue: Re-engineering to be able to have/require DIFFERENT colored backgrounds wouldn't be trivial.  But, at a minimum, if they would just add some background, faded-out text under-layed on each page, saying 'home-page' or 'app-page'. as appropiate, that would go a good way towards helping users understanding the whole 'level-concept', and able to quickly recognise an 'app-level' page from a 'home-page'.  Thanks for listening.

One last comment.. After struggling with my initial setup on Android-13.  The initial home-screen has a slithering, multi-colored,wallpaper.  Pretty.  But once I re-arranged icons, and installed a few apps, I found that I couldn't read the app-names on many icons, simply because in different areas of an app-screens or home-screens, the different colors within an image/picture' type of wallpaper were just too visually confusing.  So, instead of 'featured' wallpaper choices, scroll down 4 levels, to solid-colors, and start there.  I'm betting you'll be happiest with one of those.


text:
How can I disable permission monitoring on Android 13?
I recently upgraded from a Samsung Galaxy S9+ to the S23 Ultra and noticed that it almost daily pushes notifications like this:

Settings:
Android System Intelligence got your location in the
background.  This app can always access your location. Tap to change.

When I long-press to change the notification settings, it looks like the notification is coming from "Permission controller" - and the "allow notifications" option is disabled (and on), with no options to disable notifications for subcategories either.
I granted these permissions and really dont want to see this daily, it is a bit obnoxious in my opinion.
I read this article from 2018 saying this could be disabled, however, on this phone I do not have this option. There is no "Lock screen and security" option - these were split into two different menu screens now. The Lock Screen menu screen has no such options. The Security and Privacy menu has a "Permission manager" option under the "Privacy" option, but there are no options anywhere to disable it.
I would like to disable this without rooting the phone. Any help is appreciated.

Hi. If immediate automatic dismissal of that notification is acceptable as a solution,  see if my answer here works for you. You would have to use "Permission controller" as the target app in that answer.

Just following up, thanks for suggesting this - it worked pretty well and also is a pretty good app, thanks again!

No problem @MarkL. :)

I have Android 13 on Note 20.  I don't get those notifications.
It seems to me that you can either disable the Permission Manager or notifications from it, or you could change the permissions of Android System Intelligence
For that

Go to Settings
Select Apps
Press on 3 vertical dots on top right
Select Permission Manager
Select Location
Select Android System Intelligence
Remove the Location Permission from it.

The Permission Manager does not have the option to be disabled or to disable notifications, which I explained in my question. And I am not looking to change any of my permissions for apps, my question is about suppressing the notification of what permissions I am using, since I already know what permissions I have granted and don't need reminders.


text:
How do I Re-enable INTERNET premission?
I have an app where I disabled internet permission. Now I couldn't enable it again, while previous times I could. This may be the result of updating the app. I have root. How do I re-enable internet in this app again?
'Permission Pilot'(the app) doesn't seem to help.

How did you disable internet access for this app? Some vendors (I know of Xiaomi and OnePlus) offer "disabling internet access" per app as an option in Settings app of the device. Did you use that? If not, did you use a VPN/Iptables-based firewall app? We need details of the process. Also, which app is it? Provide us a play store link.

The app is Threema libre, I disabled it in the Settings app, under 'data' use. Now this app is no longer visible there.

Could you provide a link from where you downloaded this app?

I followed the instructions from here: https://threema.ch/en/faq/libre_installation . I don't think that that will help you, tough

If it has no data usage anymore, it cannot show up there, right. Have you tried Settings › apps (might nedd to togle it to show "all apps"), scroll to the app, open its entry, and check its "permissions" from there? Next to "permissions" there's also an entry for "mobile data and WiFi" which looks the same as where you disabled access. In the menu where you disabled it, you can also select a different time frame at the top (choose one before you disabled access for Threema) so it should show up again (indeed I see "Allow network access" there next to WiFi and "mobile data").

selecting a different time frame is not something I could do now


text:
How to set contacts to show different names based on through which SIM (SIM1 or SIM2) the call is received?
I want my Android phone to show a name (for example, Daniel) when a call is received through SIM-1 and a different name (for example, Jon) for the same mobile number when a call is received through SIM-2.
How can I achieve this?

Is the number of Daniel and Jon exactly the same or do they have different country codes (e.g. +1 and +49)?

Hy bro. It's actually the same number and the same person. But I want my phone to show two different names based on through which SIM the call is received.

You can set different ringtones per SIM so when he calls you know the SIM by ringtone.

Hy bro. Thanks. But I want phone to show different contact names when receiving the call through SIM 1 and SIM 2

That's not possible.


text:
Why does my battery still show that its damaged after replacing it
I have a Samsung Galaxy s10 that I recently had to replace the non-removable battery. The original was needing to be charged every 2 hours! I went on Samsung Members app and did a diagnostic test which confirmed that I did indeed need a new battery. The exact results were "Battery Status: ACTION REQUIRED battery life weak. Replace because battery is old or in bad condition." So I had someone replace the battery. It's working alot better however when I did the diagnostic test again I got the same results! Also Google sent me a notification to "finish setting up my new device" and gave me the restore your contacts option etc like when you get a brand new phone and need to connect your Google acct for the first time. Is this normal after replacing battery?

You could try to wipe data and cache of the Samsung members app and if this doesn't help factory reset the phone.


text:
Switching Dictation Input Language
What options do I have to switch the input language for dictation? Is it only tied to the keyboard?
Is it possible to switch to German dictation but still keep the English keyboard?

I discovered that it's possible to set a QUERTY keyboard for German. Not an ideal solution but better than having to switch back to English all the time.