text:
Put like on YT Music song without wakening my phone with Tasker
I want to make a Tasker script to like the current song in YT MUSIC by holding down volume button for example. The perfect solution is that I can put likes without flashing the screen and silently, so as not to disturb at night.
I'm thinking to use the example of Google Assistant, it can give likes to the current track on command. I read the logs and found an event that looks like the right command:
A: Media Operation Type: media.SET_RATING sent to package: com.google.android.apps.youtube.music

Next I tried to send Intent of this kind, but nothing worked:
Send Intent [
Action:android.media.action.SET_RATING
Cat:Default
Mime Type:
Data:
Extra:
Package:com.google.android.apps.youtube.music
Class:
Target:Activity
]

Continued researching and came across a feature on the developer site:
onSetRating(android.support.v4.media.RatingCompat)

But I don't know how to use the native functions through Tasker. It may be shell command, Java function or something? Can anyone help?


text:
Delete all files or reset phone automatically if I don't use my phone for several days
I want to set a time limit so that if I don't use my phone within that time limit, then it will delete/reset my phone data (everything).
Moreover, if I use/unlock the phone within that time, then the counter will start from the beginning.
Is it possible to do this?

Not sure, but check with Tasker ?

Factory reset would need root access, or a device admin app with delete user data feature.

source: Stack Exchange

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

sort: votes


text:
A seemingly random selection of apps keep crashing
Starting from today, some apps on my phone just kept crashing.
At first it was mostly Google-related apps, and since I've had issues with Google Play services crashing before, I took the usual route of deleting app data and uninstalling updates. However, the issues persisted, and spread to other apps. Google kept crashing, the stock e-mail app kept crashing,my third party SMS app kept crashing...
Some apps crash when I open them, some don't. For some the problem is solved by uninstalling and reinstalling them, for some it isn't. Google-based apps like YouTube and Play Store work fine, but others like Chrome don't.
I can't seem to find a single "triggering" event that could have started this, apart from maybe some background update.
I am running Android 8.1.0 on a Samsung Galaxy J7(2016).
Is there any way to solve this ?
EDIT : I found the common factor between all those apps : they all store data on my SD card, which is still accessible but awfully slow. I'm guessing this is the root of the issue. However, I didn't specifically chose for those apps to be stored on the SD card, it seems Android automatically offloaded data there, and I don't know how to reverse it.

Turns out uninstalling and reinstalling Google Chrome, specifically, solved everything. As in, it stopped other apps from crashing as well. No idea why.
I initially tried transferring everything from my old SD card to a new one, but it didn't solve the problem. This did. Go figure.

Chrome can be set as the WebView implementation on at least some versions of Android, under System -> Developer Options. May be why this fixed it.

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


text:
Password-Protected Notes Encryption
I have one question about the encryption algorithm used for password-protected notes.
I am an Android smartphone user and for taking notes, I use my phone's native Samsung's note taking App.
But, I don't know what encryption algorithm it is used with Samsung's note taking App (password-protected notes).
Does anyone know what is the encryption algorithm?
Please let me know.
Thank You

In the decompiled source code there I can see AES/CBC/PKCS7Padding but Note supports multiple storage versions and I am not sure if this cipher belongs to the latest version. The used key seems to be generated using the user password and a native method in library SNBConverter.

Thank you for your explanation, I do appreciate it.


text:
Unable to transfer files from Mi A1 to PC and wifi is also not working
I have a Mi A1 device which I didn't use for months and today I charged it to root for some work. I am sure Wifi was working earlier, but not sure about USB file transfer. (I didn't check wifi this time, just charged and started the rooting process)
I was able to unlock the bootloader and root the device and while I was in TWRP, I was able to transfer files from my PC to the android device. After rooting this device, I am seeing this

When I tried turning the wifi on, it automatically disables the wifi. I click the enable button and it automatically disables.

I wanted to connect the device using ADB, but when I connect the USB cable to the PC, its not showing up in ADB. Its not even showing in windows explorer where you can transfer files.

I am not sure how to solve this issue.
Mi A1 device running Android 9

if formatting userdata did not solve your problem, you probably messed up some wifi related partition. go back to square one and start from working firmware


text:
Storing NFC credit card near NFC phone
I have a quick question about NFC on Android devices. Assume that I have a device set-up for Google Pay, i.e. I added a credit card. I also have said credit card in my wallet and it is capable of NFC transactions (i.e. I can pay with the creadit card in the same way as I can pay with my phone).
The battary drain of NFC on phones is negligible these days, mostly due to the low power consumption when in "passive" mode. But whenever you do a payment, the chip switches to "active" mode to actually process the payment.
If I put my phone with NFC enabled onto my wallet (containing the NFC-capable credit card), will the phone be constantly in active mode and thus consume more power?

AFAIK NFC is disabled when the screen is switched off/locked (and it needs root-powered "hacks" to work around that): So as long as your device is locked, there should be no danger of "accidental activation". You could verify that with your next real payment: try okaying it with the device locked / screen off and see what happens. If "nothing", switch screen on (still locked) and try again. According to the above, it should still not work – and only kick in when you unlock the device.


text:
What is the new mmcblk0?

The device is OnePlus 8 Pro, it is completely functional, booted for root ADB from LineageOS Recovery via fastboot -s XXXXXXXX boot lineage-recovery.img.
$ adb --version
Android Debug Bridge version 1.0.41
Version 31.0.2-7242960
Installed as /opt/android-sdk/platform-tools/adb

Trying to follow some 4-6 years old online guides & QnAs (mostly written by Irfan Latif) on how to backup stock ROM & partitions using adb pull or adb exec-out.
All of these materials always reference an mmcblk0 partition. But in my case it is missing.
What I have instead are these:
$ adb -s XXXXXXXX shell 'ls -al /dev/block' | grep -e '^[^d]'
total 0
lrwxrwxrwx  1 root root       37 1970-04-15 15:06 bootdevice -> /dev/block/platform/soc/XXXXXXX.ufshc
brw-------  1 root root   7,   0 1970-04-15 15:06 loop0
brw-------  1 root root   7,   8 1970-04-15 15:06 loop1
brw-------  1 root root   7,  80 1970-04-15 15:06 loop10
brw-------  1 root root   7,  88 1970-04-15 15:06 loop11
brw-------  1 root root   7,  96 1970-04-15 15:06 loop12
brw-------  1 root root   7, 104 1970-04-15 15:06 loop13
brw-------  1 root root   7, 112 1970-04-15 15:06 loop14
brw-------  1 root root   7, 120 1970-04-15 15:06 loop15
brw-------  1 root root   7,  16 1970-04-15 15:06 loop2
brw-------  1 root root   7,  24 1970-04-15 15:06 loop3
brw-------  1 root root   7,  32 1970-04-15 15:06 loop4
brw-------  1 root root   7,  40 1970-04-15 15:06 loop5
brw-------  1 root root   7,  48 1970-04-15 15:06 loop6
brw-------  1 root root   7,  56 1970-04-15 15:06 loop7
brw-------  1 root root   7,  64 1970-04-15 15:06 loop8
brw-------  1 root root   7,  72 1970-04-15 15:06 loop9
brw-------  1 root root   1,   0 1970-04-15 15:06 ram0
brw-------  1 root root   1,   1 1970-04-15 15:06 ram1
brw-------  1 root root   1,  10 1970-04-15 15:06 ram10
brw-------  1 root root   1,  11 1970-04-15 15:06 ram11
brw-------  1 root root   1,  12 1970-04-15 15:06 ram12
brw-------  1 root root   1,  13 1970-04-15 15:06 ram13
brw-------  1 root root   1,  14 1970-04-15 15:06 ram14
brw-------  1 root root   1,  15 1970-04-15 15:06 ram15
brw-------  1 root root   1,   2 1970-04-15 15:06 ram2
brw-------  1 root root   1,   3 1970-04-15 15:06 ram3
brw-------  1 root root   1,   4 1970-04-15 15:06 ram4
brw-------  1 root root   1,   5 1970-04-15 15:06 ram5
brw-------  1 root root   1,   6 1970-04-15 15:06 ram6
brw-------  1 root root   1,   7 1970-04-15 15:06 ram7
brw-------  1 root root   1,   8 1970-04-15 15:06 ram8
brw-------  1 root root   1,   9 1970-04-15 15:06 ram9
brw-------  1 root root   8,   0 1970-04-15 15:06 sda
brw-------  1 root root   8,   1 1970-04-15 15:06 sda1
brw-------  1 root root   8,  10 1970-04-15 15:06 sda10
brw-------  1 root root   8,  11 1970-04-15 15:06 sda11
brw-------  1 root root   8,  12 1970-04-15 15:06 sda12
brw-------  1 root root   8,  13 1970-04-15 15:06 sda13
brw-------  1 root root   8,  14 1970-04-15 15:06 sda14
brw-------  1 root root   8,  15 1970-04-15 15:06 sda15
brw-------  1 root root 259,   0 1970-04-15 15:06 sda16
brw-------  1 root root 259,   1 1970-04-15 15:06 sda17
brw-------  1 root root 259,   2 1970-04-15 15:06 sda18
brw-------  1 root root 259,   3 1970-04-15 15:06 sda19
brw-------  1 root root   8,   2 1970-04-15 15:06 sda2
brw-------  1 root root 259,   4 1970-04-15 15:06 sda20
brw-------  1 root root 259,   5 1970-04-15 15:06 sda21
brw-------  1 root root 259,   6 1970-04-15 15:06 sda22
brw-------  1 root root 259,   7 1970-04-15 15:06 sda23
brw-------  1 root root   8,   3 1970-04-15 15:09 sda3
brw-------  1 root root   8,   4 1970-04-15 15:06 sda4
brw-------  1 root root   8,   5 1970-04-15 15:06 sda5
brw-------  1 root root   8,   6 1970-04-15 15:06 sda6
brw-------  1 root root   8,   7 1970-04-15 15:06 sda7
brw-------  1 root root   8,   8 1970-04-15 15:06 sda8
brw-------  1 root root   8,   9 1970-04-15 15:06 sda9
brw-------  1 root root   8,  16 1970-04-15 15:06 sdb
brw-------  1 root root   8,  17 1970-04-15 15:06 sdb1
brw-------  1 root root   8,  18 1970-04-15 15:06 sdb2
brw-------  1 root root   8,  32 1970-04-15 15:06 sdc
brw-------  1 root root   8,  33 1970-04-15 15:06 sdc1
brw-------  1 root root   8,  34 1970-04-15 15:06 sdc2
brw-------  1 root root   8,  48 1970-04-15 15:06 sdd
brw-------  1 root root   8,  49 1970-04-15 15:06 sdd1
brw-------  1 root root   8,  50 1970-04-15 15:06 sdd2
brw-------  1 root root   8,  51 1970-04-15 15:06 sdd3
brw-------  1 root root   8,  52 1970-04-15 15:06 sdd4
brw-------  1 root root   8,  64 1970-04-15 15:06 sde
brw-------  1 root root   8,  65 1970-04-15 15:06 sde1
brw-------  1 root root   8,  74 1970-04-15 15:06 sde10
brw-------  1 root root   8,  75 1970-04-15 15:06 sde11
brw-------  1 root root   8,  76 1970-04-15 15:06 sde12
brw-------  1 root root   8,  77 1970-04-15 15:06 sde13
brw-------  1 root root   8,  78 1970-04-15 15:06 sde14
brw-------  1 root root   8,  79 1970-04-15 15:06 sde15
brw-------  1 root root 259,   8 1970-04-15 15:06 sde16
brw-------  1 root root 259,   9 1970-04-15 15:06 sde17
brw-------  1 root root 259,  10 1970-04-15 15:06 sde18
brw-------  1 root root 259,  11 1970-04-15 15:06 sde19
brw-------  1 root root   8,  66 1970-04-15 15:06 sde2
brw-------  1 root root 259,  12 1970-04-15 15:06 sde20
brw-------  1 root root 259,  13 1970-04-15 15:06 sde21
brw-------  1 root root 259,  14 1970-04-15 15:06 sde22
brw-------  1 root root 259,  15 1970-04-15 15:06 sde23
brw-------  1 root root 259,  16 1970-04-15 15:06 sde24
brw-------  1 root root 259,  17 1970-04-15 15:06 sde25
brw-------  1 root root 259,  18 1970-04-15 15:06 sde26
brw-------  1 root root 259,  19 1970-04-15 15:06 sde27
brw-------  1 root root 259,  20 1970-04-15 15:06 sde28
brw-------  1 root root 259,  21 1970-04-15 15:06 sde29
brw-------  1 root root   8,  67 1970-04-15 15:06 sde3
brw-------  1 root root 259,  22 1970-04-15 15:06 sde30
brw-------  1 root root 259,  23 1970-04-15 15:06 sde31
brw-------  1 root root 259,  24 1970-04-15 15:06 sde32
brw-------  1 root root 259,  25 1970-04-15 15:06 sde33
brw-------  1 root root 259,  26 1970-04-15 15:06 sde34
brw-------  1 root root 259,  27 1970-04-15 15:06 sde35
brw-------  1 root root 259,  28 1970-04-15 15:06 sde36
brw-------  1 root root 259,  29 1970-04-15 15:06 sde37
brw-------  1 root root 259,  30 1970-04-15 15:06 sde38
brw-------  1 root root 259,  31 1970-04-15 15:06 sde39
brw-------  1 root root   8,  68 1970-04-15 15:06 sde4
brw-------  1 root root 259,  32 1970-04-15 15:06 sde40
brw-------  1 root root 259,  33 1970-04-15 15:06 sde41
brw-------  1 root root 259,  34 1970-04-15 15:06 sde42
brw-------  1 root root 259,  35 1970-04-15 15:06 sde43
brw-------  1 root root 259,  36 1970-04-15 15:06 sde44
brw-------  1 root root 259,  37 1970-04-15 15:06 sde45
brw-------  1 root root 259,  38 1970-04-15 15:06 sde46
brw-------  1 root root 259,  39 1970-04-15 15:06 sde47
brw-------  1 root root 259,  40 1970-04-15 15:06 sde48
brw-------  1 root root 259,  41 1970-04-15 15:06 sde49
brw-------  1 root root   8,  69 1970-04-15 15:06 sde5
brw-------  1 root root 259,  42 1970-04-15 15:06 sde50
brw-------  1 root root 259,  43 1970-04-15 15:06 sde51
brw-------  1 root root 259,  44 1970-04-15 15:06 sde52
brw-------  1 root root 259,  45 1970-04-15 15:06 sde53
brw-------  1 root root 259,  46 1970-04-15 15:06 sde54
brw-------  1 root root 259,  47 1970-04-15 15:06 sde55
brw-------  1 root root 259,  48 1970-04-15 15:06 sde56
brw-------  1 root root 259,  49 1970-04-15 15:06 sde57
brw-------  1 root root 259,  50 1970-04-15 15:06 sde58
brw-------  1 root root 259,  51 1970-04-15 15:06 sde59
brw-------  1 root root   8,  70 1970-04-15 15:06 sde6
brw-------  1 root root 259,  52 1970-04-15 15:06 sde60
brw-------  1 root root 259,  53 1970-04-15 15:06 sde61
brw-------  1 root root 259,  54 1970-04-15 15:06 sde62
brw-------  1 root root 259,  55 1970-04-15 15:06 sde63
brw-------  1 root root 259,  56 1970-04-15 15:06 sde64
brw-------  1 root root 259,  57 1970-04-15 15:06 sde65
brw-------  1 root root 259,  58 1970-04-15 15:06 sde66
brw-------  1 root root 259,  59 1970-04-15 15:06 sde67
brw-------  1 root root 259,  60 1970-04-15 15:06 sde68
brw-------  1 root root 259,  61 1970-04-15 15:06 sde69
brw-------  1 root root   8,  71 1970-04-15 15:06 sde7
brw-------  1 root root 259,  62 1970-04-15 15:06 sde70
brw-------  1 root root 259,  63 1970-04-15 15:06 sde71
brw-------  1 root root 259,  64 1970-04-15 15:06 sde72
brw-------  1 root root 259,  65 1970-04-15 15:06 sde73
brw-------  1 root root 259,  66 1970-04-15 15:06 sde74
brw-------  1 root root 259,  67 1970-04-15 15:06 sde75
brw-------  1 root root 259,  68 1970-04-15 15:06 sde76
brw-------  1 root root   8,  72 1970-04-15 15:06 sde8
brw-------  1 root root   8,  73 1970-04-15 15:06 sde9
brw-------  1 root root   8,  80 1970-04-15 15:06 sdf
brw-------  1 root root   8,  81 1970-04-15 15:06 sdf1
brw-------  1 root root   8,  82 1970-04-15 15:06 sdf2
brw-------  1 root root   8,  83 1970-04-15 15:06 sdf3
brw-------  1 root root   8,  84 1970-04-15 15:06 sdf4
brw-------  1 root root   8,  85 1970-04-15 15:06 sdf5
brw-------  1 root root   8,  86 1970-04-15 15:06 sdf6
brw-------  1 root root   8,  87 1970-04-15 15:06 sdf7
brw-------  1 root root   8,  88 1970-04-15 15:06 sdf8
brw-------  1 root root   8,  89 1970-04-15 15:06 sdf9
brw-------  1 root root 254,   0 1970-04-15 15:06 zram0

by-name:
$ adb -s XXXXXXXX shell 'ls -alpsh /dev/block/by-name'
total 0
0 drwxr-xr-x 2 root root 2.4K 1970-04-15 15:06 ./
0 drwxr-xr-x 5 root root 3.1K 1970-04-15 15:06 ../
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 ALIGN_TO_128K_1 -> /dev/block/sdd1
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 ALIGN_TO_128K_2 -> /dev/block/sdf1
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 abl_a -> /dev/block/sde8
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 abl_b -> /dev/block/sde32
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 abl_log -> /dev/block/sde67
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 aging_kernel -> /dev/block/sde64
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 aging_mod -> /dev/block/sde65
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 android_log -> /dev/block/sde69
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 aop_a -> /dev/block/sde1
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 aop_b -> /dev/block/sde25
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 apdp -> /dev/block/sde51
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 bluetooth_a -> /dev/block/sde5
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 bluetooth_b -> /dev/block/sde29
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 boot_a -> /dev/block/sde11
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 boot_b -> /dev/block/sde35
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 cdt -> /dev/block/sdd2
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 cmnlib64_a -> /dev/block/sde13
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 cmnlib64_b -> /dev/block/sde37
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 cmnlib_a -> /dev/block/sde12
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 cmnlib_b -> /dev/block/sde36
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 config -> /dev/block/sda11
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 ddr -> /dev/block/sdd3
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 devcfg_a -> /dev/block/sde14
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 devcfg_b -> /dev/block/sde38
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 devinfo -> /dev/block/sde49
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 dip -> /dev/block/sde50
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 dsp_a -> /dev/block/sde9
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 dsp_b -> /dev/block/sde33
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 dtbo_a -> /dev/block/sde17
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 dtbo_b -> /dev/block/sde41
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 featenabler_a -> /dev/block/sde22
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 featenabler_b -> /dev/block/sde46
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 frp -> /dev/block/sda5
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 fsc -> /dev/block/sdf5
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 fsg -> /dev/block/sdf4
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 hyp_a -> /dev/block/sde3
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 hyp_b -> /dev/block/sde27
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 hyp_log -> /dev/block/sde71
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 imagefv_a -> /dev/block/sde23
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 imagefv_b -> /dev/block/sde47
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 kernel_log -> /dev/block/sde68
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 keymaster_a -> /dev/block/sde10
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 keymaster_b -> /dev/block/sde34
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 keystore -> /dev/block/sda4
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 limits -> /dev/block/sde54
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 limits-cdsp -> /dev/block/sde55
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 logdump -> /dev/block/sde57
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 logfs -> /dev/block/sde56
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 logo_a -> /dev/block/sde24
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 logo_b -> /dev/block/sde48
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdm1m9kefs1 -> /dev/block/sdf7
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdm1m9kefs2 -> /dev/block/sdf8
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdm1m9kefs3 -> /dev/block/sdf6
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdm1m9kefsc -> /dev/block/sdf9
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 mdm1oemnvbktmp -> /dev/block/sde63
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdm_oem_dycnvbk -> /dev/block/sda7
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdm_oem_stanvbk -> /dev/block/sda8
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdmddr -> /dev/block/sdd4
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdtp_a -> /dev/block/sde7
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 mdtp_b -> /dev/block/sde31
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 mdtpsecapp_a -> /dev/block/sde6
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 mdtpsecapp_b -> /dev/block/sde30
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 metadata -> /dev/block/sda19
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 misc -> /dev/block/sda3
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 modem_a -> /dev/block/sde4
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 modem_b -> /dev/block/sde28
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 modemdump -> /dev/block/sda9
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 modemst1 -> /dev/block/sdf2
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 modemst2 -> /dev/block/sdf3
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 msadp -> /dev/block/sde52
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 multiimgoem_a -> /dev/block/sde19
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 multiimgoem_b -> /dev/block/sde43
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 multiimgqti_a -> /dev/block/sde20
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 multiimgqti_b -> /dev/block/sde44
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 op1 -> /dev/block/sde66
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 op2 -> /dev/block/sda10
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 opproduct_a -> /dev/block/sda12
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 opproduct_b -> /dev/block/sda13
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 param -> /dev/block/sda6
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 persist -> /dev/block/sda2
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 qsee_log -> /dev/block/sde70
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 qupfw_a -> /dev/block/sde15
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 qupfw_b -> /dev/block/sde39
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 rawdump -> /dev/block/sda22
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 recovery_a -> /dev/block/sda15
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 recovery_b -> /dev/block/sda16
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 reserve1 -> /dev/block/sde72
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 reserve2 -> /dev/block/sde73
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 reserve3 -> /dev/block/sde74
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 reserve4 -> /dev/block/sde75
0 lrwxrwxrwx 1 root root   14 1970-04-15 15:06 sda -> /dev/block/sda
0 lrwxrwxrwx 1 root root   14 1970-04-15 15:06 sdb -> /dev/block/sdb
0 lrwxrwxrwx 1 root root   14 1970-04-15 15:06 sdc -> /dev/block/sdc
0 lrwxrwxrwx 1 root root   14 1970-04-15 15:06 sdd -> /dev/block/sdd
0 lrwxrwxrwx 1 root root   14 1970-04-15 15:06 sde -> /dev/block/sde
0 lrwxrwxrwx 1 root root   14 1970-04-15 15:06 sdf -> /dev/block/sdf
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 secdata -> /dev/block/sde60
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 spunvm -> /dev/block/sde53
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 ssd -> /dev/block/sda1
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 storsec_a -> /dev/block/sde58
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 storsec_b -> /dev/block/sde76
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 super -> /dev/block/sda14
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 tz_a -> /dev/block/sde2
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 tz_b -> /dev/block/sde26
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 uefisecapp_a -> /dev/block/sde18
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 uefisecapp_b -> /dev/block/sde42
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 uefivarstore -> /dev/block/sde59
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 userdata -> /dev/block/sda23
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vbmeta_a -> /dev/block/sde16
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vbmeta_b -> /dev/block/sde40
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vbmeta_system_a -> /dev/block/sda17
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vbmeta_system_b -> /dev/block/sda18
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vm-data -> /dev/block/sde62
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vm-keystore -> /dev/block/sde61
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vm-linux_a -> /dev/block/sde21
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vm-linux_b -> /dev/block/sde45
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vm-system_a -> /dev/block/sda20
0 lrwxrwxrwx 1 root root   16 1970-04-15 15:06 vm-system_b -> /dev/block/sda21
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 xbl_a -> /dev/block/sdb1
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 xbl_b -> /dev/block/sdc1
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 xbl_config_a -> /dev/block/sdb2
0 lrwxrwxrwx 1 root root   15 1970-04-15 15:06 xbl_config_b -> /dev/block/sdc2

The command below produces an empty 71 byte archive.
$ adb -s XXXXXXXX exec-out 'cat /dev/block/mmcblk0 | gzip' > backup/partitions/mmcblk0.tar.gz
$ ls -shlap backup/partitions/mmcblk0.tar.gz
4.0K -rw-rw-r-- 1 tanhok tanhok 71 Aug  5 18:26 backup/partitions/mmcblk0.tar.gz

Which one of those is "the new mmcblk0"? Which one should I pull to have a full backup of my device stock firmware as an .img file?

sda - sdf or /dev/block/bootdevice/by-name

In Android / Linux kernel drivers mmcblk is the naming convention for eMMC flash storage block devices. sd[X] is the convention for the new UFS chips, like HDDs and SSDs. mmcblk0 is not a partition, but the whole flash storage block device.

@IrfanLatif and how could it be referenced then? Where is it mounted at?

Partitions aren't mounted. Filesystems are.

@IrfanLatif how do I pull it from my phone then?

What's "it"? To have a complete dump of your flash, pull all of the sd[a|b|c|d|e|f] block devices. But if you don't know why to or how to or what to backup, the backup won't be of any use to you, in most cases.

your user data is userdata (encrypted), ROM is boot_a + super, firmware is all other partitions

@alecxs thank you very much. Will test this and mark your message as answer. Can you also link the docs if you have any?

very good explanation of android partitions on xda-developers
https://android.stackexchange.com/questions/215683/trying-to-understand-the-options-in-twrp-backup#comment276228_215683


text:
Does uninstalling system apps using ADB commands increase internal storage?
I just wanted to know if uninstalling  system apps  or bloatware using adb commands frees up storage space. I know that uninstalling  system apps using adb doesn't actually removes the app from your device, just disable it and hides  it  from user 0.
But will this disabling reduce the space the app consumes.
I tried disabled Facebook from app settings and the size reduced significantly.

Will adb uninstall  do the same ?

Yes and no - that depends if the app has created user data at run-time and if it has installed an update e.g. via Google Play Store (system updates are irrelevant here).
No Update via Play Store installed
System apps are installed on the system partition, and the system partition is of fixed size. So they don't require any space on the user data partition.
If you uninstall a system app (or better disable a system app as uninstalling would require root permissions) no space is freed. But this only applies to system apps that have not received an update via e.g. via Google Play Store.
If the app has been run and has created user data this user data is deleted when you disable/uninstall the app. So depending how much space you can regain by disabling such an app depends on how many user data it had created.
Update via Play Store installed
But system apps are not static, they also get updates via Google Play Store or via a manufacture specific store (e.g. Galaxy Store for Samsung). As system apps reside on the system partition and this partition is read-only the update has to be installed on the user data partition. So effectively you have the app installed twice, one time the old version on the system partition and a second time the recent version on the user data partition.
If you now disable or uninstall the system app the recent version installed on your user data partition is deleted. Deleting something from the user data partition frees up space and thus your internal storage increase.
In your case it is the Facebook app this means:
Disabling it has deleted the installed updates and the user data of Facebook app. As the Facebook app is pretty large you have gained some megabyte back by disabling it.

@alecxs At that stage of my answer I had a system app in mind that is not started and that also does not automatically start and thus does not create user data.


text:
How to Switch Camera in Google Hangouts on Android 11?
Google Hangouts shows an icon to switch between front and back cameras (or move it from the front to the back) but is there a way to choose between cameras on a phone with a multi-camera setup?

As far as I know Hangouts is EOL at September 30, 2021 https://www.xda-developers.com/google-hangouts-replace-free-google-chat-2021/

That's strange. Phones released last month come with Hangouts! Another even more frustrating tidbit is that may older phones have plenty of Google apps that were discontinued and can't be removed on a non-rooted phone! This means people will be trapped for years for software that has potential software vulnerabilities and keeping their storage used too boot. Some can be 'disabled' which presumably prevents some software vulnerability but this shows the ridicule of preventing regular users from removing certain apps.


text:
How can I factory reset my device to bypass a new MDM solution?
I bought a Samsung Galaxy XCover Pro second-hand, approximately two months ago. It has worked fine and I have factory reset it previously which has also worked fine.
However, on factory resetting it and setting it up today, it told me suddenly that "This phone is controlled by [Company Name which I don't recognise] and needs to be enrolled using Knox Mobile Enrollment".
It has worked following factory resets fine before, which makes me wonder why this message has appeared on this particular occasion. Why might this be, and how can I seek to bypass it?

You have bought most likely a stolen device, therefore the correct way is to return the device and get your money back.

@Robert That was my first thought, but it seems to have worked fine for months, which I wouldn't have expected if that was the case.

That it worked fine just means that the thief managed to disable the MDM software somehow before selling it. Performing a factory reset also reset this "MDM bypass" and now you see the device as it is. The conclusion for people buying used Samsung devices is always to perform a factory reset first.

@Robert Per my question, I've factory reset it numerous times previously, so that would appear not to be the case.

How long do you own the device? May be the theft was not directly recognized and thus the MDM lock was activated some time after you had bought the device.

@Robert It's been two/three months now. I've also checked the IMEIs (dual SIM device) and neither are blacklisted, so I doubt that's the case.

Then the only way to get certainty in your case would be to contact that company and ask them to prove that your device belongs to them or otherwise how it can happen that their MDM is blocking your device.

@Robert I've emailed them and am waiting to hear back. I suspect that the device has been removed from their MDM, but the MDM solution is still installed on the device.


text:
Intune company portal causes USB debugging to automatically switch off
I recently installed Microsoft Intune company portal on my Samsung Galaxy Note 10+ for work. Unfortunately, doing so resulted in the following change to my USB debugging settings: "Block - Prevent devices from using the USB debugging feature". Once I discovered this, I fully uninstalled and unenrolled from the Intune company portal, however the USB debugging block remains.
I did notice that I can toggle on and use USB debugging for 2-4 minutes after rebooting my phone, but after that, the switch instantly goes back to off when I try to enable it. I've tried resetting my phone settings, re-enabling developer options, and then trying to turn on USB debugging, but the setting still behaves the same. I've also tried the solutions here, but the setting remains disabled. Any help undoing what the company portal did to my phone would be massively appreciated.
Note:
I already disabled/uninstalled several apps potentially related to the issue via adb shell commands during the first few minutes after rebooting. If I knew which lingering app was responsible for enforcing the USB debugging block, I think uninstalling it would fix the issue. I've disabled several so far with no effect. Hoping to avoid a factory reset.
Phone details/bug screen recording:
https://drive.google.com/drive/folders/1uyIRKBnrpW4RH5hmlKJ2mAOMmJXt8j5d?usp=sharing

Unclear what "resetting my phone settings" means. OP may need to do a full factory reset, but should backup/save all data as the phone will be wiped. Hopefully that will restore developer controls.

sorry, reset as in:
Samsung settings app > general management > reset > reset all settings
"this will reset all of the settings on your phone"

clearUserRestriction DISALLOW_DEBUGGING_FEATURES
Apparently, the block may be enforced via devicepolicymanager after each restart: https://developer.android.com/reference/android/os/UserManager#DISALLOW_DEBUGGING_FEATURES

maybe something like:
adb shell pm set-user-restriction --user 0 no_debugging_features 0


text:
Taking a full backup for LG Velvet 5G (TMO) - does root/su matter?
I've got a stock LG Velvet 5G from T-Mobile that I'm turning in for an insurance claim (I was sent an LG V60 in exchange). I'm trying to take a full backup and then wiping it before I mail it out to them.
I've not been keeping up with current events in the tech industry, but upon loading up ADB I'm seeing a deprecation warning, which I've just caught back up about moments ago.  I'm aware ADB backup doesn't necessarily take a full backup (exclusions from manifest, xml paths, etc)., but I'm unsure what other method would be considered more all-inclusive at this point.  Furthermore, upon glancing at the XDA forum for this device (here), it seems that although a method to obtain root is available, the OP declares "backups are broken" and does not further specify any details.  I'm unsure if this means that the best I can do is take the ADB backup and hope it gets everything (and manually backup what I can think of — off the top of my head — that doesn't get captured, like 2FA tokens, etc), but will obtaining root/su actually help or not in my specific situation?

TMO Velvet is not BL-unlockable and the linked TWRP doesn't apply, and 2) "backups are broken" refers to TWRP's builtin backup capability.

"backups are broken" refers to the restoring part. you could try lglaf.py to by-pass bootloader lock and decrypt with TWRP (untested) but @Robert answer still apply

A rooted device allows to backup data of apps that simply deny backups in their Android manifest.xml.
Root has no effect on Apps that make use of the AndroidKeystore. This is a system service that allows to generate and import cryptographic keys (on recent Android devices symmetric and asymmetric keys). Those keys are stored protected by the CPU in  TEE so that apps can make use of the keys but they can't export them. This limitation also applies to backups using root. The keys are bound to the CPU and can't be exported, thus all apps that use such a key to encrypt their app data will fail after restoring their app data  as the necessary key is missing.

To further elaborate, would a rooted device be able to what you've mentioned in your first sentence above through, say, ADB backup with no additional command parameters/flags?  Using, e.g., the -all switch?  If not, I'll post a separate question to that regards, thank!

@Arctiic adb backup always works the same way independently if the device is rooted or not. On a rooted device you can use other backup tools like TitaniumBackup or oandbackupx. But even those tools will fail on apps that use the AndroidKeystore. But be aware that you will not recognize that the backup failed unless you recover the app installation from it and try to run the app.


text:
Found my child's LG phone but can't remember unlock pattern
Found my child's LG phone which was lost months ago. Can not remember pattern to unlock. What do I do?

Did it have a Google account associated with it? You could use https://www.google.com/android/find and lock the device with a new PIN. Otherwise, if it has no Google account you can factory default, but if it has one and you can't access the Google account the device will be bricked (probably permanently).

Otherwise, our locked-out tag wiki might be helpful to you. Can not unlock my Android device as have no internet connection? (also linked from there) has the most comprehensive collection of approaches, though some of them might no longer work. Best luck!


text:
Why does my HTC Desire 610, running Android v4.4.2 and WiFi connected, falsely allege "your phone is up to date" and "no updates available"?
While cleaning my attic, I unerathed an HTC Desire 610 from 2014. I hope to use it as a backup phone. I can't afford to buy a new phone, as COVID unemployed me.
As at today, the Latest release is Android 11. So why's my HTC Desire 610 fibbing, and not updating to Android 11? I connected it successfully to WiFi, which I checked by accessing the Internet.

Probably it means that the vendor has issued no further updates for that particular handset. Many vendors do that, and then you are stranded with an obsolete version when they stop supporting it. I guess you can update it to something more recent if you can root the device.

Not all Android devices get the current latest Android version, especially the older devices. This is because unlike OS for PC, there's no universal Android ROM that can be flashed on every device, so each vendor has to build each ROM for each device they want to support. Most vendors only provide at most 2-3 years updates of Android versions. The only alternative is looking for custom ROM (if it exists) for your device.

Also, according to GSM Arena, the phone only gets Android 4.4.2 (no update) officially.

Does this answer your question? How to Upgrade my Android device to latest Android version


text:
In an attempt to install custom rom on my lenovo k6 note ,i have baked up using entire phone using adb backup , how can i restore my phone
in an attempt to install custom rom i wiped my OS on my lenovo k6 note now its not starting but it is going into twrp recovery mode. is there any way to flash stock rom or any other OS i have tried installing lineage,emulation x, but it failed giving an error .

ADB backup probably is as best a backup as you can get – but it's by far not complete. Without an OS on the device, it's useless – for that you should have made a [tag:nandroid] backup from TWRP first. Next: your question lacks essential details to help you out of that, like what guide did you follow, and what that error message contains. So if you could [edit] your question to include those details, that will help you getting helped. Best luck!

I guess This would help you. . . . . . . . . . . .. . . . . . . . https://flash-guide.com/download-flash-official-stock-rom-lenovo-k6-note-k53a48/


text:
What is this status bar symbol that looks like combined ♺ and ⇵?
Occasionally a symbol shows up in the status bar (top right) of my Samsung Galaxy S8+, but I can't figure out what's producing it or why.  Any insight?

Tapping it does nothing. Given the dashed "warning-style" triangle, and the "up/down" arrows, I would guess it's a synchronization error of some sort, but I don't know what it would be from.
Android symbol lists (like this one) don't seem to include this one.  Google Image search did return 2 sites that have matches (image shows in search result preview) but I couldn't actually find the image on either page: this one, and this one (which is Russian but oddly, won't translate).


text:
Password protect zip file with 7-zip that works between Android and Windows
Is there a way to password protect a zip file with 7-zip on a pc, then unzip the file on android (while requiring the password), and essentially use it on either pc or android?
I tried with es explorer, as well as fz explorer, and I'm not seeing any of the needed functionality. Any help/suggestions much appreciated.

Never tried it but my first try would be RAR and TotalCommander

This question is more suitable for https://softwarerecs.stackexchange.com. Handling archives isn't Android's built-in functionality.

Try MixPlorer. I think it got what you need.


text:
How to take a screenshot from a video capture?
I recorded a screen capture of catching a shiny Pokemon in Pokemon Go and it about 25 seconds long, with the stars sparkling at about 0:00:11 of the video.
So how do I capture the moment and make it into a photo?

Details: the Play button is there if I pause it, so it is obstructing the video moment if I take a screenshot at the moment.  I tried all the options or functions available in the Gallery app and then there seems to be no way.

There a lot of apps in Play Store that allow you to extract frames from a video: https://play.google.com/store/search?q=video%20extract%20frame&c=apps

This web service will help you create a screenshot from a video capture:
https://ezgif.com/video-to-jpg


text:
Why does my app restart, even though it is already running and should just switch focus?
When I open a special company-internal app I need for work through my gesture-controlled overlay menu, it sometimes completely restarts, even though it's already open in the background. What's the reason for this and how can I stop it?

Only the developer of the app can answer this question. There's no universal rule applicable to every app.

After days of fiddling and googling I finally noticed that it depends on where the app is initially started from (meaning the first start from when it has been closed before).

If I initially start it from the overlay, I can switch to it via overlay without it
restarting, but it restarts when using the normal home screen button.

If I initially start it from the home screen, it's the other way around (works from home screen, restarts from overlay).

I will say but one thing: Lifecycle - Understand the Activity Lifecycle. Well, two things: Understanding Context In Android Application. Also, App Development is off-topic here, there are stackexchanges devoted to app development.

@wbogacz I'm a user, not a developer, so I'm pretty sure the question is fine here? Whatever just wanted to help people out if anyone ever has the same problem, no need to overcomplicate.

Could you explain what do you mean by "overlay"? Is it an always-on draw-over-apps type? Or is it from the "app switcher" button?

@AndrewT. First one. I ended up using UbikiTouch because I like it best, but I've tried many others as well. The behavior is reproducible in all that I tested it with.

@MaxD - Sorry about that. The read I took on the question is that you had developed the app for the company. For my company, any apps like this were limited distro, so group-effort and everybody knew the internal workings. I read too much into it.


text:
Remove files left in main storage from failed "Clear Data"
I used the SnoreLab app for a while and was using the full night audio recording feature.  I started to run out of space on my phone and found that I had accrued 20G of nightly recordings while looking at application footprint in the storage settings view.
When I hit "Clear Data" to free this up my phone chugged for a while and then crashed and rebooted.  Now there is no record that Snorelab is consuming storage, but my phone main memory is still almost full.  I've tried uninstalling Snorelab, which didn't free things up.
I also tried SD Maid and the Drives storage analyzer and Disk Usage.  Both of these show the /data as being >20G but show no folders larger than a few hundred meg.
It seems that there is no record of these files that I have access to but they are still consuming storage on my device.  The device is a Moto G4 running Android 7.

Check all directories on the "sd-card" section, most likely the app had created the recordings there in an own directory that does not exclusively belong to the app and thus is not deleted on uninstall/clear.

Everything that's cleared by "Clear Data" is also cleared when you uninstall the app. So the crash didn't leave any garbage. For a broader perspective read How disk space is used on Android device? and Where Android apps store data?.

be aware /sdcard is subdir of /data


text:
Help guys android feature problem
**when I try to install an application in my phone it's (tecno pop 2 plus )**it does not require the notification access option. It responses that that this feature is not in this device

I am sorry but based on what you have written it is neither clear what your question is nor what you are speaking about. Please edit your question and explain in detail what you are trying to to and what does not work.

Android Go doesn't support Notification Access. The only way to access this setting is by leaving Android Go.


text:
How to force mount storage whetever corrupt or not?
I use my phone without back cover and I sometimes accidentally remove my Toshiba Exceria 32GB SDHC UHS-1
This time my phone keeps spewing out corrupt SD card and tries to make me format my already portable storage card.
I tried lsdsk but apparently Android doesn't have that command.
I successfully saved my files using an another android device that didn't give me any errors
Removing magisk plugin of "/media_rw sd card mount for apps because your nougat has sd card access issues on apps that doesn't have toggle for where to save thing etc" worked but I still would like to know how I can force mount SD cards/USB sticks.

There is no force mount but you can try to mount read-only (see mount --help)


text:
Keep/retain a syslog at lowest level possible even after a restart
Over the last several days, my phone suddenly started giving me a problem. It gets into a restart cycle - there is no pattern of when this problem occurs. It's very random, also the number of restarts in each instance is variable.
I did factory reset twice (including cache partition clear) and hard reset (from recovery menu)
Now I see some reduction in the problem, but it's not completely gone. It's my gut feeling it's a software issue.
Is there any way to keep debugger logs on at the sys level so that next time a problem happens and after a restart, I might get some clues?

Hi, questions directly asking for app recommendations are off-topic here, so I reworded it to make it acceptable. Otherwise, you might be interested in our sister site Software Recommendations Stack Exchange.

See last_kmsg / pstore and persistent logcat.


text:
Lost permission to modify external storage from PC after rooting my tablet
I have a highly secured proprietary tablet I was able to gain root access to. It's a mediatek device, I used mtk-su to root it. It has 32gb of memory, 8gb allocated to the system, and the rest allocated as external storage.
Prior to rooting, I was able to plug in to my PC and access external storage with FULL read/write permissions.
After rooting, when I plug in to my PC, it now gives me read-only permissions. I have termux installed on the tablet with SU permission, so I can modify any system properties. However, I can't figure out what needs to be done to re-mount the partition as read/write.
I tried pushing the files with adb, and it says the tablet is unauthorized. I really don't want to have to use adb anyways. Any ideas how I can re-gain read/write access??
EDIT:
@Robert
My apologies! I just looked in the root directory to get the EXACT path name of this folder. Here's where it is:
root/mnt/sdcard1 **This is the exposed path when I plug into PC.**

There is also an sdcard
root/mnt/sdcard **This isn't the directory in question.**

@IrfanLatif
My apologies for not being correct on the semantics. I'm a web developer, and android programming/modification is a new thing to me. I'm trying/learning. I know it is is read only because, after plugging in to the PC, I can no longer copy to the drive (or w/e it would be called here, not sure?), or modify anything inside it. It gives error, saying I only have read access.
Thanks

What path of the device is exposed to you via MTP? What are the access permissions of that directory? Note: Usually "external storage" in Android is an external SD-card, the user data partition that also contains the /sdcard is usually named "internal storage" or user data partition.

"I can't figure out what needs to be done to re-mount the partition as read/write". There's no partition mounted. MTP is file transfer protocol. // "when I plug in to my PC, it now gives me read-only permissions". How do you know that it's read-only? What happens when you try to write a file?

@Robert Sorry about that, I'm relatively new to the android world. I edited the question. The exact path is root/mnt/sdcard1 That's what I usually have read/write access to when I plug into PC.

problem is selinux, mtk-su probably ended up with stronger restrictions than regular shell


text:
How to set SD card to default for storage S9+
How do I tell my phone to store new files on my sd card instead of its internal storage, either for a specific app or the entire system?
(I did try to find this on my own. There are many sites that say how to do this. Unfortunately, none of them are accurate as the settings options have apparently changed)

You can't: https://android.stackexchange.com/a/218338/218526. Use Adoptable Storage: https://android.stackexchange.com/a/214706/218526

Are you sure? It was the default storage location for the photos I took until I removed and reinserted the card a few days ago. Was this feature suddenly removed or something?

Please read the answer I linked first. Apps can always save data to their private directories on external SD card (which get deleted when the app is uninstalled), but not to the rest of the directories. But saving to external storage is entirely an app's (or its developer's) personal coice. You cannot force it on any or every app.

what you looking for is in camera app settings

Thanks alecxs. If you put that in an answer I'll accept it


text:
Note 10 Plus Stuck with Partial Flight Mode (Faded Blue). What does this mean? Is this an indication of hardware failure?
I haven't yet come across a situation where factory reset didn't resolve the issue. This one is very intriguing to me as I could not conclude why the phone could stay in the partial flight mode (faded blue). It may be a coincidence, but it happened sometime after the firmware update. However, it doesn't look like a widespread issue to assume it is a bug. I have attached an image that shows flight mode in faded blue. It stays that way until I switch to Wi-Fi calling or remove the SIM card from the tray. I cannot select networks from the settings - "Error while searching for networks."
Here are the steps I have taken so far:

Wipe cache partition
Clear SIM cache, grant permissions, network rest, restart device
Multiple resets with flight mode on and off, finally did a Factory rest
Used ODIN flashed with latest stock ROM
Used ODIN flashed with  a year-old ROM - system performed updates as well
Used ADB shell to enable cell in airplane mode, no impact. ADB mode shows flight mode was off.
Replaced with new SIM card, no difference

Based on the above steps, it looks like this is probably a hardware issue, but I would be relieved if it comes from experts. No drops or physical damages to the phone. I haven't read anywhere that partial flight mode results from hardware failure. However, neither ADB made any difference to conclude it as a software/GUI issue. If there aren't solutions left, I can make peace with my phone.
I would appreciate your comments and inputs.

So if you touch the Flight mode icon to enable/disable it nothing happens? Have you checked logcat for errors when you touch Flight mode icon?

Hi @Robert - thanks for responding. I just learned what logcat is after seeing your response. I see a lot running log with an ability to filter on verbose, error, warning, etc. Is there anything particular should I be looking at? How can I capture log specific to toggle? Also, when I run 'adb shell settings get global airplane_mode_radios' - it shows nfc, wimax - so technically cell and wifi should still work, right?  What's strange is airplane mode when toggled should either be grey or blue- what does half blue indicate? any persistent lock?

Especially on Samsung devices logcat is pretty verbose to my experience. I usually open logcat, wait until the old message have scrolled by and then make the action I am interested in. Then directly after making the action I press Ctrl+C to stop logcat. How the airplane icon should look I don't know, I don't have a recent Samsung device and such UI elements always look different between manufacturers and Android version.


text:
Is there a way to get all the internal storage data from my LG W30 which doesnt turn on?
My android phone LG W30 fell pretty bad from a decent height and it doesn't turn on now. No response from any buttons. when connected to power, the indicator LED turns on and nothing else. This is the current situation of my phone.
I would like to retrieve all the data from the internal storage. I tried to connect it to my PC, but the device isn't getting recognized. Is there any way that i can transfer my data? Please help

Your device was release 2019 with Android 9. This means that all you data is encrypted by default and can't be decrypted without the CPU of your device in a working state.

oh ok. thank you for the quick response


text:
How do i remove the root app(?)?
I have a Samsung galaxy S7 that i rooted, but i want to unroot it because an app i need doesn't allow root.
I followed this tutorial when rooting my phone:
https://www.youtube.com/watchv=CEI75gZWUtc
So tried to unroot it first by unrooting in the superuser app, then factory resetting it, but the app still said that i was rooted. I couldn't find any trace of it being rooted and even tried looking with adb, but found nothing. Then i installed an app that blocks internet for selected apps (Net Blocker) and in the list of apps there are two apps that i think causes this. one named root with UID=0 under it and one named RootPA with no text under it.
My question is how can i remove these?

The best chance is to reinstall a full original firmware image, read this how to download it. Note that rooting has triggers a "fuse" that can not be restored and thus some know related functions will not work even reinstalling an original FW version.

unrelated (RootPA page 9). probably there is some check on bootloader lock


text:
How to expose a folder to a PC using mount command
I've been messing with termux on a rooted tablet (mediatek), and I'm trying to expose a folder using mount that will be accessible to my PC via a USB connection over mtp (with read/write permission).
I've tried various iterations with mount, all to no avail. I can't find any tutorials explaining how this is done, so I'm basically relying on mount --help and trying to copy the logic of directories that are already mounted.
Any help with the CLI syntax regarding this issue would be appreciated.

I don't think you will succeed using mout. MTP is as far as I know provided by a daemon which uses the Android MediaStore database for getting the file-list. May be you should better try to use on your PC a file-manager tool that uses adb for file listing and transfer?

Use adbfs. Or run a SSHFS/SFTP, FTP, WebDAV, SMB... whatever server from command-line. All of these are opens-source and free. Personally I've using OpenSSH and pure-ftpd since long. Or find a suitable app. Like MiXplorer supports almost all of the above servers, though I only used FTP a few times. Or use directly UMS like a pro: https://android.stackexchange.com/a/205559/218526

@IrfanLatif thanks. Using mixplorer looks like a good solution. I'd love to take you up on your UMS challenge, but I'm a bit to green in this world yet. I think I'll take the easy road for now :)


text:
How to start service 'package' with ADB
Using adb, I uninstalled some system apps on my device. Sadly, I uninstalled something important, and now the device is in a bootloop.
During boot there is a window of time which I'm able to login with adb. But when I try to reinstall the system apps:
adb shell cmd package install-existing --user 0 com.xyzname

I get this error:
Can't find service: package

I used to be able to run install/uninstall commands in this bootup window, but now the service 'package' isn't being started.
I tried looking up how to run services with adb, and I found some commands using am, but nothing pertaining to specifically running 'package'.
I need to get service 'package' to run. Begging for help here.

See if you can run this command: adb shell pm install-existing --user 0 com.xyzname. If that doesn't work either, you have to do a factory reset because I am assuming you don't have a custom recovery (which at least offers a way out in this case).

Thanks for the suggestion. Sadly it doesn't work, I don't have custom recovery. The service package needs to be running ☹

I had the same error and finally got it to work by adding su -c.
For your case, it should be:
adb shell su -c cmd package install-existing --user 0 com.xyzname


text:
Custom Timezones in Android
Is it possible to set the timezone of an android device (either a physical device or and emulator) to a timezone that doesn't actually exist (for instance, GMT+00:03 or GMT-500:00)?  I tried reading the docs, and it seems like the data type supports that in theory, but I have no idea how you'd actually do that in practice, or if there's some reason it's impossible that I'm missing.

Not without using/creating a Custom ROM
So the link you provided is for Android app developers who need to create custom timezone for their usage within Android Apps. Other apps wouldn't be affected by any internal time/date calculation or settings done in that manner.
You can set an emulator's timezone on startup:
Android Emulator command line options

-timezone timezone
Set the timezone for the virtual device to timezone, instead of the host timezone
By default, the emulator uses the timezone of your development computer. Use this option to specify a different timezone or if the automatic detection isn't working correctly. The timezone value must be in zoneinfo format, which is area/location or area/subarea/location. For example:

America/Los_Angeles
Europe/Paris
America/Argentina/Buenos_Aires

The specified timezone must be in the zoneinfo database.

But you are limited to the existing timezone in the zoneinfo database (also known as tzdata).
Date/Time/Timezone rules are complicated so the Android Open Source Project has a section on Time Zone Updates.
What this means is that the complexity of time zone management is 'centralized' into tzdata and tzlookup.xml files. As tzdata database is used by many other systems and maintained by the Internet Assigned Numbers Authority organization, the mechanism by which you can modify the file is off-topic as it is not Android specific.


text:
How can I disable the warning "Using high brightness for long periods increases battery consumption." so that I don't see it ever again?
I use Android 10 with Samsung Galaxy S9. Whenever I set the brightness to be high, I get the warning:

Using high brightness for long periods increases battery consumption.

How can I disable this warning so that I don't see it ever again?

The page https://forum.xda-developers.com/t/mods-samsung-not-android-mods-collection-exynos.3772017/page-81 (mirror) seems to discuss how one can disable the warning "Using high brightness for long periods increases battery consumption.".
Here's below a mod from wlryss:

Hi.. Compared to Android 10 with warning about turning on high brightness and harm to the eyes in Android 11 there is a warning about the dangers of high brightness for charging the battery. SystemUI/smali/com/android/settings/ToggleSliderView.smali
method .method private showUsingHighBrightnessDialog() has a string

Code:
.method private showUsingHighBrightnessDialog()V
    .locals 3

    iget-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mUsingHighBrightnessDialog:Lcom/android/systemui/statusbar/phone/SystemUIDialog;

    if-nez v0, :cond_0

    new-instance v0, Lcom/android/systemui/statusbar/phone/SystemUIDialog;

    iget-object v1, p0, Lcom/android/systemui/settings/ToggleSliderView;->mContext:Landroid/content/Context;

    invoke-direct {v0, v1}, Lcom/android/systemui/statusbar/phone/SystemUIDialog;-><init>(Landroid/content/Context;)V

    iput-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mUsingHighBrightnessDialog:Lcom/android/systemui/statusbar/phone/SystemUIDialog;

    iget-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mContext:Landroid/content/Context;

    invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v0

!!!    sget v1, Lcom/android/systemui/R$string;->sec_brightness_using_high_brightness_dialog_message:I  !!!

    invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;

    move-result-object v0

    iget-object v1, p0, Lcom/android/systemui/settings/ToggleSliderView;->mUsingHighBrightnessDialog:Lcom/android/systemui/statusbar/phone/SystemUIDialog;

    invoke-virtual {v1, v0}, Landroid/app/AlertDialog;->setMessage(Ljava/lang/CharSequence;)V

    iget-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mUsingHighBrightnessDialog:Lcom/android/systemui/statusbar/phone/SystemUIDialog;

    sget v1, Lcom/android/systemui/R$string;->sec_brightness_using_high_brightness_dialog_button:I

    const/4 v2, 0x0

    invoke-virtual {v0, v1, v2}, Lcom/android/systemui/statusbar/phone/SystemUIDialog;->setPositiveButton(ILandroid/content/DialogInterface$OnClickListener;)V

    iget-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mUsingHighBrightnessDialog:Lcom/android/systemui/statusbar/phone/SystemUIDialog;

    new-instance v1, Lcom/android/systemui/settings/ToggleSliderView$4;

    invoke-direct {v1, p0}, Lcom/android/systemui/settings/ToggleSliderView$4;-><init>(Lcom/android/systemui/settings/ToggleSliderView;)V

    invoke-virtual {v0, v1}, Landroid/app/AlertDialog;->setOnDismissListener(Landroid/content/DialogInterface$OnDismissListener;)V

    iget-object p0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mUsingHighBrightnessDialog:Lcom/android/systemui/statusbar/phone/SystemUIDialog;

    invoke-virtual {p0}, Landroid/app/AlertDialog;->show()V

    :cond_0
    return-void
.end method

SystemUI/res/values/strings.xml
Code:
<string name="sec_brightness_using_high_brightness_dialog_message">Using high brightness for long periods increases battery consumption.</string>

You need delete this toast alert with this string and button OK..
Look at .method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V in this class
You find such code
Code:
check-cast p1, Lcom/android/systemui/util/SettingsHelper;

    invoke-virtual {p1}, Lcom/android/systemui/util/SettingsHelper;->isUsingHighBrightnessDialogEnabled()Z

    move-result p1

    iput-boolean p1, p0, Lcom/android/systemui/settings/ToggleSliderView;->mUsingHighBrightnessDialogEnabled:Z

In class SystemUI/smali_classes2/com/android/systemui/util/SettingsHelper.smali in method
.method public isUsingHighBrightnessDialogEnabled()Z - change 0x1 for 0x0
Code:
.method public isUsingHighBrightnessDialogEnabled()Z
    .locals 1

    iget-object p0, p0, Lcom/android/systemui/util/SettingsHelper;->mItemLists:Lcom/android/systemui/util/SettingsHelper$ItemMap;

    const-string v0, "shown_max_brightness_dialog"

    invoke-virtual {p0, v0}, Lcom/android/systemui/util/SettingsHelper$ItemMap;->get(Ljava/lang/String;)Lcom/android/systemui/util/SettingsHelper$Item;

    move-result-object p0

    invoke-virtual {p0}, Lcom/android/systemui/util/SettingsHelper$Item;->getIntValue()I

    move-result p0

    if-nez p0, :cond_0

    const/4 p0, 0x0  ###  previously it was 0x1  !!!

    goto :goto_0

    :cond_0
    const/4 p0, 0x0

    :goto_0
    return p0
.end method

And finally in SystemUI/smali/com/android/systemui/settings/ToggleSliderView$4.smali in method
.method public onDismiss(Landroid/content/DialogInterfaceV - change value
Code:
.method public onDismiss(Landroid/content/DialogInterface;)V
    .locals 2

    iget-object p1, p0, Lcom/android/systemui/settings/ToggleSliderView$4;->this$0:Lcom/android/systemui/settings/ToggleSliderView;

    const/4 v0, 0x0

    invoke-static {p1, v0}, Lcom/android/systemui/settings/ToggleSliderView;->access$1402(Lcom/android/systemui/settings/ToggleSliderView;Lcom/android/systemui/statusbar/phone/SystemUIDialog;)Lcom/android/systemui/statusbar/phone/SystemUIDialog;

    iget-object p1, p0, Lcom/android/systemui/settings/ToggleSliderView$4;->this$0:Lcom/android/systemui/settings/ToggleSliderView;

    const/4 v0, 0x0

    invoke-static {p1, v0}, Lcom/android/systemui/settings/ToggleSliderView;->access$902(Lcom/android/systemui/settings/ToggleSliderView;Z)Z

    iget-object p1, p0, Lcom/android/systemui/settings/ToggleSliderView$4;->this$0:Lcom/android/systemui/settings/ToggleSliderView;

    invoke-static {p1}, Lcom/android/systemui/settings/ToggleSliderView;->access$1100(Lcom/android/systemui/settings/ToggleSliderView;)I

    move-result v0

    const/4 v1, 0x1

    add-int/2addr v0, v1

    invoke-virtual {p1, v0}, Lcom/android/systemui/settings/ToggleSliderView;->setValue(I)V

    iget-object p0, p0, Lcom/android/systemui/settings/ToggleSliderView$4;->this$0:Lcom/android/systemui/settings/ToggleSliderView;

    invoke-static {p0}, Lcom/android/systemui/settings/ToggleSliderView;->access$2100(Lcom/android/systemui/settings/ToggleSliderView;)Landroid/content/Context;

    move-result-object p0

    invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;

    move-result-object p0

    const-string/jumbo p1, "shown_max_brightness_dialog"

    const/4 v0, 0x0  ###   previously it was  -0x2  !!!

    invoke-static {p0, p1, v1, v0}, Landroid/provider/Settings$System;->semPutIntForUser(Landroid/content/ContentResolver;Ljava/lang/String;II)Z

    return-void
.end method


text:
Battery level to output via Bluetooth for external control
Is there any device to read the phones battery level  ; lets say 10 % to  90% to trigger a signal out over blue tooth;  some apps haves control; like sonoff;  for wifi control but I want to trigger off my phone charger when the battery is at  90% charge.; ; then turn it back on lets say at 50% etc. a blue tooth switch that I can feed into a replay for my power source on a power pak ?
LG phone constantly charge to blow up batteries; or bulge them so the buttons don't work.
Constantly replacing batteries !!
U can add my email for replies; to anyone

On a rooted device (that is compatible) you could use an app like Battery Charge Limit.

@Robert IMO, every rooted device that does not have that functionality built-in would benefit from that app (or one like it).  I wish it was possible without root.

I don't know a device that can read out the battery level, but you can develop your own app to do so. Reading the battery level is simply and there are sample apps available e.g. on Github that show how to send arbitrary data via BLE. As receiver you could use an Arduino with an attached relay. For app development please check https://Stackoverflow.com


text:
Configuring SD card
I bought an SD card of 64 gb for my Razer Phone 2 and I'd like to transfer big data in it (Spotify songs, videos, useless apps). I can't find  any option to safely move data from my phone to the SD card. On top of it, i inserted the card, l installed it as memory extension and, out of nowhere i filled up 20 gb on it!! That is, my phone continues to have 97% of usage data plus 20 more GB on the SD card created apparently from thin air. How's it even possible? Did google just transfer there stuff, what criterion did it even use?
I downloaded an app 'files to SD card' which could do the transfer, however when selecting the root of the SD card it returns me the following message : 'no root directory has been selected'. I am afraid my card has been installed as extension of the SD card and thus cannot be used to transfer data from the phone to the SD card. However, after the creation of the 20 additional gb, i am afraid of reformatting the SD card to reinstall it differently. Hope this is clear enough

To have control, you need to configure the SD card as Storage and not Expansion. Not all phones offer these options automatically and it is possible you have to switch it. Changing modes, wipes data on the card since it gets reformatted.
Once you the SD card is configured as Storage, you can use it to store Data but generally not Apps, at least on most recent official versions of Android. However, many Apps that expect to produce or manage large data have the option somewhere to configure where that data is stored. This includes the Camera App, since it is expected that it can capture huge volumes of photos and videos, Netflix, Amazon Prime, Maps.ME and many more, but those are the ones I know and are configured on my current phone.
For applications that are media players, such as VLC, then generally you can place media yourself in any folder that could be on the SD card or in internal memory. You can place all your videos and audio in the SD card and then either navigate to where you want to open media or add folders on your SD card to their 'Media Folder' list. Technically, you can add the entire card but if it is huge, scanning it will take a long time, so it is preferable to create yourself a folder structure by media type. Note that you will have to grant permissions to modify the SD card for each application you want to use that way.
When you installed the card as memory extension, I am surprised that much data appeared but generally, the process involves creating some cache. Before you erase that, do take a look to see what those files are using the file manager. There should be mostly hidden files (starting with a dot) and folders called 'cache' or similar.
Note that modern Android phones mount SD cards by their Label which means that when you swap SD cards, most applications will no longer find their data and revert to internal storage or show an error. Ideally, there would be a way to mount the SD card in a fixed mount-point (but I have not figured out how to do this. It is likely to be possible since all phones so far have a single SD-slot, so they could give it a fixed path) but if you use a cloning tool (or just dd on Unix), then you can backup an SD card so that it has the same label. This is not so important but there are some apps that once they do not find their data, force you to redownload it, even if you put back the same SD card again later and point them to the same path (MAPS.ME does this).

Hi there, I reformatted the SD card as storage. Now everything worked. As for the extension, it was media copied from the phone to the SD card, thus I had double the data. I do not have sophisticated apps so I have not seen an impact on the configuration of the apps as per your answer. Lastly, after Android 9 the SD cards are encrypted so it is difficult to read them unless decrypting them. To decrypt them you need to deselect the encryption option at the very beginning of the configuration (which is not what I did), this is for future references. cheers

I have just checked if I could select the option to not encrypt the SD card on another 2gb spare card I had. I have not found it and I guess I am giving up for now on that option. Sorry


text:
For Adoptable storage Fast random WRITE speed or fast random READ average good speed values?
For Adoptable storage Fast random  WRITE speed or fast random READ average  good speed values?
To move and use apps on its microSD Card (using microsd card as adaptable storage as internal memory) in android 6.0 marshmallow formatting  SD as internal  my droid suggests I use a "fast" SD card.
https://www.cameramemoryspeed.com/sd-memory-card-faq/fastest-memory-card/
Ranks SD Cards by WRITE Speed and READ Speed. Interestingly, the same chips seldom appear in both lists. If I want to use my SD Card to store and run apps, is fast random WRITE speed or is fast random READ speed the most important quality to look for. As in many card random read speed is 230mbps and random write speed is 3 or 5 mobs there are some cards in which both random read write speed is  90mbps 100mbps Approx. So what's the internal storage random read write speed standard average value as apps read more than write.
In android perspective using SD card as adaptable internal storage what is  The important thing for best performance in micro sd card must be high IOPS, high 4k read/write values an average value the apps use to read and write on micro sd card .
But what is queue depth (QD) 1..32? For example random read 4k-QD1, random read 4k-QD32, random write 4k-QD1, random read 4k-QD32... Which values of QD are important for  android adoptable storage.
I just found another  old benchmark link
to find hdparm dd Linux benchmarking but its with old model 16gb 32 GB cards
https://www.pidramble.com/wiki/benchmarks/microsd-cards
https://www.jeffgeerling.com/blog/2019/raspberry-pi-microsd-card-performance-comparison-2019
I am planning for 128 GB UHS II v30 a2 cards  do any can share  any benchmark results for new microsd card for android adoptable app perspective for cards
Is there any command or benchmark  app in android through which we can benchmark or test the internal memory storage speed and match same or higher value random read and write speed  external microsd card speed for making it compatible matching speed of internal memory. Kindly share the apps I founded androbench, SD speed test but both test external SD card not internal

For adoptable storage bulk read/write benchmarks are not so important. More important are IOPS and random read/write speed of small data blocks. And of course reliability - for adoptable storage I would never use a no-name product.

https://android.stackexchange.com/q/220035/218526


text:
How do I Remove a Google Contact from Phone without Deleting it from Google Account?
My work Google account is one of many synced to my phone. I'm a teacher so I have lot's of student emails as contacts on my work Google account.  When I do a search for say "David" on my phone's contact list all my students I've ever had with the name David show up and it is very cluttered.
Is there a way to remove the contacts of my work Google account from my phone without deleting them from the associated Google account, and while still keeping access to emails from that account on my phone?

It may be easier to find a contact manager app that allows to limit search to a certain group or account instead of trying to delete an contact entry that does not sync into the cloud.

If Your Phone is Set to Display Contacts from Google Account, it will likely keep showing except if you deselect the linked google account from displaying its contacts. Else, you will need to delet the contact and syncronize it.

Bummer, I was hoping that wasn't the case.

I just figured out that in my phone's "Contacts" preferences I can set a google account to not display any contacts which is exactly what I wanted.  I think that's what you are referring to, but I didn't get it when I read your response.  Some more details would make this a better response.  Thx.

I had a similar problem with having my husband's Google account on my phone. It synced his contacts to my phone.
What I did was this:
Turned Airplane mode on.
Settings>Accounts-Google>[your account], and make sure Contacts sync is turned off. Make sure you turn off sync on all the Google accounts. Next, go to Settings>Apps, tap Menu>Show System, and select Contact Storage. Clear Cache/Data.
What I did also was select Calls, Call Settings, Contacts, and Contact Migrator; Clear Cache/Data.
Restarted the phone, turned Airplane mode off, turned sync on just my accounts on and opened contacts. It worked.

I the same problem with my work google contacts. I tried the answers above but they did not work for me.
Here is what I did instead. (Note: I have a Redmi Note 10.)

Use a computer to delete all your google contacts. You can probably do this with your phone too. The phone will then sync and remove the contacts.

After the contacts are removed, go to Settings>Accounts & sync>Google> Select the google account and disable the syncing of contacts.

Go to Google Contacts and recover your contacts from the trash. These contacts will no longer appear on your phone's contacts.

I hope this helps.

As it’s currently written, your answer is unclear. Please [edit] to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center.


text:
adb shell svc power stayon multiple device
When there is multiple Android-devices connected with Linux computer (using Linux Mint 20.2 Cinnamon, which is based on appropriate Ubuntu 20.04 LTS version) and scrcpy v1.12 then how to keep multiple devices awake?
When one device connected, then I used:
adb shell svc power stayon true

... and it worked.
When multiple devices, then there will be an error message:
error: more than one device/emulator

Tried find a solution, but no luck so far. Tried to connect devices one at a time and then run, but it didn't work. Having one device using OxygenOS 9.0.6, which is based on Android appropriate version. Second device has LineageOS 18.1, which is based on Android 11.
Using following commands to connect with multiple devices:
scrcpy -s <ID1> -m 1024 -S&
scrcpy -s <ID2> -S&

The -S will turn of device screen, once it is connected. I would like to keep screen on at computer, while using scrcpy, but device screen should be turned off at the same time.
Tried also GUI but it didn't help either. One device with Android 9 has screen always on, but another device with Android 11 will time out and also scrcpy window will turn off. I know, that there is a shortcut key CTRL+O at scrcpy, which helps to turn off device screen or using -S will do it immediately after connecting.
Any idea, how to solve this?

adb -s  shell commands will work as usual, but afaik scrcpy has special cmd line parameters. try --stay-awake

Isn't there an command-line option is scrcpy that keeps the device awake? I remember that I have used such an option some months ago.

The --stay-awake seems to be possible since v1.14 (https://github.com/Genymobile/scrcpy/releases/tag/v1.14), but having still v1.12 in latest LTS-version of Ubuntu. But "adb -s  shell svc power stayon true" did the trick and seems, that this the only one alternative until scrcpy v1.14 and newer arrive to LTS-version of Ubuntu. Seems, that Ubuntu 20.10 has v1.14 already. So, next Ubuntu LTS should have it. Until that the mentioned adb command can be used.

The answer is
adb -s <ID> shell svc power stayon true

Device IDs can be retrieved, while Android devices are connected with computer via USB-cable (or WiFi):
adb devices
<ID1>  device
<ID2>  device

If device is not recognized, then please ensure, that USB-debugging is turned on while USB-cable is connected. For that in turn there is needed a developer mode beforehand. Also Default USB configuration is worth to check, e.g. charge only and no data transfer by default in order to avoid possible personal data revealing or malware infection at foreign computer. Even in own computer, it is not needed all the time mount device storage, if you just need to use screen mirroring. Whenever data retrieval from Android device is needed, USB mode can be changed (while Android device USB-cable is connected with computer) via notification menu, usually pulled down from upper edge on Android device.
E.g. in Linux there can be created dedicated shortcut icons (~/.local/share/applications/*.desktop) with appropriate PNG-images (~/.local/share/icons/*.png).
device 1:
Exec=sh -c 'adb -s <ID1> shell svc power stayon true && scrcpy -s <ID1> -S &'

device 2
Exec=sh -c 'adb -s <ID2> shell svc power stayon true && scrcpy -s <ID2> -S &'

The -S will turn off Android device screen immediately when connecting, but the first part of command until && will keep scrcpy mirrored image on computer screen always on and device will not be locked even on idle time. Additional explanation about svc power command can be found from source code. The command will set whether to keep your device awake (prevent sleeping) or not while it's being charged on specific platform: USB charging, AC power, wireless charging, or all of them:

true will set all flags (usb, ac, wireless)
false will clear all flags
usb/ac/wireless will set that specific flag while clear the other

The same setting usually can be accessed on "Developer options" named "Stay awake", though it's simpler with only toggle to turn on/off.
The overall desktop shortcut code (replace the <device name> and <ID> with appropriate values) for ~/.local/share/applications/*.desktop file(s), also possibly change category:
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Type=Application
Name=<device name>
GenericName=<device name>
Comment=Android screen copy
Icon=scrcpy-<device>
Exec=sh -c 'adb -s <ID> shell svc power stayon true && scrcpy -s <ID> -S &'
Terminal=false
StartupNotify=false
Categories=Utility;

Thank you commentators for hints!


text:
question about a video recording cutting out at 4GB, vs continuing recording and a new file created. Phone is Moto G7 Power
question about a video recording cutting out
I have two Moto phones.
One when I do a 30-35min video, and that about 4GB size, it continues recording but makes a new file.
Both are not using an SD card.
The phone that stops recording, is running Android 9, and is build number PPOS29.114-134-2  (was PPO29.80-27 but updated to PPOS29.114-134-2)
The phone that continues recording is running Android 10, and is build number QPOS30.52-29-7-6
The phone that stops recording, has, under about..Model and hardware.  Moto G7 Power.
The phone that continues recording, has, under about..Model and hardware. Moto G7 Power (XT-1955-4)
Both are updated as much as possible.. but Motorola doesn't seem to let them both update to Android 10.
I know the compression on an oppo phone I have is much better, its 30min Mp4s are a fraction of the size.  The Oppo compresses mp4s well and didn't hit any 3.7GB or 4GB limit. The oppo 30min file is only about 850MB! And my Oppo phone is Android 11. Anyhow, no question re my Oppo phone.
G:\vids\aug8th>
...

<DIR>          newermoto
<DIR>          oldermoto
<DIR>          oppo

09/08/2021  16:50  4,081,015,200 newer_notupd_moto\VID_20210809_161905581.mp4  (31min 45sec)

09/08/2021  16:50     4,080,838,961 oldermoto\VID_20210809_161917546.mp4    (31min 24sec)
09/08/2021  16:53       416,864,956 oldermoto\VID_20210809_161917546_02.mp4  (3min 12sec)

09/08/2021  16:54     1,875,077,957 oppo\VID20210809161850.mp4   (35min 13sec)

What i'm wondering is, is it a difference between Android 9 and Android 10 that would fix it?
Not that that helps much at the moment since the phone that cuts out won't update to Android 10!
Both Motos are on only internal storage, neither have an SD card. So file system of an SD card isn't relevant here, as no SD card in the Motos.
I wonder if the Moto G7 Power that continues recording is a later model / better model of Moto G7 Power.

SD-Card formatted with FAT32 have a 4GB limit. As it is difficult to check the actual file-system where you have chosen to save the videos may be they always split the recorded videos to 4GB chunks?

@Robert A) I have no SD card in the phones as mentioned in the question and B) The 4GB limit isn't the issue here.. 'cos the issue is one phone stopped recording, but the other phone (also a Moto G7 Power), continued recording but created a new file.

For the European Union (an may be other region) there is another "tax" based limitation: For devices that can record more than 30 minutes videos they are considered as video recording cameras which are in a different (higher) tax group. Therefore some vendors limit video recording to 30 minutes on some devices. And the 4GB limit can still be an issue as the app doesn't know if there is such a limit or not.

Although it doesn't matter in your case, afaik even underlaying file system is ext4, still 4 GB file size limit applies to emulated storage (sdcardfs) for compatibility reasons with fat32


text:
Apk signed with no rsa or dsa compatible signature
I am building an signed apk to uploaded on a mdm.
I used to do this routine without a problem but since I updated to android studio Arctic Fox 2021.3.1 I get the message:
"Your apk is signed using a certificate that we currently don't support. Please use RSA or DSA certificate".
Aren't apks signed with rsa or dsa certificates?
How can I use these kind of certificates ?

How do you sign the created APK (jarsigner or apksigner) and which key type has the used signing key?

I use android studio generate signed bundles with apk.

Please check the used keystore and the contained private key of which type it is. Th easiest way is to open the keystore file in a  GUI program like https://keystore-explorer.org


text:
App Audio Mixer for Samsung Dex
Is there an audio mixer setting to adjust the audio volume of individual open apps, like there is on Windows, built into Samsung Dex? Or do I need a 3rd party app for this?

The same question has been posted some years ago, not sure if the answers are still valid.

@Robert The top answer in the linked question mentioned Samsung's Sound Assistant app, which is exactly what I'm looking for. So the answer is still valid.


text:
Set Tablet Network for a specific SSID permanently
Hallo Stack Exchange Community,
I have android 10 and 11 Samsung Tablets and I want to set the tablet (device) MAC on a specific SSID.
I dont need to know how to set it via Wifi Settings, because it changes after a restart.
Source: https://www.easytechguides.com/disable-device-security-on-a-samsung-galaxy/
Is there any way to set it permanently? If not a simple no will do, but I still kinda hope that I did not find the right way to do it.
Other Sources:
https://wifi-helpcenter.nokia.com/hc/en-us/articles/360056890733-Issues-with-random-MAC-addresses-Android-10-iOS-14- https://source.android.com/devices/tech/connect/wifi-mac-randomization

Similar to your last question on SO you still don't tell us if you want to use the non-randomized real device MAC or set an arbitrary MAC (forged MAC). To use the device real MAC you should be able to do so in the Wifi settings of the connected Wifi network as described in your second link.

Like I already posted I need the device MAC permanently not only till the next restart, so the second link is no help, because the describtion is like the first link. If there is no setting that can help me just tell me instead of telling me to use the second link eventhough I wrote that it is not the solution I am searching for. Apperently device MAC is not the right term in your eyes so I will use yours I need the non-randomized real device MAC.

If you specify for one Wifi to use the device MAC address instead of the generated privacy MAC this setting is saved to the Wifi entry like the PSK and applied every time, even after a device restart. Everything else would not make much sense.

I tried the second link multipul times and every time after a restart the settings are lost.

Try to edit the settings while you are not connected to that Wifi. If that still not work then this is a bug of your device -> contact Samsung.

Thank you it works. It was because of a program we use. I deinstalled it and tried it again and it worked. I´m sorry for wasting your time.

The problem was that the network was added by a soti profile.

This Problem is solved with android enterprise of soti


text:
My kids see my phone's location on Google Maps
Yesterday my kids showed me that they can see my Android phone's location in the Google Maps app on their phones. Their phones are managed by Google Family Link because they are under 13.
They can also see the location of my wife's phone, but nobody else - and not each other.
I found no way of disabling this feature, and it's really disturbing.

You can manage gps permissions (not sure google may by-pass)


text:
What are the differences between the single partition and the A/B partition scheme?
I recently flashed LineageOS 18.1 to a OnePlus6T by following the official guide. It was successfull, but there are a couple of steps which I don't fully understand. The OP6T uses the A/B partition scheme and doesn't have a recovery partition like the older device I have used before; on that device I flashed TWRP to the recovery partition and it remained there persistently, allowing me to boot into it using a certain button combo. The guide to flashing the OP6T states that one must temporarily flash a custom recovery to the device using the command fastboot flash boot <recovery_filename>.img; My questions are as follows:

Why is the flashing of the custom recovery only temporary? Is this because it will be flashed to the boot partition of the inactive slot (lets assume this is slot B) which is then loaded when the device reboots, only to be used to flash the actual ROM to slot A, which will then overwrite slot B the first time that it is updated?
The command fastboot flash boot doesn't specify which A/B slot that the boot partition should belong to, does fastboot simply flash the recovery image to the inactive slot?

And one final question; the official guide contains the following line which I don't understand:

In some cases slot b can be unpopulated or contain much older firmware than slot a, leading to various issues including a potential hard-brick. We can ensure none of that will happen by copying the contents of slot a to slot b. This step is NOT optional.

Coming from a vanilla OEM install, why would one slot be unpopulated? Does this refer to scenarios in which the device has previously been used with a custom ROM which does not utilize the A/B partition scheme and may have left one empty? And finally, what does it mean by firmware? I have always thought that firmware was in general loaded from chips integrated into a devices mainboard/s and not something which is held in internal storage?
There's a lot to unpack there so feel free to elaborate or tell me that I have fundamentally misunderstood.

Note: the official site/guide of Lineage OS is actually on lineageos.org

Smartphones are a technically a mixture between a PC and an embedded system. Therefore terms like "firmware" which is usually used for embedded systems is also used in the smartphone world. Also it sounds better to say "install a firmware" compared to "copy a system partition". Also "internal storage" is for most users the user partition where they have write access. The system partition (aka firmware) is by default read-only on Android.

@Robert I see, so in this context "firmware" is actually referring to the system files? I've only ever come across firmware in the context of PC motherboards and understood it to be the lowest level of software which is embedded into physical devices themselves and exposes some sort of interface to device drivers. To me the contents of a system partition (such as my Linux root filesystem) are something completely different to firmware...

https://android.stackexchange.com/q/209673/218526, https://android.stackexchange.com/q/223975/218526


text:
Android tablet says it's OTG compatible, but it won't detect other devices when plugged in
I have a proprietary tablet that's been secured. It's a mediatek mt8163, with Android 8.0.
It's a "Managed Device" as android likes to call it. Anyways, I ended up being able to create a hack that installs an app, and I then gained root access.
When I run an OTG checker app, it says the device is OTG capable/compatible. However, when I connect the OTG cable to any device, it will only charge, it won't recognize that another device has been connected. Therefor I can't transfer data or anything of the sort, which is my goal.
Is there any setting that I may be able to access in the terminal that will fully enable OTG? I have Super User access in the terminal, so anything I can do to troubleshoot OTG from here would be greatly appreciated.

Mediatek devices rarely support OTG

@alecxs Could the OTG checker just be giving me a false positive?

I don't know that app but it may give you separate info about hardware- and software support. additional software may required

@alecxs That's kinda what I was thinking. I just can't find any other software and/or settings that may help with this.

search for other users with same issue same device sure you will find solution

Does this answer your question? Is there a definite way to know if my phone supports USB-OTG or not?


text:
Force upgrade Huawei from Android 6? Is it still supported by Google
I have a Huawei CAM L21 that I have updated to EMUI 4.1.3 which is the last update I got a prompt for.
The Android OS is Android 6. I don't see any prompt or button for any further update.
Now I am getting messages that I can't use apps e.g. YouTube with the message that Google Play is not supported for this device. I also can not find the icon for Google Play anywhere (I have checked the disabled apps etc)
This error started happening few weeks ago.
I suppose that Google stopped supporting Android 6 recently?
In any case, is there a way to force upgrade from Android 6? What would the steps be? Or is there any solution for this device?

google stopped supporting huawei for political reasons. you can use alternative stores like f-droid or sideload apk

Google still supports Android 6, but there are actually 2 different issues that aren't really related here: 1) Google cannot provide Huawei with Google apps anymore, including Play Stores and Play Services due to the US ban 2) According to GSM Arena, Huawei Y6II only received upgrades until Android 6.0 officially. Further than that, you have to resort to custom ROM.

@AndrewT.: But why did the problem occurred last month only? Did something happened?

@alecxs: But why did the problem occurred last month only? Did something happened?

since updated EMUI?

@alecxs:No I hadn't. I started getting the errors and then updated to the last EMUI


text:
Is my used phone rooted? What threats can I be at risk of? What can I do about it?
I bought a used phone (Samsung Note 8) and soon began to suspect something wasn't right. I would often have to re-enter my password from lock screen, as if it had rebooted and other small oddities. Then, when I tried to use certain apps, I would get warnings or denied access, saying my phone is 'rooted'.
I hadn't heard of this before.
Following advice from a repair shop and what I've been able to find online, I can provide these details:
2 factory resets have both failed to wipe any of my data (all pictures, video, etc untouched), as well as a number of suspicious apps.
Several root checking apps have all come back negative 'Not Rooted'. However, BusyBox and SuperUser are both detected and it fails SafetyNet test.
My device's Google Play Protection is not certified and when I attempted to register my GSF number with Google manually, it not only didn't work but displayed a completely different GSF than my own as being registered.
I don't know what to make of it all. I really hope one of you guys will recognise exactly what's going on and be able to advise.
Should I be worried? What should I do?
Thank you!

backup everything to PC and google drive, download ROM from samloader and flash it from Odin to unroot


text:
Revoking Certificates for VPN Connection
would like to ask what happens when you press on the clear credentials options during an established always-on VPN connection.
As I came across a situation where:
The CA certificated was installed on the phone, while the client cert is stored on an SD card and both have been saved as in a working always-on VPN connection. The client cert was on the SD card and when the SD card was removed, the VPN still managed to connect.
If the VPN certificates still remained under the saved connection, isn't it a security concern?

Usually certificates are imported into the user certificate store. This is the one you can reset by clear credentials.


text:
Why does WhatsApp insist to "unlock to link a device"?
When trying to connect the app to web.whatsapp.com, the app insists to "unlock to link a device", meaning I get the same screen as when I turn my phone's screen on after it sleeps.
I know other WhatsApp users don't need to do that, they get right into the QR screen without any security measures.
So why does it happen?

Disable Two Factor Authentication. It's WhatsApp's policy. Better ask them.

It's already off.

To me it seems like the authentication for linking a device is meant to be rolled out to everyone. If someone does not have it yet, it's because a) he might not have updated the app yet or b) WhatsApp is publishing its new versions as a staged rollout, so not everyone is going to get it the same time.
The need for authenticating before linking is also described in WhatsApp's help center, which leads to the conclusion above.

I'm only guessing here, and I'm probably wrong
Maybe it's due to screen pinning feature? Like they want to be sure that it's you linking with a computer?

Please add further details to expand on your answer, such as working code or documentation citations.

No it, as I'm not using that option. WA is used as a background app until it's time to enter it and link to a device.