# Question
Title: How to install LineageOS in TWRP using `adb push`?
## Question (TL;DR)

How can one (manually) sideload a LineageOS zip file that is pushed on the phone using TWRP?

## Context

while installing this `lineage-17.1-20210430-nightly-FP2-signed.zip`, with the following command:

```
adb sideload lineage-17.1-20210430-nightly-FP2-signed.zip

```

I observed that the lineageOS hangs in the loading screen for several hours. So first I verified that the `zip` file is correctly downloaded, using the sha256, which it is. Next, I noticed that the cause might be that the zip is streamed directly from the host to phone. So I learned an alternative option might be to use:

```
adb push lineage-17.1-20210430-nightly-FP2-signed.zip /sdcard/

```

Followed by a command to sideload the zip from the phone.

## adb sideload method

For completeness, the direct `adb sideload lineage-17.1-20210430-nightly-FP2-signed.zip` was performed using the following steps:First, I wiped the system using `Wipe>Advanced Wipe> select: Dalvik, System, Cache, Data, and swiping right`, then manually activated sideload mode by pressing (and swiping): `Advanced>ADB Sideload>Swipe to Start Sideload` which outputted:

> Updating partition details... ... done RescueParty Full SELinux support is present MTP Enabled ? Starting ADB sideload feature...

An observation is made here that the loading indicator keeps on loading without any progress. This might also be a reason the sideload does not yield a successful boot up of LineageOS.

Next, I tried I first tried the CLI approach:

```
adb sideload /sdcard/lineage-17.1-20210430-nightly-FP2-signed.zip

```

Which outputs:

> Installing zip file `/sideload/package.zip` Unmounting System Warning: no file\_contexts Target: Fairphone/FP2/FP2:6.0.1/FP2-gms-18.04.01/FP2-gms-18.04.01:user/release-keys Patching system image unconditionally Script succeeded: result was \[1.000000\] Formatting Cache using make\_ext4fs... Wiping Cache & Dalvik... Cleaned: /data/dalvik-cache... -- Dalvik Cache Directories Wipe Complete!

And I pressed `Reboot System`. This results in the (seemingly) endless booting of the LineageOS loading screen.

### adb push method

Before I tried other builds for the FP2, I was mainly curious to learn how the sideloading would work using `adb push`. Hence, I tried:

```
adb push lineage-17.1-20210430-nightly-FP2-signed.zip /sdcard/

```

And started looking for ways to sideload that zip from the phone. The first thing I tried was, after starting the sideload mode manually and verifying that the TWRP was in sideload mode with command `adb devices`:

```
adb sideload /sdcard/lineage-17.1-20210430-nightly-FP2-signed.zip

```

Which returns:

> adb: failed to stat file /sdcard/lineage-17.1-20210430-nightly-FP2-signed.zip: No such file or directory

Next, I tried exploring the TWRP options manually. One of the options could possibly be: `Install>browse to /sdcard> and tap the: lineage-17.1-20210430-nightly-FP2-signed.zip`. However that yields a warning:

```
This operation may install incompatible software and render your device unusable

```

And I think installing might be something else than sideloading, hence I think this might brick the device/not be what I am looking for.

## Note

This is not about the `xy-problem` of making LineageOS boot on the Fairphone, it is about how to load LineageOS using TWRP from the phone instead of from the host.

# Answer
> 2 votes
To answer the headline only:

**only block partition images can be flashed with** `adb push`

* extract zip file
* convert sparse file into partition image

```
brotli --decompress --in system.new.dat.br --out system.new.dat
python sdat2img.py system.transfer.list system.new.dat system.img

```
* flash partition images from adb in TWRP recovery

```
adb push boot.img /dev/block/platform/msm_sdcc.1/by-name/boot
adb push system.img /dev/block/platform/msm_sdcc.1/by-name/system

```

---

**Don't forget to factory reset / format the whole user data**

* can be done from `adb shell`

```
adb shell
mke2fs -t ext4 /dev/block/platform/msm_sdcc.1/by-name/cache
mke2fs -t ext4 /dev/block/platform/msm_sdcc.1/by-name/userdata

```

---

For more alternative methods to manually install OTA flashable zip
Is it possible to flash a custom ROM without a custom recovery image

---
Tags: adb, twrp, lineageos, side-loading
---


title: Phone ringtone does not play

text:
# Question
Title: Phone ringtone does not play
M moto G 2nd gen is not playing default phone ringtone. Even if I try to select the tones from the list they don't play the sound. Rest all the tones are working properly.

# Answer
> 1 votes
First thing to do is ensure your phone ringer is not on silent or that your volume is not set too low. The next thing is to check if the file itself is corrupted. Use your File Manager to play the sound directly from storage. If it plays there but still won't work as a ringer, you should backup and format your phone. Good luck.

# Answer
> 0 votes
Sometimes, with cache piling up, your phone reacts slower to everything. The speed change is small and can't be noticed but the cache pile is the problem. Try removing Cache Data from Storage\> Settings.

If it doesn't work, try restarting your phone by holding the power button for 3 seconds and shut it down. Restart it again after couple of seconds and the ringtone should be working

# Answer
> 0 votes
I have fixed mine by setting all of my contacts to default ringtone. Unique ring tones for each contact do not work.

# Answer
> 0 votes
1/15/18 PROBLEM SOLVED for Moto G3: Settings \> Sound & notification \> Interruptions \> When calls and notifications arrive \> had been reset to: Allow only priority Interruptions. This produced a small star warning @ top of screen, with no sound or vibration for incoming calls. CHOOSE: Always interrupt: phone calls can then ring & vibrate.

# Answer
> 0 votes
Press the up vol button and above the slider there is a little bell icon. Touch that icon and your Moto will again make your chosen ring.

---
Tags: motorola-moto-g
---


# Question
Title: Can I increase the frequency at which location history gets my location?
I've recently discovered Google Location History, however my history map is made up of lots of very long straight lines because it doesn't appear to get checkpoint/location information very often.

Is there any way to increase how many times it gets the location in order to get a more accurate view of my movements in a day? I understand that this may reduce battery life.

Thank you.

# Answer
> 2 votes
"Start driving"\[1\] in Google Maps increases the frequency to 15 seconds per sample. Then send it to background, turn off the screen. It consumes more battery but not much.

\[1\] since the side menu has been removed, the feature can only be used by adding a shortcut (sometimes called widget) to your home screen.

# Answer
> 1 votes
From experience, I've noted that Google Maps increases the frequency with which it captures location data if I'm using another device that intensively uses the phone's GPS, such as a Bluetooth-connected activity and fitness tracker. When it is active it seems to induce Google Maps to collect the same data with the same frequency as the fitness tracker.

---
Tags: google, google-maps, geolocation, google-location-history
---


# Question
Title: ADB constantly disconnects, shows device offline
I'm not 100% sure if this should go here or the main Stack Overflow, but I decided to go with this area in hope I might catch someone with more specific experience with a similar problem.

I have a Samsung Captivate (love it minus it's crappy GPS). I do development for it from 2 different computers, one at home, one at work. The machines are both Windows XP, Service Pack 3, 32 bit. I have the same Samsung drivers installed, same versions of Eclipse, etc. The phone is currently rooted running the Serendipity mod, though this issue was exactly the same on the stock firmware.

My home machine (the problem one) is an Athlon 64 2.2 Ghz. My work machine is a Core 2 Duo, don't recall the model.

At work, I can do anything, mount the sdcard on the phone and copy easily, use adb to push, pull, uninstall, install. I can debug in ddms, install through Eclipse, etc, etc...

At home, if I reboot both the computer and phone and pull up a command prompt without having Eclipse open, I MIGHT be able to see the device by typing adb devices. Usually then, I can clear the logcat or run the logcat fairly stable. If I open Eclispe (my development IDE) and try to run a new build of an app, I'll generally lose the connection. The same thing happens if I try to copy files either via mounting or using pull with adb. Some files will copy, and suddenly the connection will be gone and the device will show offline to adb, or not in the list at all, or listed offline twice. Rebooting the phone sometimes helps, but not always. There are times I close Eclipse and every other app, reboot my phone and still end up having adb completely unable to detect the device. I'll use adb kill-server and adb start-server but this generally doesn't help. I use Avast for my anti-virus at home, but have tried without any anti-virus installed at all and it's the same. I've recently reinstalled Windows due to a hard drive crash and it was the exact same. I've tried every different USB port on my tower.

I hope VERY much someone can tell me what's wrong as I've been dealing with this for a year and a half now and it's about to make me lose my mind.

-Jeremiah

# Answer
Switching from USB 3.0 port to USB 2.0 solved the problem for me. Most laptops come with both port types these days.
> 35 votes

# Answer
Connect your device through a powered USB hub. Some machines, including new apple macbooks, do not have enough power in the USB ports causing ADB to constantly disconnect.

If your device is rooted, you can connect it to adb via wifi. This is very comfortable, much more than wired USB. Of course you don't always have a rooted device.
> 12 votes

# Answer
This was annoying me for ages. Logcat would disappear or the phone would need to be reconnected to the USB for ADB to see it properly.

What worked for me was using one of the rear USB ports on my PC. The front ones probably were going through a dodgy hub or perhaps dodgy USB hub software. So if you are using front USB ports, try the ones on the rear.
> 4 votes

# Answer
I'm using an LG G3 marshmallow. I don't know why, but when I go to `Developer options > Networking section > Select USB Configuration > MTP` fixed it.

Before that, whenever I plug my phone to my PC, the driver installation window always froze at the start, but when I changed to MTP connection, the driver installation window immediately recognized it and the phone icon changed to an LG phone icon and finished installing.
> 4 votes

# Answer
To me it sounds you have some bad hardware or drivers at home. Make sure you don't have anything related to Kies running; Kies + Samsung Windows Drivers seem to cause erratic behavior on USB connection that differs between machines...

Try different USB ports and cables first, tho.
> 2 votes

# Answer
I was having this disconnect-reconnect problem.

I solved my problem in the Windows USB settings :

```
1- Open device Manager.
2- Human interface Devices.
3- Right click in one of them or double click.
4- go to power management.
5- Uncheck the option of "Allow the computer to turn off this device to save power" than OK.
Note* try to use step #3-5 on all available option*

```

(from http://www.tomshardware.co.uk/answers/id-1783536/usb-ports-disconnecting-reconnecting.html)
> 2 votes

# Answer
I used to have the same problems and also my logcat would clear and stop updating in Eclipse, the difference is I was on an official Samsung ROM then. After I switched to Darky's ROM the stability has been much better. Still, every now and then the device disappears, but usually it reappears after reattaching the USB. My PC is a bit different from yours (Atom D525, Win7) so I can confirm it's not restricted to a single device/OS.

I'd suggest reflashing the ROM or updating if possible. Or you could try it with another phone to see if it's an error specific to your phone. On the other hand, ADB isn't the stablest of software, so it could be just annoying hiccups.
> 1 votes

# Answer
I was having the same issue with my Nexus 4, running Cyogenmod 11 on Windows 8. I was plugging in using a USB splitter and my phone would keep disconnecting within seconds of being recognized by LogCat / DDMS. Switching to a physical port on my machine did the trick. In my case the front USB ports worked fine.
> 1 votes

# Answer
Find the location `android-sdk-windows\platform-tools`.

Open Command Prompt and then run these commands:

```
cd c:\android\sdk\android-sdk-windows\platform-tools
adb.exe kill-server
adb.exe start-server

```

These steps may solve your problem.
> 1 votes

# Answer
The following two solutions worked for me.

You can try either of the two or both of them.

1. Restart device.
2. Free some internal storage space (Works in most of the cases).
> 1 votes

# Answer
I found a very easy solution. Same happened to me in Ubuntu 16.04 system. I applied following command.

```
adb kill-server
sudo adb start-server

```

When adb is running as `admin` it will not throw any error.
> 1 votes

# Answer
It might be because of a windows setting that is (rather stupidly) turned ON by default

> Click 'Change advanced power setting' on your chosen plan and expand 'USB Settings'. Under 'USB Settings' section, expand 'USB selective suspend setting' and change it to 'Disabled' for On battery and Plugged In.

All the glory to thewindowsclub
> 1 votes

# Answer
Same issue here; I use adb on gnu/linux with no additional drivers.

Workaround Solution: unplug and replug USB

http://forum.xda-developers.com/showthread.php?p=17111464#post17111464
> 0 votes

# Answer
adb on Debian/Ubuntu is currently as 1.0.29 connecting to android 4.2.2+ devices requires 1.0.31 which causes this error

https://bugs.launchpad.net/ubuntu/+source/android-tools/+bug/1131163

you can either manually install the latest android development kit or wait until the debian folks upgrade teh package
> 0 votes

# Answer
A different issue with the same symptoms when updated to MacOS Sierra. Here's a workaround script:

```
#!/bin/bash

cat << EOF
###########################################################
# Workaround adb disconnecting issue on macOS Sierra
#
# More info:
# https://code.google.com/p/android/issues/detail?id=219085
# credits to: hans...@meetme.com, vs...@google.com
###########################################################

EOF

function monitor_adb () {
  adb start-server
  echo "[$(date)] adb started"

  while [ "$(adb shell echo 1)" ]; do sleep 5; done

  echo "[$(date)] adb is broken, restarting"

  adb kill-server
  adb start-server || adb start-server
  adb reverse tcp:8081 tcp:8081
}

while [ true ]; do time monitor_adb ; done

```
> 0 votes

# Answer
I had same issue but only with Android 6/7 devices and Mac host. Solution was...switch device from 'Charging' to 'File transfer' mode.
> 0 votes

# Answer
Here's my answer with `adb pull` emulation workaround based on `adb` and `dd`. It continuously retries and resumes download when disconnection happens.
> 0 votes

# Answer
This will happen each time you leave adb connection open, need to disconnect after using adb session, to disconnect simply run

```
adb disconnect <ipaddress>

```

you replace ipaddress with ip of android device, same as adb connect.
> 0 votes

---
Tags: usb, adb
---


# Question
Title: How to export a large WhatsApp chat with media exactly as it appears on my phone?
I want to export a huge WhatsApp conversation (346,000 messages) along with the media (photos, videos and voice notes) to my computer exactly as it appears on WhatsApp.

There is a Chrome extension that does exactly what I want by downloading the conversation from WhatsApp Web as HTML. However, it crashes at around 100,000 texts. Is there any other way?

I can't export it directly through WhatsApp because it's limited to 40,000 texts. Also, my phone is not rooted so extracting the SQLite files is not an option.

(Technical answers are highly encouraged)

# Answer
So, I managed to figure it out myself. Note that this answer has been written for non-rooted devices.

1. Go to `Internal Storage/WhatsApp` and rename the `Databases` directory to `Databases.old`
2. Open WhatsApp, go to `Settings` \> `Chats` \> `Chat backup` and set `Back up to Google Drive` as `Never`.
3. Tap the `BACK UP` button and wait for the backup process to complete.
4. Go to `Internal Storage/WhatsApp` and zip the `Databases` and `Backups` directories.
5. Arrange a **spare** device. Personally, I set up an AVD with Android Marshmallow x86 and increased the storage (partition size) to 8GB.
6. Root your **spare** device. If you're using an AVD, use this guide.
7. Create a new folder named `WhatsApp` on your spare device.
8. Copy the zip file to your spare device and extract it inside the WhatsApp directory such that the `Internal Storage/WhatsApp/Backups` and `Internal Storage/WhatsApp/Databases` directories exist. We **won't** be needing your non-rooted device in the coming steps.
9. Install WhatsApp on your spare device, log in using your original phone number, and **restore the backup** when prompted to do so.
10. On your rooted device, open WhatsApp and go to `Settings` \> `Chats` \> `Chat backup`.
11. Tap the `BACK UP` button.
12. Install any root browser and copy the file `/data/data/com.whatsapp/files/key` to the `Internal Storage`. This is your WhatsApp decryption key.
13. Install this app, go to `Settings` inside the app and set the `Whats key file` to the WhatsApp decryption key you just copied.
14. Go back to the previous screen, select the `File type` to your preferred file type and hit `Export to storage`.
15. You'll find the exported chat files in `Internal Storage/BackupTextForWhatsApp`.

> To reactivate WhatsApp on your original, non-rooted device, just open WhatsApp on your original device and verify your number again. Your chats will still be there.
> 3 votes

---
Tags: backup, whatsapp-messenger, export
---


title: How to reflash Htc Desire 628 properly?

text:
# Question
Title: How to reflash Htc Desire 628 properly?
I tried to reflash my Htc Desire 628 using fastboot, but got following log:

```
PS D:\platform-tools> fastboot oem rebootRUU
OKAY [  0.042s]
Finished. Total time: 0.043s
PS D:\platform-tools> fastboot flash zip firm.zip
Invalid sparse file format at header magic
error: write_sparse_skip_chunk: don't care size 915918919 is not a multiple of the block size 4096
error: write_sparse_skip_chunk: don't care size 115920967 is not a multiple of the block size 4096
Sending sparse 'zip' 1/3 (781249 KB)               error: write_sparse_skip_chunk: don't care size 915918919 is not a multiple of the block size 4096
error: write_sparse_skip_chunk: don't care size 915918919 is not a multiple of the block size 4096
OKAY [ 36.254s]
Writing 'zip'                                      (bootloader) HOSD CL#788931
(bootloader) ERR lzipv2_init : Cannot open file /dev/fastboot_download_U
(bootloader) aJ4Bc
(bootloader) ERR [SD_UPDATE_ERR] update_fb_ZIP_buf: can not find ZIP hea
(bootloader) der
(bootloader) ERR [SD_UPDATE_ERR] sddownload failed: 22
(bootloader) ERR Update zip file failed.
(bootloader) ERR ZIP ERROR, exit read zip loop
(bootloader) ERR ZIP signature checking failed...
(bootloader) Update zip file OK
(bootloader) ERR ZIP ERROR CODE, 22
(bootloader) end@Done
FAILED (remote: '22: fail to flash via downloadzip')
fastboot: error: Command failed
PS D:\platform-tools> fastboot reboot
Rebooting                                          OKAY [  0.001s]
Finished. Total time: 0.008s

```

I took `2PVGIMG_V36BML_UHL_L51_DESIRE_SENSE70_HTC_Europe_1.16.401.1_Radio_0.1524V28P45.0504.0422_1_release_483251_signed_2_4_masud.zip`

firmware from there: http://forum.gsmdevelopers.com/htc-firmware-unified/11239-htc-desire-628-2pvgimg-v36bml-official-stock-roms-18-03-2017-updated.html

in download mode:

```
*** UNLOCKED ***
htc_v36bml_uhl PVT S-ON
LK-1.01.0000
RADIO-UNKNOWN
OpenDSP-UNKNOWN
OS-1.16.401.1
Aug  2 2016, 19:11:15(788931)

```

bootloader and OEM unlocked, usb debugging enabled, is there something else missing or it is a matter of firmware?

Update:

adb log:

```
PS D:\platform-tools> adb sideload firm.zip
Total xfer: 0.00x
PS D:\platform-tools>

```

in twrp:

```
Updating partition details...
...done
Full SELinux support is present.
MTP Enabled
Starting ADB sideload feature...
Installing zip file '/sideload/package.zip'
Invalid zip file format!

```

Update 2:

```
Updating partition details...
...done
Full SELinux support is present.
MTP Enabled
Installing zip file '/sdcard/firm.zip'
Checking for Digest file...
Skipping Digest check: no Digest file found
Zip file is corrupt!
Error installing zip file '/sdcard/firm.zip'
Updating partition details...
...done

```

Update 3:

```
handle_cota_install: install cwpkg to /ota/cwpg.zip
handle_cota_install: install cwprop to cota/cw.prop
Write host_mode error
handle_cota_install: Can't mount /sdcar, 1 times
handle_cota_install: Can't mount /sdcar, 2 times

```

# Answer
> 1 votes
HTC `update.zip` is encrypted and does not respect the standard file layout. META-INF is missing, content is:

```
info.bin
zip_0.zip
zip_1.zip
zip_2.zip
zip_3.zip
zip_4.zip
zip_5.zip
zip_6.zip

```

Therefore this file can only flashed from stock recovery.

---
Tags: rom-flashing, fastboot, htc-desire
---


# Question
Title: How to get the Stoock ROM from Huawei P30 lite New Edition (MAR-LX1B)?
I am trying to root my new Huawei P30 lite New Edition(MAR-LX1B). I found out that there is no official version of TWRP for Huawei P30 lite New Edition(MAR-LX1B). After a long research I found out that there is a way to root without TWRP. But, you would need the stock ROM of Huawei P30 lite New Edition(MAR-LX1B).

I have long searched how to get the stock ROM, but could not find anything. So I wanted to ask if anyone knows how to get the stock ROM of Huawei P30 lite New Edition (MAR-LX1B)?

# Answer
This site seems to have a link to the stock ROM. As with everything related to flashing and getting root access, do proper research as if things go wrong you might brick your phone. Also, note that I don't own your model, so can't ascertain if the file is legit or not.
> 0 votes

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


# Question
Title: 3x4 keypad only types numbers even when in the letter mode is shown
I hope anybody can help me out. Any tips would be very much appreciated!

I changed the keyboard input mode from qwerty to 3x4, as I can't manage the small buttons of qwerty. I realize the 3x4 has a letter mode, a number mode and a symbols mode. I can see the alphabet characters on-screen, but pressing them produces numbers.

*This is me typing 'hello' on the keypad, once with XT9 on and again with it off.*

To get 'h' I would tap the `ghi` button twice, but it yields '44' instead.

I checked there is a language selected for predictive text. I really want to get this working without installing a third-party keyboard, as I did that before and the nature of my device's low internal memory really makes it difficult.

Running Android 2.3.6, Cyanogenmod Revolution Light build

# Answer
Where you were enter web or app, what ever use this type of keyboard exclusively just to let you write only number code or phone number. If you will enter other app (writing box) and try to write using the keyboard 3x4 you will be able to write alphabetic characters.
> 0 votes

---
Tags: text-input
---


# Question
Title: LOST.DIR on my SD card contains 98 years old files
I was cleaning up my SD card and find LOST.DIR i knew what it was for but i did not understand why the hell there are 98 YEARS old files

Does someone have got an explain? I´m kinda scared

# Answer
> 0 votes
Take a sheet of paper and a pen.
Write down the following sentence:

*"My birthday is 01/01/1924"*

You can see there is nothing mysterious on that paper. just because it is written somewhere it doesn't mean it is true.

LOST.DIR is collection directory for restored garbage from corrupt files which is created when `fsck_msdos` is trying to repair your MicroSD Card.

imagine directory is like a folder and each file is a sheet of paper. access to folder is restricted (some room only your family has the key). each paper/file has three timestamps

* `mtime` \- *modify time* is time of birth/update of file (data) itself
* `ctime` \- *change time* is time of file permissions (day your mother gave you the key)
* `atime` \- *last access time* (so your father knows the exact date when your hands touched the sheet of paper or you read it's content with your eyes)

the timestamp `mtime` of files can be set to any value independently of "current" date/time. even the "current" time `hwclock` of your phone itself can be set to any date if you want so.

---

Why it is 98 years can be coincidence or set intentionally. The question can not be answered without knowing the origin of that files.

If it happens too often (every day) and there is again lot of data inside LOST.DIR even after deleting, that might indicate your MicroSD Card is near end of life and will become unreadable soon

---
Tags: sd-card
---


title: Install linphone on kyocera e4610

text:
# Question
Title: Install linphone on kyocera e4610
Is there a way to install LinPhone on this android based flip? The other option would be "signal" as an alternative voip idea... Let me know, David

# Answer
> 1 votes
Yes it's possible just sign thought app with a test signature int should install via adb.

Is thought still having issues just rename the package to com.android.cts.linphone and thou should be fine.

---
Tags: applications, voip
---


# Question
Title: Unable to install Google App on Motorola E6i
Ultimately trying to install Android Auto which I succeeded in doing via the apk. It told me I was missing the Google app, Google Maps and Voice rec. I installed 2 out of 3 of these but the Google app refuses to install even from APK. It seems Google Go is factory installed with no way to uninstall so I just disabled it but still no success. Running latest Android 10. Any ideas. Thanks in advance

# Answer
> 0 votes
Clear cache and data of the google play store, Google play services and Google chrome. Now reboot your phone download the app again from play store or chrome and install it, it worked for me

---
Tags: android-auto, android-go
---


# Question
Title: How can I use another phone's camera in place of my camera?
Ok, the problem is my camera's protective glass cover has wore down and now some dust has entered, causing the camera's output to become blurred. This is causing me a lot of issues currently, especially when I need to scan some QR code. For example, now I can't login to WhatsApp on my PC, cuz I need to scan their QR code with my phone.

What I want is, use another phone's camera instead of my phone's camera, just like the DroidCam functionality, where you use your phone's camera instead of your PC's camera. Are there any apps designed for this purpose?

# Answer
# Here's my suggestions:

* ***Firstly:*** If your phone has a front-facing camera, use that.
* ***Secondly:*** grab a can of air duster and spray the rear-facing camera out( if this clears it up, then find a crystal clear tape and cover it. Or get a case that covers it.)
* ***Lastly:*** I'm taking the assumption that you do have another phone. If so, just take the photo and transfer(via bluetooth, text, cloud, etc.) it.

Hope something helps.

T.Swain
> 0 votes

# Answer
For your question, I recommend using an external camera that is plugged into the USB port of your phone camera. But for other phone 'camera mirroring' applications I have not found it, but it can be made. Just like you said, it works like the DroidCam application. Or using other means such as USB Debugging, WiFi and Bluetooth connection, or using IP (such as Video Call).
> 0 votes

---
Tags: 6.0-marshmallow, camera
---


# Question
Title: Gmail personal email shows as “work” account
On the settings/accounts & backup/accounts page, myphone lists my gmail.com account as a “work account”.

I do not have a separate work profile.

The gmail work account is listed in addition the google account & email. It is alongside my actual corporate work account with the same swing badge icon.

I accepted mdm for the corporate account (an office 365 based account), which confers admin rights over the phone.

A separate exchange active sync is also present for the corporate account.

I should be able to remove the corporate account & this will remove the content (contacts, calendars, emails) but I am very nervous about any effort to remove the work gmail account.

* Could anyone confirm what effect this might have if I try to remove the “work” gmail?
* How can I tell which organisation actually owns this “work” gmail account? (All references I find are for workspace corporate gmail accounts & work profiles but this is a personal gmail.com so I haven’t found assistance there)

Eg, has a malicious app gained control of the account? (No current evidence of that, but who knows….)

I will discuss with the sysadmin responsible for my corporate account - could it just be a side effect of enabling o365 corporate stuff?

My section of company is being demerged/transferred very soon so I like to resolve before someone accidentally wipes my entire phone….

Thanks the reading

# Answer
Not sure if this helps. Possibly only to expand on your question as opposed to answer it directly.

I have 4 email addresses

I have a work profile with 1 gmail email and it is a parallel gmail app. In my personal gmail app (below) i see my 2 personal gmail emails (blacked out) and the only hint of the work one is the link in red.

Of interest to you is my fourth, Microsoft outlook email account with msn.com. For no logical reason under accounts one entry has it labeled as a work account.

*If* this is what you see then i believe you have nothing to fear, it is out of reach of my employer. This might not be what you see. I am very unsure why mine has a work label.

When you say

> my gmail.com account as a “work account"

Do you mean it is a personal one?
> 1 votes

---
Tags: samsung, security, google-account, accounts
---


# Question
Title: Add am/pm after the 12-hour clock time in the status bar
The status bar at the top of my Samsung S9+ does not show the am/pm after the time. The picture below was taken at 3:23 pm local time but you would not know that unless I told you. It could be 3:23 am. If I were using a 24-hour clock, I would expect that there not be an am/pm. However, my time setting is for 12-hour clock and could have an am/pm. How do I add the am/pm after the time?

Some may say that I can easily tell whether it is am or pm... just look outside. That may be true at 3:23 am or pm. However, at 8 pm during the summer time, the sunlight is about the same whether it is morning or evening. I would have to walk outside to find the sun and then know. During the winter time, 6 am and pm is completely dark. There is no sun to help me know.

Let's say I am very tired during the winter and start a nap at 4 pm. I wake up at 6. I do not know if I slept for 2 hours or 14 hours. Most likely I slept for 2 hours but it depends on how much sleep debt I have.

# Answer
> 1 votes
I disagree with the other answer that the objective is impossible on devices running a stock ROM, and that it cannot be achieved without root access.

For Samsung devices, Good Lock (available in Galaxy Store), an app from Samsung made available only in few countries, can do what you want. It runs on stock Galaxy devices and does not need root access. Here's what to do. Download Good Lock from the linked app store. Run *Quickstar* from the menu.

It is reasonably easy to follow it. If you are unable to follow it, then search Youtube for *Good Lock*. It should help out.

My experience with Sony devices I have ever had concludes that Sony devices don't support the feature you are after. I can't speak for other brands.

# Answer
> 1 votes
It is possible **only** if your device is rooted and cannot be achieved on stock devices. Changes to status bar components like the clock, date, battery icon, percentage, etc. require root or a custom ROM

On rooted devices, one way is to install Exposed/EdXposed framework and Gravitybox module (For Android 10, see How to install EdXposed on Android 10 without triggering safety net)

Note that Gravitybox does not play well with heavily modified UI, so it's better to check in device/Gravitybox threads on XDA

---
Tags: samsung, clock, samsung-galaxy-s-9
---


# Question
Title: How to create a shortcut to some file in another folder?
I have a PDF on the folder `ExtSD/Documents/`. I need to make a shortcut of this file to the folder `ExtSD/CurrentlyReading/`.

So simple on Windows... Apparently never asked on Android.

If it's of any use, my explorer is ES File Explorer V4.0.
XPosed available.

# Answer
> 4 votes
**"Shortcut"** is a purely Windows concept. It's an ordinary file (with `.lnk` extension) which contains a reference to some other file or folder. Windows Explorer and other programs know how to open the actual file by reading reference information from shortcut file, just like as they know how to open a `.pdf` or `.mp4` file. Other operating systems do not know what a `.lnk` file is, because phenomenon of mounting partitions and hence file paths are different across different OSes.

At filesystem level, Windows' NTFS supports **junction points**, **symbolic links** and **hard links** (). But **FAT** family (including `exFAT`) supports none ().

Android is based on Linux kernel. Linux's native filesystems (like `ext4`) support hard links and soft (symbolic) links. For non-native filesystems (like `FAT`) it depends on the filesystem driver. **`exfat`** driver (for `exFAT` filesystem) supports symlinks, but FUSE based **`exfat-fuse`** does not. So is the old **`vfat`** driver (for `FAT[N]` filesystems). New **`sdfat`** driver (for `FAT[N]`/`exFAT` filesystems) from Samsung does have optional symlink support for `FAT[N]` filesystems as well. After MS open-sourced `exFAT`, mainstream Linux driver is also based on `sdfat` ().

However that's not the end. External SD cards are usually formatted as `FAT32` or `exFAT`, so they may support symlinks depending on the driver being used. But Android does not expose actual filesystem to apps, instead it's emulated using **FUSE** or **`sdcardfs`**. Emulation is another twisted story (basically a permission-less filesystem to make sharing files among different apps/UIDs possible), see detail in Android's Storage Journey and What is /storage/emulated/0/?.

FUSE drivers may support symlinks (if the underlying filesystem does), but Android's FUSE implementation does not. So is the in-kernel `sdcardfs` implementation.

So in short, for the most cases, you cannot create symlinks on external SD cards as well as internal SD card. You will get ***"Operation not permitted"*** or ***"Function not implemented"*** or similar errors. On rooted devices a commonly used alternative is bind-mounts. See details in How can I make a symlink (or equivalent) inside /storage/emulated/0?

# Answer
> 1 votes
Shortcuts are Links in linux, and while in a terminal, or X its fairly easy - there's no easy way in the android UI.

youre better off just making a new folder, or getting a reader that supports a reading list.

# Answer
> 1 votes
i can do it manually using a freeware app caled MixPlorer but getting it done automatically. not easy to do. getting it done automatically or from inside Tasker is a lot more elusive

ideally a solution can be found to make a hardlink (not symbolic link) to a JPG file so that A.JPG and B.JPG will show the same thumbnails in both folder summer and folder vacation. deleting one of them doesn't delete the other one. either one will still work as long there is still one copy is left. still trying to find a way to create hardlink on Android, preferrably automatically or from inside Tasker

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


# Question
Title: Why does Sound Search Widget Keep Disappearing?
Ever since I got the phone and continuing to this day, if I reboot the phone the Google Sound Search widget disappears from my home screen. I reinstall it from the widgets menu, and it's all good--until next time the phone restarts, and then it's deja vu, gone again!

Sometimes I don't notice until I need the widget. That's usually when I'm driving and hear a song I like on the radio. I can't safely reinstall a widget while driving so this is not good.

Is there any logical reason for this? Any way to prevent it?

I'm using a Nokia 7.2 running Android 10. I've had the phone about six months. Currently the phone has build number 00WW\_2\_400\_SP02 based on the "about device" info in the settings menu.

Other widgets I use do not have this behavior.

# Answer
I was having the same problem. All you need to do is clear the data of Google play services and redownload it.
> 0 votes

---
Tags: google, app-widgets
---


# Question
Title: How can I add a video camera shortcut to the home screen?
My Pixel 3 (standard size--why no tag?) had both camera and video shortcuts on the home screen. I must've pocked-edited it, because the video camera one is gone. I can't figure out how to add it back. There's no dedicated video camera app.

Thanks much.

# Answer
> 0 votes
Long press on the default camera icon from the home screen and there should be popup menu with "Take a video"

Press and hold on "Take a video" from the popup menu to create a "Take a Video" shortcut which you can drag and place on your home screen.

---
Tags: home-screen-shortcuts, video-recording, android-11
---


# Question
Title: Wifi WPA Enterprise - In android 11 under 'Online Certificate Status', what is the difference between the various options?
Recently I noticed that my Note 10 would no longer associate with my wifi but all other phones would. I have since resolved the issue by rerolling my certificates but cannot get the options 'Require status for all certificates' or 'Require status for untrusted certificates' to work. 'Request Status' does work as well as 'Don't validate'

'Require status for all certificates' fails with on the freeradius end with -

```
(36) eap: Expiring EAP session with state 0xb8be52eabb005f50
(36) eap: Finished EAP session with state 0xb8be52eabb005f50
(36) eap: Previous EAP request found for state 0xb8be52eabb005f50, released from the list
(36) eap: Peer sent packet with method EAP TLS (13)
(36) eap: Calling submodule eap_tls to process data
(36) eap_tls: Continuing EAP-TLS
(36) eap_tls: [eaptls verify] = ok
(36) eap_tls: Done initial handshake
(36) eap_tls: <<< recv TLS 1.1  [length 0002]
(36) eap_tls: ERROR: TLS Alert read:fatal:internal error
(36) eap_tls: TLS_accept: Need to read more data: error
(36) eap_tls: ERROR: Failed in __FUNCTION__ (SSL_read): error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error
(36) eap_tls: TLS - In Handshake Phase
(36) eap_tls: TLS - Application data.
(36) eap_tls: ERROR: TLS failed during operation
(36) eap_tls: ERROR: [eaptls process] = fail
(36) eap: ERROR: Failed continuing EAP TLS (13) session.  EAP sub-module failed
(36) eap: Sending EAP Failure (code 4) ID 190 length 4

```

'Require status for untrusted' hangs with android eventually giving up with this on the freeradius end -

```
(5) eap_tls: [eaptls start] = request
(5) eap: Sending EAP Request (code 1) ID 243 length 6
(5) eap: EAP session adding &reply:State = 0xcff1ecc3cf02e118
(5)     [eap] = handled
(5)   } # authenticate = handled
(5) Using Post-Auth-Type Challenge
(5) Post-Auth-Type sub-section not found.  Ignoring.
(5) # Executing group from file /etc/raddb/sites-enabled/default
(5) Sent Access-Challenge Id 247 from 192.168.45.251:1812 to 192.168.45.37:33524 length 0
(5)   EAP-Message = 0x01f300060d20
(5)   Message-Authenticator = 0x00000000000000000000000000000000
(5)   State = 0xcff1ecc3cf02e118ed54fc1c4b664912
(5) Finished request
Waking up in 4.9 seconds.
(5) Cleaning up request packet ID 247 with timestamp +19
Ready to process requests

```

What do I need to implement or correct so these two options will work as well?

# Answer
> 3 votes
"Certificate status request" is the official TLS terminology for OCSP stapling.

The Android option is very likely a direct mapping to the corresponding wpa\_supplicant option (just like the "Domain" field is domain\_suffix\_match, and so on).

---
Tags: wi-fi
---


# Question
Title: Recover Draft Emails from Deleted Account
I have a Samsung Galaxy S5 phone and use the native, built-in email app for two corporate/ActiveSync accounts. Recently something went wrong with the settings of one of the accounts, which caused my contacts to disappear. Removing the account and adding it back fixed that issue. Since the account syncs to the server (Outlook 365), I didn't think there would be any loss taking this approach. I was wrong. Evidently draft emails are not synced, and I lost several very important ones. I am desperately trying to find a way to recover the contents of these draft emails that disappeared.

On the recommendation of a friend, I tried using a full-text search program (Astrogrep) to search the phone while connected to my computer, but the program wouldn't allow me to search the phone folders. I also tried using the Wondershare Dr. Fone DataRecovery program to recover messages, but this just keeps getting stuck at 99% during the scanning process (stayed there at least 30 minutes before I backed out) and doesn't bring any results.

I've read in a few places that these emails might be stored in an SQLite database, but I'm not sure how to browse, search, or access this.

I'm grasping at straws at this point, hoping there is some way to find the old draft emails in a file or database of the phone. I'm probably "moderate" when it comes to being tech savvy...so by now I'm looking for some good advice and step-by-step instructions from anyone who might know 1) if these drafts could still be in the phone and 2) how I can locate them to access the content.

Thanks to anyone who can help!

# Answer
The default Samsung mail app is com.samsung.android.email.provider.

Unfortunately backup is disabled for this app (the app's `AndroidManifest.xml` contains the entry `android:allowBackup="false"`). Because of this you can't access the app's private data directory `/data/data/com.samsung.android.email.provider` on a non-rooted device.

As the mail storage database is placed inside this app-private data directory you can't extract the files for manually searching the data base e.g. using a hex editor or a different data recovery software.

As your device is pretty old (it is from 2014 and should be running Android 6?) any thus have not received Android security updates for years there may be the possibility to temporary root the device using an exploit. Unfortunately I don't know a reliable and trustworthy rooting app that would work on your device. Note that using such rooting apps may be dangerous as you never know what the app is actually doing in background.
> 1 votes

---
Tags: data-recovery, samsung-galaxy-s-5, search, stock-email-app, sqlite
---


# Question
Title: Why I cannot delete contacts from my Samsung Phone
Recently I realized that I have a hard time adding contacts to my samsung phone.

So I want to delete contacts. I remove google account with contacts. Turns out the contacts are still there.

4400 of them

Even though contacts in my google account is only 2200.

So I want to delete all contacts in my android and then resync it with google.

I can't delete contacts at all.

Not even if I delete the whole thing. Not if I do it one by one.

This is the screenshot. The progress bar just stay there.

Do nothing like an idiot.

I am thinking or factory resetting but that's probably overkill.

I've heard many people have same problems.

What's the problem.

I have no idea what can possibly be wrong. Where are all those contacts stored anyway? SIM? Samsung account? Google account, which I have removed?

Where? Why I have a hard time to add or delete contacts?

# Answer
If a contact is stored on your SIM card can be determined easily: SIM card contacts only how two fields: one for the name, the other for the phone number. If a contact has more data it can not be a SIM card contact. You can also check that easily by removing the SIM card and rebooting the device.

Regular contacts are stored in one or more databases that belong to the device's contacts provider app `com.android.providers.contacts`. Therefore you find the contact data in the directory `/data/data/com.android.providers.contacts` (only accessible with root permissions).

You you have removed all online accounts your device can sync accounts to the account data is only available locally. For deleting every contact you may simply clear the app data of the contact provider `com.android.providers.contacts`. It is a system app therefore make sure to enable the "Show system apps" option in Android settings to see this app.
> 1 votes

---
Tags: samsung
---


# Question
Title: By what metric does Spotify decide whether a device is a phone or tablet?
Granted, the line between "tablets" and "phones" has been blurred for years, and there is no universally agreed upon distinction.

However, I am curious what metric Spotify uses to decide whether to call a device a phone or a tablet.

Most people would call my OnePlus 7 Pro a "phone", yet Spotify identifies it as a tablet:

What metric is used here? And why?

# Answer
> 1 votes
Found this answer in a Spotify Community post:

> **Free account on a tablet only allowing shuffle play**
>
> Solution
>
> * Spotify classes a tablet as anything 7 inches or greater. Anything under this will only have shuffle play in a free account.
> * Spotify needs to identify each tablet using its ID in the build.prop of your tablet. If you are using a lesser known tablet it may be that it has not been matched in the database. Please contact support using the contact form here and let them know your device model, Android version and display size stating that you only have access to shuffle play.

Source: Spotify Community - Spotify doesn't recognize device as tablet

---
Tags: spotify
---


# Question
Title: Where are saved Instagram videos stored on my device?
To be clear, these are videos I have taken on the device using Instagram, not other peoples videos. Its videos I have taken then pressed the "save" button before sharing/posting. I have several videos over time I want to download to my PC.

Seems to be the only way to even find them on the device is in the Instagram app where you go to post on story and it browses all the media on your device, if I scroll down a while I can see the videos, but it is not filtered or organized.

I have browsed the device storage IE

This PC\Pixel 3\Internal shared storage\Android\data\com.instagram.android

To only find a few files there. They have to be on the device because I can search them when posting to timeline/story, but cant seem to find them.

# Answer
> 1 votes
I have a Samsung.

I found my saved instagram stories under \[phone name\]\Movies\Instagram

# Answer
> 0 votes
Go into your gallery and find an album called *Instagram*. It should pop up. If not, what did you save, posts or stories?

---
Tags: instagram
---


# Question
Title: Changing country in Android play store is not working, how can I change it?
I have moved from Hong Kong to the UK. I am now physically in the UK connected to the UK network with a UK number and a UK SIM. However, I can't change my Play Store country to the UK.

Initially, in the Play Store app in Android, under country and profiles, there was Hong Kong and it suggested me to change to the UK, listing a few options how I can add a payment method, including adding credit / debit card, Three Pay, etc.

I tapped adding credit / debit card, and it showed a warning saying that I won't be able to use my current balance, and I won't be able to change again for 365 days. I tapped continue, the warning disappeared, and nothing happened.

I then used my computer to signed in Google Pay, created a UK profile, and added a UK debit card to it. Then under country and profiles, both Hong Kong and the UK appeared, with Hong Kong selected.

When I tapped the UK, the same warning appeared, and after I tapped continue, the warning disappeared and nothing happened.

I have two Android phones and they behave the same. I cannot delete my Hong Kong payment profile as I have a Developer account and an AdSense account tied to it. How can I change my Play Store country to the UK?

I have tried deleting storage and cache for my Play Store, and also tried removing the Google account and adding back in, but they didn't help. Initially on the first day I landed the UK a box did appear for me to enter my account details, but I hadn't got my debit card yet at that moment so I didn't continue.

# Answer
I used a 3rd phone with an older Android version, added my Google account into that phone, and changed using the exact same way in the Play Store.
> 0 votes

---
Tags: google-play-store, localization
---


# Question
Title: How to determine the boot order of auto-starting apps?
Some apps boot and run in the background when an Android phone boots. WeChat is one example. It starts automatically so that the user can receive messages in real time. My question is how to view and change the boot order of all auto-starting apps. Or else is it random?

The motivation for asking is that I installed Xposed and wanted to change some information of my phone. But unfortunately WeChat sometimes boots before Xposed and thus bypasses the Xposed hooks. I tried very hard to solve this, but to no avail. So any suggestions?

# Answer
> 0 votes
you can exec ps -A | grep com.tencent.mm, pid is start order but Wechat isnot impossible to boot up before Xposed

---
Tags: boot, xposed-framework
---


# Question
Title: Booting Fairphone Open OS automatically after sideloading from TWRP
After writing a bash code that automatically installs LineageOS on the Fair Phone 2 (FP2), I am also implementing the "reverse" OS installation, from LineageOS to Fairphone Open OS. From Fairphone Open OS to LineageOS works flawlessly, however the other way round does not yield the expected behaviour.

## Expected behaviour

I would expect the FP2 to successfully boot up into a new instance of Fairphone Open OS after executing:

```
sudo adb shell twrp sideload
sudo adb sideload 19.11.2-sibon-24df0be9-ota.zip
# terminate/end the sideloading modus
sudo adb sideload /dev/null
adb reboot

```

## Observed behaviour

That does not work, as the phone gets stuck in an infinite boot until the usb connection with the host is disconnected. In that case,

* the phone starts the new Fairphone Open OS installation for about half a second,
* then displays the "power off" message,
* and reboots into the `Android Recovery` menu whilst displaying:

```
**Android Recovery**
Fairphone/FP2/FP2
9/21.03.0-rel.2-sibon-3cb25d6c
userdebug/release-keys
Use volume up/down and power.

Can't load Android system. Your data may be corrupt. If you continue to get this message you may need to perform a factory data reset and erase all data stored on this device.

**Try Again**
**Factory data reset**

```

If the option **Try Again** is selected, the phone reboots, and then repeats itself coming back at this menu. However, if `Factory data reset` is selected, the factory data reset is executed successfully and the phone successfully boots into Fairphone Open OS.

## Error Mitigation Strategy I

Since the factory reset "solves the problem", I tried to automate this. However, I am experiencing some difficulties doing so. The main issue is that I do not have control over the phone anymore as soon as I reboot it after sideloading the Fairphone Open OS in TWRP. This is because throughout the booting (up to failure/reboot into Android Recovery mode), the adb is unauthorized:

```
List of devices attached
somedeviceid    unauthorized

```

So I tried to erase the data after sideloading in TWRP, but before rebooting, using:

```
adb shell twrp wipe data
adb shell twrp wipe cache
adb shell twrp wipe dalvik

```

However, that also leads to the observed behaviour as described above.

## Error Mitigation Strategy II

Since erasing the data from the TWRP system did not equal a factory reset in/of the Fairphone Open OS, I thought I might reboot into fastboot and do a factory reset from there, as is explained here, using the code:

```
adb reboot bootloader
fastboot erase userdata
fastboot erase cache
fastboot reboot

```

However, that soft-bricked the device. I think this soft-bricked it because, Fairphone Open OS replaces the TWRP recovery system with its own `Android Recovery` system, which corrupts the TWRP recovery system, and then the Fairphone Open OS tried to fail into its recovery mode, but that still was set to the TWRP because it was not removed due to the use of `fastboot` in between, yet the TWRP was corrupted. However, after some of trial and error and some improperly documented actions, I did manage to unbrick the TWRP somehow, which brings me back to trying to the observed behaviour.

## Error mitigation strategy III

I tried the reset functionality as described here, from twrp after sideloading, before rebooting:

```
adb shell
recovery --wipe_data

```

Which outputted:

```
I:Lun file '/sys/class/android_usb/android0/f_mass_storage/lun0/file' does not exist, USB storage mode disabled
TW_INCLUDE_CRYPTO := true
I:Found brightness file at '/sys/class/leds/lcd-backlight/brightness'
I:Got max brightness 255 from '/sys/class/leds/lcd-backlight/max_brightness'
I:TWFunc::Set_Brightness: Setting brightness control to 255
I:LANG: en
I:TW_NO_LEGACY_PROPS := true

```

However, it resulted in the same described observed behaviour, needing a manual factory reset before Fairphone Open OS would boot successfully.

## Question

What could I do to successfully sideload and boot into the Fairphone Open OS coming from a LineageOS system without the user having to perform a manually factory reset?

# Answer
> 1 votes
## Road to answer

Because I did not clearly understand the difference between selecting, `Wipe`\>`Advanced Wipe`\>`Data`\>`yes`, and `Wipe>format data>yes` I did not thoroughly/consistently test the latter option as I thought it was the same as the `Wipe`\>`Advanced Wipe`\>`Data`\>`yes` option.

Since I experimentally determined that a factory reset did fix the issue, I focused on automating that option in the given constraints. Doing so in this question, I was reminded of the `Wipe>format data>yes` option again and provided with the adb command in a comment. Since I did not yet find a factory reset method I tried the `sudo adb shell twrp format data` command manually, and it worked. Then I tried it again in the automated setting with: `format_data=$(adb shell twrp format data)` and it still worked. This answer has been made possible thanks to the comments of alecxs.

## Answer

I was able to automate the installation and booting of Fairphone Open OS using the following set of commands:

```
sudo adb shell twrp sideload
sudo adb sideload 19.11.2-sibon-24df0be9-ota.zip
sudo adb shell twrp format data
adb reboot

```

That made the phone successfully boot into the new instance of Fairphone Open OS.

## Note

The termination of the sideload modus was not needed anymore, hence the following lines were ommitted:

```
# terminate/end the sideloading modus
sudo adb sideload /dev/null

```

---
Tags: adb, twrp, factory-reset, fastboot, operating-system
---


# Question
Title: Download apps without Google account for work device
I need to set up an Android device for work. I've never done this before (for a work environment), so I was wondering: is there a way to use the Play Store (the new owner will probably need WhatsApp and other apps) without a Google account?

Should I make a new Google account for every device?

We don't use G Suite.

# Answer
> 1 votes
Check out the app Aurora. It's like the Play Store but better for your use case. I use it for Android 6 install on a tinker-board. You can even install apps as a guest (no account required).

# Answer
> 0 votes
To connect to the Play Store you need a Google account. But you do not need to have separate accounts for each and every device. You can connect to many devices from one account. In this case, all you have to do is log out from your account and tell the other user to connect with their account. Then the user will be able to use WhatsApp, etc.

# Answer
> 0 votes
You need to sign in to your Google account. Whether it is already signed in to another device or not, it doesn't matter.

But you can download applications from other websites. For example, I am providing you WhatsApp's download link below:

https://apkpure.com/whatsapp-messenger/com.whatsapp

The base URL is

https://apkpure.com/

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


# Question
Title: "Add widget" option not appearing on home screen
I would like to add a widget to my home screen. According to the official help page, I should touch and hold an empty space, and then tap "Widgets". However when I touch and hold an empty space on the home screen, there isn't any "Widgets" button, all I see is "Home settings" and "Wallpapers". However, I found a screenshot on internet where that button is clearly visible, the problem isn't that I'm looking in the wrong place.

| My phone | Screenshot of someone else's phone I found on internet |
| --- | --- |
|  |  |

So it seems like this "Widgets" buttons exists on other phones, but it's disabled on my phone for some reason. I tried googling for why this button could be disabled, but I couldn't find anything related to my problem.

I also tried clicking on "Home settings" to see if there was anything related to widgets in there, but there wasn't. I also tried opening the settings app and searching for "widgets" in the search bar, but it didn't give any results.

In case it matters, I'm using a Motorola Moto E6i.

Why is that "Widgets" button disabled and how do I enable it?

# Answer
> 5 votes
Your phone Motorola Moto E6i is running Android 10 Go.

On Android Go the default launcher has no widget support. This is the reason this option is missing.

I am not sure if different launcher apps also face this limitation. You can try to install a different launcher app that has built-in widgets. Widgets of other apps may still be impossible because of Android Go.

---
Tags: home-screen, app-widgets, android-go
---


# Question
Title: Get rid of setting bar above Gboard keyboard
>

How do I get rid of this bar above the Gboard keyboard?

I checked all of its settings, cannot seem to find it.

OnePlus One - Android 6.0.1

# Answer
> 7 votes
Disabling "Show suggestion strip" will also remove the setting bar. However, you won't be able to get any word suggestions though.

# Answer
> 1 votes
Older Gboard doesn't have the setting bar above the keyboard, so downgrading is one of the options.

Here's what Gboard v5.1.18 looks like.

# Answer
> 0 votes
You need to disable

* Number row
* Google search button
* Suggestion strip

# Answer
> -1 votes
You can make it disappear if you set the height of the keyboad to **small**.

---
Tags: 6.0-marshmallow, gboard
---


title: Writing Scripts For Android

text:
# Question
Title: Writing Scripts For Android
So I recently downloaded ScriptRunner for android and was wanting to learn how write a basic script to open an app click at a certain x y coordinate and perhaps take a screen capture at a given time. So if anybody could get me started in the right direction id very much appreciate it.

# Answer
Have a look at UI Automator https://developer.android.com/training/testing/ui-automator

If you want just something very simple, you could create a shell script with adb commands instead. E.g.:

Click on coordinate 500, 500:

```
adb shell input tap 500 500

```

Launch an app:

```
adb shell am start com.package.name

```

Take screenshot:

```
adb shell screencap -p /sdcard/screenshot.png

```
> 3 votes

---
Tags: applications
---


# Question
Title: Moto G Play (2021) is not detected on Windows PC
I'm trying to connect my Moto G Play (2021) to my PC with Windows XP SP3 and my computer doesn't know it's even there, where do I get Windows drivers for me to transfer what I want from phone to PC?

# Answer
Probably the device is connected in charge mode. Verify if the USB connection type is displayed in notifications, then open it and choose File transfer (MTP).
> 1 votes

---
Tags: usb, file-transfer, motorola-moto-g
---


# Question
Title: What is the approximate battery discharge rate of Google Pixel 3XL phones when turned off?
I am considering purchasing a new Google Pixel 3XL Android phone, primarily for photography. I don't believe those phones have been manufactured for 2-3 years, so I am concerned about the battery health. If the phone has been sitting in a box for 2 years with 0% charge, my understanding is that it's likely the battery will not function well.

For this reason, I'm wondering: What is the approximate battery discharge rate of Google Pixel 3XL Android phones when turned off?

(Also, if anyone happens to know how approximately much battery charge was present when the phones were placed in their box, that will be helpful.)

# Answer
> 1 votes
The answer starts from what you asked towards the end of your question.

1. Li-ion battery's are charged to around 40% while storing. That's about the charge level (give or take few % points) you'd see when you take a phone out of box for first time. Reason

> Lithium-ion must be stored in a charged state, ideally at 40 percent. This prevents the battery from dropping below 2.50V/cell, triggering sleep mode.

*Sleep mode* is a protective mechanism to prevent deep discharge and you can't charge the battery conventionally when it enters that mode.

2. But batteries do self discharge and the typical rate of Li-ion batteries is about 2% per month (Table 3). But this *does not* mean you get a fully discharged battery say after 2 years. That's because

> There is virtually no self-discharge below about 4.0V at 20°C (68°F); storing at 3.7V yields amazing longevity for most Li-ion systems

3. But yes, your battery would suffer a capacity loss as you can see in Table 2 of link quoted in above point. If you can get a new battery from OEM, which is *manufactured recently*, this risk can be mitigated and you can use it for long. But if your use case is only photography, I guess you need not change battery at all.

This is generally applicable to all Android devices and your specific model should not be an exception.

---
Tags: battery, charging, battery-life, hardware, google-pixel-3-xl
---


# Question
Title: Web Browser Screen Resolution / ViewPort width
I've recently upgraded from a OnePlus 5T to a Oneplus 9 Pro.

I have noticed that when viewing webpages, the viewport width on the 9 Pro is smaller than on the 5T, even though the 9 Pro has a higher screen resolution.

When I visit http://whatismyscreenresolution.net/ on the 5T, it shows 412x823, and on the 9 PRO it shows 384x858.

Is there anyway to 'fix' this so that the 9 Pro has a higher viewport width?

# Answer
Fixed this by changing the 'Display Size' setting in phone settings to 'Small'.
> 1 votes

---
Tags: chrome-for-android, browser, screen-resolution
---


# Question
Title: Applications are not installed with adb restore
I have non-rooted Android 7.0 device (NVIDIA Shield Tablet) which was previously backed up with

```
adb backup -apk -shared -all -nosystem -f mybackup.ab

```

But restoring it with

```
adb restore mybackup.ab

```

results in that `/Android/data`, etc are restored, but the applications are not installed from apk files, no errors.

I've had to extract apk files from mybackup.ab and install them manually in batch with `adb install <...>.apk`. After that everything was fine.

I'm quite sure that I've previously had similar problem with 6.0. and Helium/Carbon before but thought that it was specific to backup method I've chosen.

What is the problem with `adb restore`? Is it because the device is non-rooted? Why does `adb install` work as expected then?

# Answer
I've adapted niels' script a little to fix some issues with it:

```
#!/bin/bash

set -e

if [ $# -ne 1 ]; then
  echo "Usage: $0 <package-name>"
  exit 1
fi

echo -n "Enter password: "
read -s password
echo

java -jar abe.jar unpack $1 $1.tar "$password"
tar -xf $1.tar --wildcards '*/base.apk'
rm $1.tar
for apk in apps/**/a/base.apk; do
  adb install "$apk" || true
done

adb restore $1

echo "Ready"

```

Just download the latest `abe.jar` from https://github.com/nelenkov/android-backup-extractor/releases and run the script with your backup file as an argument. The script requires `java` to be installed.
> 5 votes

# Answer
I solved it with the following script

```
#!/bin/bash
killall adb > /dev/null 2>&1
set -e

if [ $# -ne 1 ]; then
  echo "Usage: $0 <package-name-without-ab>"
  exit 1
fi

export PATH=/opt/jdk1.8.0_152_jce/jre/bin:$PATH
ab=$1.ab
java -jar /opt/android-backup-extractor-20160710-bin/abe.jar unpack $ab $ab.tar apw; tar -xf $ab.tar --wildcards '*.apk' --strip-components=3
mv base.apk $ab.apk
rm $ab.tar
adb install $ab.apk

adb restore $ab

echo "Ready"

```

You need furthermore the android-backup-extractor. How ever in my experience adb backup is still not really safe. First of all some apps can set a flag, so they won't be backup. And the restore works only sometimes and not sure, for example if you change the device. It's a shame that in 2018 only Titanium Backup make good job, if you have a rooted phone.
> 4 votes

# Answer
*Command `adb restore` are not install .apk back. Actually, this command is only write back system and data files.* -Android dev site

If you want automate apps installation process:

1. Add all extracted .apk to one folder
2. Type `for %f in (C:\_apk folder location_\*.apk) do adb install "%f"` NOTE: If you have .apk files which have "spaces" in their names adb has **not recognize spaces** rewrite it with _ or whatever else.
> 2 votes

---
Tags: applications, adb, installation, restore, apk
---


title: Google contacts stopped syncing

text:
# Question
Title: Google contacts stopped syncing
I've had my HTC Evo since it came out a year ago. My Google contacts synced flawlessly numerous times during this period.

I rooted my phone on 5/23 with unrevoked, and everything still seemed to be fine. I only add this for the small chance that rooting is involved. I have not applied the gingerbread update, and I haven't done a system update since the last OTA forever ago.

According to the accounts and sync screen, the last time my contacts synced was on 6/7. Since this was a week ago, I can't really think of anything I could've done that would break my contact syncing. When I go and try to resync, it acts like it's trying, and it doesn't change the sync date. Also, data isn't going between my phone and my Gmail account.

Gmail and calendar syncing seem to work fine. I haven't noticed any other issues. Any clue as to what could cause this and how to fix it?

# Answer
So, as the night progressed, and I tried various fixes such as what Nathan suggested and restoring from Titanium backups and such, my problems simply got worse.

I ended up simply backing up my application data and restoring from a nandroid backup. That seems to have fixed it. It may have been a virus, or I might've corrupted something somehow. After I restored the backup, the contacts are syncing just fine.
> 2 votes

# Answer
1. Go to `Settings > Accounts and Sync`
2. Open up your GMail account there
3. Deselect the Contacts option
4. Select it again and quit

This will force Android to sync it **:)**
> 1 votes

# Answer
I had a similar problem which was caused by having a YouTube account registered on my phone as a Google account. Until this point, I only had a single Google account and it all worked fine, but after adding the YouTube account it seemed to stop a lot of things from working correctly on my normal Google account.

This was resolved by removing the YouTube account from my Accounts And Sync settings.
> 0 votes

# Answer
Also check you have enough free space in your mobile phone. I had similar Problem, and cleared out lot of junk files - social media downloads in whatsapp messaging, facebook and other apps. Then Google accounts - contacts, keepnotes and other apps started syncing smoothly.
> 0 votes

---
Tags: contacts, sync
---


title: Run a Tasker task via ADB

text:
# Question
Title: Run a Tasker task via ADB
I'm looking for a way to run a Tasker task named **test** via ADB command. I found this thread *Running a tasker task via SSHDroid (or adb shell)* and tried but did not succeed. All I got was

```
adb shell am broadcast -a net.dinglisch.android.tasker.ACTION_TASK -es task_name test
Broadcasting: Intent { act=net.dinglisch.android.tasker.ACTION_TASK pkg=test (has extras) }
Broadcast completed: result=0

```

So how can I run a Tasker task via ADB command?

# Answer
I use MQTT to handle firing tasks from the command line. This doesn't require root, or to be connected by USB for ADB.

Place this batch file in your path:

```
cat post.cmd
@echo off
set _tail=%*
call set _tail=%%_tail:*%1 =%%
mosquitto_pub -h %ip% -p %port% -i "My_pc" -t '%1' -m '%_tail%'
echo Topic: %1
echo Msg: %_tail%

```

Then make a profile using the "Mqtt client" app, listening to S10/# (my phone is an S10, set any topic name you'd prefer)

```
Profile: S10/# (431)
Cooldown: 1
Restore: no
Event: Message Arrived [ Configuration:Main - (Your mqtt broker IP here) : # : msg : topic : : ]

```

Have it target this task. (I couldn't share mine without giving you my MQtt IP address)

https://taskernet.com/shares/?user=AS35m8mBhJAezDTr0Lio7dopdLiBaKgozAOxoCXM7Mh8sS5hSvSst1kEMf5%2FJeJveB%2BsvU8%3D&id=Task%3AMqtt+Listener

Now from the command line,

```
post s10 taskname1=:=par1 etc
topic : s10
msg: taskname1=:=par1 etc

```
> 1 votes

---
Tags: adb, tasker
---


# Question
Title: Can I manually download my wifi settings to my Android device from my Google account?
I just purchased my fourth ever Android device - An HSPA+ Samsung Galaxy Nexus phone.

When I purchased my second and third devices (Samsung Galaxy Tab 10.1 and an Asus Transformer Pad TF300T), I found that after I logged into my Google account during my device setup, my devices downloaded all my known wifi hotspots and the network passwords to them, and could immediately connect to any private wifi network that had been saved on my first Android device (An HTC Nexus One).

However, for some reason, this didn't happen on my Galaxy Nexus when I set it up. In fact, when I set up my Transformer Pad, not only did it download my wifi settings, but it also automatically downloaded the apps I had installed on my other devices. My new Galaxy Nexus didn't do that either. I know I checked the box to 'restore backup from Google account' when I set up the device. I did have some trouble logging in at first, so maybe that's the reason?

I'd really like to get my wifi network settings downloaded to this device. I have dozens of hotspots from friend's houses, client's offices, etc, that I don't want to have to re-enter the information for. **Is there some way to manually restore this information to my Galaxy Nexus since it wasn't restored during my initial setup?** I tried removing my Google account from the device and re-adding it, but that didn't work. Thanks in advance for any suggestions.

# Answer
I found this page on Google's support site which states the following about restoring your phone's settings during the initial setup:

> "Important: If you want to restore your settings, you must do that now during setup. You can’t restore data after setup is complete."

Based on this, I'm guessing there's no way to restore my account data at this point, short of doing a factory reset on the phone and starting over (undesirable at this point). I'd love to be wrong though.
> 11 votes

# Answer
It is possible to recover Android settings through bmgr.

List your sets using `bmgr list sets`

Example output:

```
36df6csd30288e33 : phone
3c559c36e65a9b49 : tablet

```

Now you can restore `com.android.providers.settings` with the set you want:

`adb shell bmgr restore 36636c7730288e33 com.android.providers.settings`
> 2 votes

# Answer
If your previous device was setup to backup your personal data such as WiFi passwords, Browser bookmarks, User dictionary, a list of installed Market applications and other customized settings, all is backed up to Google's servers.

The Automatic restore feature must be Enabled to allow your phone to contact Google's servers an retrieve the previous backup data.

So, **carefully**, access the settings panel by:

1. Stating at your home screen, select Apps;
2. Select Settings;
3. Go to PERSONAL section, select Backup & reset;
4. From the BACKUP & RESTORE section configure what you need:

Ensure the appropriate account is selected from the Backup account field before attempting any configuration settings.

**Some important considerations:**

* A setting is Enabled when a check mark is present.
    * If data back up is disabled, existing backups are deleted from Google's servers.

---

## Useful and related reading:
> 0 votes

---
Tags: wi-fi, backup, restore, google-backup
---


title: USB not working in Lineage OS 15

text:
# Question
Title: USB not working in Lineage OS 15
Nexus 7 2012 (grouper). Was running stock ROM (4.4.4), could connect via USB (e.g., as MTP for file transfer) and use `adb`).

Installed Lineage OS 15 (8/O). (Couldn't install any GApps at all because the `system` partition is too small.) `fastboot` works as it should when booted into the bootloader. `abd` works when it's booted into recover.

However, `adb` does not work when the tablet is started up and running LineageOS. Nor does it appear as a disc drive. In fact it doesn't even appear in Device Manager. Windows doesn't make its noise when the device is plugged in (it *does* make its noise when connecting it in the bootloader and in recovery).

Developer options enabled:

* *Android debugging* is on,
* *Root access* is *ADB only*,
* *Select USB Configuration* is *MTP*.

It *has* to be something to do with LineageOS. Any ideas?

# Answer
> 2 votes
I have same problem when I install Lineage 14 try tablet on another fresh windows pc that this tablet never connected before if tablet worked in MTP. Then try this steps:

1. Go to Windows Device Manager
2. Check `View hidden devices` from view
3. Find installed drivers from tablet and uninstall them all.

This is demonstration gif:

# Answer
> -1 votes
Just installed Lineage 14 (N/7) and it's working normally, so it must be a problem with LineageOS 15 (`lineage-15.1-20200522-UNOFFICIAL-grouper.zip` to be precise).

---
Tags: adb
---


# Question
Title: What does aspect ratio has to do with the megapixels?
See this pic, and why 4:3 AR has more MP than 16:9? This is my Moto G4 Plus's default camera app.

# Answer
> 6 votes
The aspect ratio has nothing to do with megapixels. Part of a 4:3 image are removed to get a 16:9 resolution, that is why a 16:9 image has less pixels.

The purple rectangle is your 4:3 picture, and the green rectangle is the 16:9 picture cropped out of 4:3 by the software. 2 megapixels are just removed from an original photo.

# Answer
> 4 votes
Glossary of Digital Photography Terms :

> **Megapixel:** A megapixel contains 1,000,000 pixels and is the unit of measure used to describe the size of the sensor in a digital camera.
>
> **Aspect Ratio:** Aspect ratio refers to the shape, or format, of the image produced by a camera. The ratio is derived by dividing the width and height of the image

You can think of *aspect ratio* as *size* of picture and *Megapixel* count ( in relation to aspect ratio) as the *area* or *number of pixels* contained in that aspect ratio

Camera sensors in Android phones are *rectangular* . Android camera sensors are usually at default 4:3 ratio and in this they capture maximum Megapixels.

16:9 is **not** bigger than 4:3 area wise and this setting facilitates capturing photos which is more aesthetic in certain situations. 16:9 is actually a *smaller* area than 4:3 hence results in *lesser* pixels ( it is cropped by software). The sensor resolution is the same in both cases, it is just that 16:9 has lesser pixels due to cropping

Picture Source

That explains the difference in Megapixel count

Aside, the first two settings (with higher Megapixel count) are for the *rear* camera and the other two for *front* camera. The Megapixel count is lesser for front camera since it's resolution of lower ( invariably the case with mobile phones)

**When to choose 4:3 or 16:9?**

4:3 ratio is better for quality and prints, whereas 16:9 is more suited for landscape / wide screen viewing on phone or casting to a TV. A 4:3 aspect ratio means that for every 4 inches of width in an image, you will have 3 inches of height. In mathematical terms, that comes out to the screen being **33% wider** than it is high. A 16:9 aspect ratio means that for every 16 inches of width in an image, you will have 9 inches of height. Unlike the 4:3 aspect ratio, a 16:9 aspect ratio is **78% wider** than high - Source

# Answer
> 1 votes
It all depends on the aspect ratio of the photographic sensor included with the device. Sensors come in all sorts of sizes and aspect ratios. Common aspect ratios include 16:9, 4:3, and 1:1.

If the sensor's aspect ratio is 4:3, then 16:9 images will not use the entire sensor. Similarly, if a sensor's aspect ratio is 16:9, then 4:3 images will not use the entire sensor. The other current answers, although both partially incorrect, include excellent images demonstrating why this is the case for 4:3 sensors, and you can create a mental image of why this is also true for 16:9 sensors.

Your device apparently has a 4:3 aspect ratio sensor. If you prefer higher-resolution photographs with a 16:9 aspect ratio, you will have to buy a different device, preferably one with a 16:9 aspect ratio sensor.

Generally speaking, something close to 4:3 aspect ratio is preferred for prints, but something close to 16:9 aspect ratio is preferred for viewing on smartphones, tablets, and modern widescreen televisions. This is because, historically, printing was more commonly performed at aspect ratios *closer to* square (with 3:2 being very common), whereas digital screens have gotten much squatter over the years due to manufacturers making them closer to the aspect ratio found in movie theatres over the last half-century (much to the dismay of those of us who prefer 4:3 aspect ratio for computer screens!).

---
Tags: camera, photos
---


title: Hex editing app data (e.g. game data)

text:
# Question
Title: Hex editing app data (e.g. game data)
My question is I am trying to do some hex editing for an Android game that I play (increasing the amount of coins/cash in my inventory), but I'm not sure exactly which file to open up.

I will attach a screenshot of what I get when I open a file with my hex editor (the program I use is Hex Editor Free).

# Answer
> 2 votes
Apps on Android are running inside a "sandbox" where they can do what they want but not affect other apps.

This means any app including your hex editor app is unable to modify other apps. Also the files you see in the path `/storage/emulated/0` (also known as `/sdcard`) are only the "public" files of the app. The bigger part is usually stored in the app-private directory where only the app itself has access to (on a non-rooted device).

If the game developer was not complete idiot editing any file you can see in your hex editor has no effect on your in-game state.

---
Tags: editing
---


title: Google Drive stuck uploading files

text:
# Question
Title: Google Drive stuck uploading files
Three days ago I was uploading 6 files to a Google Drive shared folder. It's not the first time I do that, but surely this time was different because not only the files weren't uploaded but also since then I have this notification

To fix it, I tried to

1. Click cancel.
2. Restart the phone.
3. Force stop the app in settings.

yet none of these options worked.

# Answer
> 0 votes
In order to solve it, I've uninstalled the app and installed it back again. That solved the problem

---
Tags: samsung, google-drive
---


# Question
Title: Google Photos can't free space when pictures are on SD card
I'm using Google Photos and I love the automatic backup and free-space feature. Lately (from the day I got a SD card into the phone, which could be meaningful) I see google photos is backing them up but NOT freing space automatically.

I try to free space from the menu, it says "24 photos to be deleted" (but I got thousands of photos) and then it says an error occurred while deleting those 24.

You can find the screenshots here: https://photos.google.com/share/AF1QipNEwrDRm6gO0D0LrW9YgnI1RA\_Ddz-3NvbuZzxTAPy2hLolpUd4MC\_x-YwQEyua4A?key=Nlo4WkI0WmxhdWNhUFlEVXE5TGZ1cU9UVXVfZ2ZB

A friend suggested that probably since I got the SD the phone is saving the photos in the external memory. From there, Google Photos can backup them but can't delete them (don't know why). I went into settings -\> memory -\> default memory, changed to "External memory" and rebooted the phone. Still Google Photos can't delete them, I get the same "24 photos to be deleted"/"can't delete them" message.

Did this ever happen to you? How did you manage to solve the issue?

Thank you Marco

# Answer
The SD card on Android is by default mounted in read-only mode: Google Photos can copy photos from the SD card to the server but it cannot edit, create or delete files on the SD card.

To allow Google Photos access read-write to the SD card, follow these steps:

1. Open Google Photos \> Side navigation drawer \> Device folders \> Open a folder that is located on the SD card
2. Try deleting an image in that folder by long pressing on it and then pressing the bin icon in the toolbar.
3. A prompt titled "Give Google Photos access to your SD card?" - allow it.
4. A prompt with a message saying "Grant Photos access to your data, including photos and videos, on ?" - allow it.
5. The photo will be deleted.

This method was tested on my Samsung Galaxy Tab A.
> 2 votes

# Answer
> Did this ever happen to you? How did you manage to solve the issue?

I am having the same issue on my Samsung Galaxy S7.

The Google Photos app won't "free up space" with photos on the SD card. You can manually remove photos from the SD card within the Google Photos app but make sure you pick the "Delete from device" option on the special menu (not the trash can) and they will still be removed from you device but still be backed up in the cloud.

If you have concerns, someone wrote test case here: Google Photos Help: Free up space on SD card

What I chose to do was to connect my phone to my Windows PC and delete all of the videos older than 6 months, since videos were taking the most space. It was easier for me to do this than to select in the phone app.

I do wish the Google would get the "free up space" feature working in *their* app on *their* OS, and until then they should clearly explain the limitation in the app.
> 1 votes

# Answer
Click on storage in your phone then click on SD card. On the next screen click on the 3 dots on the side and it will take you to another screen that says "format" and "format system." Click on format and it will tell you that you need to format before you can use the SD card. After you click on it and wait a couple seconds you'll be able to use it. Dumb system that isn't explained but I figured this out just clicking around.
> 0 votes

---
Tags: external-sd, google-photos
---


# Question
Title: Ultra slow speed while transfer files between PC and Samsung S5
I just got my new Samsung Galaxy S5, original ROM with version 4.4.2. It uses a new Toshiba 64GB speed U3 micro SD card.

When I transfer my WhatsApp folder from PC to GS5, it took me more than 24 hours!!!

The WhatsApp folder has about 3GB in size, and thousands of received/sent images.

At the first time, I transfer them from PC to the (fast) SD card in the phone. It really took me more than 24 hours. At the second time, I tried transfer them from PC to the phone internal memory. It seems to be a little bit faster. I did not wait it to complete. But I assume it will take 20+ hours also.

When I use the file manager in GS5 to copy the entire 3GB folder from SD card to phone internal, it takes only 5 minutes or less. (It's a U3 card afterall)

I did a small test. I transfer only the database files from PC to the SD card (in the phone). There are 7 files, in total 1 GB in size. It takes only 1 minute.

So my guess is, **the transfer speed will be ultra slow when it contains many small files**.

* The same issue happens in different fast computers.
* I used the original USB cable, and tried on other short and average quality cables.
* I prefer not to pull my SD card out every time. Even if i do, transfer from PC to phone also have the ultra slow speed issue.
* I know there are threads suggesting to transfer file by other methods. But my concern is: **Why is it so unreasonable slow?** And I prefer using the USB method.

Is my phone a defect?

# Answer
Wikipedia is our friend, again. :)

http://en.wikipedia.org/wiki/Media\_Transfer\_Protocol#Drawbacks

Quote:

MTP allows **no parallelism**, unlike USB mass storage or NAS. MTP has been built to **only allow a single operation at a time** (for example, read, write or delete operation), while no other operation can be executed until the previous operation is complete.

By design, MTP devices (like PTP devices) are not treated as a traditional removable drive. The actual file system is implemented by the device, and not by the computer's operating system. This also means that **file system recovery tools on the computer will be of no use**. In addition, most other programs on the computer will not recognise the MTP device, limiting the user to software from the device manufacturer or other MTP specific programs.

**When opening a file, the user must wait until the file is copied to the host computer/device before it can be viewed**; the file remains on the host computer's storage after viewing and after removal of the device.

Devices that are limited to MTP transfers do not allow or support instant access or multitasking.

The MTP and PTP standards do not support direct modification of objects. **Modified objects must be copied out of the device and reuploaded in their entirety, which can take a long time for large objects.** Google's MTP implementation in Android includes extensions to deal with this limitation; however, these extensions must be supported by the host operating system, and are not available by default. **This blocks the direct creation of files on the device from the host computer; files must be first created on the host computer and then copied over.**

...

Most MTP-compatible devices **are not assigned drive letters**; instead, they appear as "devices" in applications such as Windows Explorer.
> 10 votes

# Answer
I found out the solution for that. first creat a zip file of the images or whatever you want to copy then paste that zip file to your phone and then unzip the files to the respective folders. Use xplore file manager for that which is best file manager which i m using since last more than 10 years
> 1 votes

# Answer
I found someone with the same issue as the OP, so don't worry your phone is not defective.

I would like to first add a few thoughts in response to the answer above. While it may be correct that MTP is a slow protocol, this speed reduction is exclusive to the WhatsApp folder transfer only. Any other folder containing equal size transfers in minutes. So there has to be something in the nature of the WhatsApp folder itself, or its structure/specific files that are causing the slowdown.

This brings me to my solution to the problem, I personally use the SuperBeam app both on the phone and PC. You do need the pro key for $1, this reduces the 24+ hour transfer to like an hour, so this helps greatly. I would like to point out that this takes much longer than any other folder of the same size.
> 0 votes

# Answer
Using "MTP alternative USB Drive " app on your android phone along Dolphin file manager on Linux distro you can improve the file transfer rate.

Steps: On phone:

1. Open MTP alternative USB Drive app on android phone and start USB tethering and select OS ( Ubuntu )

On PC:

2. Open dolphin file manager and go to "Network"
3. Click on "Add network folder" 4.Select the type of network folder "webdav" 5.Enter the network information (Name - any name you prefer for that folder)
4. leave username blank
5. Enter the IP (192.168.42.129) , that shown in your MTP android app.
6. configure port as 8081.
7. Give folder name "sdcard" for internal accessing memory or "storage" for accessing external memory card.
8. Save and connect.

Now you will be able to access your phones memory with ease.

Note : you can watch my video at YouTube if you have difficulty following the aforementioned instructions.
> 0 votes

---
Tags: 4.4-kitkat, usb, file-transfer, samsung-galaxy-s-5, mtp
---


# Question
Title: Sign in to Chromium on Android not working
I am trying to sign in to Chromium for Android from my Android phone and it is not working. I am getting the following error message.

> The account already exists on your device.

I tried to delete the Google account on my phone and tried to set it up again. Still, it is not working.

Is it not possible to sync Chromium on the PC and Android?

# Answer
Google has cut off support for any third-party Android browsers using the Chrome Sync API.

> A bug report was filed on January 3 on the Chromium bug tracker, explaining that attempting to sign-in with Chromium builds on Android resulted in an 'INVALID\_SCOPE' error. After many reported the same issue, the likely cause was found - a recent change to how scoped refresh tokens were handled. This meant that only official Chrome builds could request tokens, and it only affects Android (Chromium builds on the desktop continue to work normally).
>
> If you're using any browser on Android that syncs with Chrome, you have probably already noticed it stopped working - and cannot be fixed.

Source
> 1 votes

# Answer
```
The account already exists on your device

```

has to do with Chromium Contacts permissions in Android phone. In Settings/Apps/Chromium/ Permissions if you give Contacts permissions and clear cache and data you will see a dropdown with the gmail accounts that are on the phone. Then you can proceed with login and see if sync works.
> 0 votes

---
Tags: sync, chromium
---


# Question
Title: Why does Kingo Root app need network access?
I installed the Kingo Root (aka KingoRoot) APK on my Android device and launched the app. My phone was on airplane mode and I saw the screen

> Kingo ROOT
>
> Please make sure your network connection is stable and try again.

What exactly beyond the app itself does the app need to root the device that requires network access?

# Answer
> 19 votes
Not sure entirely, but this may be the reason why

> KingoRoot was banned from the XDA Developers forum along with vRoot in November 2013 due to concerns with the information collected by the app during the rooting process.
>
> https://en.wikipedia.org/wiki/Kingo\_Root

> Ragnar (Retired Forum Moderator) Nov 6, 2013 at 3:02 PM
>
> Be aware that as of this moment XDA has deemed the Kingo root method and Vroot method are not allowed on XDA. There are concerns with the information which is collected during the root method by the exploit. It is not about a continuous malware which may affect your device but about important information shared about your device, serial numbers etc during the root process which could be huge securities issues.
>
> You have all been warned
>
> Thread closed. If you have any questions regarding this please contact myself or any other moderator via PM
>
> https://forum.xda-developers.com/t/kingoapp.2503591/page-3

Another suggestion is server access is needed to cross reference your device to a list of possible exploits that can be employed on it...

> Kingo root download exploit from their server
>
> https://www.quora.com/What-things-exactly-does-Kingo-Root-do-for-rooting

And this guy highlights a bunch of app permissions, bolding the privacy oriented ones for offloading user data to a remote server

> it has its own service running in background which maybe pushing your data to their servers
>
> https://www.quora.com/Is-KingRoot-the-one-tap-Chinese-rooting-app-legit-and-safe/answer/Faiyyaz-Shaikh

---
Tags: rooting
---


# Question
Title: Wifi not working / hardware, how to connect to the internet
i have an Asus K011 Tablet, which i want to connect to the internet. Hovewer wifi is damaged on the motherboard as well as bluetooth so the only possibillity is ot connect it via USB cable to my laptop and from laptop share the internet to the tablet. How can i do it , which program i should use? Thanks for the answers

# Answer
Use reverse usb thethering through android VPN api.

This project can do that: https://github.com/Genymobile/gnirehtet . No root required.

It is creating a tun0 network interface. ipv4 with tcp/udp will work.
> 2 votes

# Answer
On Windows 10 x64 — not sure if any other hardware/firmware/etc limitations might apply — you can navigate to `Ethernet Properties` dialogue window...

...for wired, and `Mobile hotspot` system settings window...

...

for wireless internet sharing. Though I've never utilized these features myself and can't speak for how well they work, note that (at least for me) they came standard with my build and I did not need to download or utilize any 3rd party software or utility. Hope that helps!
> -1 votes

---
Tags: reverse-tether
---


# Question
Title: What version of Cyanogenmod did the `Developer Option->Root access` become available?
I see many references online that describe this `Root access` option in the `Developer options` for cyanogenmod images like this screenshot from a CyanogenMod13 device

https://www.androidbeat.com/2016/03/how-to-enable-root-access-cyanogenmod-cm/

However I'm tinkering with this older device which may have predated that feature.

```
Cyanogen OS version
12.1-YOG4PAS2QL

Android version
5.1.1

```

A related question that could help find the answer is to figure out what would be the appropriate repo in the cyanogen github (https://github.com/CyanogenMod ) to search for the UI that renders this set of options to check when it was first introduced? Basically which repo does the Android GUI go by?

# Answer
> 3 votes
Found a direct UI hit at least with some resource strings in the last/mainline branch that checks out from the repo by default which is `cm-14.1`. It started by finding a repository that happened to have the words *settings* and *app* in its name was a very strong clue to start with. In the screenshot above you can see that the UI reads `Root access` and that is what we find verbatim in this resource file.

```
    <!-- Setting checkbox title for root access -->
    <string name="root_access">Root access</string>
    <string name="root_access_warning_title">Allow root access?</string>
    <string name="root_access_warning_message">Allowing apps to request root access is very dangerous and could compromise the security of your system!</string>
    <string name="root_access_none">Disabled</string>
    <string name="root_access_apps">Apps only</string>
    <string name="root_access_adb">ADB only</string>
    <string name="root_access_all">Apps and ADB</string>

```

https://github.com/CyanogenMod/android\_packages\_apps\_Settings/blob/c585070fc70c88643ca6f568f8c4cab6d21144a8/res/values/cm\_strings.xml#L31-L38

Running a blame on that block of text lead to this diff

https://github.com/CyanogenMod/android\_packages\_apps\_Settings/commit/9c512949b5cf487703a75abc7a56d0d98df59e32

Going back to the branch that is installed on the device, or at least the closest stable matching variant, I do in fact find that root access resource string being present. I'm hoping there's something interfering that I can twiddle to bring that option to the forefront again because it's not showing up.

https://github.com/CyanogenMod/android\_packages\_apps\_Settings/blob/55eb0ad11d3359dc17a846a789627eddb5a1322e/res/values/cm\_strings.xml#L31-L38

Doing a blame on that version leads to this commit...

>

Snooping around further in that diff, it looks like I may be out of luck, or apparently at the time it was decided that user builds do not get this feature, but engineering builds do.

```
    private boolean removeRootOptionsIfRequired() {
        // user builds don't get root, and eng always gets root

```

https://github.com/CyanogenMod/android\_packages\_apps\_Settings/commit/c39be56248000ac1c88909874b28a80f5370fb2a#diff-946ea451d6a9ad72c2548d8212f10a0aa8ccff901c6cbedd874673404c0ccbbaR422

The logic is all predicated on the build of the OS

https://developer.android.com/reference/android/os/Build#IS\_DEBUGGABLE https://developer.android.com/reference/android/os/Build#TYPE

Might be completely out of luck here because that is not something that can be changed at runtime as far as I can tell. This is a compile-time/build-time baked in attribute :-(

---
Tags: cyanogenmod
---


# Question
Title: Why does Windows think my phone has 52 GiB of internal disk space whereas my phone sees 64 GB?
From my phone:

From Windows 7 SP1 x64 Ultimate:

# Answer
> 7 votes
Your phone is showing you the total amount of storage inside your device. This includes a bunch of partitions containing the operating system, radio image, preloaded apps, bootloader, recovery, etc. These partitions are read-only, and many aren't even accessible within the Android OS, so they aren't exposed when connected to Windows—there wouldn't be any way to say "actually there's more space but you can't use it." What Windows sees is the user-accessible space it can read from and write to, which is smaller than the total storage in the device.

---
Tags: internal-storage, windows, android-10
---


# Question
Title: How do I open about:config in Firefox on Android?
A lot of settings on Firefox for Android need `about:config`, but I cannot open it by typing in the address bar.

Here is a screenshot 15 seconds after I typed `about:config` in the address bar and pressed enter.

Here is a screenshot showing the version of Firefox on my phone.

What am I doing wrong?

# Answer
> 3 votes
`about:config` is disabled in builds other than Nightly
From this answer:

> You can access about:config in the Nightly build of Firefox for Android, available from the Google Play store .

---
Tags: firefox-for-android
---