text:
Alcatel A574BL unrootable, FRP unbypassable
FRP bypass unsuccessful have tried every method posted on YouTube. Managed  to get browser, download apps, etc. Certain limits that i really want to be rid of. Phone wont root trying superuser, kingroot..any suggestions would be appreciated.

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


text:
Is appgallery.cloud.huawei.com a Huawei site or kind of malware?
I started to receive notifications urging to install the official Huawei app store, kind of alternative to Google Play Store. I would be glad, but the app immediately requires to give about all permissions that ever existed for the phone. Is it malware or just unprofessionally written? Please do not hurry to install the app if you just do not know.
One thing that made me suspicious is the app requires permissions right after start and refuses to do anything if not granted immediately. I would expect well written app to have some functionality available, and permissions box popping out only when the permission is really needed. At least could allow to browse over apps in the store - not any single permission is required for that.

have you ever been asked about Google Play permissions? is this more professional to you?

I assume you're using a Huawei device? Otherwise, it's strange to get such notification. Anyway, the SSL certificate for https://appgallery.cloud.huawei.com was applied by Huawei. Also, while the app requests so many permissions, the APK itself looks safe and it's the same as the one store on APK Mirror (verified by Android Police). Whether it's "unprofessionally written" or not, we can't answer it though...

Huawei device but I am not convinced the proposal comes from Huawei.

https://www.pocket-lint.com/phones/news/huawei/148102-what-does-huawei-s-google-ban-mean-for-your-huawei-or-honor-phone

@alecxs Google Play comes pre-installed so, indeed, I have never been asked.

source: Stack Exchange

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

sort: votes


text:
Can't generate keys for ADB
I'm trying to use ADB on an ARM device running Ubuntu 18.
The Ubuntu machine communicates with the android phone and can access its files. However, listing the devices on ADB produces an error relating to generating the adbkeys in the .android directory.
Command:
adb devices -l

Error:
List of devices attached
* daemon not running; starting now at tcp:5037
ADB server didn't ACK
Full server startup log: /tmp/adb.1000.log
Server had pid: 8409
--- adb starting (pid 8409) ---
adb I 02-04 01:26:21  8409  8409 main.cpp:57] Android Debug Bridge version 1.0.39
adb I 02-04 01:26:21  8409  8409 main.cpp:57] Version 1:8.1.0+r23-5~18.04
adb I 02-04 01:26:21  8409  8409 main.cpp:57] Installed as /usr/lib/android-sdk/platform-tools/adb
adb I 02-04 01:26:21  8409  8409 main.cpp:57]
adb I 02-04 01:26:21  8409  8409 adb_auth_host.cpp:416] adb_auth_init...
adb I 02-04 01:26:21  8409  8409 adb_auth_host.cpp:262] User key '/home/odroid/.android/adbkey' does not exist...
adb I 02-04 01:26:21  8409  8409 adb_auth_host.cpp:109] generate_key(/home/odroid/.android/adbkey)...

* failed to start daemon
error: cannot connect to daemon

Manually restarting the service with kill-service and start-service and using sudo yield the same result. The .android directory remains empty. ADB worked fine on a Windows 10 machine with the same android phone, so I copied the adbkey files from the Windows 10 machine to the Ubuntu machine in the hope of getting lucky (I don't know what they do). That produced a different error with the same command:
List of devices attached
* daemon not running; starting now at tcp:5037
ADB server didn't ACK
Full server startup log: /tmp/adb.0.log
Server had pid: 8699
--- adb starting (pid 8699) ---
adb I 02-04 01:31:38  8699  8699 main.cpp:57] Android Debug Bridge version 1.0.39
adb I 02-04 01:31:38  8699  8699 main.cpp:57] Version 1:8.1.0+r23-5~18.04
adb I 02-04 01:31:38  8699  8699 main.cpp:57] Installed as /usr/lib/android-sdk/platform-tools/adb
adb I 02-04 01:31:38  8699  8699 main.cpp:57]
adb I 02-04 01:31:38  8699  8699 adb_auth_host.cpp:416] adb_auth_init...
adb I 02-04 01:31:38  8699  8699 adb_auth_host.cpp:174] read_key_file '/home/odroid/.android/adbkey'...
adb I 02-04 01:31:38  8699  8699 adb_auth_host.cpp:391] adb_auth_inotify_init...
adb I 02-04 01:31:38  8699  8699 adb_auth_host.cpp:467] Calling send_auth_response

* failed to start daemon
error: cannot connect to daemon

Does anyone know how to solve this?

https://android.stackexchange.com/q/224078

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


text:
Language on SOME sites is stuck on marathi
If this belongs in another stackexchange, please move it, I couldn't find a better one.

Some websites I visit, such an Instagram and Twitter show some of their text in Marathi.
I can't read Marathi, and don't know how to change the language back.
This issue is not website related, as it happens on some sites I never even visited before.
It doesn't happen on facebook or google for example.
It only happens on my phone.
It also happened on my previous phone, and keeps haunting me on this one.
I tried all sorts of language changes, and this persists. I don't know what setting to change to get my English back.
I do need Hebrew on my phone as well.

What browser is this? (If stock browser, please also mention the phone model) Also, have you tried other browsers?

@Andrew.T happens on chrome, and the browser which opens when clicking links in whatsapp or telegram. Does not happen on firefox.

WhatsApp and Telegram might use Chrome's Custom Tab, so this might be from Chrome's settings instead: Wrong language in a new Chrome private window and in integrated data

It looks more like those apps deciding on a language based on your location/IP address. I face it all the time on mobile version of Facebook.

@andrew.T that was it!.finally it is fixed


text:
Wifi connect but no internet access
This is a strange thing that started happening with the wifi network at my work. Android devices connected to the network say "Connected, no internet access " however the internet works perfectly well.This has happened to devices running Qualcomm 8909 android 8.1.0 but the issue is only can’t download any app through playstore so please require urgent help if can solve the issue.

I have had that same issue and that was because my IPv6 was turned off and so the other device that was using my hotspot was unable to access the internet. So check your settings and if they will check theirs.


text:
How to end process while quiting, Firefox
Firefox has a quit button in it's menu. My settings are check marked to clear all data upon closing. However, quitting Firefox is still leaving the process running and the cache non-empty. So to really quit, I have to: Settings | Apps | Firefox, then tap 'Force stop' and 'Clear cache'.  I end up doing this a couple times a day.  A couple times a year I mistakenly tap 'Clear data', which is disastrous because settings and add-ons are lost.
The mozilla website maintains that stopping and clearing are OS tasks.  So here I am.
How can I, an end user, stream line this? perhaps configuring the OS to end the process when the firefox quits?
Short of that, is it possible for an end user to add to the homescreen a shortcut to: Settings | Apps | Firefox

On Android 7+ you can restrict RUN_IN_BACKGROUND using appops. But forcing an app to be killed when it's not in foreground won't clear its filesystem cache. Android manages apps cache and clears when needed. On Android 8+ there's also filesystem quota allotted to every app. However to clear cache repeatedly you need to use third party task scheduler app.

The app cache varies depending on what sites were visited, hence this is a privacy issue.  Firefox has detailed settings to "Clear private data on exit". Even with all the boxes ticked, the app cache is still not empty.  There is a disconnect here.

Added to the Q a question RE shortcuts

The regular Firefox for Android is not a privacy-focused browser, it's a general purpose browser with (IMHO) the best privacy defaults that balances privacy and day-to-day usability, but it's not meant for high privacy.
You should use Firefox Focus instead, which is actually designed to be an incognito browser. Additionally, if you really need the highest level of privacy, you should be using Torbrowser.

Firefox Focus is only available for Apple devices:  https://support.mozilla.org/en-US/kb/focus#w_install-firefox-focus. Assuming you know otherwise, would Focus still leave residue upon quitting? that is, will the process still be running, carrying a a bulked up cached? I think your answer will be yes, in which case your A doesn't address the Q,

@Mick Firefox Focus is also on the Google Play Store though...

Thanks. Then I'll look harder on mozilla for their info on Focus for Android, and for an APK on their website. But it still leaves open the question of residue in the OS after quitting.  https://duckduckgo.com/?q=%22fiorefox+focus%22+android&ia=web

typo in my link above: https://duckduckgo.com/?q=%22firefox+focus%22+android+site%3Amozilla.org&ia=web


text:
Skip slide to unlock screen
Since android 5 I must slide the screen before I'm able to enter the PIN
How to bypass this behavior ?
I am, of course, expecting a "hack", not a vanilla solution
Android 8
Rooted and Xposed
Motorola Moto G6 (XT1925-5)

GravityBox Xposed module has a feature called "Direct Unlock" (accompanied by "Direct unlock policy"). Enabling it and setting the correct policy would show the security challenge the moment screen is turned on (thus bypassing the need to do swipe). I had tested this with earlier versions and it used to work, but for some reason I can't make it work in Android 9. Maybe give it a try and see if it works for Android 8

Near duplicate: https://android.stackexchange.com/q/142129/96277

Not working, unfortunately. Tried Standard direct unlock and see through. Also tried standard or despite notifications... None. Pin length worked though. It's an addition. Too bad this GravityBox is heavy, or else I'd keep it

Couldn't find that thread using google or stackexchange's search. All led to stupid tutorials on how to remove security.


text:
Phone shuts off in 3g
I have a Moto Z2 Play with Android 8.0.0, about 3 years old. Whenever I go out of range of 4g (to 3g), the battery goes from 100% to 80 or 70 in a couple minutes and then to single digits very quickly and the phone shuts down. The phone will not turn back on in this state. When I charge it, it returns to 70/80 immediately and it will turn back on. This never happens in 4g.
What is the problem? Is the battery just faulty?
--- follow up ---
I attached a power bank and went out. Here is what happened.
It lasted longer, perhaps an hour and then went to single digits and then turned off. I then restarted the phone with the power bank and it was quickly back up to full power.
What does this tell us?

Faulty battery cannot be ruled out but the problem looks with modem or RIL. In 3G mode it draws high surge current which the battery is unable to supply.

Try to get a power bank and connect it to your phone. If the problem persists the battery is not the main problem.

See edit to question for the follow up

It tells that your phone draws abnormally high amperage. Question is more about hardware and electronics than Android. But the root cause can be a bad RIL etc.

Sounds like time for a new phone.

I have a new phone now. What's the thing to do with this question? One of the comments could be turned into an answer. Or I could delete the question.

@AlLelopath you can answer your own question, it's encouraged.

@IrfanLatif: ok, but you are welcome to answer since you guided me in the right direction.


text:
Meaning of two low battery screens on Acer Iconia tablet?
According to https://community.acer.com/en/t5/Android-Tablets/Iconia-tab-10-A3-A20-won-t-charge/m-p/513098/highlight/true,

Hello, my tablet was working fine for a year and suddenly won't charge up.
When plugged in while turned off, the screen will power up, showing the empty battery icon then another icon with a low battery and a power plug.
Then the screen will turn off and start over alternating both icons and so on.

I am going to upload the two screens the OP was talking about:

"Empty battery icon" // "Icon with a low battery and a power plug"

Do the two screens have different meanings?  If yes, then what do they mean?  Are they "charging" and "connect to power"?

I'd go with your conclusion. Similar, although not identical happens on my Nokia 7.2. If it is fully empty and I try to turn it on, I get that icon (second one with wide and plug). And when I connect power in such a state, it shows the first icon for some time before it gets some charge and then moves me to the charging screen as defined in the device's ROM or firmware. Somebody told me earlier that this is a CPU's screen which is used when the battery is extremely low.

The right image I would interpret as "device has low battery and was disconnected from power". This could mean that the charger, the charging cable or the usb port in the device is defect. The first two can be checked easily by replacing them. If the USB port in the device is broken it will get difficult as this requires to replace the board that holds the USB port (if it is replaceable) or re-soldering the loose USB port.

@Robert - you mean the second image?  Is it like iPhone's screen with a red battery, lightning bolt, and a charger?

@singhnsk If you are saying "similar but not same", then why are you talking about the "same" icons?

Singhnsk says:

I'd go with your conclusion. Similar, although not identical happens on my Nokia 7.2. If it is fully empty and I try to turn it on, I get that icon (second one2 with wire and plug). And when I connect power in such a state, it shows the first icon1 for some time before it gets some charge and then moves me to the charging screen as defined in the device's ROM or firmware. Somebody told me earlier that this is a CPU's screen which is used when the battery is extremely low.

1 "Empty battery icon" (with lightning bolt)
2 "Icon with a low battery and a power plug"

In this view, the answer is:

"Charging, please wait till the battery gets at least 1%."
"Battery is dead; connect to power."


text:
What is needed to run ELF binaries compiled from android APKs? (understanding android internals)
I'm trying to understand how Android works internally. Before ART, it used Dalvik to run java code. I guess it created a Dalkiv process in 'Linux' kernel which was simply a VM that ran the dex bytecode.
For ART, the dex bytecode is compiled into instructions in the processor's architecture (happens during the installation process). This compiled dex bytecode is stored into an ELF binary. So it's somethig that 'Linux' kernel can understand.
So suppose I wanted to run this ELF binary on Linux. Besides ashmem and binder kernel modules, what more would I need? Which libraries do this ELF binary require? Is this ELF binary simply launched as a linux process?
I tried reading anbox.io source code, but I couldn't understand how it launched an ELF binary from an APK. Maybe understanding what it's required to run it will make me understand anbox.io's source code better.
I also found https://android.googlesource.com/platform/art/+/refs/heads/master/runtime/ but I don't know where to begin. What is /runtime? Is it a program, a library? Is Android Runtime something that is linked together with the ELF binary generated from dex bytecode?

Have you seen: https://source.android.com/devices/tech/dalvik/jit-compiler

ELF binaries are usually complete independent of Dalvic, ART, .... They simply work the way they work on all Linux systems. They may require some dynamically linked libraries. Depending on the library they are already bay default present on the device  or you have to place it along the ELF binary. Apps can just execute such a binary. You can interactively check that using a terminal app like Termux.

What is needed to run ELF binaries compiled from Android APKs?

A simple hello world app which does nothing except printing Hello World! (no animations, no sounds, no menus), running on Android 9 device:

Opens 30+ files, anonymous inodes and UNIX sockets explicitly.
Shares 500+ memory-mapped files from /data, /system, /vendor and /dev.
Communicates, at least, to Surface Flinger (through Window Manager in system_server) to display something on screen. There can possibly be more IPCs (Binders or others).
Needs Activity Manager, Package Manager and possibly other services running in system_server which manage app's classes related to activity creation and permissions.
Needs zygote process running to fork VMs for system_server and the app itself.

So all of these requirements must be fulfilled to run ELF binary (shared object: /data/app/com.ravipatel.helloworld.test-*/oat/arm64/base.odex) compiled from APK.
As a comparison, a hello world Java program compiled with GCJ dynamically links to less than 5 libraries. While a similar C program (statically linked) has no runtime dependencies except the required architecture.

I guess it created a Dalkiv process in 'Linux' kernel which was simply a VM that ran the dex bytecode.

No. Dalvik wasn't a Kernel-based Virtual Machine (KVM; if that's what you mean). Both Dalvik and ART are Process VMs which run in userspace.

For ART, the dex bytecode is compiled into instructions in the processor's architecture (happens during the installation process).

It's profile-guided, rarely happens during the installation process.

What is /runtime? Is it a program, a library?

Runtime is an environment in which programs written in a specific language run. ART is a runtime for Java. It mainly consists of native executable binaries / shared libraries (including a VM / interpreter / JIT compiler and OAT compiler) and standard Java class libraries (mostly in the from of .jar files) saved in /system.
Other well-known example is Java Runtime Environment (JRE) by Oracle/Sun which is found on mostly PCs.

Is Android Runtime something that is linked together with the ELF binary generated from dex bytecode?

Correct.

Is this ELF binary simply launched as a Linux process?

No. The ELF binary compiled from .dex file in APK is not an executable but a shared object. So it needs to be loaded in memory along with other dependencies by some other process, which is ART (VM).

So suppose I wanted to run this ELF binary on Linux. Besides ashmem and binder kernel modules, what more would I need? Which libraries do this ELF binary require?

First of all you cannot run the ELF binary on a non-Android Linux system because the binary is not a statically linked executable. But even if it is, there are even bigger constraints, particularly Android's hardware abstraction. binders and ashmem are IPC mechanisms. They make sense only if the processes to whom the app wants to communicate also exist, which is not the case. With Linux based Java SDKs it's relatively easy to achieve.

RELATED:

Android apps for “armeabi-v7a” and “x86” architecture: SoC vs. Processor vs. ABI
AOT Compilation in HotSpot (jaotc)
JIT vs. AOT: Unity And Conflict of Dynamic and Static Compilers


text:
adb devices not working in Hyper-V
I connected Motorola android device on my host machine. I can not view the connected device from Hyper-V VM (Windows 10)
I can not see connected android devices (adb) from VM, but i can very well see it on host.

Device on developer mode
SDK installed in both VM and Host

Evaluative suggestions: Does your VM have the proper driver? Clearly the host machine does, if it recognizes the device. Does the VM use pass-thru for host recognized devices?

after lot of try i managed to see devices in VM (from host machine USB) using redirector software, because Hyper-V does not have the capabilities. Yes, all drivers were up-to-date. But, i dont want to use redirector software to see devices in VM (Hyper-V), if any alternative solution possible, it would be great.


text:
Recovery my data on internal storage (deleted permanently 1 month ago)
Does software like Dr. Fone, MiniTool that required "root" on android really work 100% for recovering my lost photo?
First of all my phone is not rooted.
I've lost my important photo (deleted permanently) which I kept in internal storage. And recently i always keep my phone clean that is always using cleaner app like CCleaner for cleaning my DCIM folder, thumbnails, and cache. And i've tried a lot of app like DiskDigger and another app in playstore for recover my photo, but they didn't work.
And my last hope is rooting my phone and use software like Dr. Fone, or MiniTool. (If these gonna work)
And i'm really really searching the accurated answer here which will advise me for rooting my phone or not. Because as you know, rooting is very dangerous cz i have bad experience with rooting. I mean if there is no way to recovery my data so i oughtn't to root my phone.
Please help me.
Thanks in advance!

Sorry for your loss but it's almost certainly impossible to recover deleted data if your phone is not already rooted. Rooting usually requires unlocking bootloader which is supposed to erase whole internal storage permanently. Also 1 month is a long period, data must have been overwritten several times by now. See How to make a complete factory reset, without anyone being able to retrieve my data?. Apps claiming data recovery without root mostly make false or ambiguous claims.

@IrfanLatif Thanks for the answer before. And actually that doesn't answer my question either. So actually i've heard about someone losing his data for 6 months, and somehow it still can be recovered. I don't know how, but certainly it requires root. I'm here for convincing myself to rooting is wise as a way for recovering my photo.

no, these tools don't work 100% for recovering your lost photos. Furthermore it is IMPOSSIBLE please READ linked questions

https://android.stackexchange.com/q/219346


text:
Keyboard with TAB key ('\t')
I make lists and I'd love to have a keyboard with a TAB key that actually puts \t character within a text field without switching to the following field. I tried most keyboards and I'm dissatisfied over the lack of that feature. Some have the TAB key, but these don't work as expected (pressing TAB switches to the next input field).
There is SwiftKey and is the only one that does this, but it has no option to disable predictions, which I find annoying.

@alecxs Unfortunatelly, TAB key does nothing. It just switches to next text field or a button.

true. i always use tab for autocomplete in terminal emulator, didn't realize this behaviour


text:
How to set the time (including seconds) on Android
How do I set the time on Android, including setting the seconds?
I have an android handset that has no SIM, is permanently on airplane mode, and therefore doesn't sync its time from cell towers.
I use TOTP 2FA for many of my accounts, and sometimes the clock on my Android isn't precise enough to produce a valid OTP token. Therefore, I'd like to set the time manually, and TOTP would greatly benefit from being able to set the seconds as well. Unfortunately, it appears that the default "Settings -> System -> Date & Time -> Set time" route only permits me to set the hour & minute.
First, when I set the time with only the hour & minute per above, does the seconds field get set to 0? Or does the seconds field remain unchanged from before setting the updated time?
Second, how can I set the seconds in addition to the hour & minute? Bonus points for an answer that includes a GUI app from f-droid. The CLI works, but it's not exactly accessible to most..
Is there no app in f-droid that supports setting the time with seconds? I used to use NTPSync, but now it appears to not actually change the time after a successful ntp query.
fwiw, I'm using LineageOS and Android 9.

Changing the time requires AFAIR root. May be there is an TOTP 2FA app that allows to use a network time source instead of the local one? Or if you use an open source app you can make a feature request.


text:
Cannot unlock Motorola C following the instructions from Motorola
I have:

Created an account with Motorola
Enabled developer mode
Enabled "OEM unlocking"
Enabled USB debugging
Disabled the lock-screen PIN

I then connected the device to my PC with a USB cable and booted the device while holding volume down.
The device is visible to fastboot:
$ fastboot devices
ZY322V73DQ  fastboot

However, I cannot run any "oem" commands:
$ fastboot oem get_unlock_data
...
FAILED (remote: unknown command)
finished. total time: 0.002s

How can I unlock my Motorola C?

Here is everything else:
$ fastboot getvar all
(bootloader)    max-download-size: 0x8000000
(bootloader)    partition-size:flashinfo: 1000000
(bootloader)    partition-type:flashinfo: raw data
(bootloader)    partition-size:userdata: 32000000
(bootloader)    partition-type:userdata: ext4
(bootloader)    partition-size:cache: 19000000
(bootloader)    partition-type:cache: ext4
(bootloader)    partition-size:system: c0000000
(bootloader)    partition-type:system: ext4
(bootloader)    partition-size:metadata: 2480000
(bootloader)    partition-type:metadata: raw data
(bootloader)    partition-size:nvdata: 2000000
(bootloader)    partition-type:nvdata: ext4
(bootloader)    partition-size:frp: 100000
(bootloader)    partition-type:frp: raw data
(bootloader)    partition-size:efuse: 80000
(bootloader)    partition-type:efuse: raw data
(bootloader)    partition-size:tee2: 500000
(bootloader)    partition-type:tee2: raw data
(bootloader)    partition-size:tee1: 500000
(bootloader)    partition-type:tee1: raw data
(bootloader)    partition-size:keystore: 800000
(bootloader)    partition-type:keystore: raw data
(bootloader)    partition-size:secro: 600000
(bootloader)    partition-type:secro: raw data
(bootloader)    partition-size:oemkeystore: 200000
(bootloader)    partition-type:oemkeystore: raw data
(bootloader)    partition-size:seccfg: 80000
(bootloader)    partition-type:seccfg: raw data
(bootloader)    partition-size:expdb: a00000
(bootloader)    partition-type:expdb: raw data
(bootloader)    partition-size:logo: 800000
(bootloader)    partition-type:logo: raw data
(bootloader)    partition-size:recovery: 1000000
(bootloader)    partition-type:recovery: raw data
(bootloader)    partition-size:boot: 1000000
(bootloader)    partition-type:boot: raw data
(bootloader)    partition-size:para: 80000
(bootloader)    partition-type:para: raw data
(bootloader)    partition-size:lk: 80000
(bootloader)    partition-type:lk: raw data
(bootloader)    partition-size:protect2: a00000
(bootloader)    partition-type:protect2: ext4
(bootloader)    partition-size:protect1: a00000
(bootloader)    partition-type:protect1: ext4
(bootloader)    partition-size:nvram: 500000
(bootloader)    partition-type:nvram: raw data
(bootloader)    partition-size:proinfo: 300000
(bootloader)    partition-type:proinfo: raw data
(bootloader)    partition-size:preloader: 40000
(bootloader)    partition-type:preloader: raw data
(bootloader)    ro.carrier: 3gb
(bootloader)    radio: 5
(bootloader)    kernel.version[0]: Linux version 3.18.35+
(bootloader)    kernel.version[1]: (zhaopan@dell-PowerEdge-R730)
(bootloader)    kernel.version[2]: gcc version 4.8 (GCC)
(bootloader)    kernel.version[3]: 1 SMP PREEMPT
(bootloader)    kernel.version[4]: 2019-03-26:11:19:45
(bootloader)    ro.build.fingerprint[1]: motorola/namath_54/namath:7.0/NRD
(bootloader)    ro.build.fingerprint[2]: D90M.009/1553569854:user/release-
(bootloader)    ro.build.fingerprint[3]: -keys
(bootloader)    ro.build.version.mtk[1]: alps-mp-n0.mp1-V1.0.2_wt6737m.65.
(bootloader)    ro.build.version.mtk[2]: .n_P109
(bootloader)    ro.build.version.full[1]: Blur_Version.25.41.09.namath_54.
(bootloader)    ro.build.version.full[2]: 3gb.en.US
(bootloader)    imei1: 000000000000000
(bootloader)    boot reason: wdt_by_pass_pwk
(bootloader)    hwrev: M11
(bootloader)    CID: 0x0032
(bootloader)    SKU: XT1754
(bootloader)    CPU: "MT6735"
(bootloader)    serialno: ZY322V73DQ
(bootloader)    off-mode-charge: 1
(bootloader)    warranty: yes
(bootloader)    securestate: no
(bootloader)    hwsecure: yes
(bootloader)    kernel: lk
(bootloader)    board: WT98736B32_BB8
(bootloader)    product: WT98736B32_BB8
(bootloader)    Ram size: 1GB
(bootloader)    emmc: KMFE60012M_B214
(bootloader)    storage-type: emmc
(bootloader)    version-preloader: 0.1.00
(bootloader)    version: 0.5
all: Done!!
finished. total time: 0.006s

might not be unlockable. i have seen some tuts recommending mfastboot instead of fastboot, give it a shot. rooting with locked bootloader might possible if you set keep force encryption and keep avb verity in Magisk Manager advanced settings, find the right MTK_AllInOne_DA.bin and auth_sv5.auth and flash patched boot-verified.img

https://blog.hovatek.com/so-whats-all-this-talk-about-meditek-secure-boot-and-da-files

only if SP Flash Tool fails as descriped above: suboot script (not for noobs)
https://forum.xda-developers.com/showpost.php?p=79626434&postcount=135
or as app (untested)
https://github.com/JunioJsv/mtk-easy-su


text:
Offset Android Keyboard
I'm making an installation using Android (Bliss Os).
For getting the recognizable android keyboard that everybody knows I installed GBoard. Everything worked fine except that my keyboard misses half the most left line of letters.
Does anybody have any experience with this problem? I already tried using a different display but this didn't help.
Also tried installing swiftkey. But this also had the same problem. They do have a functionality to rescale the keyboard but this is a dirty fix for my problem..

Sorry for the bad picture quality, I do not have the buttons on this elo touch display to take a screenshot.

Do other applications get cut off on the left side as well or is just the keyboard?

Just the keyboard

I'm not knowledge about GBoard, but is it possible there are variants for various aspect ratios?

Gboard is the standard google key board:
https://play.google.com/store/apps/details?id=com.google.android.inputmethod.latin&hl=nl

gboard has resize option. unfortunately only in portrait mode https://i.stack.imgur.com/GhRVq.png

I fixed this by disabling and re enabling the application that was forcing my device in portrait mode.
The application I was using was "Set orientation" V1.1.4 from package com.googlecode.eyesfree.setorientation.

Can we know which application was it that was forcing the portrait mode? How did you find it out?

@Firelord I found out by asking myself all variables that influence the display resolution. Orientation also influences this. Probably something has gone wrong with the application because you would think it would also reset at reboot (this was not the case).


text:
Connecting Samsung Galaxy Tab S6 to HDMI without activating Dex
I own a Samsung Galaxy Tab S6, and it's quite good... except for Samsung's software, which I would qualify as bloatware without hesitation.
I bought a cable that is able to move signal from USB-C ports to HDMI ports, and I connected my tablet to my TV using that cable.
The problem arrives when Samsung, in all its wisdom, refuses to just stream my screen, and insists on starting this Frankenstein thing of Dex. Even if the idea seems good, its execution is very poor, and all the software running on it becomes highly unstable, crashing all the time (when it does not have any problems running in basic mode).
And that's why I'm looking for some way to send my tablet screen to my TV while avoiding to activate Dex.
As an extra, I also considered using something like Chromecast Ultra, and in fact I did, but its streaming quality is just a disaster, and looses a lot of quality (hence my intention to go with simple cables).
Thank you for your attention.

It seems that it depends more on the TV than on the tablet itself.
In my particular case, I had to select the specific input source in the TV, and only then the tablet sends the image without trying to run in Dex mode.
To summarize, I had these connection methods:

Google Chromecast Ultra: relatively low latency, but very bad quality image for anything not being Netflix or Youtube.
Google/Samsung Smart View: it sends the image via bluetooth, with higher quality than what we have in Chromecast Ultra, but with much higher latency. Unacceptable for videogames.
USB-C -> HDMI "out of the box": The Dex mode takes control, leading to unstable applications.
USB-C -> HDMI, but controlling the input source from the TV: What I wanted.

I hope this might be useful for someone else.
Best regards.

I am sorry but this answer does not make sense to me. To see the HDMI signal you always have to select the matching HDMI input channel in the TV.

Not really, Dex took control, I just plugged the cable, and I was able to screencast the tablet to the TV, without having to change the configured input there (the default was pointing to another device). Probably the fact that the two devices are from Samsung enabled the possibility for non-standard behaviours.

I want to do the same thing but don't want to use Chromecast/Smart View because of the latency. What cable do you use to make it work? Just a standard USB-C to HDMI one or do you need the official Samsung Dex one?

I did not need the Samsung Dex (I mean, I did not need any special hardware)

I had this problem while trying to use my TV to have a "messenger" meeting dex kept automatically starting even when I turned it off
Go into settings on your tablet click on the writing "Samsung DEX" below the dex symbol then go to "details" and disable "auto start when Hdmi is connected"

Dex is bound to display link to USB-C. You can truly deactivate Dex if you use a USB-C display output. Because it is linked to a USB plug-and-play detection, you can share the display without Dex only on Wi-Fi.
Dex is more than just a launcher. It switches the Android display and also kernel to support multitasking and multi-screen output. y run Dex always on because it adds additional drives support as LAN connection, hardware keyboard, trackpad, etc. on fex the CPU scheduler runs at a high rate. Take an example the Android for PC which has similar characteristics.


text:
How to control Android phone with laptop's mouse and keyboard without lag?
I tried software called "MyPhoneExplorer" that has mirroring function and using it via Wifi gives mouse input lag. Maybe it's possible to achieve this without lag, like using regular Bluetooth mouse connected to phone. Maybe somehow connect PC with phone via Bluetooth?

Remote control using Bluetooth was something Microsoft had included in the "Your Phone" Windows app. However the supported devices was very limited and in the end they dropped this technique it totally.

Why not connect the USB mouse and keyboard directly? Any reason for this? There's no single mirroring app that I know that doesn't have lag.

a bluetooth keyboard/mouse should of course connected to the phone directly. if you mean screencast and remote controll with pc keyboard/mouse, enable adb over wifi, use scrcpy or vysor


text:
Can I edit the hosts file on my android without root access?
I'd like to block access to websites on my Pixel 3 android device. The parental settings leave much to be desired and apps like BlockSite don't work across all browsers. (In this case - it doesn't work in firefox)
Here's what I tried so far
adb pull /system/etc/hosts ~/Documents/android/hosts

I edited the hosts file and got it ready to be transferred back.
adb push ~/Documents/android/hosts /system/hosts

This gave me error message: adb: error: failed to copy '/Users/[username]/Documents/android/hosts' to '/system/hosts': remote couldn't create file: Read-only file system
Per this post and this post, I tried a few other options.
I tried to use these commands
adb root
adb disable-verity
adb reboot
adb root
adb remount

This gave me error message: adbd cannot run as root in production builds and when I tried adb disable-verity it said: verity cannot be disabled/enabled - USER build.
I tried to use this command
adp remount

This gave me error: Not running as root. Try "adb root" first.
I downloaded an emulator and tried this command on my device
mount -o rw,remount /system
mount -o ro,remount /system

Similarly, this was unsuccessful

https://www.xda-developers.com/google-pixel-3-unlock-bootloader-root-magisk

https://adaway.org (for systemless hosts)

Can I update the hosts file without rooting the device?

Cauder, I saw https://www.modmy.com/how-modify-hosts-file-your-android-device and was about to try it but then saw your post here and got discouraged. Did you ever get it working without rooting? Thanks.


text:
How to get the battery status from an Android phone with Python connected to a PC via Bluetooth?
Is there a way to interrogate an Android phone with Python on a PC and/or Linux to get battery status while connected via Bluetooth?

Not sure if this is possible via Bluetooth, but with ADB over Wifi you could call dumpsys batteryproperties respectively dumpsys battery for Android before Oreo/8.

Can you tell me where I can find ADB documentation, so I can figure out how to connect to an android phone and issue the calls you mentioned?

Use your favorite search engine and search for adb wifi android.


text:
If I buy a used and infected android phone, will flashing a new custom recovery and custom ROM make it safe to use?
If I buy a used and infected phone with a expensive spyware on it that the antivirus does not detect or is unable to remove than will flashing a new custom recovery and custom ROM make it safe to use?
What would be the proper way of doing it?
Connect to computer and install new recovery first and then the rom or some other way?
Once I have done these two steps, can I be assured that my phone is clean?
And should I be worried about getting my computer infected?
Edit: If this is not enough then what other actions should I take to be sure that the phone is clean?

the proper way is find the right flash tool and stock rom before buying. custom rom depends on stock rom firmware

No, you can't be sure. The recovery and the system partition are the two most important partitions but not the only one. There are also Bootloader, RIL, plus device specific partitions.

@Robert : So what would be the proper way to rewrite all the partitions?

as i said just flashing stock ROM and you will be fine. it will not harm your pc

@Linux_user0987 That is device dependent. There is no general way to flash a Android partition respectively system image.

@Robert : 1) How can I find out how many partitions my device has? 2) Is it possible to rewrite all partitions for a device. And by that I mean is there any brand which has images of all partitions available on the internet?

partitions explained Mediatek very good explanation of android partitions on xda-developers Qualcomm

if you download full stock ROM it comes with all required partitions except device unique calibration data, carrier sim lock, imei, mac address, ... you must not wipe these (nvram, persist, protect, seccfg, ...) you can list partitions from fastboot getvar all (in fastboot mode) or from adb shell ls -l /dev/block/*/*/*/by-name/* (with usb-debugging)


text:
SM-T815 tablet stuck into boot loop
I have a Samsung Galaxy Tab S2 (SM-T815), witch got into a bootloop after a android update. If the tablet reaches 0% battery and i try to plug it in, it automatically powers on into samsung logo and stays there.
What i've tried:

Keeping pressed the power button (up to one minute) - nothing
Home button + vol up + power (for recovery mode) - nothing happens
Home button + vol down + power -> Goes into a menu where i have to choose between rebooting and going download mode (rebooting goes back into samsung logo loop)

If i choose download mode:

Tried flashing original firmware with Odin3 (after finishing flashing restarts and goes back into boot loop)
Tried firmware from different sites (I live in Romania and there are 2 types of firmware available for this country) Some of them fail at the end and others pass, but after reboot goes back to bootloop
Kies - not compatible
SmartSwitch - not compatible

Any help is appreciated!

in odin uncheck auto reboot, boot straight into recovery, perform factory reset

@alecxs after flashing, the tablet stays in download mode. Do i have to somehow restart it manually? Power button still doesn't work.

if your buttons broken, the only way out is flash again with auto reboot, sorry. try keep holding the recovery buttons while the reboot

@alecxs I don't mean they are broken. I mean they are not doing anything in this situation. They were working fine before and i don't think they broke just now.

if you flash the right rom and buttons working you should be able to enter recovery mode https://www.hardreset.info/devices/samsung/samsung-t815-galaxy-tab-s2-97-lte

if this is not working you still can use it https://www.youtube.com/watch?v=SmNOfLEbcyY

@alecxs Then maybe the problem is with the firmware. I've tried 15 firmwares from different sites. All of them get me into bootloop or fail while flashing.

improve your post with picture of the download mode screen

if bootloader is unlocked you can also flash TWRP, or if you are 100% sure device is matching flash bootloader and modem https://forum.xda-developers.com/showthread.php?t=3719988


text:
How do I disable the app switcher on Pixel 3?
I'd like to disable fast app switching on pixel 3. My device is not rooted and I use nova launched.
I've looked through the settings and I've looked at the gestures folder and the nova launcher settings and I haven't found a feature that appears to do the trick.
Can you help me understand how I can get rid of the fast app switcher in pixel 3?
There are two things that I'm trying to stop
1- When you swipe up from the bottom of the screen and you see apps and can switch between them
2- When you swipe horizontally on the dock bar and it takes you to the most recent app

Um, don't use the Android 9/10 gestures? You should be able to revert to the classic nav keys from Settings - System - Gestures.

That seems a bit brute force

The app switcher is part of the Pixel Launcher, however since Android 10 if you disable it you'll get no app switcher at all. There is a separate build target (SystemUiWithLegacyRecents) that brings back the "card" recents, but that's only accessible to whoever building their own images, and seems to disable gestures altogether.


text:
Data removal from android

If I log onto whats app using a new device and then delete the app ... will it remove the app , all its data , back ups and pictures from the old device and also remove it from google drive ?

Also would this still work if the device is switched off  or offline

If I wish to remote wipe the device would that be possible if I have already disconnected the device from google drive ( for safety reasons ) but it is still active on the find the device ( but won't locate - due to phone possibly running out of battery or offline ?

So if it is offline can it still receive a signal to be remote wiped ?


text:
Force single application to communicate over data plan -- NOT Wifi
This is the opposite of most questions out there.
My friend's work has blocked a chat application, but she still wants to be able to use the wifi there for the rest of her internet needs.
Is there any way she can have just the chat application use the cell network (getting around the block) and have the rest of her browsing routed over wifi?

I don't think you would be able to use both networks simultaneously without rooting and manually inserting routes. But there are many possible ways to bypass blockage, depending on the method used for blocking.


text:
Start bash script on boot not rooted Android 7.0 and Android 9.0 device
I currently do it manually each time after my phone is restarted. I connect using adb and running this
adb shell sh /sdcard/AFolder/ascript.sh "a-dummy-argument" &

Then I just disconnect the cable and script continue working.
How I can achieve the same thing on non rooted Android 7.0 and Android 9.0 devices(I have 2 and I would like to do this on both)? I would like to avoid rooting. From what I was reading it can not be done without rooting. My question is, would it be possible to install TWRP, backup stock ROM, modify stock ROM so that it would have an additional file ascript.sh (or run it from sd card) which will be started at startup. Then flash this modified ROM, to avoid doing this manually. Is this possible?
Note: adb via tcp I believe is not an option as to make adb work via tcp on non rooted device after each reboot we need to connect the device to PC first to switch to tcpip, so we back to the task how to avoid after reboot connecting phone to PC.

https://play.google.com/store/apps/details?id=com.ryosoftware.initd btw android doesn't have bash it uses MirBSD Korn Shell

Also there are other apps which can execute scripts on boot. Termux offers a paid add-on: Termux Boot for the same purpose. But apps cannot execute scripts with the privileges adb has. So most of the times running shell scripts without root access or at least adb shell permissions is not very useful.

@IrfanLatif with one exception ;) https://www.xda-developers.com/tasker-5-9-2-beta-run-adb-shell-commands-without-tethered-pc

@alecxs workarounds do exist, many other apps also use. User needs to connect to PC at least once after reboot. Or have to run adbd in TCP mode somehow.

@IrfanLatif I have added a note to the question that adb over tcpip is not an option as this can not be done without connecting device after reboot to PC on non rooted device.

@user1325696 explicitly root isn't necessarily required in order to always run adbd in TCP mode. On non-SAR devices with unlocked bootloader it's possible to set persist.adb.tcp.port or service.adb.tcp.port permanently by unpacking boot.img. // "so we back to the task how to avoid after reboot connecting phone to PC" Three apps are already mentioned for reference. You can find more similar solutions.

@IrfanLatif adb shell setprop persist.adb.tcp.port 5555 did not work, trying option with boot.img. Is this is possible on non rooted device unpack and change and pack again? So far I so only guides for rooted

@user1325696 yes it's definitely possible to modify boot.img without rooting main OS.

This app, called LADB — Local ADB Shell, can open an adb wifi shell without ever needing to connect to the PC:
https://play.google.com/store/apps/details?id=com.draco.ladb
Unfortunately you have to cut and paste your commands into it for now, I'm trying to get him to add editable shortcuts. It's a fairly new app.

unfortunately not compatible with android 7.0


text:
Possible to change an apps SSAID aka Android_ID without rebooting? Which service handles this? Fast rebooting with Zygote kills my shell script
This may seem like an odd question, and I apologize for that. I am currently debugging an application and I am having trouble getting new Android_ID's to stick without rebooting.
To be specific these are the new app specific android ID's introduced in 8.0. The location for these ID's are in the following file: /data/system/users/0/settings_ssaid.xml
I am able to change the app specific ID just fine but it doesn't actually change unless I reboot the device.
Is there a certain service or process that I can force-restart to make the new ID to take effect? Or possibly some type of cache that needs cleared?
I am mainly using adb shell commands. So far the best method is to run the following command:
adb shell setprop ctl.restart zygote
This does a 'soft' reboot, so it's much faster but unfortunately it completely kills my shell script that is debugging as well and it's a pain to keep restarting everything.
Is there a way to see what services or processes are being restarted when restarting 'zygote'?
Much appreciate the help in advance.

Almost everything related to apps settings is cached in system_server which is the Android framework and a core component of Zygote. So the only way to clear cache is to kill the process. There are hundreds of services running inside system_server and many of those are accessible through commandline tools. But I have never come across a method to clear cache. Some time ago I was looking for a way to clear SQLite cache. // Keeping shell script running when Zygote is killed is possible with root access.

I do have root access, how would it be possible to keep the script running? Just run as super user? Thanks for the reply.


text:
Sniffing USB traffic between an Android app and a connected device
Is there any way to sniff USB traffic between an Android app and a connected device, like a drone controller?

On a regular non-rooted device this is impossible.
On a rooted device it might be possible (but I would not know how). The common Linux solutions for capturing USB traffic require a special kernel module. If your kernel has no module support this would require to build a custom kernel with the USB sniffing kernel module included).
In both cases you still have the possibility to perform a man-in-the-middle (MitM) attack on the USB connection, e.g. by placing a special device in between that allows you to access the USB traffic on "cable level":

https://www.csoonline.com/article/3087484/say-hello-to-badusb-20-usb-man-in-the-middle-attack-proof-of-concept.html
Or You could use a "Facedancer" board + software


text:
OnePlus6 oxygen os 10.3.0 "popup notifications no longer available on your version of Android"
I updated my OnePlus 6 to oxygen os 10.3.0, and I can't enable pop notifications, especially on whatsapp.
Attached are the screen shots.

(Click to enlarge)

Looks like this is a known "issue"/limitation on Android 10.

switch off adaptive notifications. If that doesn't help, try enabling lockscreen notifications

It's a known bug. See if whatsapp and other affected apps , battery optimization is set to off. Also disable in advanced settings of battery optimization, anything like deep optimization . Best is to disable all advanced battery optimization options


text:
How to make a screenshot using Termux
When I am using Termux may I send a command to create and save a smartphone screenshot in /sdcard/DCIM ?

Related for non-rooted device: How to take screenshot from terminal

adb should be executed in a computer terminal connected to phone, I'm asking a way to do that from smartphone using Termux .

Taking screenshot requires permission READ_FRAME_BUFFER. It has protection level signature|privileged, so cannot be granted to non-system apps (at least without root). // adb can be executed on phone without PC if you have root access (also sometimes without root access).

I can't see adb as an available command when I login in terminal using Termux. How can I execute adb from Termux ?

How to run adb and fastboot commands from Termux?


text:
Are VoLTE standards same across the world?
I have a SIM-free Galaxy S9+ (SM-G965F/DS) model. And in my home country (India) VoLTE works fine on it. I'm moving to Japan soon and was thinking of getting a Japanese SIM (The name of the carrier is au) . But I have read many posts about peoples phone not working with au VoLTE service (voice+sms service not working).
Is it possible that different countries use different VoLTE standards and my phone might not support au VoLTE?

Yes due to the bandwidth variation


text:
What are the privacy downsides to using Google's Gboard keyboard for Android?
For several reasons, I do what I can to avoid using Google products.  But I do currently use the Android OS (at least for now).
One thing I like about Android is being able to use any keyboard app you want.  I've done everything I can to avoid using Google's Gboard keyboard.  I've tried more than a half-dozen keyboard apps, but the one I like the most is Gboard (and I only looked at it after being dissatisfied with the other keyboards I tried).  It's word swipe recognition seems more accurate than the other keyboards I installed.  Also, I find the ability to search for emoji by name to be a useful feature.
But Google hasn't earned my trust, and my lack of trust in them is largely based on their historical behaviors as well as statements made by some of their top executives.
What are the privacy downsides to using Google's Gboard keyboard if it is allowed data access through a firewall?
What if data access to Gboard is denied via a firewall (but connections to Google are still mostly allowed for the rest of the Android OS, Google Play Services, and the Google Play store)?

I'd like to know this, too! It seems there is an option to disable sharing statistics with Google, but is that really all of the potential leaks? Does it still share any data with Google Play Services?


text:
How do fonts / fallback fonts work in Android 9+?
Short story
I want to add a fallback font to my OP6t running Android 9 to support poorly updated / coded legacy apps (unlocked, and rooted with Magisk)
- I am looking for a system wide solution
I am not having any luck figuring out what I am doing wrong
Long story
Android 4-8 I just rooted the device, copied a modified DroidSansFallback.ttf and corrected the permissions -- now I am at Android 9 and this doesn't appear to work
I have tried (via Magisk Module)
- injecting the font to system/fonts
- injecting system/etc modified fonts.xml & fonts_slate.xml
Any help suggestions or ideas is greatly appreciated!


text:
How to record video with mic off?
I am using a Samsung S10+. How do I record a video with no mic input ?
I have tried to put my finger over the mic, but I could still hear some background noise. I am looking to make a video in a heavy noise setting and would like to cut out the sound completely.

If you are ok with a different camera app, then please try the following-

Install Open Camera

Go to Settings (Top right settings icon) -> Video settings...
-> Toggle Record audio option to disable audio.

Now you should be able to record Video without Audio. Cheers :)

@happybuddha If this answer helped, please accept this. Thanks


text:
Android Device Partition table not recognized by any of the partition management tools
I have an Android 8.0.0 device (https://www.tvbox-manufacturer.com/product_category/fire-tv-stick/) with eMMC as a storage medium.
The eMMC is removable (BGA socket on the Board).
The device boots and works perfectly fine with the eMMC.
However, when I connect the eMMC chip to a Linux machine (using eMMC to USB converter), the partitions on it are not recognized by the Linux Machine (Ubuntu 16.04).
I have tried the following tools to list the partitions to no avail:

gdisk
cgdisk
parted

Following are the logs (device is /dev/sdd):
 - lsblk

Last login: Tue Jan 14 11:39:49 2020 from 192.168.21.145
flash@nandflash:~$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 931.5G  0 disk
├─sda1   8:1    0  29.8G  0 part [SWAP]
├─sda2   8:2    0     1K  0 part
├─sda5   8:5    0   476M  0 part /boot/efi
├─sda6   8:6    0 190.8G  0 part /
├─sda7   8:7    0  95.4G  0 part /var
└─sda8   8:8    0 615.1G  0 part /home
sdb      8:16   0 931.5G  0 disk
├─sdb1   8:17   0  14.9G  0 part
├─sdb2   8:18   0  95.4G  0 part
├─sdb3   8:19   0   977M  0 part
└─sdb4   8:20   0 820.3G  0 part
**sdd      8:48   1  14.7G  0 disk**
sr0     11:0    1  1024M  0 rom
flash@nandflash:~$

 - gdisk

flash@nandflash:~$ **sudo gdisk /dev/sdd**
[sudo] password for flash:
GPT fdisk (gdisk) version 1.0.1

Partition table scan:
  MBR: not present
  BSD: not present
  APM: not present
  GPT: not present

Creating new GPT entries.

Command (? for help): p
**Disk /dev/sdd: 30777344 sectors, 14.7 GiB**
Logical sector size: 512 bytes
Disk identifier (GUID): 1D109CAC-AD7E-4231-A398-D1B1FB515752
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 30777310
Partitions will be aligned on 2048-sector boundaries
Total free space is 30777277 sectors (14.7 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name

Command (? for help):

 - cgdisk

    Warning! Non-GPT or damaged disk detected! This program will attempt to
convert to GPT form or repair damage to GPT data structures, but may not
succeed. Use gdisk or another disk repair tool if you have a damaged GPT
disk.

                         Press any key to continue....

 - parted

    flash@nandflash:~$ sudo parted /dev/sdd
GNU Parted 3.2
**Using /dev/sdd**
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p
Error: /dev/sdd: unrecognized disk label
Model: Generic STORAGE DEVICE (scsi)
Disk /dev/sdd: 15.8GB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:
(parted)

Can anyone please shed light on why this might be happening?
The Android device boots just fine with the same eMMC.
The output of the file -sk command is shown below:
flash@nandflash:~$ sudo file -sk /dev/sdd
/dev/sdd: data
flash@nandflash:~$

Adding the hexdump:
00000000   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
.............................................................  ................
00000190   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
000001A0   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
000001B0   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
000001C0   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
000001D0   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
000001E0   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
000001F0   00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................
00000200   78 1E BB 3F  C4 C2 B2 3F  C6 DC 9B E6  0B D9 0E 67  x..?...?.......g
00000210   EA 82 D0 91  53 2F 05 91  73 A2 9C CD  2D F4 E1 DF  ....S/..s...-...
00000220   0E 7B 19 88  85 04 DC F9  AD B0 A8 B2  AD 4B 81 E5  .{...........K..
00000230   F3 4C F3 9C  9F 51 E4 E9  DF 0B ED 83  71 E3 31 75  .L...Q......q.1u
00000240   D4 F9 A4 51  CD 4A E5 1C  DE B6 42 57  EC 32 59 C5  ...Q.J....BW.2Y.
00000250   75 1D F6 9A  12 6E 6C BD  DD FD 8D 0B  3A 8D E3 9A  u....nl.....:...
00000260   9A 3E 2F 2E  8D EC 9C 0A  32 0D 9F 57  3D C5 3F 09  .>/.....2..W=.?.
00000270   6E 7F 18 27  4F 5E 89 CF  55 90 B9 7F  36 9E 68 90  n..'O^..U...6.h.
00000280   96 41 AC C1  44 08 4C E9  A3 83 08 E7  92 E9 E1 62  .A..D.L........b
00000290   14 2D 6D 36  5C 36 12 7D  D4 07 01 22  BA 56 06 47  .-m6\6.}...".V.G
000002A0   16 66 C0 6A  B4 A5 31 A8  92 93 52 7C  E6 61 6C DB  .f.j..1...R|.al.

May be the problem is with your eMMC to USB converter. Or may be the device manufacturer uses some proprietary partitioning scheme. Do you have root access on Android device? It's also possible to use partitioning tools on Android too.

@IrfanLatif Thanks for the reply. The eMMC to USB converter works with other eMMCs. Are you aware of any such proprietary partitioning schemes ? Can you point me to some of them ? I do not have root access to the Android device.

You should simply name the Android device you are talking about. Knowing the manufacturer and the device name are a good indicator to understand how the system (and therefore the eMMC) works. BTW: Are you sure the the eMMC module is OK? If the internal controller and it's flash mapping table (assuming it has some wear leveling system integrated) was damaged the data you see man be just "shuffeled" on block level.

@Robert This is the device https://www.tvbox-manufacturer.com/product_category/fire-tv-stick/. I will include it in my question as well. I think the eMMC module is OK because if that wasn't the case, the product would work in the first place. But it works every time i reinsert the eMMC in the BGA socket on the Product.

https://www.j-michel.org/blog/2014/05/27/from-nand-chip-to-files

The partitions aren't recognized because your device, like most Android devices with Amlogic chipsets, uses Amlogic's proprietary partition table instead of a standard partition table like GPT or MBR. Amlogic's partition table is unconventional because it's placed quite far into the eMMC, at an offset of 36MiB (0x2400000), instead of near the beginning. I believe this to be because Amlogic chipsets read critical bootloader code from offset 0x200, which standard partition tables would overlap.
Amlogic's fork of Linux contains code to read the custom partition table (emmc_partitions.c and emmc_partitions.h), and from that I've created a Kaitai Struct parser, amlogic_emmc_partitions (also on GitHub here), which specifies the layout in a declarative way.
You can load that format, along with a dump of at least 0x518 bytes from offset 0x2400000 in your eMMC, into the Kaitai Web IDE to see the partitions, but unfortunately that's about all the tooling that currently exists to work with this particular partition format. Unless other tools are written, editing such tables is only possible manually with a hex editor.


text:
Local files revisited: Opening local HTML files (file:///path/to/file) in Chrome on Android 10.x
You may note the almost duplicate title from this question. It keeps coming up when trying to solve my current issue.
I created a little web app to help at work. Just some HTML and JavaScript, and before Android started enforcing the Scoped Storage, I had no issues using it. Now when I try to load the URL (ie: file:///storage/emulated/0/__MyDocs/SignInTracker.html) I get an access denied error.
I could use Firefox, but it seems to be because it's not yet using the Scoped Storage standard, which if I understand correctly, will be a requirement in the next Android version, so that means I cannot rely on it working in the future. Also, Firefox just doesn't run as nicely as Chrome.
Is there a proper way for a non-Android-developer to use a local web app like this? Is there perhaps a location on the phone where I can place my .html and .js files that will allow Chrome to access them without issues? At work, I'm not online or connected to anything, so loading from another server/computer is not an option.
For reference: My Chrome version is 79.0.3945.116, my Firefox version is 68.4.1, and my phone OS is Android 10; Pixel Build/QP1A.191005.007.A1.

This same problem occurs with other browsers like Firefox and Bromite :-(

You have 2 options:

You can use a local web server in your Android phone itself. There are many server apps out there in the Play Store, one such app is Simple HTTP Server.

You can put your documents into the folder Android/data/com.android.chrome/files/Download/ in the internal storage. It's absolute path is /storage/emulated/0/Android/data/com.android.chrome/files/Download/ or /sdcard/Android/data/com.android.chrome/files/Download/. This is the location where Chrome stores any downloaded files and therefore, this the only location where Chrome can access the files. But remember, uninstalling Chrome will delete this directory.

I had tried some server apps but they all had issues (one of them didn't even process Javascript). Placing the files in that directory seems to have worked though. Thanks!

You can also use Opera browser of you wish. It is much similar to Chrome since both use the same engine. Opera have no issues at all while browsing the storage.

Thanks a lot for the suggestion of Simple HTTP Server: it is very easy to use, is free and works like a charm. This is a very elegant workaround! Still I don't fully understand why Android doesn't allow to give apps access to selected folders in the local storage. Maybe in the future this will be implemented; let's hope.

For Android 11 [One UI 3.1]
Browsing local files (in internal storage space) in Chrome using file:///sdcard/ or file://localhost/sdcard/, one can notice that only media files and subdirectories (if any) are listed in almost every folder except the "Download" folder (but not in its subfolders=subdirs).
This means that on Android 11, the folder from which Chrome can read local (m)HTML is /Download folder, not Android/data/com.android.chrome/files/Download in internal or external storage space like in Android 10.
NOTE: on my Samsung devices, downloads onto internal storage were saved into /Download folder in all versions of Android (9, 10, 11), but downloads on an external SD card changed their folder from /storage/emulated/exSD_CARD/Android/data/com.android.chrome/files/Download in Android 10 to /storage/emulated/exSD_CARD/Download in Android 11, where exSD_CARD is the device's label for external SD card (0123-4567 or 9C33-6BBD in my devices)
Thus, (m)HTML files saved into /Download folder with Chrome (with .mhtml extension from older times or with manually added extension by renaming saved mhtml files without extension - from certain time Chrome stopped to append .mhtml extension to saved mhtml files :) on my devices, I guess from upgrading to Android 10)
This did not work for the mhtml files which have been moved to other folders and then returned to /Download folder. (And because of collecting saved mhtml files in many different folders, I have many mhtml files which are necessary to copy/move back to /Download folder prior to opening but they still cannot be opened)
Notes about opening mhtml files
I need to use Total Commander's "Open with" functionality with file://url option checked, then choose Chrome in order to open (mhtml) file with Chrome (with file://url checked, the Chrome is in the list to choose from, with file://url option unchecked, it is not listed in the list) or to browse local files in internal storage directly in Chrome (file manager My Files provided with the device was unusable to choose mhtml files to be opened with Chrome)
(mhtml) files from /Download folder opened in this way are opened as offline versions of downloaded web pages - but only if the file was not moved and returned back to /Download folder, otherwise you get Access Denied message. Also, opening (mhtml) files in this way using Total Commander, but from other folders than /Download folder, leads to Access Denied message
Opening mhtml files from any folder using Total Commander, but with file://url option unchecked (in this case, the Chrome is not in 1st list, so you need to choose "Open with *" option with folder icon from the list and subsequently choose Chrome from next list) behaves differently. Opening in such a way leads not to successful opening or Access Denied message but to Save as Dialog Form in which one can choose also if the resaved mhtml file should be saved to internal storage or external SD card (if present). In this way, resaved mhtml files in /Download folder (on internal or external storage space) can be now opened using Total Commander "Open with" dialog with checked file://url option.

Still, there exists a way of opening the (m)HTML files with Chrome

without other browsers/viewer
without rooting the Android device

but maybe only until the next update :)

Thank you! The URL file:///sdcard/ works on Android 8.

My workaround to open local files on my Samsung tablet is this:

Install Ghost Commander from f-droid.org (link)

Navigate to the directory where the .html file is, then double-click on it and open with Chrome, Opera, or Samsung web browser. Sadly I'm unable to associate with Firefox for Android (not listed).

The URL seems a bit random: content://com.ghostsq.commander.FileProvider/FS/L3N0c3JhZ2UvZW11bBF1ZWQvMC9Nb3ZpZXMvenNhbmk/videos.html
But everything works, all the relative paths listed in the .html are working.
In my case, I have a list of videos which I can filter from .css only (embedded inside the .html file) without any additional javascript.


text:
Tagging images/photos for quick searching
I've got a bazillion images that I have no time to scroll for if I need to show something, and I'm considering to give them tags to identify them.
For example, I have a photo of a receipt. I want to add tags of the name of the store-purchased, name of the brand, name of the item. So if I have to show an accountant or tax guy, I can quickly retrieve the image using its tags.
Is there any way to tag photos and later search for them? 3rd-party apps are also allowed.

Welcome to Android Enthusiasts Stack Exchange, a Q&A site for Android end-users to solve their issues. Explicit app recommendation is off-topic here. The question has been reworded to suit the site's policy while still allowing answers to recommend apps. On the other hand, if you're only interested in apps, you might check our sister site, Software Recommendations Stack Exchange, but please ensure to follow their guideline to get the most suitable app to your query. Also, consider taking a quick [tour] to get familiar with the site.

Asking for app recommendations would be on-topic on our SoftwareRecs sister site ;) And there are several gallery apps supporting tags (disclosure: link goes to my Android site). Just search the linked page for "tag" (I pointed that out for some, while others might have the feature as well).


text:
Monitor and identify which apps create a specific file/directory
From time to time, there is a directory (and files inside of it) that is created on the internal memory of my device. I keep deleting it, but after a few days/weeks, it's back. The folder in question, by the way, is Tencent. I already uninstalled the game associated with them long ago, but the directory keeps popping up.
I would like to know what other app is creating it. I don't have that many apps, mainly social media ones and tools, and I think they are only associated with games.
Searching around, I found an app that logs all accesses to files of the filesystem, but it doesn't show what app is doing it.
The answer from Software to monitor file owner is not going to work in my case because these files are all 0 bytes so it's way too fast to catch the app creating them. Not to mention that the creation time is random. It could take days or weeks for the app to create it again.
Anyone have some good ideas before going into detective mode as last resort? I'm firstly asking for an app because that would be the easiest way to monitor the filesystem.
PS: My device is rooted.

Is there a reason why you don't post the exact and full path name of that folder? The community here often has some valuable hints which app may have created those files. Tracing the origin of file operations is not possible on an unrooted Android (and even on a rooted device the ways I can imagine requires some programming skills for an Xposed module or a Frida hook).

How to identify the app/process which re-mounts partitions R/W, creates files and changes file permissions?

@Robert, it's a folder named Tencent in the root of the internal memory.

I think a fast loop in a terminal checking lsof with a filter for the folder name, also checking what apps have just been started, all that in a loop in a shell script, may do the trick. I will try that.


text:
Emergency Notifications
Good Afternoon All,
I can't seem to find a solution to my problem when I do a google search so I'm hoping you all can help me.
I have an app on my phone which alerts me to nearby first aid incidents (GoodSAM), what I would like is to enable notification from that app to override any do not disturb or sound settings, I typically have my phone on silent or vibrate and in this instance it would be good to have it screaming out.
Any help would be most welcomed.
Kind regards,
Ollie

Your question seems to be about this app named "GoodSAM". In this case please edit the quest and add the link to Google Play Store as there are multiple apps with that name.

@Robert that shouldn't depend on the app, see my answer.

Solutions might depend on the Android version you're on. Take a look into Settings › Apps & Notifications › GoodSam › Notifications (available at least in Android 8+ – looks a bit different in Android 7 but is also there). In that place you should be able to define if it shall override DND.


text:
What are the Wi-Fi disconnect reasons on adb dumpsys wifi?
adb dumpsys wifi gives me, among many others, lines like this:
Event [IFNAME=wlan0 CTRL-EVENT-DISCONNECTED bssid=X reason=7]

What does reason=7 mean? What other reasons are there?
If this applies to Android aswell (I guess so since Android does use wpa_supplicant), reason 7 would translate to "Class 3 frame received from nonassociated STA" - Now what does that mean?
(I'm trying to debug WiFi disconnects that shouldn't happen.)

Have you considered that this is a Wifi deauthentication attack? AFAIK in such an attack you will encounter a lot of those messages. See also this paper which describes the attack.

@Robert While researching this issue, I saw something related on serverfault... It's not impossible, but highly unlikely. This WiFi is part of a business that has two APs - One is open for customers, one is locked for employees. The device connects to the locked one. This doesn't happen often by the way, 1-2 times a day (at most), hours apart.

@Robert Cool thing. Didn't know that exists. While I sitll find this highly unlikely in the place the AP is. Let's say this did happen - Is there any way I can set up Android so that my phone will automatically re-connect again?

@Robert Is there really no way to simply have the phone re-connect again? I don't mind the deauth itself, nor a few seconds or even minutes without Wi-Fi, but any sort of automated re-connect attempt would be great. I do have root access on the phone. (Android 5, by the way)

@Robert I've opened a new question to keep this one about finding the cause and fixing the issue itself, and the new one about re-connecting.

Most likely your problems are caused by one or more attackers performing the Wifi deauthentication attack. Due to a weakness in the Wifi WPA2 protocol it allows to deauthenticate any client ("kick" it out of the Wifi it is connected to).
There are even tiny portable deauther devices  which can deauthenticate any client in Wifi range. It does not matter if the Wifi is open or protected by a passphrase. Even if the Wifi is visible or hidden (hidden BSSID) is irrelevant for this attack.
May be some attacker using a deauther is driving by (car, bus, ...) and every time your device gets disconnected.
The only counter measure to prevent such attacks is the new WPA3 protocol which is supported since Android 10. To use it support for WPA3 has to be present in the Wifi AP and the Android device.


text:
Help me with correct cpu / rom file
I buy a phone from Ebay, i flashed the phone with wrong rom's in Smart Phone Flash Tool. then i flashed the phone i check the Bootloader off. so i don't flash the preloader.
I searched around and i found close to the phone and it was MT6735M without error in Smart Phone Flash Tool. But the phone still does not boot up, without success.
I asked on this forum i another topics, he help me to get preloader.bin out of my phone, now i have the preloader.bin.

What the problem i can't found the right rom right now.

The name is: (GSM UNLOCKED 4G LTE 6.29" Waterdrop Screen Smart Phone Android 9 Fingerprint ID) from Ebay
i get confused:
Before i flash the Phone it says (MT6595)
I got booted it op in mode: and it says (MT6735)
The buyer says (MT6575)
WwR MTK says: CPU type: (MT6752)

Can some one help me with the right rom? i hope you also not get confused as i am. Tell me if you need more info about the topic.

according to your pictures this looks like a scam https://www.needrom.com/download/need-rom-for-indigi-p37 please watch this video http://www.youtube.com/watch?v=rjpO2vBeGcs if this is your phone, just ask for refund and send it back (don't tell them anything about the brick - scam the scammers)

most matching device seems the "Doogee X5 Max Pro x32" http://www.deviceinfohw.ru/devices/item.php?item=27651 so you can try twrp from this https://www.getdroidtips.com/lineage-os-14-1-on-doogee-x5-max-pro


text:
How can I automatically re-connect to a WiFi network?
In this question I am asking about how to stop my WiFi from disconnecting.
If I won't find an answer to that, the next best thing is to get my phone to re-connect automatically. The disconnect reason is: "Class 3 frame received from nonassociated STA"
I am on a rooted device running cyanogen mod on Android 5.
I'm using AFWall+ and OpenVPN, if that is relevant. OpenVPN is set to re-connect automatically already, which works.
Due to AFWall+ blocking non-vpn traffic, whenever I connect to WiFi it says "There is no Internet connectivity, do you still want to connect? [Yes/No]", ticking the "Don't ask again" box has no effect.
This might be relevant and if the phone does automatically reconnect, I obviously don't want this pop-up to prevent an automated re-connect.

Are you fine with disabling captive portal check? If so, you might wish to consult Captive Portal parameters. Implications are there won't be automated popups when connecting to such a network (e.g. in hotels or cafés), and you'd need to manually open a browser to "log in" to them.

@Izzy So basically, disabling that disables the pop-ups for networks that require log-in using a web-portal? I don't use any of that, so I wouldn't mind at all. Would that also make the device automatically re-connect after a deauth though or are additional steps required for that? Just to be clear though: That "Do you wish to connect" popup comes because of my AFWall, there is no such portal on the WiFi I wish to connect to.

Yes to #1, and most likely to #2. Worked for me in that combination, but then there was no VPN involved (I just nailed the coffin straight with AFWall+, and that got me out again). And yes, I understood the situation, had it similar here (WiFi simply refused working as it couldn't reach the site with the captive portal check due to strict rules in AFWall+ – no real captive portal involved). I'd say simply try it (just disable the check completely), easy to revert. If it solves your issue let me know and I write an answer.

settings put global captive_portal_detection_enabled 0 to disable, replace the 0 by 1 to re-enable – and to be absolutely safe, check beforehand what the original setting is (adb shell settings get global captive_portal_detection_enabled).

@Izzy The setting worked, the pop-up doesn't appear anymore. I've tried it at home (where no disconnects happen though) and it connects automatically and simply works. Seems to have fixed it. Will try it at work now and see how it performs, but I think that did the trick and I'd appreciate a full answer to accept! :)

See also https://android.stackexchange.com/questions/110789/very-frequent-wifi-disconnection-while-being-in-china

See also https://android.stackexchange.com/questions/176993/how-to-force-android-6-to-automatically-connect-to-a-network-without-internet-ac

See also https://android.stackexchange.com/questions/100657/how-to-disable-captive-portal-detection-how-to-remove-exclamation-mark-on-wi-fi

See also https://android.stackexchange.com/questions/66964/connect-to-wifi-network-even-if-it-doesnt-have-internet-access

See also https://android.stackexchange.com/questions/186993/captive-portal-parameters

See also https://stackoverflow.com/questions/37218510/android-6-0-1-force-wifi-connection-with-no-internet-access

Your issue is caused by Captive Portal¹ Check kicking in and not permitted through by AFWall+. So if you can live without that auto-detection, you could simply disable it:
# check what the original setting is. Should give "1" for enabled, "0" for disabled
settings get global captive_portal_detection_enabled
# now let's disable it
settings put global captive_portal_detection_enabled 0
# if you want to re-activate it
settings put global captive_portal_detection_enabled 1

Implications:

no more pop-ups when connecting to e.g. a hotel network using Captive Portal. Easy work-around: just open a web browser and navigate to any url, the portal should "capture" you for login
no more x on the WiFi symbol – so you might miss the fact of not reaching any network until you try manually (e.g. by visiting some web page and ending up on the Captive Portal's login page)
automatic re-connect to "known WiFis" should simply work.

I've used that trick myself when having set up AFWall+ in a quite restricting mode, and it worked for me. As you (OP) just confirmed in a comment on the question, it did the trick for you as well – despite the additional complication of a VPN.
See Captive Portal parameters for more details on manipulation.

¹ for those who don't know what a "Captive Portal" is, please see Wikipedia

I've lost WiFi at work a few times today (all due to out-of-range), after applying your fix not only is the pop-up gone but also it re-connected every single time as soon as it was in range again. Thank you!

Glad to read – enjoy! \o/


text:
How to create TWRP's data.info file by hand/after the backup?
I have a device with a dead screen, and a partially dead eMMC (poor contact, sometimes reboots. Sometimes reboots very often.). I managed to create a 12gb backup of the data partition somehow, but after generating two of the eight backup archives' .sha2 hashes my phone rebooted. So I have the backups in full, but the data.info is unfinished and there aren't enough .sha2. The latter are simple in syntax, so I can create them with HashMyFiles (SHA256). But deciphering the data.info, or forcing TWRP to make it after the fact is beyond my skillset. Is there any way to accomplish this?
EDIT:
I solved my problem, and also understood that this question was incomplete. It seems that the data.info is complete (and likely was one of the first files made after the backup archives themselves) and making the .sha2 by hand is sufficient. My real problem, which I didn't elaborate, was that Titanium Backup wouldn't work with this backup using the "Extract from Nandroid backup" function, so I decided that the data.info file was the problem, because it was the only different file, when compared to older, successful backups of the data partition. But the real problem was that I messed up the path (I added the backup folder, which is named as a date, directly to /TWRP/BACKUPS , when I should've added the backup folder in literally any folder one folder deeper, say /TWRP/BACKUPS/I_just_spent_10_hours_fixing_a_5_second_problem/), and Titanium Backup was too unsophisticated to check for PEBCAKs. That's about it.

Welcome to Android Enthusiasts! Looks like you've found the solution by yourself, which is great! Considering the Q&A nature of this site, please try to fill the missing details and remove the answer from the question, then post your answer as a proper answer since self-answering is not only allowed, but even encouraged!. Thanks!

to answer the headline, there exist a little shell script twrp_sign.sh for generating data.info and sha2 digest. you can open it with text editor and see how it works
data.info is just a string containing
archive_name
backup_size
file_count
backup_type
Note: only the .win* files are important, all other files can be safely deleted without data loss


text:
How to prevent play store from detecting VPN?
I live in China so in order for me access play store I must use a VPN. Play store however, has disabled me from accessing and downloading updates via VPN.
I can activate (after each time I upgrade the system) play store by not being in China or setting up a VPN on a router and then connect my phone to the router. Either way is a bit annoying.
Then when I need to download updates or a new app, I must first navigate to a specific page, tap update or install, and then switch off the VPN for play store to start downloading and then quickly switch on the VPN before the download fails. This is quite annoying too.
Is there a way via some root trick that I can just disable play store from knowing I am using a VPN?
I am on Android-10 and play store 18, some older devices don't have this problem, btw.

I don't think that solves the problem. Also those links u posted r just VPN apps.

just recommended from german forum with same problem (playstore not downloading over VPN)

One of the most successful methods I use (which you can also use in this case) to bypass VPN detection is using an anonymous or elite proxy.
To implement the proxy on a per-app basis you can use ProxyDroid or any similar application.
After connecting the VPN simply grab an elite/anonymous proxy from paid or free sites like this one: hidemy.name.
Open ProxyDroid and input the elite proxy and filter to use with Google Play (or other apps if desired).
Connect and download.


text:
Android 7 won't update
On my Alcatel U5 I keep getting a massage saying that a system update has been downloaded, press instal. When I do that it fails saying the file is corrupt and it will download again, same thing happens over and over again.
So, two questions:

What is the latest Android version available for my U5?
How can I get the download and install to work?

Thank you.

I was not aware that version 7 was officially supported on this device , only Android 6.0 (Marshmallow) , according to gsm-arena at least.
I do have one of these a 5044Y myself although I have broken it by accidental removal of the proinfo and preloader, despite putting them back it's dead.
Back to your update question don't use the inbuilt  phone updater try the PC Suite instead from Alcatel, this is different software to the regular " manage your photos and stuff " one.
Look here and if the newest one does not work try an older version:
https://www.alcatelmobile.com/support/software-drivers/
You may find this could well update it.


text:
Obtaining app storage details via ADB
TL;DR:
On-device, we can navigate to Settings › Apps, and for each app separately can call up details on storage used: by the app itself, by its data, by its cache. Is it possible to obtain those details from the command line, ideally via ADB – and without having root access?
In detail:
I've already searched the web, but found no information on this. I've already tried walking the package list (pm list packages), obtaining the path to the APK file (adb shell pm path $pkgname | awk -F':' '{print $2}'), and getting the file size of that (adb shell stat $path | grep Size) – but that has a series of disadvantages:

it only gives me the size of the APK (for updated system apps, only of the latest update)
even if scripted, it takes ~2s per app to obtain even that. As today's devices already ship with far more than 100 system apps, it would take "ages" even if only a few user apps were installed (almost 6 minutes on an almost virgin Wiko Sunny 3 where I just tried that)
details on data and cache are completely missing

Ideally, Android has already somewhere collected those details; it doesn't take that long via the GUI. Maybe there's some database one could query without having root privileges – or some XML to parse, or some shell command I missed?
PS: if you know about a root-only solution, that'd be "better than nothing". Please indicate that in a comment then so I can come back and ask you to make that an answer if there are no non-root solutions.

My first instinct to dig out such information which is often available via programming route  is to go through dumps of various system services. One such service is diskstats whose only purpose is to dump the status of the disk. Looking into the java code of DiskStatsService.java for various Android releases, I noticed that the information you are looking for is available since Android Oreo. Among other things, the dump shows all the package names, their package sizes, their app data size, and their cache sizes. That information is also dumped into the file /data/system/diskstats_cache.json but this file cannot be accessed without root access though.
The dump is pretty ugly so I wrote a bash script to show data neatly. Run this script in your Linux.
Here's the script (and it does not require root access too):

#!/bin/bash

USRDIR="$HOME"
F_DISK_STATS="$USRDIR"/diskstats.txt
F_PKG_NAMES="$USRDIR"/package_names.txt
F_PKG_SIZE="$USRDIR"/app_pkg_sizes.txt
F_DAT_SIZE="$USRDIR"/app_data_sizes.txt
F_CACHE_SIZE="$USRDIR"/app_cache_sizes.txt

# ADVISE: do a check whether ADB is working fine or not
adb shell dumpsys diskstats > "$F_DISK_STATS"

# Separating data into relevant named files
sed -n '/Package Names:/p' "$F_DISK_STATS" | sed -e 's/,/\n/g' -e 's/"//g' -e 's/.*\[//g' -e 's/\].*//g' > "$F_PKG_NAMES"
sed -n '/App Sizes:/p' "$F_DISK_STATS" | sed -e 's/,/\n/g' -e 's/.*\[//g' -e 's/\].*//g' > "$F_PKG_SIZE"
sed -n '/App Data Sizes:/p' "$F_DISK_STATS" | sed -e 's/,/\n/g' -e 's/.*\[//g' -e 's/\].*//g' > "$F_DAT_SIZE"
sed -n '/Cache Sizes:/p' "$F_DISK_STATS" | sed -e 's/,/\n/g' -e 's/.*\[//g' -e 's/\].*//g' > "$F_CACHE_SIZE"

# Printing package names and their sizes
ttl_apps=$(wc -l "$F_PKG_NAMES" | cut -d ' ' -f1)
count=1
while [ $count -le $ttl_apps ]; do
    pkg=$(sed -n "${count}p" "$F_PKG_NAMES")
    pkg_size=$(sed -n "${count}p" "$F_PKG_SIZE")
    dat_size=$(sed -n "${count}p" "$F_DAT_SIZE")
    csh_size=$(sed -n "${count}p" "$F_CACHE_SIZE")
    echo -e "Pkg Name: $pkg"
    echo -e "\t Pkg_size=$pkg_size bytes"
    echo -e "\t Data_size=$dat_size bytes"
    echo -e "\t Cache_size=$csh_size bytes"
    echo -e "\t Total_size=$(($pkg_size + $dat_size + $csh_size)) bytes\n"
    count=$(( $count + 1));
done

Output when tested on OnePlus 6 (Android 9):

Pkg Name: org.xbmc.kodi
     Pkg_size=144297984 bytes
     Data_size=55771136 bytes
     Cache_size=54341632 bytes
     Total_size=254410752 bytes

Pkg Name: rikka.appops
     Pkg_size=10330112 bytes
     Data_size=1740800 bytes
     Cache_size=163840 bytes
     Total_size=12234752 bytes

Pkg Name: com.a0soft.gphone.aSpotCat
     Pkg_size=16228352 bytes
     Data_size=1101824 bytes
     Cache_size=163840 bytes
     Total_size=17494016 bytes

That's cool, thanks & +1! I didn't specify the Android version – but I guess I can live with that limitation. Saying that's much faster definitely is an understatement LOL – 1.6s for all apps in sum! // I just tried it on thw Wiko (Android Go 8.1), the dump lacks the "App Data Sizes:" line there unfortunately. "Normal" 8.1 has it, good. And, surprise: my Nougat device (7.1.1, LOS) has the same as the Go, i.e. all data without Data_size! That was the one dumpsys I was looking for and missed. Thanks a lot!

Yeah, sorry about Android Go. I don't have access to any Go device so I couldn't try my solution there when testing it. It didn't even cross my mind that there are Android versions out there other than the mainstream big bloated one. :D

I wasn't complaining :) Even the Go device comes with 160 pre-installed apps. And hey, this even works on Nougat. adb shell dumpsys diskstats command is available even on LP but without the app-specific details in its output (tried on an old tablet I've got here), but no idea (yet) for MM.

The interface of that command seems a bit hard. Why in hell wouldn't they go for a simple list of lines such as:
"appname",pkg_size,data_size,total_size
?
A rethorical question :)

I've written a Python version. (Mainly intended for cases when you need to further work with the data.)
It works on its own as well. Without arguments, prints a table of all apps; you can only print some apps by providing their names as arguments.
#!/usr/bin/env python3

from subprocess import run, PIPE, DEVNULL
from json import loads

def get_appdata():
    output = run(['adb','shell','dumpsys','diskstats'], stdout=PIPE, stderr=DEVNULL, check=True, text=True).stdout
    datapoints = {
        'Package Names': 'name',
        'App Sizes': 'size',
        'App Data Sizes': 'data',
        'Cache Sizes': 'cache',
    }

    _data = {}

    for line in output.splitlines():
        for prefix, dataname in datapoints.items():
            if line.startswith(prefix + ': '):
                _data[dataname] = loads(line[len(prefix)+2:])

    for name, dataname in datapoints.items():
        if dataname not in _data:
            raise ValueError(f'dumpsys returned invalid output: missing `{name}:` line')

    assert len({len(x) for x in _data.values()}) == 1, 'dumpsys returned invalid output: unequal length of data fields'

    data = {}
    for i, app in enumerate(_data['name']):
        data[app] = {}
        for dp in ['size', 'data', 'cache']:
            data[app][dp] = _data[dp][i]

    return data

def show_table(appdata, apps=None):
    cwidth = max(len(x) for x in appdata.keys())

    print('{0:<{1}}'.format('App', cwidth), '         App', '        Data', '       Cache')
    for app, sizes in appdata.items():
        if apps is None or app in apps:
            print(f'{app:<{cwidth}} {sizes["size"]:>12} {sizes["data"]:>12} {sizes["cache"]:>12}')

if __name__ == '__main__':
    import sys
    appdata = get_appdata()
    if len(sys.argv) == 1:
        show_table(appdata)
    else:
        show_table(appdata, sys.argv[1:])

(Feel free to use and adapt. Hereby released to the Public Domain.)


text:
Removing DRM from android using root
I would like to know what would one have to do to remove DRM (Digital Restrictions/"Rights" Management) completely from an Android phone one has root access to.
So far I have thought about removing /etc/drm, /etc/dcmrcm and /system/bin/drmserver
Thanks in advance!


text:
android keep screen on while on call on Android 8.0.0
I guess I have a problem with the proximity sensor. The screen turns off when I start a call but it's impossible to turn it on again. The only option left is to hard restart the phone.
I'm using right know the power button to ends call. Still, it's impossible to manage voice messages (delete or save them) or to interact with any other automated call.
I'm not able to find settings for incoming calls as other posts mention and apps such as Screen On do not seem to work.
Any idea of how to keep screen on while on call on Android 8.0.0? Maybe using a particular call app?
Best,
Rafael

not an answer, but maybe this help to confirm the problem https://play.google.com/store/apps/details?id=ru.andr7e.sensortest


text:
Does the Android Complete Backup in debug functions is real "COMPLETE"?
My android phone is going wonky since I washed its surface yesterday(Hey, where's my IP68?), cannot picking up any WIFI or 4G signals even I restart or go into safe mode(my SIM card and WIFI are good on other device). Now I'm trying to find a way to do the COMPLETE backup of my phone before I can do further actions like reset to factory default.
When I look into the debug mode, there is a "Complete backup to my PC" function got my eyes, and I'd like to know is it really COMPLETE? like I can back to my usual use immediately without re-enter my APPs login credentials after restoration?

there is no such option for complete backup. power down, open usb cover, the sim tray, remove cards and put device in oven at 50° degree celsius for several hours

Bringing @alecxs comment a step further: there's no such thing as a complete backup (unless the device is rooted or you have at least a custom recovery installed, supporting Nandroid backups). For details, please see: How to fully backup non-rooted devices?

ouch, how sad even I know this is for the security, but the process of restoration always annoying

https://forum.xda-developers.com/showthread.php?t=3922213&page=13


text:
Set a password at boot before recovery mode on Android Q Huawei P30 Pro
on my old cellphone, I could set a password that was asked at startup to protect it I did not find any similar setting in Android 10
I need help to properly secure my cell phone in case I lose it

your phone is very secure with android 10 standard file-based encryption and locked bootloader. recovery/fastboot mode is useless (huawei does not provide unlock codes anymore). your screenlock is part of the encryption key, a 6 digit pin is sufficient against bruteforcing. if you choose pattern, gatekeeper will wipe your device after 10 attempts https://source.android.com/security/features

https://blog.elcomsoft.com/2018/05/demystifying-android-physical-acquisition


text:
Unlock Huawei BootLoader- Is brute force the only way now?
Problem
So I wanna unlock the BootLoader on my Huawei Mate 9 to install LineageOS on it. I already read that Huawei stopped giving BootLoader codes. Is the only way (for free) now, to brute force all possible codes?
Brute forcing method

I would write a simple Python script that iterates through all numbers (16 digits) up to 10^16 and performs the corresponding command. My CPU cores have 3 GHz, so it would only take about 55 Minutes (10^16 / 3.000.000.000).

But I don't know if this is possible, how should I check if a device is unlocked using Python? And does the device get locked after a few attempts?
Here's a script made by someone else, it would need too long.
Any advice or help would be appreciated.

please do a bruteforce with only 10x attempts and measure real time (forget the hardware needed for pressing vol button for now). after this, come back and answer your own question

Yeah I just read it. I forgot to calculate the time. Do you have an idea?

buy unlock code from third party seller