title: Dropbox for Android folder location

text:
# Question
Title: Dropbox for Android folder location
Where does Dropbox for Android saves files when you click on "Download"?

I've read How to search for files and folders?

But my /sdcard/dropbox is empty even if I've downloaded a file just now.

# Answer
Dropbox 3.0 (3.0.3.2) and Sony Xperia T3:

```
/Android/data/com.dropbox.android/files

```

As of Dropbox 2.0 the right location by default is

```
/mnt/sdcard/Android/data/com.dropbox.android/files/scratch/[files]

```

Found the things with Astro file manager (Samsung Galaxy Tab 8.9).

## Moto G4 \[Aaron\]

> On a new Moto G4 the Dropbox app has no "star" mechanism, instead you enable the "allow offline access" option, and the actual location this file showed up was
>
> ```
> /Android/data/com.dropbox.android/files/[userhash]/scratch/[file]
>
> ```
> 72 votes

# Answer
For now in the Dropbox App there is no download option, but there is favorite option (star).

When you favorite something, it downloads this for offline use in *sdcard/android/data/com.dropbox.android/files/scratch*

You can do it only for files, not whole folders.
> 6 votes

# Answer
Dropbox on my Samsung Note 3 has its storage at `/storage/emulated/0/Android/data/com.dropbox.android/`.

HTH
> 5 votes

# Answer
The default location where Dropbox will place downloaded files is `/mnt/sdcard/download` on my OG Droid. I can't imagine it changes much between phone models.
> 3 votes

# Answer
As of Dropbox for Andrioid 218.2.2 (and probably earlier) offline files/folders are no longer saved in in a directory that is directly accessible to the user or to other apps. The only way to access them is through the Dropbox app.

I'm running Android 10 on a Pixel 1. `/storage/emulated/0/Android/data/com.dropbox.android/files/` used to work but it doesn't work anymore.

---

Previously I was using this to download audiobooks (stored in Dropbox) to my phone. Now that Dropbox no longer supports this, Dropsync seems to work; I recommend trying it if you have a similar use case.
> 2 votes

# Answer
As of September 2019, Dropbox for Android 156.2.2 the following applies on my Huawei Nova 3i phone.

*** This applies to files where "Make available offline" has been selected *** If the file hasn't been made available offline I don't believe there is a persistent copy of it on the device, and the file contents are probably streamed when the file is accessed.

If the file is located at

```
<Dropbox>\Some folder\Somefile.txt

```

then when `Make available offline` is checked, a persistent copy of the file is placed at:

```
Main storage/Android/data/com.dropbox.android/files/u123456/scratch/Some folder/Somefile.txt

```

For other devices `Main storage` will be different. `u123456` (obfuscated) probably identifies the Dropbox account.

A quick test seems to indicate that there is no connection in the opposite direction -i.e. I created a folder and file using an android file manager at:

```
Main storage/Android/data/com.dropbox.android/files/u123456/scratch/test/temp.txt

```

but the file/folder doesn't appear in the dropbox image.
> 1 votes

# Answer
The Astro file manager can connect to your Dropbox easily so that you can access your Dropbox similar to a usual folder.

You can also use it to download a whole folder (or more precisely copy a folder in your Dropbox into your SD card). Downloading is pretty slow though.
> 0 votes

# Answer
`/sdcard/Android/data/com.dropbox.android/files/` in LG G3 beat running Android 4.4.2.
> 0 votes

# Answer
If you want to download the file to the "Downloads" folder in the normal way then click the "..." under the file and select "Save" option.
> 0 votes

---
Tags: dropbox
---


title: How does factory reset work?

text:
# Question
Title: How does factory reset work?
I have 2 Samsung tablets, one serves as my main device, and I would like to factory reset the other one. I don't want to lose any of my data.

What happens if I reset one of them? Do they both lose their data? How can I prevent that from happening? What can get lost?

# Answer
You have luck, you can safely factory reset the secondary tablet. **All the data on it will be deleted**, but your main tablet will remain unaffected.

Factory reset is a device-only thing.

Androids are no different than ordinary computers, only the most important apps have the habit that they automatically backup everything to the network (typically into the cloud service of the developer company). They also like to make cloudy the border between the files on your device, and the files backed up to them.

Backup all the important data on your secondary tablet and you can make the factory reset safely.

In general, it is very useful to have backup all of your important data. Most apps does it (for example, most androids automatically uploads the photos into the google cloud), but not all of them.
> 1 votes

---
Tags: samsung, factory-reset
---


# Question
Title: Apps use mobile data when mobile data is off
My Android 10 phone seems to be using mobile data even when mobile data is turned off:

The setting called "switch to mobile data automatically" is off FYI. The data, in very small quantities, is used by different apps including Facebook, Skype, Gmail and Google assistant; when the Wi-Fi is disabled, connected-no-internet or out of range.

How can I make sure the mobile uses mobile data *only* when mobile data setting is on?

# Answer
> 0 votes
On modern devices like yours "mobile data" is not only used by apps.

Instead basic services like phone calls are also transmitted as "data". This is calls Voice over LTE (VoLTE). In a LTE network this is the only way to do voice calls, there is not voice network anymore. LTE devices that don't support VoLTE have to downgrade to 2G/3G for voice calls.

Even if you don't do any voice calls the phone registers itself in the network, and for doing so it needs data. Also new voice calls are signalled via mobile data. Those signaling data is not a high amount of data, but a value as you have shown in your screenshot should be reasonable for a month of VoLTE data usage.

The strange part is that the LTE voice data if you do a voice call is typically not counted as "mobile data".

Typically this behavior is making big problems when you are abroad in a roaming network with extra charges for roaming mobile data, because the mobile network providers seem to be unable to correctly mark this VoLTE signalling data as VoLTE data for which you are not charged. Instead the say "you have transmitted data via mobile roaming" now pay us the base fee for using mobile roaming data.

A second use case where data is is always use are MMS. This is the way it works for mobile generations.

---
Tags: mobile-data, android-10
---


# Question
Title: Proximity Sensor is mocked to 5cm, screen still goes dark
After replacing the display of my Xiaomi Mi A2 Lite, my proximity sensor is giving me wrong values (saying, my phone is always covered). I mocked my sensors using the XPosed Sensor Disable App, and the various sensor test apps tell me, that the distance is 5cm (the maximum). Still, my phone's screen goes black when playing audios or making a call. Am I missing something? Maybe another sensor's setting?

The way I mocked my Sensors was the following:

LTR579 ALSPS: 5cm, LTR579 ALSPS-Non Wakeup Secondary: 0cm

I'm really out of ideas, it would be great if someone could help me! I'd hate having to open my phone again, and I'll happily do without the screen going black feature. I honestly have no idea why the test says "5cm", but the phone still decides to go dark. \>:(

Thanks alot for any ideas!

# Answer
Well, I thought I had tried all possible combinations, but seems like I forgot to save the mocked values. With LTR579 ALSPS: 0cm and LTR579 ALSPS-Non Wakeup Secondary: 5cm, it now works as I want it to. I have no idea why the sensor testing app gave me wrong values.

EDIT: Turns out that the app i used to calibrate the sensor with at the very beginning was the reason for the unwated behaviour after all. Just uninstalling it was not enough, I had to reinstall it, choose the option to reset the calibration, uninstall it, reboot the phone, and THEN override the sensors in the XPosed app.
> 1 votes

---
Tags: xposed-framework, sensors, proximity-sensor
---


# Question
Title: Blackview BV6000 rooting problem / spyware removal / SP Flash Tool freeze
This is my first time here, so please be patient ;)

Recently I bought two smartphones, Blackview BV6000 for me and my lady. As I did some research I noticed that some Chinese brands have pre-installed spyware in Android build. Few days ago my girls' phone started to engage wifi, bluetooth, data transfer, precise location search and more on t's own. Quick scan with ADB through Command Line (CMD) on my Windows 10 x64 and I found these bastards:

1) com.adups.fota

2) com.adups.fota.sysoper

And I only scrached the surface. I wanted to root our phones so I could get rid of them, cause these apps are in .system directory and I have no access to them.

Here comes the hard part: First I tried Kingroot. It failed. Then dr.phone, it failed too. Then I tried this solution:

https://dreamworks75.blogspot.co.uk/2017/06/blackview-bv6000-smartphone-mt67xx-twrp.html

But no luck either. Every time I try to flash TWRP, so I can root from SuperSU it won't start after plugging the USB cable. So, in summary:

* Yes, I did read a lot stack exchange posts, YT tutorials and internet guides before I wrote my down here :D
* Android version 7.0 Nugat, Windows 10 64-bit (PC), USB cable provided with Blackview set, SP Flash Tool 5.1624 and 5.1720
* I am sticking to the steps in guide from link
* Phone is turned off
* Phone is not plugged to PC before clicking "Download" icon in SP Flash Tool
* I accessed developer options on phone with enabled USB debbuging and OEM unlocking
* I'm using ROM, recovery image and scatter file provided from needrom.com (this one exactly: https://www.needrom.com/download/blackview-bv6000-4/) and I tried few more from various sources
* I have drivers installed on PC (checked with USBDeview), MT67xx included
* I tried SP Flash Tool both with and without "authentication file" field
* After clicking "Download" button in SP Flash and plugging phone via USB nothing happens

If you have any advice, hint or other means to get rid of this unwanted apps I would be grateful. I spent already two days trying to figure it out.

# Answer
> 1 votes
I ended up reading this question after I also tried basically all of the steps / websites mentioned in the question. But I eventually managed to install TWRP.

1. In order to make the SP\_Flash\_tool start flashing, after you plug in your phone that is turned off, press power button + volume up
2. If the flash tool errors, you might not have the right scatter file or twrp recovery.img

* If you are not sure about scatter file, try flashing a stock rom (I simply clicked on the latest) and follow the PDF mentioned in the link and you'll be able to use the scatterfile from the downloaded rom.

After flashing the entire rom, it took quite a long time to boot (7 min ish) but the effect was as if nothing really changed. I had backed up my phone before flashing this stock ROM using the stock recovery so now is the time for factory reset, then restore data, then install all updates, re-enable again developer mode, usb debuging and oem unlocking and make sure that the updates actually got installed successfully and that there are no more updates.
* Then try this TWRP *(12.1 MB (12,783,616 bytes))* which also contains a scatterfile but that scatterfile didn't work for me, I had to use the one from the stock rom that I had just flashed. So in case the flashing still errors at this stage, I think you can tell that its because the version of TWRP is not right, not the scatter file.

Note: The file sizes are of the actual unzipped `recovery.img`

# Answer
> 1 votes
It is not unusual devices have data mining spy app in OTA updater. One can safely disable OTA updater from `adb`

* settings - about phone - tap buildno 7x (seven) times
* enable usb-debugging in developer options
* open `cmd.exe` and `cd` into platform-tools directory
* disable packages with `pm`

```
adb shell
pm disable --user 0 com.adups.fota
pm disable --user 0 com.adups.fota.sysoper

```

Repeat this after each factory reset. No root permissions required. One will lose the availbility to receive firmware updates, but it is still possible to update via recovery flashable zip

---
Tags: rooting, rom-flashing, 7.0-nougat, flashtool
---


# Question
Title: Error 495 when downloading apps from Google Play Store via WiFi
I tried downloading apps from Google Play Store via WiFi, but I got error 495.

I tried all the steps like:

* Clear cache data from the Play Store app
* Delete Google account and recreate it
* Factory reset
* Rebooting device.

I assure you that the problem is not with the device. It has lots of memory space, so it's not error. And apps can be downloaded in mobile data. I followed the steps which are provided on the troubleshooting page for "495". But no luck.

Anyone gives me a clear idea of why the apps are not able to download via WiFi only?

# Answer
I faced this same problem a while ago. I could think of two things here.
1. In my case, I had problem with my router. Other devices connected to the same router had no issues. I had to reset the router and everything worked fine after connecting the device back to it.
2. Then, you say you have 'Clear cache data from playstore app' but have you cleared the cache of all applications? try something like 'cc cleaner'. May be some old installation files/folders of the app you are trying to download, in this case chrome browser, might be causing this problem.
> 0 votes

# Answer
1. Force stop Google Play Store from Settings and clear the app's cache.
2. Force stop Google Service Framework and clear the cache.
3. Reboot Phone.
4. Check if the problem persists. This should do.
> 0 votes

# Answer
I disabled IPv6 on my router and that seem to have resolved my issue.
> 0 votes

# Answer
Even I faced the same problem while using WiFi

U can try these

1. Restart the router
2. Restart the device
3. Contact ISP
4. Going to settings and uninstall the updates of play store. As it is a system app, you can revert back to latest version after sometime

Hope it helps
> -1 votes

---
Tags: google-play-store, wi-fi
---


# Question
Title: MicroSD card file system keeps getting corrupt for no obvious reason
Since when I got my current phone (May 2018) I had to reformat my MicroSD card about 3-4 times, probably because of file system corruption. (It's a SanDisk 8GB one, for those who are wondering. And the previous owner had installed it on 2 devices, the first was a tablet and the second was my current phone, no problems with them. Guess I was cursed!...)

One day I turned on my phone and noticed that several apps that had been moved to the SD card were no longer functioning (toast notification saying "The app is not installed"). The other three times it just happened out of nowhere. Even today (at the time of writing), I just moved an app from the SD card back to the phone's internal storage, then the Settings app crashed. I think this also happened because of corruption.

When this happens, I cannot move/copy/edit files to the SD card and a small percentage of my files get corrupt. (Thank God this time only some useless pictures got corrupted!)

Can anyone tell me why my SD card's file system is getting corrupt out of nowhere almost constantly?

# Answer
*Almost 2 years later (because I forgot that this post even exists, sorry).*

A week after posting this question here, I ran some tests using h2testw. The microSD card turned out to be faulty. I got a new phone 2 months later and a new Kingston microSD card to go with it. Haven't had a problem since.
> 1 votes

---
Tags: sd-card, file-system, file-management
---


# Question
Title: What level of permeability is there between Android and installed apps?
I just installed Protonmail on my Android device, and I was wondering how much data can Android (Google, really) can get from my use of that app, or from any app in general for that matter. I write this post with a faint level of paranoia, as you can guess - with all the mail scanning that gmail does to get data on you, one can tend to think that anything entered or typed on a Google-powered platform is being analyzed, be it Gmail or Android. But of course, I'm assuming it must not be that simple or even that bad. The problem is that getting actual data on what is going on can be quite cryptic.

So, what can Google really get from my use of any given app? Can they somehow "see" what I type in my Proton mails (I'm not thinking about keylogging, that would be illegal), do they collect any kind of metadata that are a bit too comprehensive, etc?

# Answer
Probably they can not see what you write in proton mail. As comment explains, typically the apps have no access to the data of the others, thus the apps of the google have no special permission, and no access to other apps (and not even to the data of each other - for example, gmail can not see your google maps timeline).

However:

* The OS itself is developed by the Google, and although it is open source, it is very complex. Furthermore, this is customized by the phone manufacturer company, and their version of the source code is already not public, but it arrives in binary form, as system update to your phone. *Thus, both google and the phone manufacturer can access all the data what is your phone, if they really want to.*
* Even if it has no access to your protonmail, a large part of the people with whom you are exchanging mails, use gmail. Google obviously can see what you send or get to/from a gmail user.

Snowden's leak revealed that U.S. secret services have big data processing facilities where they collect information from many sources (gmail, facebook, yahoo, *your bank account operations*, *your phone calls*). The important thing is, that they listen from many sources and collect them.
> 2 votes

---
Tags: applications, security
---


# Question
Title: How to hide calendar but receive reminder notifications?
I have a calendar containing only regularly recuring dates. I would like to hide this calendar or these dates from the ordinary Google calendar app and the Google calendar widget.

The reminder notifications of these dates should not be disabled.

I activated synchronization in the Google calendar app and deactivated the display calender. Now the dates do are not being displayed, neither in the app nor in the widget, but I either do not receive the reminder notifications.

P.S. What is the difference between those two settings?

# Answer
I know the original post is now ancient but I haven't found any recent discussion on this and I believe the behavior is still basically the same. That is, if a calendar is "hidden" on your mobile device, you will not get a notification for any of it's event.

Much like the OP, I wanted to schedule recurring tasks (clean cat litter, take out trash) at specific days/times and then get reminded of them on my phone WITHOUT cluttering up my calendar on web OR android version of google calendar.

I found **google tasks** to be a great solution to this, as:

1. I can add/modify/view these events on either phone (tasks app) or web\* (calendar.google.com)
2. They don't appear at all in android's gcal
3. I can hide them from web gcal and still get notifications

As an added bonus, because the notifications on my phone come from the tasks app (and not gcal) I can set a different notification sound/vibe pattern to differentiate these less important chores from potentially important events. Also, I really like the ability to "mark as complete" as opposed to just dismissing an event notification (this behavior is similar to google reminders, but unlike tasks, hiding reminders from gcal *does* disable notifications)

Here's a great post on the differences between google tasks and reminders

The one missing piece that I'm still searching for is the ability to share these chores with someone so that, for example, my wife and I can both mark chores as complete and then the other one will know it doesn't need to be done.

\*Edit: I just realized you can't create a *recurring* task from web gcal, but you definitely can from the tasks app (and then still view all of them on web) so this is only a minor annoyance.
> 3 votes

# Answer
The easiest way to achieve this is to install a 3rd party calendar app which uses the Google calendar backend, and tell that app to not show that specific calendar, while leaving it enabled in the default Google calendar app (aCalendar would be a good and relatively light-weight choice here). As the Google calendar is responsible for the alerts, you still would get them (and the corresponding notifications), while its content wouldn't disturb you working with the 3rd party app. I do something similar, and use the mentioned app, so I really can recommend it.

To the detail question: Synchronization is what the name suggests: updating changes made on either side (for a disabled calendar, obviously only in one direction). It's probably separated from (de)activating a calendar so you can activate it up-to-date even when having no network connection -- just my guess, but that would make sense.
> 1 votes

# Answer
An imperfect solution is to use Google Keep (following this suggestion on Reddit).

This means you can't, as I desire, look at Google Calendar and toggle the reminders briefly visible. For that, you could try sharing the reminders-specific calendar with a different Google account and then syncing that account with a 3rd party Calendar app that handles reminders (while still keeping the Google Calendar Android app synced with your main Google account, where the reminders-specific calendar is hidden).
> 0 votes

# Answer
How about having a seperate Google acount and use google tasks on the other one only for those you don't want to pop up in your main calendar?
> 0 votes

---
Tags: 4.1-jelly-bean, notifications, calendar, app-widgets, google-calendar
---


title: Control Android device from PC

text:
# Question
Title: Control Android device from PC
I have built an Android app which is locked in landscape orientation. I want to have a live view of my mobile on my PC to make a demonstration of my app. The problem is that the screen doesn't show properly.

I have tested some apps like Droid VNC Server and Airdroid but the problem is that my app's screen is rotated 90 degrees and it seems that these apps were showing my landscape app in portrait mode.

Is there any solution?

# Answer
Try using TeamViewer for Remote Control. It offers Screen cast functionality.

> Provide technical remote support to your android devices using the TeamViewer QuickSupport app and the TeamViewer Host app for Android.

Examples of what the app enables you to do include pushing Wi-Fi settings to the device, transferring files to the device, or controlling the device remotely. Remote control (in the classical sense of a TeamViewer remote control session) is currently available for devices from the following manufacturers:

* Samsung
* Sony
* Acer
* Asus (for business customers)
* Lenovo
* LG
* HTC
* ZTE
> 2 votes

# Answer
My experiences were the best with scrcpy.

It works over an adb connection, but this adb connection can happen both on an USB connection, and also over wifi (for really hardcore guys, even over VPN).
> 2 votes

# Answer
You might want to take a look at the droidVNC-NG project. The Android VNC server app droidVNC-NG reached version 1.0.0 in early 2021 and we are now looking for contributors to further improve the code and add features.
> 1 votes

# Answer
There are many apps for remote controlling Android mobile. You can also try screencasting. Windows 10 has pre-installed software for Android screen mirroring.

1. On Windows 10, click on Start / Connect. You can check here about your device's remote connect support.
2. Turn on Wi-Fi and Bluetooth on a Windows computer and mobile. Go to Settings (`Win` \+ `I`) / Devices. Add Bluetooth devices.
3. Select Wireless Display.
4. Press `Win` \+ `P` to project the Windows' screen.
5. Select duplicate. Your computer screen appears on mobile.

On Google Chrome, you can get add-on tools for connecting mobile and computer. Chrome Remote Desktop and TeamViewer are the apps you can use.
> 1 votes

---
Tags: remote-control, vnc
---


# Question
Title: Get app's compatibilty matrix from Play Store
I am trying to figure out why Play Store claims that an app is incompatible with my device. Sideloading the app works fine, I'd just like to get it over the Play Store so that I don't have to update manually.

I know that, as a developer, you can set criteria on what devices are compatible to your app.

Is there any way to get those criteria as a customer?

# Answer
> 7 votes
Some years ago the protocol used by Google Play Store internally to query and download app was so nice to present you the exact reason why you can not download an app (e.g. the responses on network level contained the data what feature, library or what so ever your device misses).

Unfortunately some years ago (I think it was about 2016) Google changed the protocol and nowadays you only get the response like `INCOMPATIBLE` but no further details.

If you manage to get the APK file you can decompile the app and check it's `AndroidManifest.xml` for the technical limitations. However using a device that satisfies all the requirements defined in `AndroidManifest.xml` does not necessary means that Play Store allows to to download that app.

Play Store only allows you to download an app it the rules defined by the app developer allows to do so. When uploading an app app developer can explicitly allow or deny certain devices, manufacturer, countries, network operators and many more. Most of those restrictions are not mappable to the restrictions in AndroidManifest.xml. Therefore side-loading may work even if Play Store doe snot allow you do download an app.

As far as I know there is no way to view those rules defined by the app developer. Hence the only way to regenerate those rules is using a large number of devices and test on each one if an app is available or not. Based on that results you can reverse-engineer the rules.

There are some services that collect these information using multiple devices in many countries and provide those information. Service are for example: 42matters.com AppBrain.com and many more.

Most of those service are not free or only provide a very limited data set for the free accounts.

---
Tags: google-play-store, compatibility
---


# Question
Title: Why is the FrameBuffer missing on some Android devices?
I'm curious about the display device on Android. I know that on Linux, device devices are represented as `/dev/fbX`, which "fb" stands for FrameBuffer. I also heard that Android uses FrameBuffer as well

> in Android it’s `/dev/graphics/fbX`, usually `/dev/graphics/fb0`
>
> Kaustav - Introduction to the Android framebuffer

and

> Android relies on the standard frame buffer device (`/dev/fb0` or `/dev/graphics/fb0`) and driver as described in the `linux/fb.h` kernel header file.
>
> Display Drivers | Android Open Source

However, on my device, which is OnePlus 7 Pro running Lineage OS, I could not find anything related to that. I even cannot find any device nodes called `*fb*` under `/dev`. However, I heard that someone has some devices with fb, and their other devices don't.

I'm just curious, why? Where is the display device on Android?

# Answer
I had a lot of similar questions until I asked them here. The essence of the infos you get over this post is these:

* No android app handles directly `/dev/fb0`, does it exist or not. Instead, they are communicating with the system process named "Surface Flinger", which is the analogy of the X server on the Linuxes.
* This communication happens with Binder, which is an android-specific localhost-only RPC protocol similar to the unix pipes.
* Not even the Surface Flinger can see the `/dev/fb0` directly. Instead, it talks to the HAL (hardware abstraction layer). Until Android 8, the HAL was a set of shared libraries in `/lib/hw`. Since Android8, also the HAL is a set of system services talking over binder with the Surface Flinger (although legacy shared lib HALs are still possible).
* Direct display access happens in the HAL library (service) responsible for that.

HAL libs (services) are developed by the phone vendor. Ha can develop a `/dev/fb0` driver and use a hal capable to handle it, but he can also develop any custom method. In the second case, you won't have a `/dev/fb0` in the kernel.

---

Furthermore, and it is already a linux-specific thing: `/dev` does not need to have all the device files existing on your system. Commonly it is so, but it is not a requirement. (On most Linux distros, the software named udev automatizes this task, but Android does not use it.) `/dev` has *device files*, on a Linux you can see that they start by a `c` (character device file) or `b` (block device file) in the `ls -l` output, and also on Android:

```
crw-rw---- 1 root video 29, 0   Dec 10 09:08 /dev/fb0
brw-rw---- 1 root disk   8, 0   Dec 11 07:21 /dev/sda
-rwxr-xr-x 1 root root  1302248 Apr 18  2019 /bin/bash

```

`/dev/fb0` is a character device file, `/dev/sda` is a block device file, while `/bin/bash` is an ordinary file and not a device.

You can create device files with the mknod tool, but note: it requires root.

It is quite possible that `/dev/fb0` is created elsewhere on your system, maybe on a location which is hidden behind same userspace-only mounts or so. It is also possible that fb0 is not created at all, despite that its driver is compiled into the kernel.

We can check, which device files are compiled into the kernel, in the procfs file `/proc/devices`. It should contain the line

```
Character devices:
...
29 fb
...

```

This procfs file is practically always readable also as a user. If it does not exist, then your HAL responsible for the display communicates over some other way with the kernel.

If it exists, then you can create the framebuffer device by a command

```
mknod /dev/fb0 c 29 0

```

as root. (Actually you can always create it as root, but if the line above does not exist in `/proc/devices`, then it won't be usable.)

P.s. in LineageOS, my experiences are far the best by compiling an userdebug image. It did not slow my system at all, but all the rooting, adb things worked in it very correctly.
> 3 votes

---
Tags: screen, system
---


# Question
Title: Blue line following my touch on the screen of Huawei devices
Sometimes strange 'worm' and 'dust cloud' starts to follow my finger when browsing with my Huawei Honor 7.

>

When the finger is not touching the screen anymore, the line disappears.

I can also draw over the navigation buttons at the bottom of the screen.

What is going on here?

# Answer
It is Huawei's Knuckle Gestures.

From Use Your Phone with Your Knuckles,

> Knock the screen with a knuckle and hold it until a blue dot appears. You can then drag your knuckle \[...\]. As you move your knuckle, a blue line will appear on the screen \[...\].
> 2 votes

---
Tags: screen, huawei, touch
---


# Question
Title: If a user debug build comes with adb root access by default, does it contain the su binary?
If an Android user debug build comes with adb root access by default, does it contain the su binary to achieve this?

If not, is it any different from rooting your phone?

# Answer
No, adb does not require a `su` binary to get root permissions.

On a regular build, it is just the other way around: `adbd` is started by the Android system itself with root permissions. Up to a certain point, it uses these root permissions (open port and so on), and then adbd drops the root permissions.

On an Android user debug build, it comes with adb root access. `adbd` does not drop the root permissions, hence every command executed via adb is also executed with root permissions.
> 3 votes

# Answer
I just built a `userdebug` version of AOSP 10.0 for my Pixel 4 XL; it does contain an `su` binary in `/system/xbin/su`.

It differs from what many mean by "rooting" in that it doesn't let you actually run `su` from on the phone itself (say, within Termux). It can only be executed by root or a member of the `shell` group, which is what is used while running an adb shell session. However, it still is a way to run things as root; it merely requires an adb connection to do so. If your USB cable doesn't carry data or your USB port is broken/faulty, you wouldn't be able to run things as root anymore (unless you had already set up `adb` on the device to run over TCP).

I later put Magisk on my otherwise-AOSP ROM and now have two `su` binaries; the Magisk one is installed in `/sbin/su`. Magisk's `/sbin/su` will let me run things as root without an adb connection active.
> 1 votes

---
Tags: adb, root-access, builds
---


# Question
Title: Android keeps disconnecting wifi when the signal is weak/poor
I've recently bought a pixel 4a 5g phone and I'm running the latest version of Android. I'm really happy with the phone but there's one thing that is really bothering: it will use mobile data when the wifi signal is considered weak/poor.

In the old days there was an "avoid poor quality wifi networks" (or something like that) in the advanced wifi settings which used to control this behavior. However, it seems like that option is gone. Is there any way to tell Android to stop transitioning to mobile data when the wifi signal is weak?

Thanks.

# Answer
Check the Wifi advanced settings. There you should find an entry named "**Adaptive Connectivity**".

Disable this entry.
> 7 votes

---
Tags: wi-fi, mobile-data
---


# Question
Title: Constant decrease in android's internal storage free space
I am having a hard time with my phone. My device, which is a simple LG Magna has had a constant decrease in FREE space. That means that something is constantly taking up more and more place in my internal memory. Of course, I did try to clear cache, clear all the useless videos, useless apps, I removed the Facebook app because I know it uses a lot of space, but the used space in the internal memory keeps on increasing. My 8Gb internal memory is already used up by 7.97Gb. And I deleted so much already on my phone.. Okay! I thought about the possibility of having a virus in my android.

So, I did factory reset my SD card and Internal memory. This means, starting every from back to square one. I managed to not download anything from the internet, use only the useful apps from the store like Whatsapp, Facebook Messenger, my usual music player which is BlackPlayer(Great app btw, try it, it's simply the best). Now, 2 weeks after the factory reset, I am surprised and also very annoyed to see that the device's internal memory is increasing again. Today, it is back to 7.97Gb.

I have only photos and merely some music on my phone.

Basically, I have absolutely NO free space on my phone and I can't never delete enough to free space. Can someone please help me resolve this problem? I would be forever grateful! Thanks in advance.

# Answer
> 2 votes
Seeing the reference to WhatsApp... I installed All-in-One Toolbox today for another problem (https://play.google.com/store/apps/details?id=imoblife.toolbox.full&hl=en). I happened to notice it has a cleaner just for WhatsApp.

# Answer
> 1 votes
Try a disk analyzer app. For example:

Disk Usage

SD Maid

Maybe you'll see where space is being eaten up.

# Answer
> 1 votes
WhatsApp automatically downloads media, so as in other answers, that is probably your issue. Most android phones also allow you to insert a MicroSD card to further expand storage space - either for just media (compatible with other devices) or as internal storage (incompatible with other devices).

# Answer
> 0 votes
Thank you all for your time :) In fact, I explored my internal memory and was surprised to see that it was WhatsApp taking up all this increasing amount of space. The app keeps a huge backup of ALL media. And I mean it, ALL of the media! Since the dawn of time! Even though you delete it in your gallery wherever it is located, the backups are not deleted.

So, for those who want to know this is the path: (I use an LG so I use File Manager)

File Manager \> All Files \> Internal Storage \> Whatsapp \> Media;

This Media file is where Whatsapp stores all the backups!

According to me, you can safely delete this Media file without causing any inconveniences. I deleted it and now I have 7.30Gb used out of 8Gb.

# Answer
> -1 votes
Do you have a lot of pictures? In my case i had such issues because the thumbnails are created on internal memory. So i had thumbnails-files (.thumbdata3-\[10 digits\]) which took some GB of internal space - even though the pictures were on the sd-card.

---
Tags: 6.0-marshmallow, internal-storage, whatsapp-messenger, insufficient-memory
---


# Question
Title: How can I use Termux with the JuiceSSH interface?
I would like to use Termux and its package manager as a local terminal, but I cannot get used to its keyboard. The volume buttons are a poor choice IMO, as they require significant finger pressure and only work some of the times, at least on my phone (OnePlus 6.)

On the contrary, I find JuiceSSH's keyboard and overall terminal interface perfect.

Can I use JuiceSSH to open a local Termux session? How?

If that's not possible, is there a plugin for Termux that makes the keyboard work more like JuiceSSH's?

I tried executing Termux's bash from a JuiceSSH "local" session, but they are run under different Unix users (u0\_a214 vs u0\_a198) and so anything I try to do gives Permission Denied.

# Answer
> 1 votes
It's already supported.

I created a `~/.termux/termux.properties` with the following contents:

```
extra-keys = [ \
 ['ESC','|','/','-','HOME','UP','END','PGUP'], \
 ['TAB','CTRL','ALT','DEL','LEFT','DOWN','RIGHT','PGDN'] \
]
extra-keys-style = arrows-only

```

It's enabled by opening the left sidebar (swipe from the left screen edge) and long-pressing on the "keyboard" button.

Documentation here: https://wiki.termux.com/wiki/Touch\_Keyboard

---
Tags: keyboard, termux
---


# Question
Title: How to turn off vibration for incoming messages in Google Chat (not Hangouts) - Android 10?
I can't find a setting anywhere in that app. I'm aware of the options present: All messages, New threads, @mentions, etc.

I want those notifications. I just don't want the vibration.

Tried going into *Manage your google account*. Couldn't find anything there either.

Tried several google search queries:

```
turn off vibration notification google chat site:reddit.com
turn off vibration notification "google chat" site:reddit.com
turn off vibration notification "google chat" site:reddit.com -intitle:hangouts
turn off vibration notification "google chat" site:superuser.com -intitle:hangouts
turn off vibration notification "google chat" site:stackexchange.com -intitle:hangouts

```

Nothing was useful.

# Answer
* Go to App Info
* Click on Notifications
* Click on the Messages (didn't know that it could be clicked; was assuming it'd just toggle)
* Expand the Advanced section
* Toggle Vibrate

Was desperate; so decided to ask SE.

But, found the answer right before submitting it; so, sharing it.
> 1 votes

---
Tags: notifications, google, vibration
---


# Question
Title: Execute task if tasker profile has been active for some time
How can I execute a tasker task only after a certain condition has been true for a certain time?

Normally a profile executes its task as soon as all conditions are met. I want to delay this activation, until the conditions have stayed true for some time.

E.g.

* do something after the screen has been continuously off or on for 10 minutes
* do something after wifi xy has not been near for 10 minutes
* do something after cell towers x,y,z have not been near for 10 minutes.

# Answer
> 0 votes
A mix of Wait, Variable Search and If-Else should suffice here.

Tasker maintains a variable named Profiles Active, denoted by `%PACTIVE`.

> **Profiles Active** (dynamic)
> %PACTIVE
> A comma-separated list of the currently active, named profiles in activation order. **Duplicate names will appear on the list only once**. The list always starts and ends with a comma to make matching easier, if it's not empty.

(Emphasis mine)

You can use Wait action to wait for N amount of time and then check whether your profile is active or not. If not active, exit out of the task, else, continue.

You may begin your task with these actions:

1. Task → Wait → configure it
2. Variables → Variable Set:

* Name: `%ActiveProfiles`
    * To: `%PACTIVE`
3. Variables → Variable Search Replace:

* Variable: `%ActiveProfiles`
    * Search: `,PROFILE_NAME,`
    * tick Ignore Case
    * Store Matches In: `%CurrentProfile`

Replace `PROFILE_NAME` with the name of your profile. **A profile's name must be setup manually.**
4. Task → If: `%CurrentProfile1` `Isn't Set`
5. Task → Stop

Alternatively, put any action that notifies you that the profile deactivated in the mean time.
6. Task → Else
7. Setup the actions you want be executed if the profile remains active after N amount of time.

# Answer
> 0 votes
What I do with success :

**myprofile 1 →**

*what I want for activation*

**Task 1 Delay →**

1. Wait *x time to comfirm activation*
2. Set %variable\_Active = 1
3. Wait 1 second
4. Set %variable\_Active = 0

=== **AND** ===

**myprofileActivate →**

1. %variable\_Active == 1
2. %myprofile is active

**Task 1 Actions →**

*what I want to see done*

---
Tags: tasker, automation
---


# Question
Title: How to send (email-)file(s) from phone to phone using phone numbers instead of an email account?
In the good old days files were sent from computer to computer using modems and (copper wire) telephone lines. No email account needed, no server between them, just the computers, the phones and the telephone numbers.

I would be shocked if that would not be possible today.

So question is: How can I send (email-)file(s) from phone to phone using phone numbers instead of an email account, especially ***not*** using Whatsapp or anything else between the phones.

I'm new here and so probably there will be better tags then those used now.

# Answer
> 3 votes
Direct phone-to-phone data transfer, on sound channel, is today inherently incompatible with the system. Some decades ago, an (even at the time) slow communication was possible by modems (with maximal transfer rate of 56 kb/s). Today the providers use various compression algorithms which optimize the sound transfer (for human voice), but limit the bit rate to about 800 bit/sec. Furthermore, doing it is inherently alien from the androids (although still possible).

What remains, that is the tcp pased, direct digital communication between phones.

Here the case is far more easy, if both phones are on the same local network. Namely:

* You can send and get files by bluetooth. It is similar to wifi, except that the practical range is only some meter. Bluetooth is a well integrated builtin functionality of all android phones.
* If the phones are on the same wifi network, you can install an sftp server on one of them (example), and then use an sftp client (example) to send/receive data. This is painful at first, but after everything is set up, it can be done nearly so easy like the "common" solution.

You can also have your own server (accessible over the internet, or accessible over a vpn) what you can use for a cloud-independent intermediate storage. This requires some skill to set up.

Direct phone-phone communication over the internet is problematic, but sometimes works. Typically ISPs dislike the *incoming* connections and they often filter them. Their reason is security, what could be an acceptable reason - if the whole behavior of the whole system would not point consequently to the direction, that somehow you always need to upload *all your data* to hostile USA companies (and "services"). If the ISPs you use do not filter so vehemently, you can do the sftp-based data transfer even if you are not on the same wifi.

You can also use your own home wifi router as a VPN access point. That means that anywhere on the world, you can connect home and enter virtually into your home network, accessing also the phones on it.

All of them requires work - "the system" very clearly does everything to prevent you from doing this, *but it is still possible and you can do*.

Another option is using *tor* to make your phones accessible from everywhere. You will need to learn, and in the reality, this is what prevents the commoners to doing that massively. A legal prohibition would not be so efficient.

Your exact system configuration, well that depend on a lot of things, but it is possible. All your options will require learning and work. Only direct data transfer over phone lines, over sound channels, is not possible.

---
Tags: email, files
---


# Question
Title: Google Photos deletes copy and original on device
I'm facing a very strange issue with the Google Photos app. Every time I copy an image with "copy to folder" (specifically not "move to folder") and then delete either the copy or the original image, both are gone.
In the trash only one image appears after that. If restored both images are back.

This is not the behavior that I natively expect. When I delete one image, I want the other one to still remain untouched in its folder.
I have searched for a solution myself, but was unsuccessful. (I only found unanswered threads like this one.)

My question is: Why is this happening and is there a way to change this behavior?

---

Google Photos version: 5.23.3.348108244 (newest to date)
Android version: 10

# Answer
> 21 votes
After a while of trying around, I found a solution.

This behavior of the Google Photos app seems to be intended, because it is more an interface for the network service to synchronize images, and less of a gallery app. It keeps track of exact copies and synchronizes them as one. Therefore they are deleted as one instance, even though they are stored multiple times on the device.

Nevertheless, there is a (rather hidden) function implemented that does exactly what I wanted instead.
Instead of using the trash icon...

Screenshot of a device folder opened with Google Photos. Trash icon highlighted.

... under the available options, when an image is selected, there is a "Delete from device" option doing the trick:

Screenshot of a device folder opened with Google Photos. Option menu open. "Delete from device" highlighted.

**Note:** With this method the image remains in the cloud even if it's removed from all synced folders.

I hope I could help someone who has encountered the same problem.

---
Tags: photos, google-apps, google-photos
---


# Question
Title: How do I get any browser available on Android to open a fixed set of urls on startup?
How do I get any browser available on Android to open a fixed set of urls on startup?

# Answer
This solution requires Tasker (paid; trial version here) app. It is tested on a OnePlus 6 running Android 10.

> How do I get any browser available on Android to open a fixed set of urls on startup?

You can't, unless a browser app (doesn't matter which browser) is selected as default Browser app or is selected as default app to handle certain protocols (such as http, https, etc.). So this solution is assuming that one of the installed browser apps is already set as a the default Browser app or as default app for the said protocols. ***Otherwise, the solution would not work.***

Before you proceed, create a text file in your Android (or copy into it) with a list of your URLs. Make sure that all URLs are separated with a common separator. A common separator can be a new line -- each URL limited to a separate line, or each URL separated by a comma, or anything that is easier for you to setup. I suggest separate line. Example:

```
https://www.urlone.com
https://www.urltwo.com
https://www/urlthree.com

```

You also need to make sure that each URL starts with a protocol identifier. In my example, it is `https://`. If you don't prefix the protocol, the intent that Tasker would be sending would not be resolved to our satisfaction.

Now, let's move on to Tasker. Following is a profile and a task (with actions) that you need to setup in Tasker. If you are new to Tasker, you can get yourself familiar with tutorials on the web.

**Profile:** Event → System → Device Boot

**Task:**

1. System → Send Intent

* Action: android.intent.action.VIEW
    * Cat: none
    * Data: https://www.google.com
    * Target: Activity
    * *leave rest of the entries untouched*
2. File → Read File

* File: use lens/search icon to select your text file containing list of Urls
    * To Var: %data
3. Variables → Array Set

* Variable Array: %urls
    * Values: %data
    * Splitter: press Enter key once so that *new line* is used as spliiter
4. Task → For

* Variable: %url
    * Items: %urls()
5. Task → Wait → MS: 200
6. System → Send Intent

* Action: android.intent.action.VIEW
    * Cat: none
    * Data: %url
    * Target: Activity
    * *leave rest of the entries untouched*
7. Task → End For

Alright. So what is happening here is that I am sending an intent to launch the default browser with URL https://www.google.com. I am reading the text file into an array, and than I am running a For loop on each element of that array. Each element is than used as a data (URL) to send the intent. That intent than is resolved and the tab with the corresponding URL is opened in the browser app. I am also using a wait/timer of 200 milliseconds so that the browser doesn't miss my URL when intents are resolved rapidly.

If your device is slow, you may have to increase the wait time.

Also, the reason I am launching the browser app in the first action is to make sure the app is loaded into the memory already. I had noticed that Tasker continued to fire the intents but the browser only loaded the URLs when it was ready.

This method worked for Firefox and Chrome (both with latest versions at the time of writing this answer), whenever any of them was set as the default browser app.

**Note**: for some reason which I didn't investigate into, Firefox didn't load all of my 42 URLs in the text file. 1-3 URLs were never opened. Worked fine on Chrome.

Try it out!
> 1 votes

---
Tags: browser
---


title: How to recover glitching Galaxy S9?

text:
# Question
Title: How to recover glitching Galaxy S9?
## The bad

Last week I totaled a Galaxy S9's screen which I owned for over two years. I liked the phone so I headed up on Facebook market to look for another one.

I discovered a phone that I liked and went on to buy it.

When I had the phone in my hands, before paying, I run a service code (*#0011#* to see if all sensors/screen etc worked). This passed so I bought the phone.

Also, the phone won't do Samsung updates. It would either throw an error after download (The downloaded file is not correct) or restart when attempting.

## The ugly

Here's the harsh part: not long after leaving the dodgy seller, while going home, the phone started behaving really weirdly: sudden restarts, some screen glitches, and artifacts. The phone also loses battery pretty quickly, either due to the weird sudden restarts or else.

Note the purple glitches. I was able to record these with a screenshot, meaning it comes from the GPU chip?

## The good

The first thing I looked at was the water damage sticker beneath the sim tray:

I then managed to charge the phone fully and log in with a Google account, which allowed me to do further diagnostics. I installed Geekbench and run a test. The phone has a normal score for this model.

I tried filming, calling, playing games on the phone and all seems well.

The only times when the phone restarts are after receiving an error like "Google Services App crashed" or "Samsung Services App crashed" or suddenly when I try to use a service or disable/uninstall blootware.

I also managed to get the phone to update through Samsung Smart Switch to the latest update (Security Patch 1 Dec 2020)

## Resolution:

I have a few options for repairing this weird phone

1. Find what version of firmware I could flash on the phone and hope for a stock experience (including bootloader etc) - This option assumes that the hardware is intact, the chipset has no water damage, etc.
2. Open the, in which case I lose IP68 (assuming this is not lost already) and change the motherboard with my old phone's.

## How to proceed from here?

I am a bit unfamiliar with choosing the right firmware etc. I have the following information in the phone's software info:

* One U.I 2.1
* Android 10
* Baseband version: G960FXXSBETG8
* Kernel version: 4.9.118-18847185 # 1 Mon Aug KST 2020
* Build number QP1A.190711.020.G960FXXSBETH1
* Knox 3.4.1 API level 30 TIMA 4.0.0
* Service provider SW ver.: SAOMC\_SM-G960F\_CKH\_DRE\_QQ\_0009 / 2b282a7f23017ece (DRE/DRE/DRE)
* CSC: G960FCKHCFTK1
* AP: G960FXXSCFTK2
* CP: G960FXXUCFTJ1

I tried downloading **this** firmware version, but from what I've read the bootloader version here is too old and cannot replace the current bootloader. How can I determine the bootloader version on my phone? XDA forums say it's the 5th digit from the Build Number. However, my Build Number doesn't seem to respect the format of the above file.

Can anyone suggest what to do next? I'm itching to open the phone, but I think it's wiser to try and repair it from firmware.

# Answer
Thank you alecxs for your support. It kept restarting and showing a bicolour (green/blue) padlock which I assumed was a security feature from the carrier. The phone will work for extended periods of time, however, it would randomly restart when using standard google/samsung services, even with a new firmware.
> -1 votes

# Answer
bootloader level is increased in 1 digit

1 2 3 4 5 6 7 8 9 A B C D

G960FXX**SB**ETH1 = B
G960FXX**UC**FTJ1 = C

you can download rom for SM-G960F from updato, samfirm, frija or samloader. try lowest bootloader first, as you already stated downgrade is impossible (and higher version usually comes with higher protection against rooting). you can check bootloader version from download mode screen
> 1 votes

---
Tags: samsung, rom-flashing, stock-android, device-firmware, samsung-galaxy-s-9
---


# Question
Title: `adb backup` doesn't work even with `allowBackup=true` (e.g. Chrome)
I noticed that for some system apps (for example Chrome, which is preinstalled by default on my device), I can't do `adb backup`. Doing so results in the 47 bytes dummy .ab file. I checked in the manifest and they have `allowBackup="true"`.

E.g. for Chrome, the content of the manifest is

```
allowBackup="true"
backupAgent="org.chromium.chrome.browser.ChromeBackupAgent"
extractNativeLibs="false"
fullBackupOnly="false"

```

Why is this happening? How can I backup such apps' data without root?

P.S. Helium backup doesn't show system apps.

# Answer
> 4 votes
I found the reason in `logcat` while performing a backup:

```
BackupManagerService: Package com.android.chrome is key-value.

```

By default, for `abd backup`, key-value backups are disabled:

```
"/system/bin/bu" (the command that is called on-device by adb backup) help text:

 -keyvalue|-nokeyvalue: include apps that perform key/value backups.
     (default -nokeyvalue)

```

Therefore, you need to include the `-keyvalue` option to create a Chrome backup:

```
adb backup -keyvalue -f chrome.ab com.android.chrome

```

This creates a backup file that contains only the Chrome settings (no cache files, cookies, local data, ...)

---
Tags: adb, backup, chrome-for-android
---


title: Play Store not updating some apps

text:
# Question
Title: Play Store not updating some apps
On my Samsung Galaxy Tab S2 running LineageOS 16 with Opengapps, some apps are not being updated to the latest versions. In particular there is Google Meet and Sheets. Meet is stuck on a version dated August 2020 whereas my phone offers a version dated November.

I tried installing Aptoide apk store and it offered updates to both of these apps (and some other too). I installed them and they work, so it is not a question of incompatibility with my system. However, I would like to stick to the Play Store.

Why is this happening? And what could be done to get the latest versions?

# Answer
On Android the app developer can upload different app versions for different platforms.

Therefore it can happen that on your smartphone you have an Google Meet version from Dec. 2020 but on your tablet the latest version is still Aug. 2020.

This can even happen if both device are using the same Android versions. Just the fact that the one device is a tablet and the other a smartphone is enough so that they get different versions of an app.

If you open the page of an app in Google Play Store app and there is no "update" button then you already have installed the latest version that has been released for your current device.

Other criteria that may lead to a different version are:

* Android version
* Supported ABI of the CPU and OS (armv7 = 32bit and/or armv8 = 64bit)
* Screen size
* Country
* Mobile network provider
* Device name
* Installed libraries (some manufacturer add special libraries that are required for certain apps)
* Available hardware features such as NFC, fingerprint sensor, ...
> 0 votes

---
Tags: google-play-store, 9.0-pie
---


# Question
Title: Nandroid Backup restore fails with error 255
I recently destroyed the screen of my OnePlus One and had to send it in for repair. I used TWRP to make a Nandroid Backup before packing the device. Yesterday, I received a new device, obviously not having my apps and data. So I moved my backup onto the device, but when I try to restore it, I get errors.

When restoring the data partition, it will get to 79% and then say

```
E:extractTarFork() process ended with ERROR=255.

```

I tried it multiple times with the same result. Unfortunately, I obviously cannot try creating a new backup. All other partitions restore without trouble.

According to the log files, the file causing the issue is
`//data/dalvik-cache/arm/data@app@com.instabridge.android-2@base.apk@classes.dex`.

What can I do? I thought it might help to delete the file as the Dalvik Cache is just a cache that will be recreated, but how do I delete files or folders from a Nandroid Backup?

# Answer
> 0 votes
I had a similar issue, turns out I did not have enough space on the phone.

So backup\_file\_size * 2 \< memory\_availaible

The data partition is mostly big so it might be exceeding the capacity.

A good alternative might be restoring from a USB device or an SD card.

# Answer
> 0 votes
You don't have to delete the file or folder from Nandroid backup. Just delete the file which is causing the issue, change into that directory, and use the `rm` command to remove the file.

**In your case:**

```
> cd /data/dalvik-cache/arm

> rm -f data@app@com.instabridge.android-2@base.apk@classes.dex

```

Then, without rebooting, do a backup or restore as you need!

# Answer
> 0 votes
> When restoring the data partition, it will get to 79% and then say `E:extractTarFork() process ended with ERROR=255`. I tried it multiple times with the same result. Unfortunately, I obviously cannot try creating a new backup. All other partitions restore without trouble.

I think the easiest solution to this problem if it falls on the data. Try wiping Dalvik and cache, then formatting memory after restore backup from SD card. If you have the TWRP backup in your internal phone memory, move it to your external memory card so you don't lose it.

# Answer
> 0 votes
Typically, it's not a corrupt file or anything. It's just your disk filled with your backup so badly that it can't restore your files.

---
Tags: twrp, nandroid
---


title: Google showing places I haven't been

text:
# Question
Title: Google showing places I haven't been
I am shown on google that I have visited Liverpool and Cornwall both of which are 100's of miles away from where I live. Any ideas why? My Facebook was hacked could this be the same thing?

# Answer
> 2 votes
No. Your location history is never completely exact. It is because GPS location is often bad, particularly in these cases:

* If you are inside reinforced concrete buildings or trains. It is because the metal in wall (of the building) or the case of the train shadows the signal of the GPS satellites.
* If there is no GPS signal, google maps tries to use the MAC address of the available Wifi APs what your mobile can see - and compare it to the GPS signal of *other google users, whose GPS at that position worked*. It works in many cases, sometimes it does not (for example, the Wifi AP is actually another telephone of another Google Maps user who shares its mobile network with it).

If you see your position history (timeline) on the google, it shows you all the cities what the google thinks, you visited.

If the Wifi-based localization worked 10000 times in your life correctly, and 3 times badly, then you will see 3 cities where you never were. It does not matter that it worked correctly 9997 times, the first what you will think that you were never in Zürich or Philadelphia.

Your position timeline overweights the mistakes of the google localization. You can see these false points, many of them are airports or train stations.

Probably there are some option to change your google maps timeline retroactively.

---
Tags: security, geolocation
---


# Question
Title: Can I stream audio from Android to Windows through Bluetooth?
Can I stream audio from Android to Windows through Bluetooth? If yes, how?

# Answer
> 0 votes
Yes you can. Depending on your Bluetooth adapter on your Windows computer. Connect the two together, find the Phone connection and choose "Control". There you can connect to the phone as "Music and Audio".

Of course this can be different on your computer and then I cannot help you.

# Answer
> 1 votes
In case someone's coming from a Windows 10 without this feature, I managed to add it by installing Toshiba's Bluetooth Link, for example, from here: http://files.ecp.toshiba.com/2016/08/19/2123/59/tcp0000200a.exe

# Answer
> 1 votes
In Windows 10 versions released before Windows 10 May 2020 Update, Microsoft had implemented support for the A2DP source role, but not for the SINK role for desktop editions. This means you could use Intel Bluetooth on Windows 10 to send audio to other Bluetooth devices, such as a speaker, but you wasn’t be able to receive audio from other Bluetooth devices via A2DP.

Starting in Windows 10 version 2004, Microsoft has re-added the SINK role to Windows 10 for upcoming versions of the OS. However, to use the feature, you need to install a third party app Bluetooth Audio Receiver from Microsoft Store, as the OS lacks the user interface to activate the SINK role.

The instruction can be found here: Enable and Use A2DP Sink for Bluetooth in Windows 10

# Answer
> 0 votes
You could use DLNA, this allows to stream Music, Viedeos and Pictures:

# Answer
> 0 votes
I was also frustrated by windows 8 (64bit) with this as well. After upgrading from win-7 64bit to win-8 64bit, I was a little miffed to discover that I could no longer connect via Bluetooth to my windows machine and play what was on the phone.

I tried using the software for win-7 from the adapter manufacturer - no good.

So I bought a MediaLink BT (version 4.0) adapter. The device instructions say to NOT use the CD, that win-8 will install the necessary drivers. --- Drivers installed, BT adapter found and installed, but audio streaming from my phone Still didn't work.

So I tried to let the "autorun" feature of the cd install drivers, but win-8 stopped this saying it was "buggy".

So I "explored" the CD and went to the Vista\_Win7\>Win64 directory and ran inst.exe. This installed all of the manufacturers BT stack.

Now when I connect my HTC Vivid (ICS) through Bluetooth to my computer, a "remote control" for my phones media player pops up on the pc desktop and allows me to start the player.

This solved my audio streaming from Android to win-8 64bit problem for $14.99... woot!

# Answer
> 0 votes
Yes you can, I just did it. I've Android 4.4.2 and WinXP.

Instructions:

1. Enable BT on both devices;
2. Make sure under Windows 'BT Configuration -\> Local Services' you have 'Headset' service set to 'Automatic startup';
3. Connect the devices (using pass-phrase if required);
4. Check on Android that 'Media audio' is enabled for the connected PC.

Play some music, enjoy!

# Answer
> 0 votes
in Ubuntu 18.04 is seamless, just pair both then give pc/laptop the role of audio port, then you just play music from the Android. Windows 10 needs some driver that I want to find out

---
Tags: bluetooth, audio, windows, streaming
---


# Question
Title: Phone extremely slow, even after factory reset
I have a Samsung Galaxy J5 2016. It's gotten extremely slow and buggy (\>10 crashes a day, waiting more than 30 seconds to open default apps, ...).

I've done a factory reset, with removal of all data, including SD card. And... It's just the same.

I'm already looking around for a new phone, but I'm wondering what can cause this? When I google why phones get slower over time, they point to more and heavier apps. But this doesn't explain my case.

What can cause this behavior, even after a reset?

# Answer
> 1 votes
The most common culprits for slowing down your phone is accumulating background apps and hardware degradation. Since you've factory reset your phone, that rules out the first.

Flash memory in your phone degrades as you repeatedly write data, but this is a slow process. Eventually you will have sectors of memory fail from physical wear or accumulation of electrons which makes them unreadable.

Same thing happened to my Samsung Note 4. Was blazing quick when I first got it, now its sluggish, even after a reset.

Btw, check out Cycle (https://cyclephones.com)

It lets you stream an android emulator from a server to your phone so that you can run any app smoothly.

Full disclosure: I run Cycle, but I'd use it even if I didn't. There isn't a good solution to a slow phone other than buying a new one.

---
Tags: samsung, lagging, samsung-galaxy-j5
---


# Question
Title: Is it possible, that old smartphone becomes slow simply because it is old?
I have 3.5 half year old Samsung / Google Galaxy Nexus i9250. The phone has become so slow after that time, that it is simply being unusable. Launching any application, as simple as Gmail or Calendar takes 2-3 seconds, sometimes even five. Pressing `Home` button needs 4-5 seconds between press and really showing up main screen of my launcher (Nova Prime).

When I purchased this phone, it was simply lightning fast.

I have about 50 applications installed, of which about half is used (15 from time to time and 10 daily) and the other half, never used or used once per 2-3 months. Because I change my attitude very rarely, I have installed these applications in 2012, when I purchased my phone and haven't installed anything or nearly anything ever since that. I would describe this as changing 1-2 application per year.

Because of above, I can hardly accept, that my phone is slow, because I installed too many applications during that 3.5 year period. We can assume, that I'm sitting on the same apps set for past 1-2 years. It is also hard for me to belive, that 50 apps, of which half is nearly never used is enough to visually reduce performance of such phone. Even though it is quite old, its hardware isn't that weak, as I assume.

I of course did a full factory reset once or twice, installing only the same set of applications, as in 2012, after that. It brought little or no help and little or no performance gain. This has actually "killed" me, because I was more than sure, that full factory reset will return this phone to a level of performance and speed close to the days, as it was brand new.

The only theory, that comes to my mind -- though very strange and unbelievable -- is that my battery is old, its performance is far lower than when it was brand new, and thus it powers all hardware with lesser voltage causing its overall performance to degrade.

I know, how stupidly this theory sounds, but it is the only one, I managed to come with, in given situation.

**Assuming that number of installed applications and overall usage style of my phone hasn't changed over past 3.5 years of using it, is there any reasonable reason for why it is so extremely slower than it was, when it was brand new?**

# Answer
> 8 votes
Performance has nothing to do with battery voltage. The reason is that the flash memory is "worn" and therefore slower and less responsive. My Nexus 7 (1st generation) is also very slow now and I have almost no apps on it. You can read more here: Why Android Phones Slow Down Over Time, part "No Solid-State Drive TRIM"

> **No Solid-State Drive TRIM**
>
> The lack of proper TRIM support was the main thing that caused Google’s original Nexus 7 tablet to slow down over time. This was fixed in Android 4.3, which added proper TRIM support. On Nexus devices, updating to Android 4.3 will fix this problem.
>
> If you have an older device that doesn’t have Android 4.3 and has slowed down over time, you can perform TRIM by rooting it and using the LagFix app. This app runs the same fstrim command Android 4.3 runs in the background. TRIM is necessary because of how solid-state drives work — solid-state drives slow down over time because flash memory cells must be cleared before they can be written to again. TRIM preemptively clears cells that contain data from deleted files, ensuring things will be as fast as possible when Android needs to write to those cells in the future.
>
> How to Fix It: Root your device and run LagFix if you’re using an older device. This happens automatically on devices running Android version 4.3 and newer.

# Answer
> 2 votes
You've likely been updating the apps, and they're using more bloated APIs.

I, personally, don't see a reason every app needs to carry Unicode support, for example.

Facebook would be one of the largest offenders. 3 years ago it took 70MB RAM, now 200 so that it, among other snoopy things many apps now do, can carry its own browser to better track you. It doesn't help they split off Facebook Messenger, which also takes 150MB RAM.

'Flash wearing out' is definitely NOT what you're experiencing here.

Additionally, I think Google hasn't bothered optimizing minfree and the OOM manager, or the app lifecycle management. YouI'll have 500MB RAM free on a 2GB RAM phone and you still get home screen redraws all the time, and apps suspend the second you switch to another. Google is lazy and practices 80/20 too much...

Personally I avoid updating apps unless under duress, and use App Quarantine to keep apps locked down when I'm not using them-- for example, Amazon has 5 apps, and they all like to load up running around doing nothing in particular. Keeping them disabled and only unlocking when needed helps with Android's aggressive app suspending.

# Answer
> 2 votes
It's possible that as you use your phone, the apps themselves becomes slower, because it is managing more of your data.

A music app may work blazing fast when you've only got ten music in your library, but then you've collected about a hundred, and the database accesses becomes slightly slower as it's trying to generate the thumbnails or search through the ID3 tag indexes. The music recommendation engine may have worked blazingly fast when it only have to skim through half an hour of listening history, but then it got bogged down once or collected data the years worth of data about the music you skipped often and which ones you have been repeating over and over.

You may have taken pictures with camera app. Originally your gallery contains nothing, and the program can loop through the entire directory fast enough to not matter, but then as you snap more photos, getting a list of all files and looping through them all becomes a lot slower.

You may have added more people in your contacts in chat app. And the chat app have to work through a lot more of the chat history with more contacts and attachment files.

You've used the browsers, and browsers stores browsing history, bookmarks, etc. The size of a browser profile tend to go up over time.

These aren't necessarily solvable by a simple factory reset. If the app had online sync, they would have synced back these extra data that you didn't have back when life was simpler. Likewise with data stored in SD Card/external storage may not get wiped with a factory reset.

# Answer
> 1 votes
Yes, a slightly lower\unstable voltage caused by worn battery can underpower the device SoC affecting performance and stability, not only the autonomy, in the same way can make a torch less bright. I have observed this some years ago when replacing the battery of an old smartphone because of poor autonomy, I have seen also noticeable performance improvements. I have measured the battery output with multimeter and the battery related to poor performance had a lower voltage output (not only 700Mah reduced capacity at full charge compared to the new battery).

However there are also many others reasons that can affect performance, some Apps and services in the years after updates become more heavy in terms of memory(included built in Google services), or the storage nand flash memory can be worn.

# Answer
> 0 votes
Could be due to a couple of reasons:

1. Flash memory degradation. As you repeatedly write data to your storage, the hardware degrades and increases the chance of hardware failure.
2. New OS and app updates might not be optimized for your device, and use more resources.
3. Background processes. Some of the apps you install will open at startup and hog up CPU and RAM. Make sure you clear these.

Are you still dealing with a slow phone?

I'm making an app called Cycle (https://cyclephones.com)

It lets you stream an android emulator from a server to your phone so that you can run any app smoothly. It's great for gaming.

Would love to have you as an early tester if interested :)

---
Tags: battery-life, performance
---


# Question
Title: Lost password on Galaxy S2, can't shut down
My new Christmas Galaxy Tab S2 7": I was prompted to download an updated OS. I did so successfully and was prompted to restart. Okay, now I need my password. That is *ONLY* the password works, since the fingerprint won't work until the TAB is restarted after the update. But what *WAS* my password??? The information on the web says I can factory reset easy enough, but step one is to shut it off. I can't do that without getting past the password input stage. So far my Galaxy is a lovely-to-look-at, high tech paperweight.

So how do I either force it off so I can continue with a factory reset (including password) process, or go from where I am (at the password input stage) to a factory reset? (I think the password was among the Christmas wrapping that went as smoke up the chimney.)

# Answer
To force the Galaxy Tab E to restart, hold the `power` and `volume down` keys for around 20 seconds. This has the same effect as physically removing the battery. If this does not work, attempt holding all four physical buttons for 20 seconds. After the device is turned off, start it up in the recovery mode by holding `volume up` \+ `home` \+ `power`. Highlight `Wipe data/factory reset` with the volume keys and select it using the `power` button. Select `Yes` and the tablet will be restored to factory specifications. Finally, select `Reboot system now` to restart the device.
During the setup process, Factory Reset Protection may kick in. Log in to the Google Account previously used on the device to disable it.
> 1 votes

# Answer
To force your tablet to shut off, press and hold the power button for 20-30 second until it fully shuts off.

You can then follow the steps here to factory reset it.

Usually the backup password is something that you would set up when setting up your device, and not something that would arrive with your tablet. So i suggest you first try some passwords that you might have used as a backup password.
> 0 votes

# Answer
Press the restart button instead of off button ( it wont ask for password this way) then quickly do the 3 key combo
> 0 votes

---
Tags: samsung, factory-reset, tablet, password
---


# Question
Title: Super old email contacts suddenly appears in my phone contacts
When I woke up this morning I suddenly had 6 new contacts added to my contact book on my phone. All of them were emails, some of them I recognize from WAY back but I sure haven't had contact with them in a LONG time. I guess they were added in some kind of sync activity, but I'm pretty sure none of these addresses that were added, is featured in any of the accounts I'm currently using (gmail, yahoo) etc. I had contact with these people way before this

Why did this happen?

Is there any way to find out where a specific contact were synced from?

# Answer
SO, it turns out these contacts were infact imported from a google account I actually deleted about a week ago (20 days for it to get permanently deleted). I looked into my sync settings on my phone and saw how this old gmail adress were still there with sync activated. I had to re-create the google account, and logon to find these contacts in there.

So apparently my phone suddenly decided to add 6 contacts from a deleted google account. This google account had actually a HUGE contact list synced from WAY back on my old phones and accounts. Now all deleted though
> 0 votes

---
Tags: contacts, sync, email, troubleshooting, active-sync
---


# Question
Title: Apps from Google Play without logging into to Google Play
I want to get apps from Google Play without logging in to Google Play or using a google account. I just dont want google to have this information.

Is it possible ?

# Answer
I don't know of any way to access google play without an account but many of the apts on the play store can be downloaded from F-Droid.
> 1 votes

# Answer
Actually there are some alternatives to the GooglePlay Store out there - all with different approaches. F-Droid's goal is to provide only FOSS (free open source sofware) Apps. Others would be for example https://apkpure.com/

Back to you main question: YES you can access the Google Play Store and load Apps directly from there without an Google Account. As mentioned in the commends one popular solution is the Aurora Store (also available on F-Droid). What it does is, it takes your request and sends it with an faked Account to the Google Play API to get the Apps. So Google will log that an App was downloaded, maybe some more information like Country (not sure what is required by the API) BUT without your real identity.
> 1 votes

---
Tags: google-play-store, google-account, google
---


# Question
Title: Blocked SIM card and getting asked for PUK on Lineage OS 17.1
I installed Lineage OS 17.1 on my Samsung Galaxy S3. Everything worked just fine until I put in my SIM card. The first thing which happened after booting was getting directly asked for the PUK code although I didn't even enter a PIN at all. So I just rebooted the phone again which made it not recognize the SIM card anymore.

After that, I put my SIM card in my Samsung Galaxy S5 with stock ROM and I got the message that my SIM card is permanently blocked.

Any idea what happened there?

# Answer
> 1 votes
You have SIM password. You enter wrong password. Then it ask for PUK code. PUK code is link with sim card.

Use sim on normal mobile. Is it ask PUK code.

You can get PUK code from customer care. You can also get it from your online register account.

Get PUK code and use it. Weather sim card work after it.

---
Tags: samsung-galaxy-s-3, lineageos, sim-card, sim-unlocking
---


# Question
Title: How do I disable this MTP connection popup upon USB cable connection?
This appears whenever I plug it in:

I have gone through all settings, tried everything. I want the MTP mode to stay on (I have no desire to enable Mass storage). I know how to invoke this window manually from within the settings.

I just want it not to pop up.

Using Lenovo A536, 4.4.4, rooted, stock ROM. Read through the other threads, they never offer a working solution (just bogus solutions). It always seems to derail towards FTP and/or MSD and making up menu items that are absent in my phone. I have sqlite3 installed, if you know the right database and key, tell me and I can fix it.

# Answer
> 1 votes
This problem can have three reasons: 1- You connect your mobile phone to the computer, in this case, you should on this page, select the option to only charge and look for an option with the theme "Always do the same" and activate it. 2. Your charger has a problem and your mobile phone recognizes it as a computer. Try another charger. 3- If the problem is not solved after doing the above work, your phone probably has a hardware problem

# Answer
> 0 votes
There should be a broadcast receiver for the "connecting to PC" broadcast, which this UI receives and launches itself.

If you're 100% sure you won't need to set this again, try using MyAndroidTools (requires root, of course) and disabling this certain broadcast receiver, or disabling the activity of this UI altogether.

Unfortunately, since I don't have the phone in my hands, I won't be able to figure out which receiver/activity to disable, but it should have "USB" or "MTP" in its name, so search that in MyAndroidTools and report back if anything comes up.

---
Tags: 4.4-kitkat, mtp, lenovo, user-interface, popup
---


# Question
Title: Does play store filter out NFC apps for phones which do not have NFC?
I'm developing an Android app based on NFC technology.

So when my app goes live on the play store, will the app be displayed for people having non-NFC phones? Will they be shown a message like "this app is not supported on your phone" or will they have to face post-installation frustration?

# Answer
> 5 votes
That depends on the app. For using NFC in an app the developer has to declare that in the app's `AndroidManifest.xml` that is contained it the app (and used by the PlayStore to detect if an app is compatible at all).

When using a feature you can declare if it is `required=true` or not, if it is not required it is considered optional:

```
<uses-feature android:name="android.hardware.nfc" android:required="true"/>

```

Therefore for apps that declare the NFC feature as `required=true` PlayStore will not show you those apps on a non NFC phone. If it is set to optional (`required=false`) then you will be able to see this app.

See also https://stackoverflow.com/questions/52695866/does-nfc-permission-result-in-an-error-when-the-device-has-no-support

---
Tags: google-play-store, nfc
---


# Question
Title: How to put a shortcut to a settings submenu on a home screen
Use case:
I would like to change the input language for voice input without having to click through
"Settings/voice input and output/voice recognition settings/Language"
And I have a couple of similar ones resulting in the same question:
Is there a way to place a shortcut to a particular submenu of the settings on a home screen?
Another (even better) option would be to tie a praticular setting to a custom keyboard shortcut.

Am I expecting too much?
Thank you

# Answer
> 4 votes
You could use Manual Intent Shortcuts.
It offers to add a custom launcher widget that sends intents defined by you.

To launch the VoiceSearch Settings window, do the following:

* add a new "manual intents shortcut" widget to your home screen
* enter a name
* Action = "android.intent.action.MAIN"
* Component Package = "com.google.android.voicesearch"
* Component Class (FQDN) = "com.google.android.voicesearch.VoiceSearchPreferences"

Leave all other fields empty, uncheck "broadcast"

You now have a shortcut to the settings window you want.

PS: I used apktool to inspect the AndroidManifest.xml in VoiceSearch.apk (system app, you need root to access it) which lists this Activity.

# Answer
> 5 votes
Yes, it's possible to add a shortcut to a settings menu, but probably not as "deep" as you'd like.

Long-press on a screen and select "Shortcut" in the menu that pops up. Then choose "Settings" and then the settings menu you want.

# Answer
> 1 votes
Another possibility: Gesture Search

It searches contacts, apps, bookmarks, files, and **settings**. By the time you scrawl out `V O I` you should probably see the voice setting you need.

# Answer
> 1 votes
Supplemental answer to @ce4's answer which is correct. In Android Marshmallow 6.0, it would be these values for Manual Intent Shortcuts:

* Action = "android.intent.action.MAIN"
* Component Package = "com.google.android.googlequicksearchbox"
* Component Class (FQDN) = "com.google.android.apps.gsa.velvet.ui.settings.VoiceSearchPreferences"

I would just add these to his comment, but I don't have reputation to do that.

# Answer
> 1 votes
I was with a similar problem. I was trying to launch the Adapt Sound configuration. Samsung removed the Settings widget from its phones, so you won't find it.

I solved using the Shotcut Maker app. My desired shortcut was inside the "Activities" options. Now I can quickly get to this sub sub sub Settings option.

---
Tags: settings, home-screen, home-screen-shortcuts
---


# Question
Title: How to access forgot-password option when you forgot the PIN of your Android Device?
I have this Huawei Nova 3i, I forgot the PIN but there's no "forgot password" or "forgot PIN" option. I noticed that my Huawei Nova 2i doesn't have that option too, and I'm stuck on "Try again after 24 hours".

Normally, when I forgot my password or pin, I just click on the "Forgot Password" option, input the Google Account Password that is bound to the device, and viola, password or pin successfully reset.

Is there a workaround here to use that option?

# Answer
You can go to google find my android page. Log in to your Gmail account linked with Huawei Nova 3i.

You get 3 option lock / unlock , erase and sound. Use unlock screen option. Now you can access mobile and change passcode. Or take full backup of mobile and restore it.

You can start mobile in recovery mode using volume and power button. Wipe Cache partition. This will remove passcode.
> 1 votes

---
Tags: huawei, emui
---


# Question
Title: How can I access my SanDisk sdcard from Linux Deploy
How can I access my SanDisk sdcard
I would like to know how to see it contents and set it RW property, ejected it copy,delete and so on from the command line using JuiceSSH and vnc file manager going though Linux Deploy on android 4.2.2

```
Ubuntu 14.04 LTS [running via Linux Deploy]
Last login: Tue Dec 15 16:16:47 2020 from localhost
$ su
root@localhost:/home/android# lsusb
Bus 001 Device 003: ID 0781:558a SanDisk Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@localhost:/home/android#

```

Thank You

# Answer
> 0 votes
properties - Allow to mount the Android resources
properties - Edit the mount points list

```
$ANDROID_ROOT
/cache
$ANDROID_DATA
/su
$ANDROID_STORAGE/emulated
$ANDROID_STORAGE/4D47-9860

```

this result in

```
ubuntu@localhost:~$ df -a
Filesystem                                                     1K-blocks     Used Available Use% Mounted on
/dev/block/loop1                                                 3030800  1858236    998896  66% /
proc                                                                   0        0         0    - /proc
sys                                                                    0        0         0    - /sys
tmpfs                                                            1010636      740   1009896   1% /dev
tmpfs                                                            1010636        0   1010636   0% /dev/shm
devpts                                                                 0        0         0    - /dev/pts
/dev/block/platform/mtk-msdc.0/11120000.msdc0/by-name/system     2483744  2045332    422028  83% /system
/dev/block/platform/mtk-msdc.0/11120000.msdc0/by-name/cache       245679     2165    226311   1% /cache
/dev/block/platform/mtk-msdc.0/11120000.msdc0/by-name/userdata  11608792  8786360   2789664  76% /data
/dev/block/loop0                                                   92656     8064     82628   9% /su
/data/media                                                     11608792  8786360   2789664  76% /storage/emulated
/mnt/media_rw/4D47-9860                                         31150720 25943968   5206752  84% /storage/4D47-9860
ubuntu@localhost:~$

```

on android 4.2.2 the paths differ

```
$ANDROID_ROOT
/cache
$ANDROID_DATA
$EXTERNAL_STORAGE
$SECONDARY_STORAGE

```

this will bind mount all android partitions into linux chroot container
(the latter one is your external MicroSD card)

```
/system
/cache
/data
/storage/sdcard0
/storage/sdcard1

```

---
Tags: sd-card, linux
---


# Question
Title: Turning on SMS delivery report on Android 9
How can I turn on SMS delivery report on Android 9? In messaging section, I go to settings, but there's no "advanced" option. I'm using Huawei Y5 2019.

Here's a screenshot and there's no double-check (which is a sign of a delivered message)

# Answer
As far as I know, whether to show delivery reports or not is to be implemented in a messaging app, and is independent of Android version. If you don't see any such option in your stock messaging app, than it doesn't have that functionality. I suggest you try a third-party messaging app from Play Store or F-Droid. It should work out.
> 1 votes

---
Tags: sms, huawei
---


# Question
Title: Can I automatically turn off WIFI completely whenever not connected to a network on Android 10+
Here's my problem: I used to run Lineage 16 on my Pixel3a, which still had the "profile" option where I could do things like "When my home network is not within reach, switch to another profile". I used this to turn off wifi when leaving the house and it worked very well. Important: This did not need my location services to be on to work.

Now I've upgraded to Lineage 17.1 (Android 10) and this option is gone. I am now looking into how to rebuild that functionality. My phone is rooted (via Magisk), and as a software developer I am ready to use all tools I have available.

What I've tried: I've built an app that periodically checks if I am connected to one specific SSID (since that is all I can see on Android 10 anymore - "Am I connected to "my-ssid"?) and then turns of wifi using the shell and `su`like this:  `sudo("svc wifi disable")`. `sudo()` is my function that opens a process and talks to the shell.

The problem is I don't think there is a way I can guarantee my app always runs, and I'd like this to also work when the app is off? It doesn't even need to be a specific SSID, I'd be happy if my result is: "If we're not connected to a wifi network for more than 3min, turn wifi off.

so what other options do I have? `Tasker`, just like my own attempt, kind of works but only with location services on, *which I'd like to avoid*. What else can I do. Can I run some kind of script or a job just on the shell or so? Is there anything I can do with *Magisk* or *Xposed*?

Happy for any help here - the internet is full of links and tips, but they all target older OS versions. Btw the source for my (extremely rough draft) app is here if anyone is curious.

# Answer
> 4 votes
With methods described below, when the phone disconnect from your wifi network, wifi will be immediately switched off. Also they don't require the Location Services to be on.

**A. Xposed Edge**

Open Xposed Edge, go to More triggers \> Wifi Disconncted \> Wifi \> Turn off.

**B. Macrodroid**

1. Open Macrodroid, click Add Macro.
2. Click the + on the right of Trigger. Click Connectivity \> Wifi State Change \> Disconnected from network. Click OK. Select your network(s).
3. Click the + on the right of Actions. Click Connectivity \> Wifi Configure \> Disable Wifi. Click Ok
4. Give your macro a name. Press back, save the macro. The macro will look like this:

**C. Automate**

1. Open Automate, click the + at the bottom of the screen to add a new flow.
2. Click +, Connectivity \> Wifi enable?. Click the Wifi enable? block, set Options to Immediately. Click Save.
3. Click +, Connectivity \> Wifi network connected?. Click Wifi network connected? block, Don't click on pick the network, but enter the network name (SSID) manually. Set Options to Immediately. Click Save.
4. Click +, Date & time \> Delay. Click on the Delay block, set the duration to 3s. Click Save.
5. Click +, Connectivity \> Wifi set state. Click on the Wifi set state block, select Off. Note that this block is not officially supported for Android 10+ and might not work.
6. Link the block has shown on the image below. Press back. Give your flow a name. Press Start to start the flow.

**D. Ping your home router** You can use a script in combination with the app mentioned to ping your home router. When the pings are successful, the phone wifi stays on. When they are unsuccessful, disable you phone wifi.

---
Tags: wi-fi, root-access, android-10
---


title: Run windows 10 ARM on QEMU

text:
# Question
Title: Run windows 10 ARM on QEMU
I have downloaded the Windows 10 ARM on my Android phone, but it stops when I press any keys to boot from the CD or DVD.

Click the images for full-size

This is my `start.sh` file:

```
#!/bin/bash
sleep 2
echo "Starting ..."
qemu-system-aarch64 \
  -M virt \
  -cpu cortex-a57 \
  -smp 6 \
  -m 1G \
  -pflash QEMU_EFI.img \
  -pflash QEMU_VARS.img \
  -device VGA \
  -device nec-usb-xhci \
  -device usb-kbd \
  -device usb-mouse \
  -device usb-storage,drive=install \
  -drive if=none,id=install,format=raw,media=cdrom,file=arm.ISO \
  -device usb-storage,drive=drivers \
  -drive if=none,id=drivers,readonly=on,file=drivers.vhdx \
  -device virtio-blk,drive=system \
  -drive if=none,id=system,format=raw,file=Hard.qcow2 \
  -vnc 127.0.0.1:2

```

And there it stops working. What can I do to make it go off successfully?

# Answer
I think you must compile `qemu-system=aarch64` by yourself, but go into the `/arm` folder of the source code. You have to go in the file `virt.c` and modify line `has_el3=false` to `has_el3=true`.

Microsoft Windows wants a trust zone, so we emulate it. It will compile, though it will have no GUI, and you have to start this from the command line back on Android, and then vnc into it.

The OS seems still experimental though.
> 2 votes

---
Tags: windows, android-emulator, emulators, termux
---


# Question
Title: Retrieve data from not working BlueStacks
An old version of BlueStacks showing the following error and now I can't access my data:

```
BlueStacks App Player.
Error: CodeTitans.JSon.JSonReaderException: Invalid token found('<' at 1:2)

```

Can this error be fixed? Otherwise, can I recover the data?

# Answer
The storage used by this virtual machine should be a vdi file. You can start with BSTweaker and its file manager, if the engine starts enough to enable file browsing you should just be able to recover your files. Also I'm not sure for old version of BStweaker, for new one the file manager is launched from the info tab.

If this isn't enough, you have to find a way to open it. this question may be of some use. But it is best if first option works.
> 1 votes

---
Tags: data-recovery, bluestacks
---


title: How to detect a malicious USB charger?

text:
# Question
Title: How to detect a malicious USB charger?
My phone is rooted and has USB debugging enabled because I do some development on it. In a moment of pre-caffeinated mental weakness, I plugged it into a cheap Chinese power bank. The phone promptly stopped responding to touch input until I hard-rebooted. This reminded me that malicious chargers are apparently a thing.

My google-fu hasn't shown any in the wild, I have no other symptoms, and Malwarebytes is giving me the all-clear... so I'm not particularly worried.

Generally speaking though, how would you go about detecting a malicious charger?

# Answer
> 2 votes
Go to `hak5.org` and purchase their malicious cable detector. It costs $40-50. (I didn’t let the link connect so you can have the peace of mind that you are not unknowingly downloading malware by clicking a link on your mobile device).

# Answer
> 1 votes
You can't. The only real world way to detect if a charger is malicious is to plug it into a device that it could possibly infect. Yes, I'm sure with some forensics equipment you could technically check for this kind of thing, but it just isn't practical.

Instead, only charge your device with chargers you can trust. If you see a USB charging port, or any kind of device that is supposed to charge your phone and you aren't sure what the other side is connected to (such as in airports where there are USB ports) don't use it.

It's more of a game of paranoia than detection. I wish there was a better alternative as much as you do.

---
Tags: hardware, malware
---


# Question
Title: How can the battery get discharged while Ampere is showing that it is charging?
How can the battery get discharged while Ampere is showing that it is charging?

Example:

At 1:06 PM, the battery indicates `2%`.

At 1:08 PM, the battery indicates `1%`, even though Ampere says that the min mA was strictly positive (`40 mA`).

How is that possible?

I use Android 10 on Samsung Galaxy S9.

# Answer
> 1 votes
As said in the comments, the issue is that Ampere doesn't take into account the battery consumption when showing the charging current.

Example:

AccuBattery, which takes into account the battery consumption when showing the charging current:

Ampere:

---
Tags: battery, android-10
---


# Question
Title: Decrease the screen size (not resolution) on Android 11 (`wm overscan` is deprecated)
I recently bought a Pixel 4a and being used to a way smaller phones before (4.7 inches), it's gigantic for me. I'm trying to find a way to decrease the usable space of the screen (from the top) and hide the camera cutout.

I found out this, but the option is only available on Samsung (and other brands). Then I found out this thread and the `wm overscan` ADB command and just as it looked like I found a solution, it turned out Google deprecated the overscan command in Android 11.

I tried also Nacho Notch and other "notch-hiding" software, but they only "blacken" the notification bar and don't actually reduce the screen size.

Any ideas what I can do to actually achieve this on Android 11?

# Answer
> 7 votes
I have the same issue with my Google Pixel 4a. Fortunately even though overscan is deprecated, setting `size` still works. The downside is that the screen is centered instead of being aligned to the bottom of the screen.

Open a root shell on your phone, then run:

```
wm size # to get your current phone display size
wm size 1080x1800 # slightly reduce the display size

```

You can also use `wm size reset` to reset the display size.

Edit: you can also use Screen Shift to edit the screen resolution. (Overscan won't work.)

---
Tags: screen, android-11
---