text:
How to continue using an android system with a broken touchscreen?
I have many working android cellphones with broken touchscreen but with a working screen and I would like to use them as computing device and/or additional screen. Is there a way to do that?

Also see our broken-screen tag wiki ;)

Provided your device has an unlockable bootloader and a custom recovery (I strongly advice against buying devices which are artificially destined to become useless, that should be prohibited by law), you should.
In any case I advice anyone worrying their device could break anytime to already have unlocked bootloader and activated wifi and adb (through network, if worrying about usb port breaking) at boot.
Remember that if you are unlocking your bootloader for the first time doing so WILL DELETE all userdata and if you are not in Europe it could void your warranty.
First of all, proceed to install fastboot and adb on your pc, connect the device to the pc and then

unlock fastboot (the bootloader) on the device and flash the TWRP custom recovery (if no custom recovery is available you could somehow extract your base recovery image and enable adb and root access editing its default.prop);
boot recovery and open a shell with adb shell;
find system and userdata (and probably boot) partitions with fdisk -l /dev/block/mmcblk0;
mount system with mount -t ext4 <system_partition_file> <mountpoint>);
enabling debug is unnecessary cumbersome if you didn't have already enabled it.
First try adding the following into system's build.prop:
ro.secure=0
ro.debuggable=1
persist.service.adb.enable=1

If that didn't work, you could try switching to 1 the adb_enabled setting in <data_partition_mount_point>/system/users/0/settings_global.xml.
If even that didn't work, then you have to rebuild your boot image, properly editing the default.prop file to enable adb and then switching the adb_enabled setting like above.
You can find information on how to do that here
(keep in mind that it will probably require device-specific information like kernel_offset, ramdisk_offset, second_offset and tags_offset so you have to find those somewhere first).

unmount system and mount userdata;
add your adb server public key (placed into ~/.android/adbkey.pub) into userdata's /misc/adb/adb_keys (with a text editor or any other means) to skip device confirmation;
umount userdata and reboot the device;

Now that you can connect through adb, install scrcpy on your operating system and use the device remotely from your computer.
And if like me you forgot your pin code, you can disable it by moving the files starting with locksettings from /data/system.
Remember that if you are using file-based encryption, moving or directly changing the pin in the sqlite3 database with
UPDATE locksettings SET value = '1' WHERE name = 'lockscreen.disabled';

will make your encrypted file inaccessible.
References

Obtaining root by modifying default.prop(ro.… | Android Development and Hacking
How to authorize and accept ADB RSA key with broken touch screen on Android - Stack Overflow
android - 'adb devices' says unauthorized in TWRP - Stack Overflow
Remove /Bypass Lockscreen With Recovery | Android Development and Hacking
java - Set lockscreen to "None" programmatically? - Stack Overflow

i follow your philosophy (and i do so on my own device), however there are good reasons to keep bootloader locked. also i don't recommend modified build.prop (scrcpy doesn't require root permissions). you should add some warnings about security risks (for example deleting locksettings.db breaks FBE and causes data loss)

Added a disclaimer about unlocking bootloader.
Sorry about FBE, I forgot to mention it because I stopped using it on android because last time I was encrypting my phone the phone rebooted half-way destroying the userdata partition.


text:
Enable background location on Samsung M20?
Is there a way to allow specific apps to access the (coarse) device location when the location service is turned off?
It seems that on Samsung M20 with Android 10, the "location" button in the status bar (GPS location) needs to be active to allow any location access.
On Huawei Honor 7 with Android 5, for example, it was possible for apps with location permission to access the coarse location without GPS enabled, thereby saving a lot of battery when the precise location is not required.
Can this be achieved on Android 10 as well?

It isn't possible anymore, but I don't know how Samsung implements. [Here](https://www.androidpit.com/how-to-stop-android-apps-accessing-your-location#android 10-apps) is an interesting comparison between various Android versions wrt location

This article also confirms that the previous battery saving option is no longer available in Android 10: https://www.androidpolice.com/2018/03/08/android-p-feature-spotlight-location-accuracy-now-binary-setting-battery-saving-mode-gone/?amp

Background location is strictly limited in Android 10. There's also an additional permission in Android 10 that the apps have to declare: ACCESS_BACKGROUND_LOCATION.

source: Stack Exchange

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

sort: votes


text:
Downgrade via stock revovery is it possible and how can I do it with no root or pc
Can I downgrade zte trek 2 hd k88 tablet with stock recovery update from sd card option? I'm trying to use kingroot but it won't root my Android 7.1.1 version. Help!

Does this answer your question? Can I install TWRP with stock recovery via apply update from sd card if I change the file to update. Zip? I'm on zte trek 2

Well I know you can upgrade via sdcard and stock recovery so I do tthi k my question was that stupid. You told me you didn't need root for sp flash tool but you definitely do need rooted phone to use it. Look I'm not able to access a PC because I'm in prison. Is it possible to do anything? This tablet had TWRP and I flashed SuperSU zip and had it rooted but I foolishly flashed an up date for the original os and it wiped out the whole system and TWRPwith it and reverted back to att  Android version7.1 I m not too smart but I did figure out howto root it with TWRP but now I'm screwed I guess.

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


text:
Disable Contacts sync does not work
I have found that with my Pixel 4XL (or maybe it's Android 10) disabling Contacts syncing NO LONGER WORKS! With my older Pixel 2 it did work, and I would manually trigger a Contacts or Calendar sync when I wanted to. I have checked and double-checked all the settings (see below)... but it still syncs without me triggering a sync.
The settings I make are as follows ... Via Settings -> Accounts
At the bottom of the main accounts page, there is a toggle named "Automatically sync data" with the text "Let apps sync data automatically". If this "Automatically sync data" toggle is ON and you then select your GMail account, and press the "Account sync" button, you are able to edit the(Google) apps you don't want to auto-sync (i.e. turn sync OFF). I do this (I switch all Google apps to off), and return to my GMail account page. I then see "Sync OFF for all items" in grey text under the "Account Sync" button (my upper case for OFF above).
I then go back up to a higher level .. that is back to the main accounts page. The toggle "Automatically sync data" is still ON of course, and the grey text under it says "Let apps sync data automatically".
I don't want this to happen, so I now set this "Automatically sync data" toggle to OFF.
Here's the problem: after making this last change (i.e. "Automatically sync data" toggle to OFF), when I select my GMail account again, I now see "Sync ON for all items" in grey text under the "Account sync" button(my upper case for ON above)!!  This is completely contradictory! How can it be that after first disabling auto-sync on all the Google apps and then switching off "Automatically sync data" Google signals "Sync on for all items" ?!?
And here's the bigger problem: the above message is correct. Because if I leave the settings as above the Contacts does indeed continue periodically auto-syncing. (I know this because if I delete my contacts in the Google Contacts app in the cloud after a short period all the contacts on my phone disappear too!).
I have tried removing my Google account and adding it again, but without success.
It seems to me that this is either (a) a bug in the "Automatically sync data" implementation .. OR .. (b) a deliberate implementation of Google to fool people that their data is NOT being synced. I have also tried all sorts of variations and checked Google account settings in the cloud too (not much there!), all to no avail.
It seems I cannot now disable auto-syncing of Contacts ...
If somebody thinks I'm missing something help would be appreciated?

I am pretty sure this is just another Google scam .. because they don't want people to disable contact syncing. I posted this same message over on a Google support site, and after receiving a few feeble replies from a "Platinium" expert my post was disabled and labelled "This question is locked and replying has been disabled" .
Here is that post:
Disable contacts sync does not work
I can confirm that everything I describe is still verifiable .. I test every week or so!

Go to Settings > Apps > See all apps > ⋮ > Show system > Search > Google Contacts Sync > Disable

Although it seems that the Google Contacts Sync app may not be there on Android 13 any more, so this might not work for Android 13+

I've had the same issue and am happy that I'm not the only one.
Under Settings > Google > Account Services > Contacts sync you will find two Options - Automatically sync Google contacts and Back up & sync device contacts - to disable. I will test this the next few days and report back if it didn't do the trick.
I guess they have moved this option and replaced it with a wired design.

I had these settings already unchecked on Android 10, but the contacts of unsynced accounts still show up.


text:
Merging whatsapp database of two different accounts
So, I have two WhatsApp accounts A and B. A has chat history only till December '19 while B's chat history start from January '20. I want to have one account with mobile number that of A, groups of B and chat history combined. For that I plan to

Somehow introduce A's chat history to account B by modifying Whatsapp databases.
Then doing a change number of B to A. (This step will delete old A account)

I want help with the first step.
PS: I have looked online on how to merge Whatsapp databases but they all address merging databases of same account here I have to different accounts and also all articles on it are really old.

Merging two different account in whatsapp is not possible, when you change the number, all your groups will remain same but it can not merge two accounts. Whatsapp backup or restore the chat on the bases of phone number only,when you start new number, it can not recognize it as same account.

I know that you cannot directly restore a backup to a different account. But it is possible to decrypt a database, modify it and then encrypting it again. This is new database can be restored. Refer this.


text:
Fastboot detects phone in the fastboot mode but not when phone is on
I'm trying to flash a custom recovery image with fastboot flash recovery recovery.img but it can't find the image, hence I'm powering it on and getting into location where the image is to execute the command. The problem is fastboot doesn't detect the phone when the phone is on but ADB does detect it. How can I troubleshoot this ?

Fastboot images have to be stored on the PC where you execute the fastboot command not on the device.
Therefore the common process is:

PC: Download the image to be flashed
Boot the device into bootloader/fastboot mode
Connect the device to the PC via USB
Execute on the PC fastboot flash <target_partition> <path to the image on the PC>

Flashing firmware images that are stored as image file on the device is usually a job for a recovery ROM such as TWRP.


text:
How to root Oppo Realme 2
I couldn't find a guide online to root my Oppo Realme 2 (RMX1805, Color OS Version 6.0, Android Version 9). So how can I root my Oppo Realme 2?
Update: I have unlocked my bootloader following the instructions here.

Oppo/Oneplus .ozip Firmware decrypter

first step is unlock bootloader, which you have done already. i will post this step as mandatory
1) unlock bootloader: WARNING all data lost

download latest platform-tools to PC
enable OEM unlocking in developer options
reboot device into bootloader mode (keep holding Volume Down while rebooting or power on device with Volume Down + Power)
connect device with usb cable and install usb drivers for PC
navigate to folder platform-tools from cmd.exe
unlock bootloader from fastboot (confirm with Volume Up)
fastboot devices
fastboot flashing unlock

2) boot custom recovery without modifying/flashing device

download custom recovery TWRP into platform-tools folder
boot TWRP from fastboot (do not flash)
fastboot boot twrp.img

DO NOT swipe to allow modifications of system
wait 30 seconds then install adb usb drivers for PC
tap the icon ≡ lower right corner and check the log for
a) Data successfully decrypted (or no error)
b) Failed to mount '/data'

3) dump the current boot partition from device (depending on mounting /data a) successful or b) failed)

a) backup boot.emmc.win from TWRP

TWRP - tap Backup - select Boot partition
copy TWRP/BACKUPS folder to PC via MTP

b) backup boot.img from adb
adb devices
adb pull /dev/block/bootdevice/by-name/boot boot.emmc.win

edit: (other method)

c) extract boot.img from OTA (stock ROM) with ozipdecrypt.py
if for whatever reason TWRP is not available (or not booting) you still can find stock ROM for your device. However, flashing boot.img from download is risky, make 100% sure that this build number is matching your device
ro.build.description=S88051AA1-user 9 PKQ1.190319.001 eng.root.20190830.025347 release-keys
ro.build.display.full_id=RMX1805_11_A.60_190830

install Python 3.8.2
install pycryptodome
pip3.exe install pycryptodome

download and extract oppo_ozip_decrypt-master.zip
download stock ROM
run ozipdecrypt.py from cmd.exe
python.exe ozipdecrypt.py RMX1805EX_11_OTA_0600_all_LtoqeM8aS1Gq.ozip

check folder out and rename out\boot.img into boot.emmc.win (just to not confuse with encrypted boot.img, name of file doesn't matter)

(i have uploaded the converted stock ROM here, recovery.img is missing)

4) root your device with Magisk

a) install Magisk directly from TWRP (may brick device)

copy Magisk-v20.4.zip to Storage or MicroSD via MTP
TWRP - tap Install - select Magisk-v20.4.zip - Swipe to confirm Flash
reboot device (TWRP - tap Reboot - tap System)

b) patch boot.emmc.win "offline" with Magisk Manager

reboot device (TWRP - tap Reboot - tap System)
copy boot.emmc.win to Internal Storage via MTP
install + launch MagiskManager-v7.5.1.apk
enable Advanced Settings - Preserve force encryption
tap on Install (1) - Install (2) - Select and Patch a File
allow permissions for storage
navigate to Internal Storage and select boot.emmc.win
(this will start patching immediately but does not modify your device - no worry the text "Flashing.." is misleading)

(5) flash the rooted boot image from fastboot

copy magisk_patched.img to PC via MTP
reboot device into bootloader mode (keep holding Volume Down while rebooting or power on device with Volume Down + Power)
boot magisk_patched.img without modifying/flashing device (for testing purposes)
fastboot devices
fastboot boot magisk_patched.img

if it works: reboot device into bootloader mode
flash magisk_patched.img to boot partition (may brick device)
fastboot flash boot magisk_patched.img
fastboot reboot

Unbricking (method b) only)

reboot device into bootloader mode (keep holding Volume Down while rebooting or power on device with Volume Down + Power)
flash your backup of original boot.emmc.win from fastboot
fastboot devices
fastboot flash boot boot.emmc.win
fastboot reboot

In the second step, not able to boot TWRP from fastboot. It shows "booting... FAILED (remote: unknown reason)"

TWRP is not requirement.. update question with screenshot of device info build number (settings - about phone) so we can search for boot.img

I think the ROOT of Oppo phones is not too difficult because it has Recovery Mode by itself, can directly flash ROOT files.
Important: Please backup your data and download the original ROM file on OPPO homepage before doing so, in case of any possible uncertainties.
Now, all you need to do is download the SuperSU file, save it to the storage device or SD card.
Download this file: SuperSU 2.82 SR5
If it does not work, try with this file, it works on most Oppo devices (however, this is not the latest version of SuperSU, but it is still fully supported): OPPO SuperSU
Next, turn off the phone. Now start pressing Volume Down and Power keys together for a few moments. Wait for a while, the screen will display the language selection menu, it supports English, Simplified Chinese and Traditional Chinese. Here, we choose English. You can move options with the volume up and down keys, select them with the power key, or you can press directly on the screen.
In the ColorOS RECOVERY options panel, select Install from storage device, navigate to the SuperSU file you just selected and flash it.
Before rebooting, go to Wipe data then wipe cache.
Everything is completed, when you reboot, on the phone screen will appear SuperSU, you have successfully ROOT!
Note: Using this method SuperSU will be saved to the system partition. Ie you will not be able to uninstall it but can turn it off as other system applications. To remove ROOT, go to Oppo homepage, download the original ROM, then use the above method to reinstall the operating system.
Good luck.

How can unsigned zip flashed from stock recovery?

@alecxs If you need to restore the original ROM of the manufacturer, follow the above method.
ColorOS RECOVERY is a simple recovery, it is not as functional and difficult to use as CWM Recovery or TWRP, but it meets the needs of inexperienced users, easy to use without worrying about damaging the system operating.
If you have installed TWRP or CWM Recovery, you will not lose them when you restore using the manufacturer ROM file, but if you want to remove TWRP or CWM Recovery to use ColorOS RECOVERY, you must to flash manufacturer ROM with SP Flashtool.

of course you can flash OEM-signed OTA zip from ColorOS Recovery. but SuperSU is not signed with oppo certificates. if it is true what you say, this is a big surprise and security vulnerability

ColorOS Recovery is different from OTA. With the default OTA on your phone, your device must not have ROOT, but with ColorOS Recovery, it's like developer mode, rescue your phone when something goes wrong, not just an OS update .
Not a security vulnerability, it's a great way to save your phone.


text:
Recovering Deleted SQLite Records on Disk
I'm trying to access the raw screentime data that Android tracks - located in /data/data/com.google.android.apps.wellbeing/databases/app_usage on my OnePlus 7 Pro.
My problem is that the database only goes back a month's worth of records - presumably old records are deleted regularly to conserve space.
I considered doing a full disk dump and attempting some type of data recovery, but I'm unsure of exactly what to do - given that it isn't full files that are deleted, just SQLite records, I don't know if conventional data recovery tools would easily find anything.
I also tried running undark on a copy of the database to see if I could get anything out of it, but as I suspected nothing new was found.
Are there any known methods or tools for recovering the deleted SQL records (assuming they haven't been overwritten) from disk, preferably without doing a full-disk dump?
I can provide more information if necessary.

The SQLite DB file is being updated a scores of times daily (by adding new records and deleting old ones). Filesystem cannot provide any information when a file with same name is overwritten on the same location. So if the DB file itself doesn't have the deleted records (what undark tries to recover), I don't think it would be possible to recover the deleted entries by recovering the DB file.

Ah, that's what I feared. Thank you for confirming it.


text:
How to disable zip verification flag in stock recovery.img?
In stock recovery there is an option to install zip from the sdcard but it doesn't allow installing zips with unknown signature. Twrp can install any zip without concerning about the the zip signature. So my question is simple i.e.

What changes are required to stock recovery for disabling the signature validations provided a rooted adb shell in stock recovery and unlocked bootloader?

Any hex-patch for it or modifying any flag of prop.default file?

It's a more development related question. And after the change you want it would no more be a stock but custom recovery.

Do you mean kernel or stock recovery source code changes are required to achieve this?

If the device uses Verifying Boot, modification of the recovery ROM would be of no use to you because afterwards it could not be booted anymore.

I have already removed avb checks from recovery.fstab + kernel sources.. Made a permissive kernel and it boots fine + giving me a permissive mode on system.

Also, I can modify system from stock recovery, I have tried to make MagiskManager a system app and it worked fine.

The problem is I was not able to understand how exactly Magisk install itself via flashing zip through twrp... So, I am just trying to disable the signature check and install it via stock recovery...

Magisk updater-script is written for TWRP only. AFAIK you can't install Magisk and TWRP same time in recovery ramdisk (from TWRP), unless you have TWRP built with special "install to ramdisk" option. Magisk does not official support Android 10 yet, it has issues

Understand that Magisk script will not work(because of Android 10 changes or might it will work after little modification like changing system mount point to /mnt/system which I can access on stock recovery adb shell..) but it should be possible to disable signature verification flash in stock recovery Right?


text:
Always allow install via USB on Xiaomi
So I'm trying to install my app on the Xiaomi Redmi Note 8Pro but there is a pop-up window that appears at the end of the installation with "allow the access". Is there a way to set "always allow" for this device so I don't have to wait for this window to show up and then click allow?
Thanks


text:
How does Android know my password contains only numbers?
My Android phone's unlock type is set to a password, but it only contains numbers for fast unlocking (I'm well aware that a PIN is an option, but this way presents more possibilities to an attacker). My phone's USB storage is encrypted so that I must enter my password on boot, and when I do, I am provided with a numerical-only keyboard. How does my phone know that my password only contains numbers? Does it store the password in plain text?

Your password certainly shouldn't be being stored in plain text, although without reviewing the exact software your phone is running I can't rule the possibility out. More likely, when you set the password, it checked which characters are used and set a flag (in the plain-text portion of the system where the boot code and device unlock functionality live) indicating which keyboard type was most suitable. It probably shouldn't do that, but it could reasonably be described as a convenience feature.
Alternative explanation: are you 100% sure that, when you set your password, you did it in a way that allowed setting non-numeric characters? Maybe you have a PIN by accident. Try changing your password, and see what keyboard it gives you. If it's the full keyboard that you expect, that's an argument for the "sets a flag" theory. Try adding a single letter or symbol the the password and seeing if it changes the keyboard presented when unlocking.


text:
How can I hide the info panel on YouTube app?
How can I hide the info panels such as the following "WHO covid-19 banner" on YouTube app?

Link to the video: click here
Information about the info panel giving topical context: click here

I may be wrong but I don't think it's possible. I see no way to do that even on a rooted device using Vance Magisk module

Hello Franck. Given the screenshot I believe you are looking for a solution targeting YouTube app. If not, feel free to add the term "mobile website" too. Also, I added relevant link to provide more context about the banner.

@Firelord got it, thanks for the edit!


text:
Google sign-in for apps loops
I have several apps that use sign in with google for authentication. Problem is, the sign in screen loops back to select an account after presenting the alllow %app to access these parts of your google account. I hit allow, and it sends me back to account selection instead of signing in.
It's not just one app it's every non-Google app doing it.
Device is a Pixel 3 XL on Android 10.
How do I get it to let me sign in with google in 3rd party apps using google play services? Ones that open a browser to authenticate with google are working fine

Can you give an example with screenshots? Link those apps from Play Store

It was a temporary failure on Google's side which has since been fixed.


text:
Is it possible to automatically sync existing (and new) android contacts with office365?
Scenario: After meeting a new acquaintance, we exchange our contact details (phone number, email ..etc). These get saved using the default contact application on an android phone. Later, when logging into my office365 account via a desktop web-browser, the new contact is not present in the address book! Checking the phone shows that it has been saved on the device. The official Outlook app from Microsoft has been installed on the android phone and is capable of sending/receiving email.
Why did the contact not sync up? Is there anything that can be done to make the contact sync happen automatically?
Am open to the idea of switching to a different android email app to get things working, but would ideally prefer to keep using Outlook (or at least a non-Google contacts/calendar/email app!).
If it matters: I have administrative access over the phone as well as the office365 account in question.

In Outook settings -> your mail@office365.com, is "Sunc contacts" enabled?

@ReddyLutonadio yes, the option 'sync contacts' is enabled, but it does not appear to do anything. :(


text:
how to uninstall beta gcamera app downloaded from unknown installation source for samsung galaxy a50s (SM-A507FN)
I have a new phone. Samsung Galaxy A50s. Model number SM-A507FN
https://www.gsmarena.com/samsung_galaxy_a50s-9806.php
I downloaded Arnova's Beta 6: GCam_5beta6.200105.0445build-7.2.018.apk
for Android 9+ phones from https://www.celsoazevedo.com/files/android/google-camera/dev-suggested/
assuming it will work on my phone. However, the app has been crashing frequently and it does not work.
I have upgraded the software of the phone so it was upgraded to Android 10. Kernel 4.14.62-17887617.
This app was not installed from playstore so I don't know how to uninstall it now.
So please let me know how to uninstall this app.

Does it not appear in the list of installed apps either in settings or in the app drawer?

no it does not appear in settings, and play store.

Please see this answer. The package name of your Arnova is com. goggle. Android. GoogleCamera. But I am not sure if this approach will be safe. Just pointing out a possibility


text:
Mount USB OTG to specific destination folder on Nexus 6
I have an app that looks for videos in a specific folder: “videos”. I'm trying to get my FAT flash drive to mount on the folder videos under /sdcard internal storage.
Nexus 6 (no SD card slot)
LineageOS 16
(Android 9)
Tried:
~$ su -mm
~# mount -o bind /mnt/sdcard/videos /mnt/media_rw/A064A9EB64A9C3FE

Did not work and editing the fstab file does not save after reboot.
Android fstab file:
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
#

# NOTE: /system partition is now early-mounted and the fstab entry is specified in device tree (duplicated below for recovery image purposes only):

#<src>                                              <mnt_point>     <type>  <mnt_flags and options>                                         <fs_mgr_flags>
/dev/block/platform/msm_sdcc.1/by-name/system       /system         ext4    ro,barrier=1                                                    wait,recoveryonly
/dev/block/platform/msm_sdcc.1/by-name/userdata     /data           ext4    rw,nosuid,nodev,noatime,noauto_da_alloc,nobarrier               wait,check,formattable,latemount,encryptable=/dev/block/platform/msm_sdcc.1/by-name/metadata,reservedsize=128M
/dev/block/platform/msm_sdcc.1/by-name/userdata     /data           f2fs    rw,nosuid,nodev,noatime,inline_xattr                            wait,formattable,latemount,encryptable=/dev/block/platform/msm_sdcc.1/by-name/metadata,reservedsize=128M
/dev/block/platform/msm_sdcc.1/by-name/cache        /cache          ext4    rw,noatime,nosuid,nodev,barrier=1,data=ordered                  wait,check,formattable
/dev/block/platform/msm_sdcc.1/by-name/cache        /cache          f2fs    rw,nosuid,nodev,noatime,inline_xattr                            wait,check,formattable
/dev/block/platform/msm_sdcc.1/by-name/modem        /firmware       ext4    ro,barrier=1,context=u:object_r:firmware_file:s0                wait
/dev/block/platform/msm_sdcc.1/by-name/persist      /persist        ext4    rw,nosuid,nodev,noatime,barrier=1                               wait,check,notrim
/dev/block/platform/msm_sdcc.1/by-name/boot         /boot           emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/recovery     /recovery       emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/misc         /misc           emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/modem        /modem          emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/mdm1m9kefs1  /mdm1m9kefs1    emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/mdm1m9kefs2  /mdm1m9kefs2    emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/mdm1m9kefs3  /mdm1m9kefs3    emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/sbl1         /sbl1           emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/tz           /tz             emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/rpm          /rpm            emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/sdi          /sdi            emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/aboot        /aboot          emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/versions     /versions       emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/logo         /logo           emmc    defaults                                                        defaults
/dev/block/platform/msm_sdcc.1/by-name/frp          /persistent     emmc    defaults                                                        defaults
/devices/*/xhci-hcd.0.auto/usb*                     auto            auto    defaults                                                        voldmanaged=usb:auto
/dev/block/zram0                                    none            swap    defaults                                                        zramsize=536870912,notrim,max_comp_streams=4

Hard to find info on Android mounting system. These are what I have found:

How to bind-mount "data" and "obb" folders from external SD card in "/sdcard/Android"?
How can I make a symlink (or equivalent) inside /storage/emulated/0?
Mount USB OTG to specific destination folder
Let's clear up the confusion regarding storage in Android once and for all, including adoptable storage in Marshmallow.
How the Mount SD Card Android Process works

mount command takes source first, then the target. You are doing it inverse. It should be: mount -o bind /mnt/media_rw/A064A9EB64A9C3FE /mnt/sdcard/videos. But that won't work either because apps don't have direct access to USB OTG drives. Also there are mount namespaces involved. Explained here: https://android.stackexchange.com/a/218338/218526

ahh thanks for the tip. I forgot to say I changed to Global namespace in Magisk but it changes back on reboot. I'm typing it in direct from the device terminal. Is there anyway to get it to work? I am rooted

like somthing mount -o bind /mnt/media_rw/A064A9EB64A9C3FE /mnt/storage/extSdCard//videos ? even tho I don't have a real ext sdcard


text:
Changing third-party websites on android device without browser extensions available
I'm searching a way on how to change behavior of some website in mobile browser.
For example:

Remove annoing Ad (specific one)
Change some elements on a website, to make it easier to read on small screen (change some css)
Make site measure how much time I've spent on it, and "block" me from using it more time per day than I've configured.

On desktop browser I'm usually solving this tasks by using extensions like TamperMonkey/GreasyMonkey (which allows me to add custom JavaScript code to page and do what I want on the page), StayFocusd (to limit distractions) and so on.
But most of mobile browsers doesn't have extensions (and it's understandable because they often writen poorly and could eat too much CPU on not-so-powerfull device).
To be honest, Firefox for Android has addons but there are very few. Just adblocking, privacy and some bugfixing extensions. No TamperMonkey/GreasyMonkey analog.
Also, I know, that UCBrowser has it's extension store, but my Chineese is bad, and the store is all on Chinesse :)
I came to the folowing idea:

Setup my own DNS server and configure my Android to use it (now it's possible without root)
Setup my own squid proxy server
Create self-signed SSL-certificate and add it to my Android's certificates storage.
For sites where I want to make some augmentations, my DNS should give IP-address of my squid-proxy (which is using my self-signed cert or generating cerificated for needed sites, signed by my self-created authority certificate)
The proxy should be loading the real site, and patch it's html files, adding my JavaScript file into it.
So I would be able to change parts of the sites, removing ads, measure time spend and so on. Everything is possible!

I have knowledge and skills to make all of the described steps (or it seems so), BUT! I don't have enough free time.
I want to know, maybe there are something like this implemented in a single service?
Or maybe you could direct me to some easier solution of the problem?

You have Tamper monkey and Greasemonkey as Firefox add-ons. I use Tamper monkey when required. Why not use them?

Kiwi browser supports all chrome extensions

beeshyams thank you, You're right, now then I've digged deeper inside addons menu in mobile Firefox I've found TamperMonkey.

Second problem: it would be best if solution could be applied to any browser because one of the goal is to limit time, spent on distracting websites. So if Firefox with TamperMonkey and JS banned me from visiting some website, I just could open it in Chrome, or Opera, or Vivaldi (I have all of them for mobile website development and debugging).


text:
How to run `chmod` command on boot on Android 10?
I have an Android 10 device whose bootloader is unlocked. I have downloaded its firmware, modified it and get the adb shell rooted in recovery. Following are the steps for it:

Download AIK
Extract recovery.img and modified ramdisk/default.prop as follows:

 ro.secure=0
 ro.adb.secure=0
 security.perf_harden=0
 ro.debuggable=1
 persist.sys.usb.config=adb,mtp

Replace split_img/recovery.img-zImage with permissive kernel(built from kernel sources)
Repack it and flash it on the device.
Reboot to recovery and run adb shell. It will be rooted.

I want to add simple chmod 666 /dev/diag command and I have mounted system with stock recovery mount system option and then tried to do following:

Write chmod command at the end of init.rc.
Tried creating new rc scripts under /system/etc/init/ folder. New rc script has just chmod command written in it.
Tried appending(e.g. echo "chmod 666 /dev/diag" >> /system/etc/init/cameraserver.rc) chmod command in other rc files in /system/etc/init/ folder.

All were not able to change the required permissions. init.rc changes lost after reboot. Other files/changes persist after reboot but doesn't change the permission of diag port.
OTOH, I was able to make a system app with changes in /system/app/ folder.
Is there anything else that I can try to run the chmod command after phone boots?

echo "chmod 666 /dev/diag" >> /system/etc/init/cameraserver.rc won't work. You need to provide an init trigger (on ...) as well. Simple is to edit the ueventd.rc file (it must be from vendor, not AOSP) which creates /dev/diag device node. Replace the relevant statement inside that file to set whatever permission mode you want.

If that's an option for you: [tag:tasker] can react on the BOOT_COMPLETED event and run e.g. a terminal command as root, like ! chmod 666 /dev/diag (the exclamation mark tells it to run the command as root).

@IrfanLatif on property:sys.boot_completed=1 event helps me to change the /dev/diag permissions but it doesn't help me to change /vendor/bin/diag_mdlog permissions.. Any suggestion? I looked into ueventd.rc and there is no diag related changes..

@Izzy I think tasker can run it as su only if device is rooted but here I don't have a rooted device when it boots to system but only have rooted adb shell when it boots to recovery.

Ah, yes, that is true. But your question uses the [tag:root-access] tag – which says "for questions spefically requiring root permissions". So that tag basically implies your device is rooted. Maybe you [edit] your question and clarify? While at tags: what part is about rom-flashing, and which about selinux or systemless-root? Just asking ;)

@IrfanLatif I have rooted system with modifying the prop.default file from recovery rooted adb shell and then modified the ueventd.rc of vendor as you suggested. Thanks :)

@Izzy root-access as my device is rooted in recovery, rom-flashing flashed modified recovery.img and full firmware before that, selinux disabled it actually making permissive, systemless-root you can give ideas if I can install Magisk via rooted recovery :p

Your question is not about the flashing itself, nor about issues with selinux – so I'd remove those two definitely. As you basically ask for "any way to run that chmod", it's not about systemless root / twrp; if that's something you want to figure out, I'd make that a separate question (short answer: probably no, unless you patched out signature check from that recovery – or there's TWRP for your device). Those tags are irritating/misleading (note this is an advice/recommendation, not a "you have to").

echo "chmod 666 /dev/diag" >> /system/etc/init/cameraserver.rc won't work. You need to provide an init trigger as well. For instance:
~# echo "on boot" >/etc/init/dev_diag_chmod.rc
~# echo "    chmod 666 /dev/diag" >>/etc/init/dev_diag_chmod.rc
~# chown 0.0 /etc/init/dev_diag_chmod.rc
~# chmod 0644 /etc/init/dev_diag_chmod.rc
~# chcon u:object_r:system_file:s0 /etc/init/dev_diag_chmod.rc

But even simple approach is to edit the ueventd.rc file (which is read and executed by Android's device manager) provided by vendor (since /dev/diag is a hardware specific interface) which creates the device node. Replace the relevant statement inside that file to set whatever permission mode, owner and group you want. E.g. you can replace:
/dev/diag    0660    system    system

With:
/dev/diag    0666    system    system


text:
Android-x86 not streaming videos in apps
I have installed Android for PC from android-x86.org. The Android version is Pie. It is working fine, but videos are not being streamed. YouTube is working fine when opened in Chrome but no app is streaming the videos.
Android native libraries are also downloaded using settings. The OS is connected to VirtWiFi and LAN and even the YouTube ads also work in the YouTube app but only audio, no video.
Is there a different network route for Chrome and for apps? I can build a custom Android app also to troubleshoot the issue but not sure what to start from?

I would assume that there is a video codec problem if you don't get the video image. The codec support, especially the hardware based codec support is currently very limited. What GPU do you use? For questions on Android-x86 you should use Google Groups list: https://groups.google.com/forum/#!forum/android-x86

Thanks for reply. If it is a codec issue then chrome should also not stream the videos. But videos are not working only in apps. Am I right? Looks like chrome and apps have different way of connecting to internet.

Based on some commit messages it seems to me like Chrome has it's own codecs integrated and don't rely on the platform codecs.

Oh.. any idea how to troubleshoot which codec is missing and from where to download them

Android.x86 is working on the codecs hence I am sure there is not a simple way to just download and install a codec. Check the logs while the playback fails may be this unveils more details and allows you to open a bug ticket on the android.x86 project.

I solved it by disabling the FFmpeg codec in the preferences.
Weird, but it fixed the issue when I was using an old HP Probook 4520s with integrated graphics.

I was using my old 1st gen i7 HP PC (and its iGPU).
What I have done in order to fix this is to install an old AMD card (because Nvidia cards aren't supported), and now it works.
EDIT: This was happening because the iGPU dodn't support HW video decoding, and so it failed and required the external AMD gpu


text:
how to re-install TWRP from Linux?
Android version:       4.4.3
HTC Sense version:     6.0
software number:       2.23.661.2
HTC SDK API level:     6.25

kernel version:        3.4.0-g52343b3
                       and @ABM105 #1
                       SMP PREEMPT
build version:         2.23.661.2.CL3568029 release-keys

Previously I was locked in a loop where only TWRP was available.  The developer option is certainly enabled.  At the moment, not sure how to get back to the TWRP menu.
How do I accomplish a fresh install of a new version of TWRP?  I was going to connect it with Linux.
TWRP says:

How can I uninstall or remove TWRP from my device?
For the vast majority of devices, you don't actually remove TWRP to
  get back to the stock recovery. Installing a different recovery is
  your only real option. Simply install whatever recovery that you want
  and that will overwrite or replace TWRP. Usually you can follow the
  instructions on our website for installing TWRP manually, only use the
  file for whatever recovery you are choosing to install instead of the
  TWRP file.
Note, we don't keep or maintain a database of stock recoveries. If you
  are trying to reinstall the stock recovery, you will have to find a
  copy of the stock recovery on your own.

although I'm not entirely clear on what they mean by "another recovery", but, how do I actually install from Linux?
see also:
https://www.xda-developers.com/how-to-install-twrp/
https://www.androidguru.eu/twrp-installation-tutorial-linux-mint-ubuntu-users/
basically, so long as I get the correct image it's quite simple?  Since it was already installed I don't need to muck with locked boot loaders??
What does "fastboot oem lock" do?

What is the difference between twrp-version-phone.img and twrp-installer-version-phone.zip?

The quoted text is for "uninstalling" TWRP
If i understand your question correctly, your only concern is to update TWRP to newer version
before flashing new image it is recommended to test if it works without flashing (not all devices support this)
fastboot boot twrp.img

installing TWRP depends on device
some devices don't have recovery partition. in this case you need another self installing zip file which will install TWRP in recovery-ramdisk in boot partition
if device has separate recovery partition you can simply flash the partition image
this can be done from fastboot
fastboot flash recovery twrp.img

from pc command line
adb push twrp.img /dev/block/bootdevice/by-name/recovery

or even from TWRP itself in Advanced - Terminal
cat /external_sd/twrp.img > /dev/block/bootdevice/by-name/recovery

Some TWRP variant does allow backup/restore recovery. in this case you can just rename the twrp.img into recovery.emmc.win, place it into empty backup folder TWRP/BACKUPS/*/recovery and restore backup
Note: Your bootloader must remain unlocked as long as TWRP (or any other modified partition) is installed. re-locking bootloader is only recommended after you flashed full stock ROM including stock recovery. Otherwise you will brick


text:
Asus Zenfone Max Z010D - Bootloop problem
My Asus Zenfone Max Z010D on Android 6.0.1 suddenly started showing, "Unfortunately, Google Play Music has stopped" and it did the same for almost every app, and restarted on its own.
After some research, I came to know that it went into a boot loop because it is continuously loading and does not start after that.
With zero knowledge of Android and two days of Google search, I tried the following things, however, nothing has solved the problem and my phone is still not working.
I tried:

ADB sideloading: I switched the phone to recovery mode, and selected apply update from ADB. I found the firmware file for my model from the official Asus site and executed the following command from my PC: adb sideload UL-ASUS_Z010-WW-13.8.26.110-user.zip
However, it showed the following error:
E:Can't mount /cache/recovery/last_log
E:Can't open /cache/recovery/last_log
E:failed to mount /cache (Invalid argument)
E:Can't mount /cache/recovery/last_install
E:Can't open /cache/recovery/last_install
E:failed to mount /cache (Invalid argument)
E:Can't mount /cache/recovery/log
E:Can't open /cache/recovery/log
E:failed to mount /cache (Invalid argument)
E:Can't mount /cache/recovery/last_log
E:Can't open /cache/recovery/last_log
E:failed to mount /cache (Invalid argument)
E:Can't mount /cache/recovery/last_install
E:Can't open /cache/recovery/last_install
E:failed to mount /cache (Invalid argument)
E:failed to mount /cache (Invalid argument)

Original screenshot of the output
I was not able to find a solution to the error.

Secondly, I tried flashing the boot image available in the extracted firmware file as follows:
C:\Program Files (x86)\Minimal ADB and Fastboot>adb devices
List of devices attached
GBAXB700D719RCK recovery

C:\Program Files (x86)\Minimal ADB and Fastboot>adb reboot bootloader

C:\Program Files (x86)\Minimal ADB and Fastboot>fastboot devices
GBAXB700D719RCK fastboot

C:\Program Files (x86)\Minimal ADB and Fastboot>fastboot flash boot boot.img
target reported max download size of 26843546 bytes
sending 'boot' (9740 KB)...
OKAY [  0.339s]
writing 'boot'...
OKAY [  0.212s]
finished. total time: 0.552s

C:\Program Files (x86)\Minimal ADB and Fastboot>fastboot reboot
rebooting...

finished. total time: 0.003s

C:\Program Files (x86)\Minimal ADB and Fastboot>

Original screenshot of the terminal output
Even after that, it kept on loading with the logo on the screen and never started properly.

Maybe everything that I have said and done is wrong. Please help me to get my phone working properly.

I think this is a misunderstanding. The boot image is just a very small run-time which is executed at the beginning of the boot process. If it is finished it loads the system or the recovery. I assume that the installed bootloader works without problems, but your installed OS (containing the kernel and the system partition) is still broken. I would recommend to flash TWRP recovery via fastboot, boot it and then try to sideload the image you have. Alternatively search for a custom ROM with a more recent Android version for your device.

So, for me to do anything, I am not able to unlock the bootloader...it says access denied, even with the unofficial method. Can you suggest me any method?

Aside from ADB sideloading, there is a direct option on the phone called "Apply update from SD card" after entering fastboot mode. Maybe, you should try that.

Enter fastboot mode by pressing the Volume down and Power button at the same time.
Once you reach the main menu, look for the above specific option.
On the SD card, the correct firmware zip file required for your phone should be present. Do NOT rename it or alter it.
After entering the option, locate the firmware file on the SD card and select it, apply the changes.

If the problem still persists, I think you should dig deeper into how to unlock the bootloader of your phone.


text:
How to decrypt a dumped android partition on a pc?
I chose to boot android on the from the sdcard in order to have more storage. So I dumped though dd the internal 32Gb storage to the 256Gb sdcard with the partition table included. By just changing the kernel command line and the ro.boot.bootdevice property, the device now boots from the sd card after loading the kernel from the internal storage.

I then put the sd card in a pc, fixed the partition table size to match the one of the sd and then set up the userdata partition (/data) to fill the remaining space.
Then I wiped the filesystem and performed a factory reset in order to hope it would create a 250Gb filesystem for /data. But while data was mounted from the sd card and that the mapped block device was 250Gb large, it was formated using 25Gb instead of 250GB (the original size on internal storage).

This means I have to grow the /data filesystem using an external computer. Now the question is, what’s the exact dmsetup command in order to create the block device for decrypting it for growing the ext4 filesystem using resize2fs?
Given also I forgot which is the file containing the decryption key.

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


text:
How to safely upgrade unlocked phone?
I have a Samsung Galaxy S8 from Virgin Mobile that was SIM unlocked and I'm now using Mint. I was prompted for an update by Samsung and it relocked my phone, I had to contact Virgin Mobile to unlock again, which took several days.
I'm now getting prompted for another update. How can I install without having my phone relocked? I also have this permanent Notification saying my phone can't connect to the Sprint OMADM network ("Configuration not completed"), any way to make that go away? Can I just install a new Android image?


text:
What feature of Android provide security to reset the /system changes on reboot?
I am stuck in a weird situation where I have two Android 10 phones from Samsung. I have rooted the stock recovery of both device as instructions given here. The problem is when I change something via recovery like create a new /system/etc/init/custom.rc file then on One device it persist on /system after reboot but on another it doesn't. The changes does persist when I reboot to recovery back.
I want to understand which layer of Android applied this feature:

Kernel
Stock recovery
System
or another

Any suggestion? and how to fix it?

probably misleading but one thing i heard about recently is FEC

I checked it in the kernel sources of both and its turned on(CONFIG_DM_VERITY_FEC=y) in both. Don't know what I am doing wrong. But its worth to know about FEC :) I should disable it as it will not affect the device functionality Right?

it is part of dm-verity and can be safely disabled

Removing avb checks form boot.img/ramdisk/fstab.qcom has fixed the issue.


text:
Is it possible to access another partition from recovery partition using command line?
Here's a situation: I've got Meizu 5 pro flashed with Flyme 6 which I flashed using TWRP recovery. I made few tweaks of the partitions (deleting and recreating and renaming) and then I wiped data.
Now the phone boots but as soon as it hits main interface I get error saying "internal storage is running out the process has been stopped" then it reboots and starts over, hits the message, reboots, starts over .... stays in this loop.
I still have access to:

Meizu's recovery mode (which is kinda useless if I can't access root directory)
locked fastboot mode (also little bit useless if it's locked)
recovery partition through USB

I also have MRT dongle for repairing Chinese phones but it doesn't seem to work unless the phone boots fully into Android.
What I can do about this ? Any help much appreciated.

Yes, I'm with you, but to flash TWRP onto the phone I need unlocked bootloader. My bootloader is locked hence I'm trying to think of a workaround.

When I run fastboot flash recovery recovery.img I get "Permission denied".

What flashing does ? It just extracts all files from an image or zip file. Correct ? Sorry this is the first time I'm playing around with internals of Android.

@alecxs  I wasn't locked before. It got locked when I flashed it with Flyme 6.

If you want you can take a look here for more info:  https://forum.xda-developers.com/meizu-pro-5/help/meizu-reboots-internal-storage-running-t4074897

Yes, that's what I'm trying to do. I'm trying to get my phone to use TWRP, from which I can flash Flyme 5, unlock it and then I can flash the phone with custom ROM.

@alecxs SP Flash Tool requires a scatter file that supposedly comes with ROM, I've got a few ROMs here and none includes a scatter file hence I can't use the tool.

I reworded my post.

The answer is no. The partition will show up as a root directory in command line interface. The same goes when trying to browse the partition with Python.


text:
Flashing CM13 on Galaxy Tab GT-P3100
I have a Samsung Galaxy Tab 2, GT-P3100. It has quite an outdated firmware and is bulky with loads of unnecessary apps.
I wish to flash it with CM13.
Now firstly my device isn't rooted. Secondly I have no prior experience in rooting/flashing. Lastly, I don't have an SD card, but do have a PC (and of course internet access to download all the necessary tools).
Under such circumstances, is there a way for me to flash CM13 without having to purchase or lend an SD card?
Also, is it worth the flash? Will CM13 run at all, given about 500 mb or RAM is at most free when the device is idle? If not, what are my alternatives, if any?
Edit: I have the zips for CM13 and Gapps.

Caution: I have rooted my device for the first time, I have no prior experience in rooting. Continue at your own risk.
I am not sure about the RAM part, but we can flash the custom ROM from the internal SD card too. The following link is for explains the installation process for Installing CM 10.1 on Galaxy Tab2, however, we can follow the same steps for GT-P3100:
https://www.droidviews.com/how-to-install-cyanogenmod-10-1-rom-on-samsung-galaxy-tab-2-7-0-and-tab-2-10-1/
I also followed the following youtube video and downloaded the zips for CM and Gapp from the link in the description:
https://www.youtube.com/watch?v=MYZUKqGPNcE
Also, I had an error while installing the Gapp(it got aborted). I fixed it using the default option in the menu.
Finally, the device is working properly, there was no issue due to the error encountered during Gapp installation.

Thanks for your assistance. Happy to tell you that I managed to flash CM13 after considerable toil, and it works about fine. Occasional system crashes and restarts, yes, unfortunately. Even Chrome lags everytime. And yes, I could flash it from internal storage with the help of CWM. Nevertheless, thanks!


text:
Securely storing keyfiles with authentication and alike
I am using Keepass as my password manager. I am using a keyfile for securing access to my database. However when I want to do the same on my android phone I have to store the keyfile in my phone storage. This is of course bad since technically losing my phone means that someone who finds it can have access to the keyfile and the database. So they only need to guess my master password to get all my passwords.
I am looking for a way to securely store the keyfile. Secured with a password or a fingerprint. Optionally restricting access to the keepass app only. I can encrypt and decrypt the file manually before each unlocking of the database but it is cumbersome to traverse the file system each and every time.
When choosing a file to open from any app there is the option to choose which app to use. Is there any software out there which could show in this dialog as well? In the app I could choose the file I want which would be temporarily decrypted after authentication. The temporary file would then be passed to keepass and used.
Is there any app out there I could use for this sole purpose?

Keepass2Android allows to import the key file into app-private data directory. Without root the file is are there. Of course you can still use the key file from there hence the key generation iterations have to be high and I recommend to use the Argon algorithm.

I am actually using Keepass2Android but couldn't find the option to import the key once and for all. It needs to be there in the file system every time I am unlocking the database. What am I missing?

The key file on my system is of type  "local file" and is located inside `/data/data/keepass2android.keepass2android/...


text:
Long term beacon ranging causes Bluetooth failure
We have an Android app that does beacon scanning using altbeacon  This can be with the app in the foreground or background.  After some random time interval (usually hours, but not always) of beacon ranging the Bluetooth will stop working.  At that point no Bluetooth devices, beacons or otherwise, can be detected.  It requires Bluetooth to be turned off and back on before BT works and beacons are detected again.
Other beacon scanner apps from the store also fail to detect any beacons when this issue occurs.
We added BluetoothMedic from altbeacon, but it never detects a problem.  The issue seems to occur on Moto g6 (OS 8) and Moto g7 (OS 9) phones.  Have not seen the issue on a Google Pixel 3 (OS 10) or Samsung S8 (OS 8).
So, the question is, is there a way to detect Bluetooth being on, but failing to detect devices?  If we can do that, we can trigger a Bluetooth power cycle to correct the issue.  Better yet, is there something that can be done to prevent the problem in the first place?  Looking online this type of failure seems to be not uncommon with the solution being a Bluetooth power cycle.
Thanks for any help.

Do you have any log that may indicate what is going wrong? For example the Bluetooth daemon may crash.

None of our logs are showing any crashes, unfortunately.  Then we'd at least know something went wrong.  Thanks.


text:
Disable email sync outside working hours
Is there any way or a mail app where I can set a (per account) sync time? I would like the app to only fetch mails from my (work) account Mo-Fri 9-5 or if I manually sync.
I use k-9 mail since I got my first Android phone and it has a "quiet time" feature. But this seems somewhat broken in recent Android versions and I would like to have something even more aggressive if possible so I can set the app to not even download new emails from my email account at certain times.
Android version 8 (phone) and 9 (tablet).

FairEmail is a popular open source Email client (crossed 100,000 downloads) which can do this for all accounts (global) but not per account. This is because of maintenance and support of app plus battery consumption.
However, you can still use automation for custom polling to achieve individual account sync (this is a pro feature)
You can set the day /hour wise schedule

Developer is very active and responsive as you can see from the XDA thread, which is the right place to get your questions answered.
I am an extremely satisfied user of FairEmail and not affiliated anyway with it.

The app looks really really good. It's noteworthy that this is a pro feature available in the pro version only. But I think that is fair enough and I'll probably buy it after testing the rest now.

I upvoted the community ad.

Yes, updated answer to say schedule sync is pro. Thanks


text:
"This device has been reset. Sign in to continue with the Google Account that was previously synced on this device."
I have a used Huawei P smart 2019 which has just received a "factory reset". I put that in quotes because during the new configuration it asks for the last used Google account:

Verify account
  Sign in with your Google account.
  This device has been reset. Sign in to continue with the Google Account that was previously synced on this device.

The problem is that the young user has lost his Google account access. There is no recovery phone number, no secondary email address... no way to log into this phone. That's why we're setting up a brand new account. The new account is ready for use but the phone is not.
--> How do I do a real reset on this phone??!

I have done the reset according to the official instructions:

At the beginning you switch off the device.
  Then hold the "Power Button" and "Volume Up" button until the Huawei logo and then the EMUI icon appears.
  Use the volume buttons to select "wipe data / factory reset" and confirm with the power button.
  The recovery mode then appears again. Now select "reboot system now" and the smartphone will be restarted. The device is then reset.

The problem is the last part in bold: it's not completely reset, it still wants a login using the previous account, but there is no way to provide that information.
I've found this 5-year-old answer saying "This is an anti-theft policy" but there has to be some solution for forgetful people that have not been robbed!

Following the trick described in this video starting at 4m09s, I was able to bypass the dreadful screen and continue with the Android setup process, but I eventually reached a dead end where it showed me a completely blank screen and briefly showed the toast message "Unlock device to continue". At this point I could only reboot or power off. That video continues with another trick at 7m20s that does not work on this phone because the popup browser window doesn't offer the "share" function (only "copy" and "select all").

Does this answer your question? How to bypass "Verify your account" (Factory Reset Protection)

Hi, no that doesn't answer the question because the options there do not apply to Huawei phones. They don't work.

i have recently done it one other huawei.. select some text from license info, mark it, send it, select gmail, add some email address, on final gmail setup you can reach settings menu, from there you can reach settings factory reset.. which will remove FRP (edit: seems like you found already on yt)


text:
Gifted Android Huawei Media Pad hard reset not working, what to do?
I was gifted a Huawei Media Pad, Model BG2-W09, from an elderly woman who no longer used it, and have factory reset, and tried to hard reset it to no avail. I would like to use it, but the how-to guides have all failed me. Please advice, ladies and gentlemen. it would be greatly appreciated!

HardReset.info:
Afterwards press and hold the Volume Up + Power button at the same time for a few seconds.Wipe data on HUAWEI MediaPad T3 7
Relase held keys as soon as the Huawei logo appears on the screen.
Use the Volume buttons to scroll to "wipe data/factory reset" and confirm that option with the Power button.Format HUAWEI MediaPad T3 7
Once more choose "wipe data/factory reset"  from the menu and accept it with Power key.Restore HUAWEI MediaPad T3 7
Now accept option "reboot system now" by using Power button.Master Reset HUAWEI MediaPad T3 7
The factory reset will be completed as soon as the HUAWEI Welcome Panel shows up.
Congratulations! You have just performed the hard reset operation

Will this disable the last user's google account as well? Because that's the point that i get to with factory resets and such and cant get around in order to put my account on the device. i'm unable to set up my account to access the device. so if this will do that, i will give it a try. i'll post again whether it works or not. Thank you.

I still can't get past the verify google account, due to an "unknown error.", and don't have the previous users information. Is there a way to get around that as well?


text:
How can I reformat internal storage on Android?
I'd like some assistance with formatting the internal storage of my phone.
I've managed to unbrick it and to flash TWRP recovery but I can see that capacity of the internal storage is only 33 MB which is clearly wrong. Before I started doing all this it had GB of capacity not MB. So clearly I need to fix this. I tried to use Windows's disk manager
but the manager isn't detecting the phone or the storage.
Can I have some guidance here ? It's Meizu 5 pro. Any helpful input much appreciated.
cat /proc/partitions gives me:
major   minor  #blocks  name
   8       0   61071360  sda
   8       1   1024      sda1
   8       2   256       sda2
   8       3   256       sda3
 259       0   4096      sda21
 259       1   8192      sda22
 259       2   2048      sda23
 259       3   4096      sda24
 259       4   4096      sda25
 259       5   24576     sda26
 259       6   32768     sda27
 259       7   32768     sda28
 259       8   20480     sda29
 259       9   20480     sda30
 259      10   20480     sda31
 259      11   20480     sda32
 259      12   20480     sda33
 259      13   2621440   sda41
 259      14   524288    sda42
 259      15   57663468  sda43
 259      16   38912     sda44
   8      16   4096      sdb
   8      32   4096      sdc
 179      0    30253056  mmcblk0
 179      1    30252032  mmcblk0p1

ls -ld /dev/block/bootdevice/by-name/* gives me "No such file or directory"
Note:
The phone hasn't got any OS running at the moment.

I managed to use ADB and fdisk to get a list of locations (fdisk /dev/block/sda) in the phone. Then I pressed "p" for a print out.
I marked locations or partitions in question. Cache takes up all the storage whereas "userdata" gets only 38MB. In advanced mode where I get to make changes when I press "p" again I get different output. I don't understand this.
Update:
I modified the partition table to make it look like the way I need:

The problem I'm dealing with right now is that the phone doesn't want to mount the devices. Can't get it to mount system, cache, userdata.
I made sure "userdata" is still vfat and cache is ext4. Order number of partitions have changed though. Does that matter ?
latest update:

Looks like I was right for once. When I ran mount -a to mount all devices I got error because devices are assigned to different partition number.

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

check your file system type is ext4 or f2fs with mount
in TWRP you can format from command line (beware this is factory reset /data and /sdcard is lost)
adb shell
umount /sdcard /data
mount -r /system
mount -r /vendor
export PATH=/system/bin:/sbin
export LD_LIBRARY_PATH=/system/lib64:/system/vendor/lib64:/vendor/lib64:/system/lib:/system/vendor/lib:/vendor/lib
/system/bin/sh
mke2fs -t ext4 /dev/block/sda44 [fs-size]
or
mkfs.f2fs /dev/block/sda44 [fs-size]

Note: fs-size is optional. depending on encryption method you may reserve last -16384 bytes for encryption footer. in this case calculate sectors

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


text:
How many different types of YouTube Vanced are there?
I have many YouTube accounts, and signing in and out is inconvenient. That's why I use different YouTube Vanced for different YouTube accounts. At present, I have three YouTube Vanced: version pink, blue, and this one of which I don't know the name.

I need another version of YouTube Vanced other than these 3 for my other YouTube account.
I can't use apps like Dual Apps to make a copy of YouTube Vanced because then signing in won't work. I have also downloaded many versions from the internet but in the end, I found them all similar to my previously installed versions of YouTube Vanced.
How many different types of YouTube Vanced are there?

There are 4 YouTube Vanced versions: Blue, Pink, Dark, and Black.
You already have YouTube Vanced Blue and Pink. I'm not sure if you have Black or Dark, but one of them should work for you.
This XDA thread contains download links as well.
Some Alternative Apps

NewPipe Link
YouTube Go Link
OgYouTube Link

Each time I try to install any dark or black version from the site you given, it gives the message that the app is already installed, are you sure YouTube vanced black and dark different apps?

I think both have same package name for sure if shows this message

You can give a try to app Called NewPipe which also works great as YouTube with download option and pip mode

Unable to login in newpipe and Ogyoutube, in Ogyoutube I tried to install micromg but it can't install, is that because I already have vanced micromg?

Can't understand @Kirandeep Maan what you commented

The microg provided in OgYouTube should be installed for the sign-in btw u already installed microg of yt vacant if both installed at same time both will work


text:
Is there a way to check when my Android screen was on and off?
Is there a way to check when my Android screen was on and off? I am doing a medical control of when I go to sleep and when I wake up and the screen on/off is a great way of doing it.

You can setup an automation app to log those events in a file. Tasker and MacroDroid, both are capable apps that can do this.


text:
Reduce space taken by Outlook
Outlook is eating up space in my Samsung J7 prime. I am currently working with something between 100Mb and zero free space.
If I free up some space, it seems Outlook increases its occupied space.
Is there any way to tell Outlook which folders I want it to sync?
Or any other way to limit (e.g., from the OS) the space it takes?

https://android.stackexchange.com/questions/220355/define-storage-caps-per-app-basis#comment284651_220355

@IrfanLatif - Related... and with no answers.

No answers because it's not possible. See my comment.

I know this may not be an exact answer, but I ultimately switched to Android Firefox web browser (or your favorite browser), with desktop homepage link to outlook.offfice.com and... it behaves perfectly. That is, assuming your email account is served there...
MS actually did pretty good job with their mobile web page rendering and functionality, and so far I do not miss any functionality (email, calendar...) from my bloated Outlook for Android app (800MB unmovable local storage!).
Hope this helps somebody.

I guess the only problem with this is you don't get alerts for new "focused" emails.

That is not an option for me...


text:
How to install split-apk as system app?
I would like to know if its possible to convert a split-apk user app to a system app. One example is the google messaging app, it has a couple of apk files, lib and oat folders and base.dm file in its own /data/app/ folder. I tried copying everything to /system/app without success.
This question has already been asked here, but it hasn't been answered.
I'm using Android 10 rooted with Magisk. I already tried moving a regular .apk file to /system/app without any issues.

Figured it out after a bit of troubleshooting. Done using Root Explorer.
Copy "base.apk" and "lib" folder from "/data/app/xyz" to "/system/app/xyz" and set the permissions. Make  sure to not delete the files from /data/app/xyz after copying!
Example with Google Messages:
- Create a folder called "GoogleMessages" in "/system/app"
- Remount "/system" as read-write when warned
- Copy "base.apk" and "lib" folder from "/data/app/com.google.android.apps.messaging-xyz" to the new folder
- Rename "base.apk" to "GoogleMessages.apk"
- Give respective permissions to the folders and files.
Permissions for folders -> rwxr-xr-x
Permissions for .apk and files inside lib -> rw-r--r--
I can't guarantee that this will work on every device, just make sure to have a proper backup ready if something breaks or just use the file manager in recovery to delete the created folder.

How were you able to do this? From what I understood, Androd 10 simply does not allow writing to the system partition.

That was what I thought too, but it apparently works. I'm not going to question it as long as it works on my device. That's exactly why I said that I can't guarantee that it will work everywhere.


text:
Symlink from /sdcard to /sdcard
I am trying to have Google Markup output its image somewhere other than its default location. I have used different ROMs and versions of those ROMs, and each combination I tried has Google Markup's output location change. Google Markup doesn't look like it has any settings to change its behavior, so I tried to adapt its output to my desired location. The default output on my current setup is at /storage/emulated/0/Android/media/com.google.android.markup/Markups/, but I would like to have it at /storage/emulated/0/Pictures/Screenshots/. I tried the following from Windows ADB:
RMX1921:/ $ su
RMX1921:/ # ln -s /storage/emulated/0/Android/media/com.google.android.markup/Markups /storage/emulated/0/Pictures/Screenshots/
ln: cannot create symbolic link from '/storage/emulated/0/Android/media/com.google.android.markup/Markup' to '/storage/emulated/0/Pictures/Screenshots//Markup': Operation not permitted
RMX1921:/ #

I'm using a Realme XT with DerpFest 10 build 2020-03-29 (Android 10r31) rooted with Magisk v20.4 if it matters. Is there any way I can automatically redirect Google Markup's output to a different location?
Additional things I would like to do:

Markup leaves the original file behind on this system (also one of the inconsistent behaviors of Markup on different ROMs). I would like to get the file name of the original file, and use it to rename the file Markup generates. The format is: Screenshot_YYYYMMDD-hh-mm-ss.png.
After moving the file, delete the original file, which is at /storage/emulated/0/Pictures/Screenshots/.

I'm thinking of a script that constantly runs in the background, doesn't have to be instant, maybe it triggers and checks and processes everything once every 5 seconds. But I feel like I might be overcomplicating a lot of things. Any ideas?
Thank you for your time.

/storage/emulated/0/Android/media/ is a standard location where apps can store data without having Storage permission: https://android.stackexchange.com/a/218507/218526. // Symlinks are not supported in emulated storage: https://android.stackexchange.com/a/218944/218526. // You can use some automation app to achieve what you want. Or with root access use bind mount, may be.

If you are looking for newly created file Android supports the inotify events where you can wait for certain file-system events. Therefore a scripted solution does not have to poll for file-changes. Using inotify-tols for Android you simply have to wait for the matching file-system event.

I am an idiot. I forgot about automation apps. I now have an excuse to learn how to use those. Thanks a lot! Probably saves me the headache of having to do it all manually xD


text:
How to disable default calendar notification on Samsung Watch Active 2
I have the Samsung Watch Active 2, and use Google Calendar app on my phone, which also has event notifications on my watch, which is great.
However, the default Samsung calendar notification also shows up, but it would lock up the screen and require me to explicitly dismiss the notification to use the watch. Is there a way this notification can be disabled?

I opened the Samsung Calendar app on my phone. Not through device manager but the Default Calendar that comes with Samsung phones. From there you can see all calendars and un-check the calenders you do or do not want to be synced.

Samsung calendar->settings->alert settings
Change all to none. You're welcome.


text:
Remote control for android using pc with local wifi, without internet
I want to control an application in my android mobile using wifi lically. Is there any way to control android device from pc using local wifi or access point without internet !!. I searched alot but all apps need internet .. Also no free vnc server for android .. Please I dont have a problem in rooting my android also I have an old android . Any free app likes vnc can work.

How old is the Android phone (make/model/OS version)?

I have Samsung j100h with kitkat 4.2 OS  and j250f with Nughat 7.1 Os.

https://www.genymotion.com/blog/open-source-project-scrcpy-now-works-wirelessly

unfortunately scrcpy does support android 5+ but adbcontrol works for kitkat http://marian.schedenig.name/2014/07/03/remote-control-your-android-phone-through-adb


text:
Install TWRP and Magisk Manager on Moto G5 Plus without rooting
I would like to install Google Play Services for AR (ARCore) on my Moto G5 Plus, running Oreo 8.1 - this device is not on the official Google supported list. I believe this is possible with TWRP and Magisk Manager. I have the Android SDK, and all necessary USB drivers installed. I can load .apk's using adb.
However, I'd like to install TWRP without unlocking the bootloader or rooting the phone.
First question: is this even possible? or do I need to root the phone?
I tried to follow the instructions to install TWRP withOUT rooting, but when I try to flash the latest version of the Potter image, twrp-3.3.1-0-potter.img, I get a 'Preflash validation failed' error:
\android\Sdk\platform-tools> .\fastboot.exe flash recovery twrp.img
(bootloader) is-logical:recovery: not found
Sending 'recovery' (16342 KB)                      OKAY [  0.710s]
Writing 'recovery'                                 (bootloader) Image recovery failed validation
(bootloader) Preflash validation failed
FAILED (remote: '')
fastboot: error: Command failed

According to this answer, Moto devices do not support downgrading the bootloader. However, I figured the recovery image (3.3.1-0) was the most updated, and suited for Oreo 8.1. Is there any way to check bootloader versions of the image and that on my phone?
Thanks in advance for any insight!

try fastboot oem get_unlock_data https://androidmtk.com/unlock-bootloader-on-any-motorola-device

Thanks for the tip. My end goal is to install a profile that supports ARCore, and I'd like to do that without unlocking the boot loader if possible, because that will wipe my phone.

i am not sure that works without proper hardware support (camera, sensors) however you can't use TWRP or Magisk with locked bootloader. wiping on unlocking is a security feature. you can partially backup apps in cloud, pictures to pc, some apps allow adb backup

You are right. It does not appear to be possible to install TWRP without unlocking the boot loader. @alecxs, If you make that an answer, I will accept it.

according to this blog it is possible to downgrade bootloader and even install TWRP without data loss for Moto G4 Plus https://blog.elcomsoft.com/2018/05/demystifying-android-physical-acquisition

Fascinating blog, thanks for sharing.

Answer: it is not possible without unlocking boot loader.
Thank you to @alecxs !
Also for anyone interested, rooting has some side effects: cannot load the Netflix app due to safety net checks. Even with the magisk mod for hiding safety net flags.
And ultimately, ARCore still doesn't work, even after I flagged the Pixel 2 "image", and installed Google play services for AR.

This topic is old, but still pertinent. The previous answer is correct and I'd like to assert it:
The locked bootloader won't allow you to install a custom recovery, and that is the reason for the messages:
(bootloader) Image recovery failed validation  and
(bootloader) Preflash validation failed
I also have a Moto G5-Plus, and I've done the tests: the custom recovery (TWRP) will only install if you unlock the bootloader.
In addition, in my case, my phone was unlocked since 2015 and lately I started being denied access to my banking app due to security validations provided by Google APIs.
After some searching I've learned that in 2023 the "SafetyNet API" got deprecated in favor of the new "Play Integrity API" and in 2024 all apps that use that API must migrate to the new one.
Also I've seen that Google is detecting and blocking Magisk patches very fast...
So the best solution to me was to return to stock ROM (OREO 8.1), and lock again the bootloader.
My G5Plus is now able to pass the two required tests of device and basic integrity:

By just unlocking the bootloader it started failing the "MEETS_DEVICE_INTEGRITY"
If the API detects a rooted device it will fail also the   "MEETS_BASIC_INTEGRITY"

To learn about the new Integrity API: https://developer.android.com/google/play/integrity/overview
Here's a very useful app to check your device Integrity according to Google API:  https://play.google.com/store/apps/details?id=gr.nikolasspyr.integritycheck&hl=en&gl=US


text:
apk into user app ( installed via adb ) and apk into system private-app
Same apk if is installed into system app, have disabled the app Setting for Notification (APP_NOTIFICATION_SETTINGS)
if is installed as normale app or user app, via adb it does not.
anyone can point me on what i missing for have "clickable" enable/disable for Notification Setting  if the app in system app ?
with app into system app:

with app into user app :


text:
xiaomi redmi note 4 stuck in bootloop after making twrp backup
attempt to flash lineage os los16 mido on xiaomi redmi note 4. unlocked bootloader and flashed twrp according to los mido official page instructions. made backup in twrp by checking all boxes.(system, vendor, data, cache, recovery, boot, persist, bootloader, firmware, efs). didn't make any other changes in options/encryption. total size came to 14gb+. after system reboot it got stuck in bootloop (mi logo, 'unlocked' written at bottom of the screen). on holding down power key it vibrates, and reboots back to mi logo. on holding vol up and power, boots into twrp. tried wipe>advanced>cache, dalvik and then also tried wipe>factory reset but to no avail. please please help me as i need my phone back asap for work. with the curfew idk when i'll be able to take it to a service centre until which time i'll be w/o a phone.
this is my first time so please excuse me if i've not followed/violated any rules and i'll make the changes. thanks

you flashed TWRP that is the change that prevent from boot https://android.stackexchange.com/q/214902

just boot into twrp and install no-verity-opt-encrypt. If your phone is working again, backup boot, root with magisk, then backup with Migrate. save all backups to PC, restore boot, wipe system, install LineageOS and gapps. format userdata and reboot. for rooting install addonsu-16.0-arm64-signed.zip

https://www.thecustomdroid.com/install-magisk-root-android-devices/#Method-2-By-Flashing-Magisk-Patched-Boot-Image-using-Fastboot

https://wiki.lineageos.org/devices/mido/install#installing-lineageos-from-recovery


text:
How to recover data from phone with black screen?
My Samsung Galaxy S6 recently display doesn't work anymore (apparently it's water damage or something). The problem is, I want to extract my photos but it's like shooting targets in the dark. I've successfully unlocked my phone with "Find My Mobile" by Samsung but when I connect my phone to my computer with USB, it is unrecognized. I think there may be a prompt on my phone which asks for permission, but again, I can't see anything. How do I solve this?

Does this answer your question? Enable ADB and/or change USB connection mode on Galaxy S7 w/ broken screen

your only chance is acting blind. i don't believe there is a prompt for connecting, instead there is still some lock screen (now from Find My Mobile)

Our broken-screen tag wiki is a good starting point. It even has a data recovery section.


text:
Android adb restore not working on Android 8.1.0 as target phone
I'm migrating app data involving several packages, using adb backup and restore, from an older phone (source) to a newer phone (target). Android versions are detailed below. I'm using the following procedure for each one of them:
1. Generate a backup file on source phone:
a) Alternative: with apk
C:\>adb devices
...
C:\>adb backup -f com.example.package.ab -apk com.example.package

b) Alternative: without apk
C:\>adb backup -f com.example.package.ab com.example.package

2. Restore backup file on target phone:
a) Alternative: with apk
C:\>adb devices
...
C:\>adb restore com.example.package.ab

b) Alternative: without apk (installing clean app first)
C:\>adb restore com.example.package.ab

Note: The package name listed is obfuscated as com.example.package.
Android version are: 4.4.4 on source phone and 8.1.0 on target phone.
After following these steps for each package, I get no app(s) present on my target phone, with no error messages at all (just a "finished"-like toast notification is shown). However, I managed to dump some error messages regarding app restore process via adb logcat on the target phone that might be interesting and/or helpful. They follow:
a) Alternative: with apk
C:\>adb logcat

03-31 19:14:58.478  2050 26649 I BackupManagerService: Package com.example.package not installed; requiring apk in dataset
03-31 19:14:58.478  2050 26649 D BackupManagerService: Installing from backup: com.example.package
03-31 19:15:01.528 26665 26678 W asset   : Asset path /data/cache/backup_stage/com.example.package is neither a directory nor file (type=0).
03-31 19:15:01.529 26665 26678 W DefContainer: Failed to parse package at /data/cache/backup_stage/com.example.package: android.content.pm.PackageParser$PackageParserException: Failed to parse /data/cache/backup_stage/com.example.package

b) Alternative: without apk
C:\>adb logcat

03-31 20:08:45.154  2050 30170 D BackupManagerService: Need to launch agent for com.example.package
03-31 20:08:45.155  2050 30170 I ActivityManager: Force stopping com.example.package appid=10155 user=0: clear data
03-31 20:08:45.157  2050  2096 I ActivityManager: Force stopping com.example.package appid=10155 user=-1: clearApplicationUserData
03-31 20:08:45.160  2050 30170 I ConditionProviders: Disallowing condition provider com.example.package
03-31 20:08:45.283  2723  2723 I GeofencerStateMachine: removeGeofences: removeRequest=RemoveGeofencingRequest[REMOVE_ALL packageName=com.example.package]
03-31 20:08:45.300  2050 30170 I ActivityManager: Start proc 30204:com.example.package/u0a155 for backup android/FullBackupAgent
03-31 20:08:45.300  2050 30170 D BackupManagerService: awaiting agent for ApplicationInfo{455f3d3 com.example.package}
03-31 20:08:45.352  2050 11378 D BackupManagerService: agentConnected pkg=com.example.package agent=android.os.BinderProxy@c07c18e
03-31 20:08:45.607  3020  7675 I Icing   : doRemovePackageData com.example.package
03-31 20:08:51.277  2050 30170 D BackupManagerService: Invoking agent to restore file code_cache/secondary-dexes/com.example.package-2.apk.classes2.dex
03-31 20:08:51.426  2050 30170 D BackupManagerService: Invoking agent to restore file code_cache/secondary-dexes/com.example.package-2.apk.classes2.zip
03-31 20:08:52.024  2050  5655 I ActivityManager: Process com.example.package (pid 30204) has died: cch+4CEM

I want to mention some additional considerations about my phone configuration which might be causing some trouble:

Both my older and newer phone are not rooted and I don't want them to be.
I'm not sure if I'm using the right "ADB Interface" controller on my Windows desktop (under Device Manager).
My target phone is encrypted.
Is it necessary to have "unknown sources" enabled to make adb restore to work? (I can't remember I needed it on other backup/restore operations regarding different phones than the mentioned ones on this question. Of course, Developer Options are enabled on both phones.)
I'm not sure if I'm using a version of adb Windows executable that is compatible with my target phone Android version.

So, after reminding that I previously used this procedure between other combinations of source/target Android versions (for example: from ICS to KitKat) and it worked right, my question is: Is there any way to get this backup procedure work between the mentioned versions of Android (source/target)? If the answer is "no"; why? and: do other methods not involving adb backup and restore exist to achieve the same goal: Google Drive, third party apps, manufacturer specific apps, etc...? (Note: Absolutely I'd rather use adb backup/restore whenever it's possible.)
Related or similar questions I've found follow:
Applications are not installed with adb restore
adb backup on Marshmallow - is it different?
Final note: Sorry if I used some bad translated user interface messages or strings, since I don't use English language on either my Android devices or Windows desktop.

I do remember a backup file format change especially regarding the encryption. May be it helps to unpack and then repack the backup data using adb backup extractor

Try first installing the .apk itself, and restore the backup afterwards. That's a known bug with Android 7 IIRC which might still be open with some Android 8 devices. The tools folder of my Adebar gives you the needed helpers for Linux/Mac and Cygwin: you'd want abrestore for your purpose (it extracts the .apk from the backup, installs it, and then restores the backup). Let me know if that did the job, so I can write up an answer.

and of course, not mentioned already, test backup & restore single app from/to same target phone 8.1 is working in general. latest adb https://www.xda-developers.com/google-releases-separate-adb-and-fastboot-binary-downloads

I achieved restoring a single package this way: using ADB 1.0.31 to create the backup from Android 4.4.4 and using ADB 1.0.41 (got from here) to restore it to Android 8.1.0. Both are Windows executables. I need to do a little more testing before ensure it works for every package. Should I post a self-answer after doing that?


text:
Accessibility Voice Control to Read a Navigate a Webpage
I am using a Samsung Galaxy S10e and I would like to use my accessibility features to voice control my phone while driving. I would like to be able to navigate to a website and have the content read to me and use voice commands to give commands within the website like, "skip link" "Fill-out form" and "tap link." Does anyone know if this is possible with Android's built-in accessibility and if so how so I do it?
I am also willing to use an App if there are any out there that will allow me to voice control navigation and read content to me. Thank you so much for any help!

Android's built-in Accessibility really focuses on reading/speaking items on the screen and using gestures to move around.
For voice control, one possibility is Google's Voice Access app in the Play Store, and the intro tutorial does give a good example of the app's features, but there seems to be some problems with the form-filling (speech to text into a field) when I tried it just now. I also noticed that it uses small numbers for focus change which may not be desirable while driving.
Using an Accessibility app is pretty invasive from a permissions point of view so provided that you trust Google and can work around the current defects it is probably worth trying out.


text:
can you reuse the same sd micro card as internal storage thats already been used as portable storage in the same moto 3g phone?
can you reuse the same sd micro card as internal storage thats already been used as portable storage in the same moto 3g phone ?
If so, what steps do I need to take ?

you can split adoptable-storage with sm partition disk: mixed 50


text:
Integrity verification has failed
Hi my Samsung J7 Prime just stuck on The integrity verification has failed. You need to reset your device to factory default settings. This will erase your data. i dont want to reset the phone because my data is important on the phone please help me what to do without losing the data ?? please please please

descripe what actions you did to get integrity verification failed

I really hate to be the bearer of bad news, but if you have an integrity failure, you probably wouldn't want to boot your device even if you could.
Allow me to explain. The "integrity failed" message means that a part of your system has been modified and might not be safe to boot. It might have been modified by a malicious app, program, or it could have just been you trying to root your device. (If it's the last one, please make sure you follow all directions by whatever guide you are using to root your device in order to make sure that stuff like this doesn't happen).
Unfortunately, what this means for you is you are going to have to reset your device. It is a security feature built into android, so it's best you follow it's direction. I know how this feels, it sucks, but its just the case with this error. Make sure in the future that you keep backups of any important data.
If you don't read any other part of this answer, please read this:
If you reset your device and the error continues, STOP! Unless you know what you are doing, this error can be very difficult to correct on your own, and easy to make worse for yourself. Instead, take your phone into a repair shop or your carrier to have them fix it.
If I'm completely getting your situation wrong, please let me know any additional information you have and I will try to update my answer accordingly. Best of luck to you.

it may possible to fix without erasing userdata. usually official stock ROM can be flashed with glass echidna heimdall or odin. maybe the device is already rooted and it just requires disable dm-verity. but @KazimAhmed didn't tell us the reason for integrity fail, so it's all speculation

Yeah the answer I gave was assuming he has no idea what caused it.


text:
Is it possible to use the phone’s hardware through Asterisk?
I would like to convert my android phone into a personal pcbx (being able to perform basic automated answering based on speech and who is calling and performs hang up). Something requiring the power of Asterisk (unless you know an alternative designed for android of course).
There are a lot of tutorials on how to this through sip on rooted devices, but in my case, I want to do it using the phone number of my sim card which of course is tied to a provider that doesn’t give such option (they gave sip credentials during years but this is something now terminated) in order to reach the public switched network without any additional fees.
This wouldn’t be a problem on Linux as virtually every Linux compatible phone modules have a bridge for Asterisk.
But for Android devices, I read (I fail to remember where) that not only the modules designed for android phones aren’t provided with an Asterisk bridge, but that almost all the drivers controlling them are so closed source that it’s impossible to compile a custom kernel using them (that building is still possible but without support for the modem) and that while everything related to telephony is controlled by a daemon (I don’t remember it’s name), it has to be patched by oem because the kernel interface exposed to userland is closed source too and undocumented.
So that no apps allow controlling the hardware phone besides calling numbers and that even being root doesn’t change it.
If not, how can I perform such advanced usage?

For those thinking about abuses, please note I want to perform this only over incoming calls, such that I don’t need to know how to send phone digits. The only reason the mobile provider ceased their sip bridge is in the name that peoples now uses things like WhatsApp (but which isn’t giving access to the switched network for those without Internet) so that such behavior should still be Ok under a faire use.

Ok I may have found it https://www.ictinnovations.com/using-android-phone-as-gsm-gateway