# Question
Title: How to mount NFS on Android with correct permissions?
I am trying to mount an NFS share on my Android phone.

I have already compiled and installed all the needed kernel modules. The NFS share mounts flawlessly but I can only mount as the `system` user. This wouldn't be an issue if I could set the correct ownership for the mounted file system. The problem is that the share is always mounted as user=`system` and group=`system`, making it inaccessible to regular apps.

**I would like to be able to specify the ownership of the mounted filesystem at mount time.**

This is how I mount the NFS share

```
su -c "busybox mount -o nosuid,nolock,nodev,rw,nofail,noatime,intr,tcp,actimeo=1800,context=u:object_r:rootfs:s0,user -t nfs $REMOTE_URI $LOCAL_DIRECTORY"

```

where *REMOTE\_URI* is the remote location and *LOCAL\_DIRECTORY* is the local directory. The above command is inside a script.

This is the relevant line of the `/etc/exports` file on the NFS server (a raspberry pi 3)

```
/media/neo/BLACKBOX XXX.XXX.XXX.XXX/0(rw,insecure,sync,no_root_squash,no_subtree_check,anonuid=1000,anongid=1000)

```

**System Specs:**

* LG V20 H990DS
* System - V10i-TWN (6th-Nov-17) 7.0 Stock, Rooted & Xposed
* Kernel - D.O.T.S. v1.4
* NFS version 4

**PS:** The UID and GID on the server are 1000 and 1000 respectively. In Android those are reserved for the system user and group. All my other computers have UID and GID 1000 and the same username `neo`. It would be much easier to just modify how Android mount the share. I would like to map `uid=neo(1000)->root(0)` and `guid=neo(1000)->sdcard_r(1028)` where `neo:neo` is the user on the server and `root:sdcard_r` is the user on the phone.

# Answer
It seems that every distribution of Busybox that is on Google Play is not compatible with NFSv4 but only NFSv3. So I gave up the idea of using idmapd on Android.

* Instead, I changed the UID and GID on the NFS server to 4444 so that they don't correspond to the `system` user anymore.
* Then I created a new user on Busybox with the same name, UID, and GID as the server (In my Busybox distribution the `adduser` and `addgroup` utilities are included).
* I have purchased Tasker and downloaded this set of tasks from the XDA forum.
* I have chosen the `/mnt/nfs` directory to mount the share.

I have no time to investigate which of the previous points is necessary and which is only irrelevant or optional. If you have any idea please write it in a comment.
> 1 votes

# Answer
> I would like to map uid=neo(1000)-\>root(0) and guid=neo(1000)-\>sdcard\_r(1028) where neo:neo is the user on the server and root:sdcard\_r is the user on the phone.

Files ownership `root:sdcard_r (0:1028)` on Android won't work for apps. It should be `root:everybody (0:9997)` with mode `0770` for directories and `0660` for files.

## HOW TO MAKE NFS WORK WITH ANDROID APPS?

**Traditional \*NIX DAC** (UIDs/GIDs) was designed to isolate human users, not programs. On Android devices - meant for one human user usually - apps need to be isolated and protected so that they can't access each other's data. So Android treats every app like a human user - with a unique UID/GID.

External storage (`/sdcard`) - whether physically external or internal - is meant to be shared by all apps i.e. multiple UIDs. If it's a traditional \*NIX filesystem (like `ext4`), every app would create files with its own UID/GID which makes it nearly impossible to share files among all apps with read/write access. To come up with a solution, Android opted emulated filesystem - based on FUSE or `sdcardfs` \- with fixed ownership and mode. See details in What is the “u#\_everybody” UID?

These UIDs/GIDs and modes also control apps' access to files in `/sdcard`. So if we want to mount NFS to be accessible by all apps, we need to mitigate these permissions according to Android's storage design.

## PLAIN UNIX SECURITY ON NFS:

`sec=sys` mode enforces UNIX permissions without any translation. As explained in previous section, files would be created with random ownership by different apps. So those have to be readable/writable by world (`o+rw`), otherwise apps won't be able to read/write. But there is no way to enforce file creation mode globally, neither it's a good idea to share files with too open permissions. A possible solution is to use ID mapping and/or anonymous mode.

## NFSv4 ID MAPPING:

With NFSv4 it's possible to map different UIDs/GIDs between client and server. If a user with same name but different UIDs/GIDs exists on both sides, files on client look owned by the same user name, not same UID. Linux key-management facility * is used to store mappings of remote user IDs to local user IDs. A good explanation can be found here.

So the idea is to create user:group `neo:neo` on NFS server (`1000`:`1000`) and on Android (`0`:`9997`). For this, `rpc.idmapd` needs to be running on both server and client which queries user database (`/etc/{passwd,group}` in simplest case) through NSS. *On more recent kernels the NFSv4 client instead uses nfsidmap, and only falls back to `rpc.idmapd` if there was a problem running the `nfsidmap`*. Kernel calls `/sbin/request-key` binary in userspace which executes `nfsidmap` to query users database. So the kernel would map server's `neo` (`1000`:`1000`) to client's `neo` (`0`:`9997`).

In simple case, if UID/GID range 10000 to 19999 is not assigned to any user/group on NFS server and `Nobody-User = root`/`Nobody-Group = everybody` is defined in `/etc/idmapd.conf` on client, all files (created by Android apps) owned by non-existent users on server would be returned as owned by `0`:`9997` on client. But it doesn't resolve the problem of random ownership of files on server.

Running `rpc.idmapd` or providing `nfsidmap` on Android is a complicated task (static linking and all that). However - making use of `keyutils` (`request-key` and `keyctl`) - we can trick kernel to show fixed ownership `0:9997` for all mappings regardless of what the actual ownership is:

**On NFS server:**

1. Run services:

```
~# mount -t nfsd nfsd /proc/fs/nfsd
~# rpc.mountd -g -N2 -N3 -N4 -N4.1 -N4.2 -p 4000
~# rpc.nfsd -N2 -N3 -N4 -N4.1 -N4.2 -U --p 2049 4
~# mkdir -p /run/rpc_pipefs
~# mount -t rpc_pipefs sunrpc /run/rpc_pipefs
~# rpc.idmapd -S -p /run/rpc_pipefs
~# echo -n N >/sys/module/nfsd/parameters/nfs4_disable_idmapping
~# exportfs -o rw,insecure,hide,no_subtree_check,sec=sys <CLIENT_IP>:/SHARED_DIR

```

Or configure and run required `init` services. Also unblock ports though firewall on client and server.

**On Android:**

2. Create `/sbin/nfsidmap_pseudo` and `/etc/request-key.conf`:

```
#!/system/bin/sh

uid=0
gid=9997

case $2 in
    uid:*)
        printf '%s\0' "$uid" | /sbin/keyctl pinstantiate $1 0 ;;
    gid:*)
        printf '%s\0' "$gid" | /sbin/keyctl pinstantiate $1 0 ;;
    *)
        # won't do anything to "user" or "group" types
        exit 1 ;;
esac

```

```
# /etc/request-key.conf
create  id_resolver  *  *  /sbin/nfsidmap_pseudo  %k  %d

```
3. Place files, set permissions and enable ID mapping::

```
~# chmod 0755 /sbin/request-key /sbin/nfsidmap_pseudo /sbin/keyctl
~# chmod 0644 /etc/request-key.conf
~# chown 0.0 /sbin/request-key /sbin/nfsidmap_pseudo /sbin/keyctl /etc/request-key.conf
~# chcon u:object_r:rootfs:s0 /sbin/request-key /sbin/nfsidmap_pseudo /sbin/keyctl
~# chcon u:object_r:system_file:s0 /etc/request-key.conf
~# echo -n N >/sys/module/nfs/parameters/nfs4_disable_idmapping

```
4. Since NFS isn't supported officially on Android, SELinux policy doesn't have required rules. You may need to set SELinux permissive or allow kernel to read/write keys, execute files in userspace and make connections:

```
~# supolicy --live 'allow kernel kernel key { search write view read }'
~# supolicy --live 'allow kernel kernel capability { net_raw net_bind_service sys_admin }'
~# supolicy --live 'allow kernel { rootfs shell_exec system_file } file { execute_no_trans execute open getattr }'

```
5. Mount:

```
~# mkdir -p /sdcard/NFS
~# busybox mount -v -t nfs4 -o vers=4.2,sec=sys,rw,tcp,port=2049,context=u:object_r:sdcardfs:s0 <SERVER_IP>:/SHARED_DIR /mnt/runtime/write/emulated/0/NFS

```

Unfortunately what we get from all this setup is that now apps apparently see files in `/sdcard/NFS` owned by `0:9997`. But **with `sec=sys` security, actual file access is not governed by NFSv4 UID Mapping** \**. Permissions are enforced by RPC mechanism which is not yet ready to work with ID mapping. So UID Mapping without `Kerberos` security works only if user/group name and number spaces are consistent between the client and server. It means that `neo` user on server should have UID/GID: `0`/`9997` (which nullifies the whole purpose of ID mapping). On the other hand Kerberos security (`sec=krb5`) is too hectic to be tried on Android.

Similarly file locking on NFSv2/3 requires `portmapper` (`rpcbind`) and `rpc.statd` running on server and client both, which is not the case with Android client. So, we need to use `nolock` mount option. On NFSv4, however, locking is built-in NFS protocol, NLM isn't needed. So better is to not go for `UID Mapping` (on NFSv4, and `File Locking` on NFSv2/3). If you need all NFS features (including Kerberos) working on Android device, rather try a tiny Linux distro in `chroot`.

 * On kernel older than v4.6, `/proc/keys` is exposed if kernel is built with `KEYS_DEBUG_PROC_KEYS`.
\** References: , , , , ,

## NFS ANONYMOUS ACCESS:

One of NFS security flavors is **anonymous mode**. Every request from any UID/GID on client is treated as the anonymous UID/GID on server. Initially all files in shared directory must be owned by this UID/GID and all subsequently created files from client side would also have the same ownership:

Export share with `sec=none` on server:

```
~# exportfs -o rw,insecure,no_subtree_check,anonuid=1000,anongid=1000,sec=none,root_squash,all_squash <CLIENT_IP>:/SHARED_DIR
~# chown -R 1000.1000 /SHARED_DIR; chmod 0700 /SHARED_SIR

```

* For NFSv2/3 also run `rpcbind` (on default port 111)

Mount with `sec=none` On Android:

```
~# busybox mount -v -t nfs4 -o vers=4.2,sec=none,rw,tcp,port=2049,context=u:object_r:sdcardfs:s0 <SERVER_IP>:/SHARED_DIR /mnt/runtime/write/emulated/0/NFS

```

 * Use `-t` and `vers=` according to your kernel build configuration `CONFIG_NFS_V[2|3|4|4_1|4_2]`.
* Use `-t nfs -o nolock` with `vers=3` or `vers=2`.
* Make sure you are mounting from root mount namespace.
* Mounting with `sec=none` doesn't work with NFSv3.

All apps on Android can now read and write to NFS directory and all files are created with single anonymous UID/GID on server, easy to manage by a user. However apparent ownership (if ID mapping not setup) and permission mode is not according to Android's flavor, so...

## TRY IT THE ANDROID WAY...

Let's make use of FUSE or `sdcardfs` as Android does:

```
~# mkdir -p /mnt/NFS /sdcard/NFS
~# busybox mount -v -t nfs4 -o vers=4.2,sec=none,rw,tcp,port=2049,context=u:object_r:sdcardfs:s0 <SERVER_IP>:/SHARED_DIR /mnt/NFS
~# mount -t sdcardfs -o nosuid,nodev,noexec,noatime,mask=7,gid=9997 /mnt/NFS /mnt/runtime/write/emulated/0/NFS

```

If your device doesn't support `sdcardfs`, use `bindfs` and replace SELinux context `u:object_r:sdcardfs:s0` with `u:object_r:fuse:s0`:

```
~# bindfs -o nosuid,nodev,noexec,noatime,context=u:object_r:fuse:s0 -u 0 -g 9997 -p a-rwx,ug+rw,ugo+X --xattr-none --chown-ignore --chgrp-ignore --chmod-ignore /mnt/NFS /mnt/runtime/write/emulated/0/NFS

```

It leaves us with no remaining problems. For more details see How to bind mount a folder inside /sdcard with correct permissions?

## GIVE CIFS A CHANCE...

NFS being Linux's native filesystem (like `ext4`) is meant to enforce \*NIX permissions. Non-native filesystems like FAT and CIFS let fixed ownership and permissions be set across whole filesystem. So what you are looking for is relatively easy to achieve with **CIFS**:

```
~# mkdir -p /sdcard/CIFS
~# busybox mount -v -t cifs -o vers=3.0,nosuid,nodev,noexec,noatime,rw,hard,context=u:object_r:sdcardfs:s0,nounix,uid=0,gid=9997,file_mode=0660,dir_mode=0770,nouser_xattr,port=445,username=USERNAME,password=PASSWORD //<SERVER_IP>/SHARED_DIR /mnt/runtime/write/emulated/0/CIFS

```

 * Kernel must be built with `CONFIG_CIFS` and preferably `CONFIG_CIFS_SMB2`, use `vers=` accordingly.
* For mount options detail see mount.cifs(8)

## OTHER OPTIONS?

Other FUSE-based mountable filesystems are `sshfs` and `rclone`. Latter offers a large range of protocols and configurations while requiring a very simple setup.
> 8 votes

---
Tags: networking, permissions, file-sharing
---


# Question
Title: Forgot my password to my samsung galaxy tab E
My sister kept changing the password on the samsung tab until i tried the hard reset. but the issue is it asks to verify the account and the account was set on my grandfather who isn't here anymore. so we can't move forward without it. what should i do?

thanks

# Answer
This is from the T-Mobile Support website at This link

Samsung Galaxy Tab E

Master reset with hardware keys

A master reset restores the original factory settings and may delete your personal data on the internal storage, such as downloads, ringtones, images, apps, contacts, and Visual Voicemail. It does not delete data stored on the SIM card or SD card.

If the device menus are frozen or unresponsive, you can master reset using hardware keys.

Turn off the device.

1. Press and hold the Volume Up key and the Home key, then press and hold the Power key.
2. When the Samsung Galaxy Tab E logo screen displays, release only the Power key
3. When the Android logo displays, release all keys ('Installing system update' will show for about 30 - 60 seconds before showing the Android system recovery menu options).
4. Press the Volume Down key several times key to highlight 'wipe data / factory reset.'
5. Press Power button to select.
6. Press the Volume down key until 'Yes -- delete all user data' is highlighted.
7. Press Power button to select and start the master reset.
8. When the master reset is complete, 'Reboot system now' is highlighted.
9. Press the Power key to restart the device.

If you no longer have access to granddaddy’s google account, you may have to start one of your own :)
> 1 votes

# Answer
You can't start on your own. You need grand daddy's email address and password. Factory reset does NOT dis-associate the phone or tablet from the original account used.
> 0 votes

---
Tags: factory-reset, password
---


# Question
Title: Can WiFi and Bluetooth be enabled through adb using Fire TV Sticks USB connection?
Think I've bricked my first-gen Amazon Fire TV Stick. It's had a good run though, installed a bunch of different apps and one was a task optimizer.

It has disabled the Wi-Fi and Bluetooth on the device and now it can't be remotely controlled at all. I have the stick plugged into the laptop through USB and connected to adb but no idea if I can control it through that or input a code to enable either the WiFi or Bluetooth.

Any help would be much appreciated.

# Answer
> 1 votes
The most probable way is doing it via input key events as suggested here: How to turn off Wifi via ADB?

*But in this case we need to turn it on using a similar proceedure*

```
adb shell am start -a android.intent.action.MAIN -n com.android.settings/.wifi.WifiSettings
adb shell input keyevent 19 & adb shell input keyevent 19 & adb shell input keyevent 23

```

> The first line launch "wifi.WifiSettings" activity which open the WiFi Settings page. The second line simulate key presses.

These keys may not be the exact for your device in which case use appropriate key events and play around until you hit the best match :)

Also for bluetooth try this:

Using adb enter;

`am start -a android.bluetooth.adapter.action.REQUEST_ENABLE & input keyevent 20 & adb shell input keyevent 21 & adb shell input keyevent 23`

Source: Can I restart Bluetooth from the terminal?

# Answer
> 0 votes
Use your TV remote to control it. As long as your TV supports HDMI CEC, you can control the FireStick with the TV. Just make sure HDMI CEC is enabled in TV settings as well as in FireStick settings.

If that doesn't work, try a powered USB OTG cable and plug in a USB controller that has XInput, or plug in a PlayStation controller or Xbox One controller via a micro USB cable.

---
Tags: adb, wi-fi, bluetooth, amazon-fire-tv-stick
---


# Question
Title: Can an Indian GSM phone be used in the USA?
I'm considering buying the Oppo F9 Pro, which has a dual sim GSM slot. I currently have consumer cellular service with a nano GSM sim card. would I be able to import the Indian phone and use it here without any problems?

# Answer
> 0 votes
A quick search brings up this site:

https://www.frequencycheck.com/compatibility/XnDDU6Y/oppo-f9-dual-sim-td-lte-vn-ph-64gb-cph1823-f9-pro/united-states

Which indicates that the Oppo F9 Pro would only have **2/2.5G speeds** on **some** US carriers with GSM and **NO** support on the rest of the carriers for signal or speed. It would appear to be limited pre-2008 data speeds in the United States and presumably still usable as a phone/SMS on supported carriers.

# Answer
> 0 votes
As a more general answer:

1. Look up what **frequency bands** are used by your **carrier**.
2. Do the same for your specific phone **model**.

There are websites dedicated to answering this exact question, for example frequencycheck.com.

From this site (or a Google search), we can figure out that **Oppo F9 Pro** supports:

* 900 (E-GSM) GSM
* 1800 (DCS) GSM
* 1900 (PCS) GSM

Now you'll have to compare this with whatever info your find for the carrier you wish to use, the website mentioned above makes the comparison a lot easier. Here's a hardcoded link for your device with "country" set to the US:

https://www.frequencycheck.com/compatibility/XnDDU6Y/oppo-f9-dual-sim-td-lte-vn-ph-64gb-cph1823-f9-pro/united-states

In short, you'll only get support for 1900 (PCS) on **some** carriers (GRPS/EDGE). No speeds to write home about.

---
Tags: sim-card, gsm, import
---


# Question
Title: How can I reboot into recovery from fastboot?
I have a phone that is bootlooping after a power failure + battery depletion during system encryption. How it got bricked isn't important here, the trouble is that I can't get into the recovery mode. Usually turning on the phone¹ via `Volume Up`+`Power` will enter recovery mode. I had TWRP flashed as the recovery and Lineage OS as the ROM. Now it does not respond to that keystroke.

Also generally one could boot to the system and run `adb boot recovery`, but with the system not booting that is not an option. I can however use `Volume Down`+`Power` to enter fastboot mode. I've tried reflashing the recovery image from fastboot, but it still does not respond to the key sequence. Using `fastboot reboot` tries to boot to the system. How can I get into recovery mode?

¹ In my case, a Levovo K6 Note/ K53a48 (karatep), but not really relevant to this question.

# Answer
*(Self answering here because I only found this answer after hours of dredging through 200 page threads of forum posts.)*

There are two non-standard but semi-prevalent methods that may work depending on your make and model (and why recovery isn't working in the first place).

1. Some phones actually respond to `fastboot reboot recovery`. This is quite natural given `adb reboot recovery`, but unfortunately is non-standard. I found lots of people suggesting this method so I offer it here in the hopes that it works for some, but it didn't for me.
2. Some phones will actually let you book into an image via fastboot without flashing it. This will allow you to load a recovery image without needing to reboot the phone at all. You need a copy of the recovery image on your computer, but running `fastboot boot image.img` should do the trick. I was able to load up TWRP using this method.
> 39 votes

---
Tags: rom-flashing, recovery-mode, boot-loop, fastboot, reboot
---


# Question
Title: Micro SD mobile 128 GB size limit overcome
Should I partition a larger than mobile size limit microSD card would all' partitions still be accepted by OS (Android) ?

# Answer
> 1 votes
AFAIK there is no 128GB limit (neither on sd-card nor on file-system level).

The only hard limit is if or if not microSDXC cards (sd-cards starting with 64GB) are supported.

The other "limits" are usually just a notice from the manufacturer that the device has been tested with such a card (because larger were not available at that time).

Therefore creating multiple partitions does not make much sense from my point of view.

---
Tags: sd-card
---


# Question
Title: Having problems with my phone please help :(
My phone has been making these weird blue and red shapes for a while now and I have no idea how to turn it off, anyone got any ideas?

# Answer
This could be the result of enabling the developer option: Show layout bounds. If that is not the case you could try backing up your data and factory reseting your phone. This will delete all your apps and all user(s) info resetting all your settings to default and returning the phone to its factory state.

Your SD card will be deleted as well so remove it before the reset. So any apps that you dont have an apk file for you will need to download and install again. You can then use your backed up data to restore the apps to thier original configuration in many cases. Take care not to use any suspicious apps from questionable sources. If you installed some sort of app with permission to write over other apps this could be the cause as well.
> 2 votes

---
Tags: applications, lg-g6
---


# Question
Title: How disk space is partitioned in an Android phone?
How does storage space in our phone is partitioned? How can we access our storage space?

# Answer
> 0 votes
Most Android phones have `eMMC` (flash memory), partitioned in GUID partition table (`GPT`) just like a PC's hard disk. There are usually less or more 50 partitions on a latest Android phone. OS uses `/system` while user uses `/data` mainly. Internal SD card is `/data/media`. Other partitions are smaller.

For more details, visit this link.

If you have a rooted phone, you can use Linux tools (`parted`, `gdisk` etc.) to manipulate Android 's partition table. But that's really risky.

To fully access storage space, you need root permissions.

**RELATED:** How disk space is used on Android device?

---
Tags: storage, partitions
---


# Question
Title: Can I connect a keyboard via micro-usb to a smartphone which doesn't support OTG?
My phone has no OTG support. A standard USB keyboard connected using an OTG cable doesn't work or even get recognized. Would a keyboard which instead connects via micro-usb work? Or would the phone require OTG support for that too?

The version of Android is 5.1.1. The phone is not rooted.

# Answer
A keyboard with micro-USB connector is simply the combination of a keyboard with an OTG adapter, therefore this will not help you if your device has no USB OTG support.

If you want to connect a keyboard to your Android phone instead you may try to use a Bluetooth keyboard.
> 1 votes

---
Tags: usb-on-the-go, external-keyboard
---


# Question
Title: Wi-Fi scanning popup won't stop appearing in Huawei Honor 9 Lite
A few days ago, I started getting a popup message on my Huawei Honor 9 Lite which read

> By turning on Wi-Fi scanning, apps and services can scan for Wi-Fi networks at any time, even When Wi-Fi is off.

It happens after EMUI 8.0.0.185 update.

I proceeded to turn the Wi-Fi scanning off, but the message won't stop appearing every 5-10 minutes. Restarted my phone and it still kept happening.

I tried everything I could think of:

* Disabled Wi-Fi Scanning in Location Services/Scan Settings
* Disabled location
* Made location use only GPS

but it doesn't help.

How to stop it from appearing constantly?

# Answer
> 0 votes
Try to turn off Wi-Fi+ as a temporary solution. See this post for more information.

---
Tags: wi-fi, huawei, popup
---


# Question
Title: AnkiDroid: Reset TTS language of a single deck
I am not able to find the correct way to reset the TTS language of just one deck (as opposed to resetting all TTS assignments by using Menu \> Preferences \> General \> Reset). I have seen this question, but I can't work out what's meant by

> Reset specific deck assignments on deck picker

I am really feeling dumb right now... The "deck picker" is the list of "decks on the AnkiDroid "home screen" right? If so, where is the option to reset TTS for one deck?

I tried the menu by "long-pressing" on one item, but that just gave me the option to collapse, rename or delete the deck.

Opening one deck and then going to Menu \> Preferences \> General \> Reset yields the same as going there from the "home screen", all assignments are reset.

I am lost, can anyone shed light on this for me?

# Answer
> 0 votes
You can try resetting all the settings in the deck.

In 2018, there is a feature for setting TTS language for AnkiDroid starting at 2.6alpha6 (please edit if mistaken).

---
Tags: languages, text-to-speech, ankidroid
---


title: How can I root Lg K317 (Phoenix 2

text:
# Question
Title: How can I root Lg K317 (Phoenix 2
I see that One Click Root say that it can root Lg K371 but I don't really know if it really .

# Answer
> 0 votes
You can use kingroot. It doesn't work the first time you try, it need several tries.

---
Tags: root-access
---


title: Export Contacts to Google contacts

text:
# Question
Title: Export Contacts to Google contacts
I suddenly understand that the Contacts I registered the last months didn't be included in Google contact but in MI contacts. I use a MI MAX 2 PHONE with Android 7.1 version of Android.

How can I get all these contacts in Google contacts? I didn't find the way

# Answer
> 1 votes
It is advised that you do this on a PC.

**1. Export:** You can export contacts from your Mi account to a Vcard (Vcf) file. This can be done by logging into your Mi Account at - https://i.mi.com/

Choose *Export Contacts \> Export* and you will get the Vcard file to download.

---

**2. Import:** You can then import those to your Google contacts by logging into your Google account at https://contacts.google.com

Choose *More \> Import* at from the left sidebar. Then click on CSV or vCard file and select the Vcard file which you downloaded from Mi contacts.

Your contacts will be imported. For the future, change where to save the contact to "Google account" while adding a new contact.

---
Tags: contacts, xiaomi, google-contacts
---


# Question
Title: How do I block private numbers from calling me?
Android 7 on a motorola E4. This does not work for me as I simply don't have that menu.

How do I block private numbers from calling my phone?

I'm not looking for a 3rd party application. I'm thinking there must be some way to do this on an android level, maybe with some hidden code?

The phone isn't rooted, ADB isn't an option since data over USB on the phone is broken.

# Answer
Motorola uses a vanilla Android experience (similar to Android One & Pixel) and it ships with the Google dialer and Google contacts app. As such, you will not find as many options in your phone as we see in Xiaomi or Huawei or Samsung phones. The call blocking option is also not present in the stock Android setup.

You will have to resort to a 3rd party app from the Play Store. I wouldn't recommend any as there are many call blocking apps and you should be free to evaluate them and choose the one to your liking.
> 1 votes

---
Tags: calls, call-screening, dialer-codes, motorola-moto-e4
---


title: droid explorer device not found

text:
# Question
Title: droid explorer device not found
I have an Xperia Z C6606 rooted

Android version 4.3

I have tried both 4.3 and 7 Android SDK.

I kept getting the error message "device '' not found" as shown in the below screenshot.

# Answer
> 0 votes
Please replace the platform tools API 23 file size 9 MB and remove the previous one. And remaining the same.

Your device will be visible.

# Answer
> -2 votes
I had the same problem.
The solution is to grant root access to ADB in *Developer options*. First of all you need to enable *Developer options* as explained on Android Studio then you enter *Developer options* as explained there as well.
If you run CyanogenMod/LineageOS you can easily allow root access for ADB as explained here.
Otherwise you have to do it via Terminal.

# Answer
> -2 votes
Also ensure you are connected to your PC as Mass Storage (UMS).

---
Tags: droid-explorer
---


title: Facebook videos playing in low quality

text:
# Question
Title: Facebook videos playing in low quality
I recently purchased a new phone that uses android 8.0, whilst viewing a video on Facebook the thumbnail is clear and then when the video starts the video becomes very pixelated. The issue only occurs when using Facebook mobile app, the Facebook website streaming is in full hd.

I have tried setting my default preferences to hd when available but doesn't make a difference. My WiFi speed is not an issue neither.

I am starting to think that this could be a app/android settings issue?

Thanks!

# Answer
I think this could be due to 2 reasons:

1. The videos you are playing are not available in a better quality. Or;
2. Facebook thinks that your connection is slower and hence reduces the playback quality.

You can see that it is not the 2nd by manually choosing a playback quality:

When you play a video and tap on the player, a gear icon should appear. And here you'll get the quality options. Consider changing it from Automatic to one of the available qualities and see if that improves the playback.
> 0 votes

---
Tags: stock-android, facebook
---


# Question
Title: Older messages in my WhatsApp are deleting automatically
Older messages in my WhatsApp are deleting automatically. I'm not deleting them. I thought maybe someone is using my WhatsApp account, so I deleted my account 3 times, but still the same thing is happening. Can anyone tell me what's happening with my WhatsApp, and how to fix it?

# Answer
> 0 votes
How exactly is the deletion happening? WhatsApp has an option wherein the sender can unsend (or delete) a message he has sent within a limited period of time. So, if you are referring to that, then it is a WhatsApp feature.

However, if even your own messages are getting deleted, then it is something else.WhatsApp does not have any option to automatically delete the older messages. So, we can rule out the fact that it is happening automatically.

Next, it is possible that someone else has access to your WhatsApp messages via WhatsApp Web. You should check the WhatsApp Web option on your phone and ensure that there are no authorized devices which you do not know. If you do not know what WhatsApp Web is, then you should not have any connected computers on your WhatsApp Web.

---
Tags: whatsapp-messenger
---


title: Which Gapps package should I use..?

text:
# Question
Title: Which Gapps package should I use..?
I am using Lava Iris x8 mobile. I am going to flash lineage(6.0.1) custom rom .Which gapps package should I download...?

# Answer
In oder to know what gapps you should use, you should have the following in mind:

1. Your android version, 6.0 for the ROM you going to flash
2. How much functionality of gapps you need ( for most basic case which is Playstore then pico variant should be enough but if you need more apps you can install more extensive variants e.g nano, micro, mini, full etc. so long as your system partition has enough capacity to handle that file size)
3. Your smartphone's chipset architecture and bits, checking specs for Lava Iris x8 mobile shows that it runs on Mediatek MT6592 again checking for MT6592 specs on Mediatek's website it shows that it is a 32-bit ARM chipset.

So for your case; Platform=ARM, Android=6.0, you can choose any variant depending on the amount of gapps you want and you phones capacity
> 1 votes

---
Tags: applications
---


# Question
Title: Disable contact sync for one Google account - S8 - Android 8
My Samsung Glaxy S8 with Android 8.0 & Samsung Experience 9, is configured with multiple Google accounts. Would like to disable contact sync for only one Google account, **while synchronising all Google accounts calendars**, including the account with contact sync disabled

Possible?

# Answer
Yes it is possible. You can choose what items to sync in the account settings. The option might be relocated slightly, but you'll ideally find it at the following location. I'm including a screenshot for reference.

*Settings \> Users & Accounts \> **Your Google Account** \> Account sync*.

Here turn off the toggle for Contacts.

Contacts from this account will stop syncing while from all other accounts will continue to sync. The calendar functionality will not be impacted unless you disable that as well.
> 2 votes

---
Tags: sync, google-account, 8.0-oreo, google-contacts, samsung-galaxy-s-8
---


title: Mute SMS audio notification

text:
# Question
Title: Mute SMS audio notification
My phone is kept always on vibrate mode. When the screen is on and I get an SMS I can see the pop up notification and that's fine. Problem is when the screen is off - SMS sender name is read out aloud " Message from \[sender name\]" preceded by two long vibrations

I find this highly annoying sometimes and found no setting to mute this ( to replicate screen on behavior). I don't want to activate DND mode because I want to know that I have a text message waiting to be read via vibrate buzz

Surprised to see that no one complains of this on the net so obviously no solution ( Imagine your phone is on vibrate in a meeting but your phone announces to the world message from AXAIRNF or some embarrassing contact name) I tried automation, some Xposed / Magisk modules but none worked

**Edit** These additional attempts didn't help

1. Switching off the notification of SMS app
2. Trying alternate apps such as Textra etc
3. Putting the device on low ringer / notification volume when screen is off
4. Suspecting Text-to-Speech to be the culprit, killed that service when screen is off - no luck

**Any solutions # including rooted means?**

Mia1 stock 8.1 rooted with Magisk and Xposed (had same problem on 8.0 too). Stock Messaging app

---

# If you want to suggest automating, please stick to MacroDroid (don't want to add another automation app just for this). Gravity Box doesn't help. If your solution involves an alternate messaging app, it should be good at blocking spam SMS / be able to control reading of sender name(Textra already tried)

# Answer
It had nothing to do with the device settings (but OS bug )

It was a macro misbehaving and reading out for *any* contact rather than chosen contacts (since the device is always on vibrate wanted audio alert for text messages from chosen few).I never suspected this since a similar macro for incoming calls was working fine

**Edit:** Shared logs with the developer who confirmed that it is an **OS bug**

> My code in simple terms does a look up on the number in your contacts database and then when it matches it requests the ContactsContract.PhoneLookup.DISPLAY\_NAME....your device OS has some kind of weird issue where it doesn't return a sensible name.

and hence it was getting triggered universally for any contact
> 2 votes

# Answer
Some phones have a drive mode where the notifications are spoken. You might have a shortcut button from the pull down settings or go into the talkback settings and it should be near the bottom. If not a drive mode then go into talk back settings , tap verbosity, then unselect speak when screen is off. See if that is the answer.
> 1 votes

---
Tags: notifications, sms, audio, mi-a1, macrodroid
---


# Question
Title: Damaged Sd card. Sd card is damaged. Try reformatting
**While i am using my android phone i get this above error .**

1.I have tried rebooting phone.

2.I also have tried to reformat in android but it shows same errors again and again my phone also not mounting sd card.

3.I have various ways like formating portions and chkdsk in command in pc.

*It is working fine in PC but not work in android so if you have any idea how to fix it. Any website or any YouTube video where i can learn how to fix it will really help me........*

# Answer
> 0 votes
https://m.youtube.com/watch?v=FqR0BLUH\_OI

Hope this is your answer. According to this video the error occurs when you have files on the SD-card that confuses Android OS. The video suggests you format the SD in FAT32 in a PC deleting the files. I suggest a full format (takes substantially more time to complete) as opposed to quick format.

---
Tags: external-sd, stock-android, system-error
---


# Question
Title: How to fix "Socket creation in UltraProbe...Permission denied" error when using nmap?
I have a pre-compiled `nmap` binary for Android that was working properly and without error in LineageOS 14.1. The phone is a One Plus One.

Since upgrading to Lineage 15.1 (Android 8), the specific error I get is:

```
Socket creation in UltraProbe* sendConnectScanProbe(UltraScanInfo, HostScanStats, u16, u8, u8): Permission denied (13).

```

This is when `nmap` is run as the standard user, as root the phone becomes unresponsive and immediately crashes. I read somewhere over on SO that someone who was also attempting to open a socket was running into a permission issue as well, but successfully circumvented it by adding the user into these groups: `aid_bt`, `aid_bt_net`, `aid_inet`, `aid_net_raw`, `aid_admin`

It doesn't seem like this version of LineageOS has either `groupadd` or `usermod`, so that solution doesn't help me.

Did any changes occur between the two versions of Lineage that could cause this problem?
And how can I make `nmap` work again?

# Answer
> 2 votes
> Did any changes occur between the two versions of Lineage that could cause this problem

I don't have any experience with `nmap` and can't be sure why it worked with Android N, but Android has always been restrictive when it comes to socket access. I have been facing same issues at least from Marshmallow and onwards. `ping` is the common example.

> It doesn't seem like this version of LineageOS has either `groupadd` or `usermod`

Android's users and permissions management is quite different than Linux. `Bionic libc` doesn't support many sycalls provided by standard `glibc`, particularly related to NSS. Also, the related files `/etc/passwd`, `/etc/group`, `/etc/shadow` and others don't exist on Android the way they exist on Linux. So, the standard Linux utilities `groupadd` and `useradd` etc. cannot be used on Android unless the source is modified and environment is modified accordingly.

> how can I make nmap work again?

If you want to use a `program` compiled for standard Linux which needs capabilities `CAP_NET_BIND_SERVICE`, `CAP_NET_ADMIN`, `CAP_NET_RAW` etc., the program needs to be run by a user who is member of Android groups `aid_inet`, `aid_admin` and `aid_net_raw`. Even though the `root` user has apparently `CAP_NET_*` capabilities, socket syscall fails if it is not added to these groups explicitly. Most of the times only `aid_inet` suffices.

For instance, let's view capabilities of `wpa_supplicant` (process responsible for making wi-fi connections) on Android:

```
~$ su -c "getpcaps $(pidof wpa_supplicant)"
Capabilities for `21224': = cap_net_admin,cap_net_raw+ep

```

So, `nmap` won't work unless executed with its required capabilities. A capability is a subset of root permissions.

Terminal apps are usually already member of `aid_net` group (`android.permission.INTERNET`). However if it's not the case or you want to create a Linux type user on Android, follow on.

**ADD LINUX USER ON ANDROID**

*NOTE:* Device must be rooted.

On Linux, capabilities are assigned to a user (a user is a process id in fact, usually a shell) by some login mechanism, `PAM` modules being the most common. But there is no user login on Android, so we need to replicate that somehow. Lets create a Linux user, say "irfan" on Android.

Better is to use the UID of terminal app assigned at the time of app installation or you can use any unused UID like 6000.

Modify or create the files as below:

```
# /etc/passwd
irfan:x:10129:10129::/sdcard:/system/bin/sh
root:x:0:0::/data/local/tmp:/system/bin/sh

```

```
# /etc/group
aid_inet:x:3003:irfan,root

```

To login as user "irfan" with `aid_inet` as secondary group, use a *Linux aware* busybox `su binary` which regards `/etc/passwd` and `/etc/group`:

```
~$ id
uid=10129(u0_a129) gid=10129(u0_a129) groups=10129(u0_a129),9997(everybody)

~$ su -c 'busybox su - irfan'

~$ busybox id
uid=10129(irfan) gid=10129(irfan) groups=10129(irfan),3003(aid_inet)

```

Please note the usage of `su` twice. First `su` is the one you get when you root your device. It's because `su` must be executed with `CAP_SETUID` capability. But normal Android apps run without any capability:

```
~$ capsh --print | grep Bounding
Bounding set =

```

The first `su` grants us that capability (and all other capabilities) as well as avoids the need to `setuid` on `busybox su` binary.

In the same way you can add yourself to as many groups as you want, `everybody`, `sdcard_rw` and so on.

**SOURCE:**

---
Tags: command-line
---


# Question
Title: Save contacts to phone or Samsung Cloud?
I am unsure which is the better option.

Phone because that's what it's made for.

Cloud because if I want to move phones, they come too.

Where should I compartmentalize my contacts?

# Answer
If the choice is only between these two, I'd say go with Samsung cloud. Or if you can choose another, choose Google Contacts or Outlook Contacts. These because it will be easier to sync them to a non-Samsung device if you decide to jump the ship in the future.

A cloud backup is recommended because:

1. They will still sync to the device and remain on it just like phone contacts do.
2. If you lose your phone or it suddenly stops working, your important contacts will still be available on the cloud and you can download them to your new phone.
3. Contacts are easier to access on multiple devices. Say if you switch phone or keep 2 phones. And you can also get your contacts on your PC.

One disadvantage of cloud is that if you (or your child) mistakenly deletes the contacts from one device, then the deletion will get synced to other devices as well and you may lose important contacts.

You might want to save your Contacts locally on the phone if you have privacy concerns and you do not trust the cloud with your contacts. Do remember to manually back them them up periodically by exporting them and transferring to your PC.
> 1 votes

---
Tags: contacts
---


title: Unable to get bluestack downloaded data

text:
# Question
Title: Unable to get bluestack downloaded data
I installed Bluestacks and I am trying to access files downloaded via Bluestacks but I seem not to find these files (folder is empty). I have also installed ES file explorer . Can anyone provide a good solution on how to access these files ?

# Answer
My path to shared data is
`C:\ProgramData\BlueStacks\Engine\UserData\SharedFolder`
> 4 votes

# Answer
There is a nice tutorial explaining how to do this:

As Bluestacks emulates Android, the default download path should be similar i.e. `/sdcard/Download` (or `/storage/sdcard/Download`)

Using a file explorer e.g ES explorer, **browse** the file structure until you come across the root folder, from there try locating the above path.

Now Bluestacks has an integrated Shared folder with Windows in the following paths:

`/storage/sdcard/windows/bstsharedfolder/`

or

`/sdcard/windows/bstsharedfolder`

In order to access your downloaded files in Windows explorer, you need to copy the contents of the download folder (`/sdcard/Download`) to the Bluestacks Shared folder (`/sdcard/windows/bstsharedfolder`) using ES file explorer.

Finally access the downloaded files from the PC via Windows explorer from this path:

`C:\ProgramData\BlueStacks\UserData\SharedFolder`

**Remember to enable the option "Show hidden files and folders" in Windows explorer options**

Update

If you are unable to find bstfolder in its default Windows location \[`C:\ ProgramData\ BlueStacks\ UserData\ SharedFolder` \], you can find their actual location from the Windows Registry.

1. Access the Windows Registry by going to Start \>\> Run and type in “regedit” and hit Enter. This opens up the Registry Editor.
2. Go to `HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\SharedFolder`. Each of the numeric folders represents a shared folder, and their location is indicated in their Path String values.

You may have to manually set the Bluestacks shared folder in the following way:

> * go to `HKEY_LOCAL_MACHINE\SOFTWARE\BlueStacks\Guests\Android\SharedFolder`.
> * Create a new key here and rename it to the number following the previous key.
> * Inside the newly created key, right-click on the space on the right side and create a new String called “Name” by selecting New \>\> String. Double-click on it and enter a value.
> * The value is the name of the folder as seen inside BlueStacks, additionally create a new `DWORD` Value by right-clicking on the blank space and selecting New \>\> `DWORD` (32 Bit) Value and rename it as **Writable**. Right-click on this newly created value and click Modify. **Set the Value data field as 1** and select the base as Hexadecimal.
> * Create another String called “**Path**” and assign a value of the full path of the directory you want to include inside BlueStacks.
> * Restart your computer for the changes to take effect.

Now you will be able to access BlueStacks files from Windows.

---

Update:

As mentioned by Josh Davis if you can't find the path in newer Windows version, navigated to this path instead: `C:\ProgramData\BlueStacks\Engine\UserData\SharedFolder`
> 2 votes

# Answer
I think your question is

> "You are not able to find your downloaded files which you have downloaded over bluestacks"

You can move to this ----

`C:\ProgramData\Bluestacks\UserData\SharedFolder`

here you will find all your shared data

* First enable hidden files and folder to view program data folder

or you can just send all files to desktop from bluestacks to view all your files and other stuff

hope this will help you...
> 1 votes

# Answer
Use the Media Manager to transfer files from Bluestacks to Windows. Here are the steps.

1. Click on *My Apps* tab.
2. Click on *System* app.
3. Click the Media Manager.
4. Long left mouse click on the file you want to transfer to Windows.
5. At the top click on *Export to Windows*.
6. Select a location in Windows and your file will be saved there.
7. In Windows browse to your save location and now you will have the file located there.
> 0 votes

# Answer
My path as of 9/6/2018 in Windows 10 is:

C:\ProgramData\BlueStacks\_bgp\_kk\Engine\UserData\SharedFolder

ProgramData is a hidden file in windows 10. In ES File Explorer I go to:

Home-\>Internal Storage-\>Windows-\>BstSharedFolder

Here are the same files in Windows File Explorer:  Note the path.

I have BlueStacks 3 installed.
> 0 votes

---
Tags: sd-card, windows, file-transfer, bluestacks
---


# Question
Title: As of vendors - whose bootloaders are easy to unlock, and whose not?
The vendors differ in their attitude to unlocking the bootloader. Some require codes for unlocking, some not. Some require proprietary, Windows-only software, other not.

Which of the vendors are friendly to people unlocking the devices and which not? Which of them require obtaining tokens, which require proprietary and not-cross-platform software? Which treat unlocking the bootloader as voiding the warranty?

This is only devices which can run Android.

(I started the community wiki)

# Answer
Please fill in the gaps!

# Methods of unlocking

## Unlocked by default or not locked at all

* Fairphone
* ZTE Nubia

## Unlock with fastboot, no token needed

* Google (excluding Verizon variants)
* Huawei (very old models)
* OnePlus
* Xiaomi Android One devices (Mi A1, A2, A2 Lite)

## Unlock with fastboot, token needed

* Huawei (some models, mostly "moderately old" ones)
* Moto (excluding carrier or Amazon Prime variants)

## Unlock without fastboot, no token needed

* Samsung (some models, often non-Snapdragon and non-carrier variants; requires enabling OEM Unlocking in Settings, or using official CROM Service app)

## Unlock with proprietary software only, token needed

* Xiaomi non-Android One devices (Windows-only software, unofficial flashers for other OSes - but still closed-source)

*Note: There are some important changes regarding unlocking bootloader application status and reason on MIUI based devices:*

> The process is now simplified and the permission is granted automatically. You **don't have to fill in the application form or wait for the SMS anymore**. Login and head towards http://en.miui.com/unlock to download Mi Unlock Tool

*Important: Bind your Mi Account in Developer options → Mi Unlock and follow the waiting period shown in Mi Unlock Tool*

## Not unlock-able (unless by exposing a vulnerability)

* BlackBerry
* HMD Nokia (Can be unlocked with a token, but only a few XDA members know how to obtain it, and they don't publish the method)
* Huawei (application for Honor unlock code still in limited availability to XDA users here)

# Effects on warranty

## Does not void warranty

* OnePlus

## Unlocking the bootloader voids the warranty
> 0 votes

---
Tags: bootloader, bootloader-lock, wiki
---


# Question
Title: phone stuck in boot loop after flashing new (stock) rom
I just flashed a new firmware and when the phone starts, it shows the android logo and restarts. It's stuck in a boot loop. How can I fix this?

# Answer
> 1 votes
The following steps are pretty much guaranteed to unf\**k up your phone no matter how badly messed up it is. I speak from experience.

1. Turn off phone by pressing hard reset button.
2. Use flashtools to flash a stock ROM. Download the ftf file from here (I recommend downloading 4.4.2 as its easiest to root and you likely will be flashing something else anyway).
3. Root your device using any method.
4. Install custom recovery using app such as TWRP manager or Flashify.
5. Check if you can install custom recovery **and boot into it.**
6. If yes, use it to flash ROM of your choice and you are done. If no, proceed to step 6.
7. Follow these instruction if you can't enter recovery.

N.B. Here is the missing download link for fix recovery.zip. Also the directions forget to mention after typing `su root` a message will have popped up on your phone you must allow.

http://forum.xda-developers.com/xperia-z2/general/mm-6-0-1-twrp-recovery-t3364871
8. You now have TWRP working. Use it to flash latest ROM.

Additional tips:

1. enable allow installations from unknown sources
2. enable usb debugging
3. charge phone to 100% before beginning

# Answer
> 0 votes
Factory reset solves this issue most of the times. Use hard ware keys to get in reset menu and factory reset your phone.

# Answer
> 0 votes
This is a very common issue. You can **solve** it **by wiping out** the system of device.

***Steps for wiping:***

**1.** Use the Volume keys in order to navigate through the recovery menu.

**2.** Select “advanced” and choose “wipe dalvik cache”.

**3.** Return to main menu.

**4.** Then select “wipe data factory reset”.

**5.** Return and this time choose “wipe cache partition”.

**6.** Return and select “reboot system now”.

**7.** Your handset should start in Android OS now.

This will hopefully, solve your problem. **It worked me** as well.

**In case you can't boot into recovery**, you can physically hard reset by following this Link

**For advanced solution**, you can follow this Link

# Answer
> 0 votes
It's possible you could have a corrupt image. Make sure you get an MD5 or similar for your image. Make sure if you are flashing a new rom that you are wiping Data, Cache, Dalvik-Cache, and System manually before flashing a new ROM.

---
Tags: sony-xperia-z2
---


# Question
Title: Only my Contacts icon colours are inverted
Some weird behaviour, I hope this question is OK for this technical forum. My Google and Stackexchange/Stackoverflow searches yielded nothing. Android 8.1.0 on Nexus 6P Google phone.

All icons involving my Contacts have over time started being displayed in negative colours so that they are now pale pastel colours on a white background where I previously saw saturated colours on a black background.

It started with my Phone app only (all tabs: Favourites, Recent and Contacts) and after some weeks started happening in Messages and Contacts apps too.

Note this is not about my entire phone displaying negative colours, which can be fixed under Settings-\>Accessibility-\>Color inversion. Only my contacts default icons are affected (I don't have photos synced). Toggling the colour inversion setting doesn't fix it.

I keep my phone up to date, both app and OS updates. The changes happened over time across I think at least one or two OS (reboot) updates.

Or have these app simply decided to change the appearance of contacts icons and I'm being foolish?

# Answer
From Google product forums

> The Phone and Contacts apps have been undergoing a design change of late and there is no setting to choose the colour backgrounds you would like. However, please leave feedback from within the app to state your preference - there may well be a change in a future update so watch for that

Related How to change contact colors with Messages 3.5?
> 0 votes

---
Tags: google-contacts, nexus-6p
---


title: Remove mystery alarm from Android 5

text:
# Question
Title: Remove mystery alarm from Android 5
I'm using a lender Android 5 phone. Apparently it's default settings were set to update over WIFI only. I do have an alarm program I explicitly installed however it is clearly not the cause of the alarms at 8AM "Get to Work" which only started happening this week. There is an analog alarm clock icon at the top (without sliding down) though no actual notification to click or hint to what is triggering this mystery alarm clock. At best I could take a screenshot in nearly 24 hours from now. If there is a list of recently updated programs then I am not aware of it.

How do I remove the mystery alarm program or setting from an Android 5 phone?

# Answer
Clock, the native clock program was causing it. I can only guess that some developer somewhere decided that it should automatically start creating alarms for people. What about people who work incompatible hours? If anyone else encountered this please let me know. I had to go to the programs list, click `Clock` and disable the alarm.
> 0 votes

---
Tags: 5.1-lollipop, alarm
---


# Question
Title: How to stop notifications from interrupting music in Android?
I have Huawei mate 10.

When I am listening to music from an app called "Anghami" I get bombarded with continuous notifications interrupting the music in a very annoying way.

I want the music to be interrupted only if I receive calls.

1- I tried to set the "Do Not Disturb" mode for "Allow only priority interruptions" and I defined those priorities A. Calls from Anyone B. Messages from contacts only.

2- I cannot turn of the notifications for the mail, because I need them the other times.

How could this possibly be solved?

# Answer
If your phone is set to silent, notifications shouldn't make any sounds. If it only happens in the Anghami app, this is something for the developer of Anghami to fix. If it also happens in other music players, check if the call volume is really set to zero.

The last option might be to choose an empty sound for notifications, but that's not really a fix.
> 0 votes

---
Tags: music, notifications
---


# Question
Title: Bought Japanese Phone. Keyboard is weird (small spacebar, etc). How to fix?
Title. I attached a screenshot of the keyboard. I would download a third party keyboard, but I don't like how they look. There also seems to be no options to change the layout at all in settings.

# Answer
If there is no setting to remove the bottom arrow keys, there is no way. You can try to set Japanese as the only language, hoping that the globe on the left will disappear so your space has a little more "space".
> 0 votes

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


# Question
Title: How to use adb to push a hosts file in a non rooted device
I am trying to modify the hosts file in my android device without any rooting and after a quick search I came across this adb method to push hosts file to a non rooted device.

I followed all the instructions in the `The non-root method` section with developer mode enabled. But at the last command `adb push F:\hosts /system/etc/` I am getting this error.

```
 adb: error: failed to copy 'F:\hosts' to '/system/etc/hosts': remote couldn't create file: Read-only file system

```

I tried `adb reboot` and `adb remount` but its showing this info `Not running as root. Try "adb root" first.`. How can I push the hosts file with out any rooting?

# Answer
> 1 votes
You cannot do this without root access. The instructions given in that link are conceptually wrong to begin with. The fact that he was able to push a file into system partition implies that he had elevated privilege to remount system partition and write into it. Clearly, the instructions cannot fit under "Non root method" category.

If you are into blocking ads through hosts file, you may try some answers here: In Android 6, how to deny an app permission to access the network?

---
Tags: adb, hosts
---


title: Stolen phone samsung s9+

text:
# Question
Title: Stolen phone samsung s9+
Yesterday I lost my phone (s9+) in a coffee shop. After atleast 3 hours of not knowing I lost it. I immediately tried to find it via samsung find my phone unfortunately it has no sim card and was not connected to a wifi. so i just tried to lock it via samsung account. My question is is it still possible for the thief to reformat and all to use the phone. Thank you.

# Answer
Yes it is possible for that person to reformat the phone by going into the recovery or going through factory reset in settings, but if you report your phone stolen, the IMEI won't allow that person to access the network towers. They can however use WiFi to get on the internet though.
> 0 votes

---
Tags: lost-phone, samsung-galaxy-s-9
---


# Question
Title: MMS messages go into a group conversation with sender and my own number instead of the regular SMS conversation
Let's say I have a conversation with Alice. If Alice sends me an MMS, it appears outside of that conversation, as a group conversation with Alice and my own phone number as participants. Could this be caused by having Unknown for My phone number in SIM status?

# Answer
The solution is to set Your phone number to the actual phone number within advanced settings in Messaging.
> -1 votes

---
Tags: sms, sim-card, mms
---


title: How do I root my galaxy S 9 +

text:
# Question
Title: How do I root my galaxy S 9 +
I need help, I have tried a few things like towlroot, but it wont let it install. I download the apk file then on the permissions i clicked ok then install this is protected by Google play. Then if i keep trying to install it, it just keeps saying app not installed

# Answer
> 0 votes
1.Enable Developer Option (settings - about phone - Software information - Tap 7 times on build number to activate developer option in settings menu)

2.Enable OEM Unlock from developer option (Currently no workaround for those who doesn't have this option)

3.Download and copy G965F\_root\_OEM\_issue\_devices\_V\* .zip to Ext SD card

4.Download TWRP for S9+

5.Switch Off device

6.Press Vol down + Bixby + Power to reboot to download mode, press volume up when asked to continue to download mode

7.Download Odin and open it, Disable 'Auto reboot' from option menu of Odin

8.Select TWRP (tar image) with AP tab of Odin and Start

9.Once Successfully flashed, you will see 'Passed' in Odin tab

10.Disconnect device and hold Vol down + power till screen goes off, Now immediately press Vol Up + Bixby + Power to reboot to TWRP

11.Select to allow modification

12.From TWRP, Select WIPE menu - Then FORMAT DATA - You need to type 'yes' to perform wipe. WARNING : This will erase all data including Int SD storage from device

13.Once format device completes, go back and select REBOOT' Menu and then - 'RECOVERY', This will reboot to TWRP again

14.Now select Install and navigate path to Ext SD card - N965F\_root\_OEM\_issue\_devices.zip, you have copied earlier, select desired root method and select 'OEM Patch' option if your device have OEM issue. If you are not sure about this then better select 'OEM Patch', this will prevent losing OEM unlock option and so prevent 'custom binary error'

15. Select one of rooting method in aroma (superSu/Magisk)
16. For SuperSU to work select kernel option (patch stock kernel)

17.Once flash successfully finish, Reboot to System If you have selected Magisk then Magisk app may appear in drawer after one reboot.

Open settings - Developer option - Look for OEM Unlock option. If it is there, it is safe to reboot device.

---
Tags: rooting, 8.0-oreo
---


# Question
Title: Why do I only get push notifications when I turn my phone on?
I rely on a specific app's push notifications, but if my phone has been sitting on the table for a while I don't receive the notifications when they come in.

Whenever I pick up the phone and press the power button to turn the screen on, then I suddenly receive all the notifications from this app and from other apps too, including gmail. I turn on the phone and suddenly get the push notifications from the app and also push notifications from gmail about new emails.

If I have recently used the phone, then I will receive notifications at any time.

So it seems like the phone is going into some kind of sleep mode after some number of minutes.

What exactly is this sleep mode and how many minutes does it take to turn on? And how can I disable this sleep mode so that I always receive push notifications immediately?

# Answer
This is most likely caused by a setting that's intended to reduce battery and service usage by turning off your data and/or wifi connection while you're not using the phone.

There's a few settings you should toggle:

1: `Settings -> Power -> Sleep Mode`
This is on by default and causes the device to turn off the data connection during longer sleep periods, meaning: When your display is off for a while it will turn off data (**this includes wifi**) and you won't be able to receive notifications anymore.

2: `Settings -> WiFi -> Menu -> Advanced -> Keep Wi-Fi on during sleep`
Change this to **Always** \- Other options are "Never" and "Only when plugged in" (to the charger). If not set to "Always", your phone does the same as above. This is wifi only.

3: `Settings -> More -> Wireless & networks -> Usage -> Menu`
Here, turn off the "Restrict background data" feature. Depending on your version of Android you can choose in detail which apps you want to allow in the background, and which not. Apps which aren't allowed an internet connection in the background won't receive notifications.

4: In case you're using a power saver (In my case: `Settings -> Power -> Power saver`) you should check the settings for it too. Mine has the option to "Put data connection to sleep when screen is off" - If you have such setting you should turn this off too.

Please note that your settings names may differ slightly from mine (e.g. "Power" could be called "Battery" and your "Data Usage" settings might be somewhere else) so you might have to look around a bit, the feature we're looking for should be called the same though.
> 5 votes

---
Tags: standby, do-not-disturb
---


# Question
Title: Do Samsung batteries actually charge to 100% capacity?
My understanding on Li-on batteries is that they don't like to be charged to 100% capacity and that it can prematurely degrade the battery. Something to do with voltage increasing and heat at the last 10% charging capacity? Do Samsung allow their batteries to be charged to an actual 100% capacity or do they actually only charge to 80% but appear as 100% to the user/consumer?

# Answer
> 0 votes
First, a battery is not like a watter bottle with a clear, definite capacity. It's more like a balloon that you can charge more than it's designed for, but if you overcharge it, it gets damaged. There's a threshold that the battery manufacturer thinks "safe to charge to", and that's what you're presented with.

---
Tags: battery-life
---


title: WiFi Connection Problem!

text:
# Question
Title: WiFi Connection Problem!
I have an an android phone. The problem is that when I connect my phone, which is android Jelly Bean, to my Wi-Fi connection it works and the internet connection doesn't have any issues.

However, when I open my PC the phone loses the connection and no internet is established on the phone, while it works at the same time, very good on the PC and any other phone connected on the Wi-Fi. I hope you help me find the cause.

I tried to find the issue but I couldn't! Thanks in Advance

# Answer
> 0 votes
It seems that you have allowed only one device to be connected at a time in your `WIFI`modem, kindly check that there is an option in your modem of connected devices in which you have selected 1, change it to as maximum as you can and then try

---
Tags: wi-fi, connection-issues
---


# Question
Title: Only my phone cannot connect to only one specific WiFi
I've seen plenty of problems where people's phones can't detect any WiFi networks, or if a particular router can't connect with mobiles, but I don't have any of those problems. My problem is very specific: My office WiFi is not visible on my phones WiFi list, but everyone else's phones can connect just fine. However, my phone can connect to every other WiFi with no problem. In fact, every other WiFi (21 of them) on my laptops list is also visible on my phone. It is *only* my office WiFi which is not visible. This happened after a WiFi upgrade a few months ago. Does anyone have any idea what could be causing this?

Android version: 6.0

Phone: Moto G 2nd generation

# Answer
> 0 votes
This happens quite a few times. According to my observations. I have noticed the main reason behind this is entering a wrong key (password) to the wifi network which makes it temporarily disabled from the wifi list of the phone. Try forgetting the network which you may have connected once and reconnect to the same network with correct password.

---
Tags: wi-fi
---


# Question
Title: Why does my Nexus 7 (1st gen) never let me copy my files to my PC?
I have a 1st gen Nexus 7 and I've been having trouble copying files to and from my Nexus 7.

The first problem is that when I plug my N7 into my Windows 7 PC, using the factory cable, the device shows up in My Computer, then immediately disconnects, then reconnects then disconnects and finally connects. This is so infuriating as for about 15 seconds it's just showing then disappearing constantly.

Once its' finally connected, I'll navigate to a file and drag it to my PC, to copy. As soon as that happens, an error box saying "A device attached to the system is not functioning". Then the explorer window disappears and my device has to reconnect.

It's driving me mad, it's not worked for about 6 months and I'm at the point of smashing it with a hammer. I've completely re-installed Android from Google's stock ROM. I've re-installed the drivers on my PC, got rid of the ADB drivers.

Any ideas?

# Answer
> 1 votes
I was having a similar problem. What I did was install ES Explorer on my Android and use the LAN option. On the PC I setup a share folder(s). In ES Explorer I went to the folder with the file(s) I wanted to transfer, I copied them. From there I went to LAN page and tapped on search, takes a few seconds, then tapped on icon for my PC (192.168.x.x.x). Then choose where I want to put the file. *Real easy work around*

You can also use ES Explorer to transfer between other devices (wifi hotspot, Bluetooth, FTP...)

Good luck!!!

# Answer
> 0 votes
First off I wholeheartedly agree this isn't a cable issue. There are all sorts of bugs I'm finding with android kitkat. I also got this error. I was copying about 5 folders of music and a single song. Two folders copied fine before i got the error. Brute force re-attempt and the second time it started but timed out, at which point it lost connection to computer.

I had to reenter the password to unlock the device and it showed in windows again. This time, instead of letting the screen timeout, I purposely pressed the power button to put the screen to sleep. This time the connection stayed and the transfer completed successfully.

Try turning the screen off after it is connected to the computer.

# Answer
> 0 votes
In addition to FTP server for file transfer, you can also try an app like Airdroid or ES File Explorer which will allow you to transfer files using wifi. MTP protocol is cumbersome and not very stable. There might be an issue with Nexus drivers on your PC. Have you tried copying from another PC?

# Answer
> 0 votes
This problem is related to drivers installed by windows for the usb to nexus, there are solutions for the nexus 4 and 5 which require you to remove this in hardware settings, and replace with someone other than microsofts driver, wifi is probably an easier solution if you have a router

# Answer
> -1 votes
This certainly isn't a cable issue, as *Raghd Hamzeh* suggets. I have (had) exactly the same problem with 2nd generation of Nexus 7 tablet. In my opinion, it is a very poor, weak and unstable MTP protocol, that you have to use on any Android 4.x, which is responsible for your problems.

The only fix or work-around to this problem (to not to break my tablet with a hammer), I found out, was as stupid as setting up local FTP server (Baby FTP Server was ideal for this kind, one-time solution) and installing FTP client to my Nexus and then copying files that way, through FTP protocol.

I know, that MTP protocol is very, very unstable and forcing users to use it (i.e. removing native USB support in Android 4.x) is a Google very not funny joke. And it thrills me, that I have to use such stupid solutions, to solve such obvious things, like copying files to my own mobile device.

# Answer
> -2 votes
Try a different USB port.. I worked beautifully for me!!!

---
Tags: usb, nexus-7
---


# Question
Title: How can I view the timestamp for History items in Firefox Android?
I need to view the exact times I visited certain pages in Firefox mobile for Android. Is there a way to do this, or export the data to view it somehow?

# Answer
Here's an idea:

First, you need to setup Firefox Sync. It's simple: here's the Mozilla help page, or you can search for one of the many tutorials.

Once you set that up you will have your history (and bookmarks, tabs, etc.) synced between your android device's Firefox and Firefox on your PC.

On your PC in Firefox open the history (`Menu` -\> `History` -\> `Show all history`).
In that window's menu bar go to `Views` -\> `Show Columns` -\> `Most Recent Visit`.

Now you can see the page there in the history with the exact time of the last visit next to it.
> 4 votes

---
Tags: firefox-for-android, history
---


# Question
Title: How to SUPPRESS "Unfortunately [app] has stopped" messages?
I'm not trying to fix this error for any particular app. I'm just trying to fully suppress it globally because it's completely useless and very distracting to me whenever it occurs.

How can I make my phone stop popping up "unfortunately \[blah\] has stopped" error messages whenever something crashes? (I have root permissions so I can edit anything necessary.)

# Answer
You can't (without customizing the code). The relevant code is in the Activity Manager (see `crashApplication()` and `handleAppCrashLocked()`) and it only suppresses these crash messages in 2 cases:

1. The app crashed too soon since the last crash
2. The app has crashed too many times total
> 9 votes

# Answer
As stated by Matthew, you cannot change this behavior without rebuild the AOSP.

Apart from customizing `ActivityManagerService.java`, you can also change `AppErrorDialog.java`: this class implements the dialog and it's already designed to dismiss itself after a timeout, which is quite longer (5 min in Marshmallow). You can make it shorter by lowering `DISMISS_TIMEOUT`, e.g. to a few seconds, and have a less intrusive popup
> 3 votes

---
Tags: cyanogenmod, 4.4-kitkat, crashes, oneplus-one, crash-reports
---


# Question
Title: How to get Google (Play) Services on Huawei phones bought in China?
I have bought a Huawei Nova 3e (aka Huawei P20 Lite) from China but it does not include Google Play Store / Gmail and other Google services.

I have tried several things

* Installing and running "Google Installer" (version 1 and 2.0)
* Installation Google Framework, Google Play Services, etc. in different orders (as seen on different websites), either by copying from a phone with a working Google Play Store or from apps.evozi.com

Previously, I was using some Xiaomi and I had to install a Global ROM which included Google stuff.

Shall I also install a new ROM on my Huawei phone?

Or shall I root it?

Thanks

# Answer
I spent 3 days struggling to solve the issue.

The trick has been suggested by a friend who is working in the phone industry in China as developer: you need to install **Core GMS Packages**.

There is an app which helps to install the GMS (*gmsinstaller.apk*): running it will download what you need and install it during a reboot phase.

I have found the information, as well as a link for the app, here: https://www.skmlifestyle.com/destinations/china/living-in-suzhou-jiangsu-china/core-gms-package-for-huawei-android-phones-google-play-services-apk-download/

There might other ways to download this app somewhere on the web.

Cheers
> 1 votes

---
Tags: google-play-store, huawei, google-play-services
---


# Question
Title: Add to contacts from recent numbers in Galaxy S9
When I am listing the recently called numbers, how do I add such a number to the contact list?

# Answer
> 1 votes
I am using the latest Samsung S8, so I will assume yours is most likely exactly the same procedure.

From the Recents list, tap the number you wish to create as a contact. Mine opens a bar just below, 'Call' with a green phone icon, 'Message' with a bubble for messaging, and 'Details' with an info icon.

Tap 'Details' for an action bar to appear at the bottom of the screen with a '+ Create Contact' label. Tap, supply data to the page presented including any Name and Location and Detail information, then tap Save which appears in the header below the notifications area of the screen.

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


# Question
Title: WI-FI And Bluetooth Doesn't Turn On - Samsung Galaxy A5 2016 A510FD
## Straight to the question:

To solve the issue I think I have two options:

1. I read on XDA that the 4 files firmwares (service repair firmwares) are needed to fix the phone, but I couldn't find that type of firmware for my model, anyone has any idea how to get those?
2. Downgrade: I'm on build 6 and there is only one update for build 6 released, that means I can't downgrade my phone to anything. I'd really like to fowngrade to build 5 firmwares, any way around this?

## Long story:

I use my phone very normally, minimal apps, no custom ROM and no root etc.

My phone is in very good condition, no damages, no drops, protective case and screen protector (I take good care of it).

I was watching YouTube then Wi-Fi suddenly disconnected and it just doesn't turn back on, the circle-status-bar icon just keeps rotating right next to the Wi-Fi toggle switch and it says: "Turning Wi-Fi On" (or similar, my phone is not in English).

When I reboot the phone, the wifi state is on (though it's not on) switching Airplane mode does not change Wi-Fi state. Toggling Wi-Fi icon from Quick Lunch menu (Notification Menu) switches the on state of Wi-Fi to off, toggling again, switches it to the "Turning Wi-Fi on" mode.

Here's what I've tried so far with no avail:

1. Rebooting phone a couple of times.
2. Resetting network settings (+resetting both sim-cards networks)
3. Resetting all settings.
4. Booting into stock recovery and wiping cache.
5. Backing up my data, removing all accounts (to prevent anti-theft lock-down), booting into stock recovery and wiping data (factory reset).
6. I tried `adb shell`, `dmesg` and I searched for "wifi" in the output, here's the result:

```
Line 125: [ 1407.084890] I[0:WifiStateMachin: 5871] mif: LNK-TX(16): fc
eb 0b 00 07 00 1b 00 0a 50 02 01 c0 ff ff ff
Line 347: [ 1445.061702]  [0:         mc_log: 2225] MobiCore mcd: d01|TZ
DB Utils: Wifi UID: 1010 Per user range: 100000 System UID: 1000
Line 518: [ 1447.799328]  [3:         mc_log: 2225] MobiCore mcd: d01|TZ
DB Utils: Wifi UID: 1010 Per user range: 100000 System UID: 1000

```
7. Redid number 5, but this time I removed SD card and both sim cards before factory reset.
8. A website suggested to have all Wi-Fi devices turned off, I turned off my router.
9. Tried a soft-reset on my phone in those first steps that I forgot to mention, a website said that it is the equivalent of removing the battery and re-plugging it for non-removable battery phones.
10. I watched this video: https://www.youtube.com/watch?v=F2K6AhkN98Y and since I never use bluetooth, I never checked but now I did and it turns out, bluetooth doesn't turn on as well... hardware problem? When I toggle the BT switch, the toggle moves but doesn't change to blue color, when I press back to previous window then go back to BT setting window, the toggle is off.
11. My phone already had the latest firmware, so I downloaded the same (latest) firmware from sammobile.com and flashed with AP mode from Odin 3.12.3 and I wiped cache and data (factory reset) from stock recovery.
12. Turning BT on from \*#7353# (Quick Test Menu) just shows" Bluetooth is being turned on Please Wait..." and it just hangs there.
13. Installed TWRP with Odin, and installed a custom ROM https://forum.xda-developers.com/samsung-a-series/development/rom-resurrection-remix-rr-v6-unofficial-t3765542 with TWRP. Wi-Fi doesn't want to turn on.
14. I even tried this custom ROM https://forum.xda-developers.com/samsung-a-series/development/rom-advanced-seven-v1-3-t3516980 it still didn't work.

---

Sources for my troubleshoots:

https://thedroidguy.com/2018/08/fix-samsung-galaxy-a5-2017-can-no-longer-connect-wi-fi-troubleshooting-guide-1074378

https://www.technobezz.com/turn-wifi-on-wont-android-samsung/

https://www.ifixit.com/Answers/View/321336/Cannot+%22Turn+ON%22+Wifi+and+Bluetooth.

https://updato.com/how-to/how-to-install-an-official-samsung-stock-firmware-using-odin

https://www.youtube.com/watch?v=m3hXULbrCYc

# Answer
> 0 votes
After all the hard work, finally I was able to resolve the issue! It's unbelievable for me and I'm so happy. So for anyone having the same issue just follow along this answer to get your Wifi and Bluetooth back working again on your Samsung Galaxy A Series device. The method that I am going to explain has worked fine on my A5 2016 Dual Sim A510FD.

Before we begin I recommend you to check this link, it has some good info on how to resolve the issue if you're not interested in reinstalling your firmware as a first step. https://forums.androidcentral.com/samsung-galaxy-s4-active/294093-please-help-my-galaxy-s4-wont-let-me-enable-wi-fi.html

---

## Finding the right firmware for your device

Samsung firmwares are of two types:

Type 1: They come in a zip file which will include a single `tar.md5` file, this firmware type did not fix the problem, so if you downloaded this type of firmware, don't bother flashing.

Type 2: These are called Service Repair Firmwares and they contain 4 `tar.md5` files and one `.pit` file, we will only need the former `tar.md5` files.

Please see: What is the difference between Samsung 4 files(Repairing firmware) and Single firmware file for flashing?

Now, the Type 2 are really hard to find if you're not willing to pay any money for them, your best bet is to try https://www.sammobile.com or https://updato.com/ or search forums on https://forum.xda-developers.com for your device. If you still can't find them, then you have to make a request or ask someone you know to help you out.

Samsung has some tight security on the matter of FRP locks, thus, downgrading to a lower binary number is not going to be possible (even if you only flash AP and CSC and exclude BL and CP files with odin). Go to Settings -\> About -\> Software info and write down your build number, the first number is your binary number, for example if you're on A510FXXU6CRH2 which the binary number will be 6, you can't downgrade to A510FXXU5CRG3 since for the latter the binary number is 5. Find the correct firmware based on your location and choose firmwares with same or higher binary number.

Also don't forget to go to developer options and turn on OEM unlock, and remove all google and Samsung accounts from your device, to prevent getting locked out of your device.

## Wiping your device, Installing new stock OS

Download Odin 3.12.3 from https://odindownload.com/ (This is the version that I used but I also had no problem flashing with 3.07 and 3.13.1.

At all steps of working with Odin, make sure `Re-Partition` option is NOT ticked.

Download the correct version of TWRP for your device and flash it using AP slot with Odin.

Power off your phone and hold Power, Vol Up and Home keys at the same time to boot into TWRP, click on Wipe, Advanced Wipe and wipe everything except Micro SD and USB OTG.

Reboot and hold Power, Vol Down and Home keys to boot into download mode, and flash the 4 files of your downloaded firmware with Odin.

Enjoy Wi-Fi/Bluetooth! :D

---

Update 1: I forgot to edit sooner, but this method only worked for some hours and then I lost Wifi and Bluetooth again

---

Update 2: It's been a year since I wrote this Q&A, I didn't have Wifi and Bluetooth for a year!!

But 2 months ago, I bought a new modem router for my apartment, some times during this period I realized Bluetooth was turned on, I didn't pay attention because I didn't want to waste time fiddling with it, I knew it was a lost cause, but after some time I realized Wifi also turned on by itself!

So now I've been using Wifi and Bluetooth for a solid month without any issues! I believe the problem was my old modem router which was a D-Link 2640U which is 9 years old! My suggestion for you is to get a new router!

# Answer
> 0 votes
If the factory reset didn't work I would probably get it warrantied. It seems like a hardware issue.

---
Tags: wi-fi, samsung, samsung-galaxy-a5
---


# Question
Title: Is there a way to turn my device on while it's stuck in a boot loop due to a broken power key?
I have this old LG Nexus 5 with a broken power key laying around and I want to access storage now. Problem is whenever I hold down the power button it goes into an infinite boot loop. Gets to various lengths of the android boot animation but always fails and starts over.

I know for a fact that the phone has USB debugging enabled. Phone is not rooted.
I have tried using ADB, however `adb devices` doesn't list anything and connecting it via USB automatically starts the boot loop without me even holding down the power button.

Is there anything I can do other than take it to some shop?

Thanks in advance

# Answer
Got lucky and managed to turn it on for just long enough to get my data.
> -1 votes

---
Tags: adb, boot-loop, nexus-5
---


# Question
Title: How can I view detailed information on a WiFi connection on an Android device?
**Background / Purpose** I'm setting up a wireless network in which a Raspberry Pi works as the router & access point (following Adafruit's Guide). After getting it all set up, I tested the network by connecting my Samsung S6 to the new wireless network (having disabled mobile data, of course), and successfully accessed the internet (and double-checked by watching the RasPi's syslog).

I'm having trouble connecting other devices to the network, and I think it may be due to settings or parameters I'm using but known nothing about (`pairwise` (TKIP?), `proto` (WPA2?), etc.).

I'm not asking about those settings & such, I know that's a question for a different forum -- rather, I want to know if it's possible to get detailed information from Android about the WiFi network it's connected to. Perhaps through the developer/debug mode, or using an external tool or application connected to or installed on the Android device?

# Answer
> 4 votes
From most (all?) Android handsets you can dial `*#*#4636#*#*` which will display a wifi menu with lots of detailed information regarding the wireless status.

---
Tags: wi-fi, networking
---


# Question
Title: Recover Nexus 6P that won't boot past Google logo
So I had a random reboot while debugging apps with android studio and after that device doesnt boot past Google logo. Factory reset and cache wipe do not help.

Eventually I found this guide https://drive.google.com/file/d/0Bz6x7k-VkpUJRjl6WjRhVmdXU0E/view. But The problem is that I can't complete step 16 because device is enrolled in Adnroid beta program so there is no public image available that I need (NPG05F). I've found https://developer.android.com/preview/download-712.html but there is no Nexus 6P image listed for some reason. Will it be added soon?

Device OS is 7.1.2 (angler/NPG05F)

So is there anything I can do to get my device back?

# Answer
ROMS for your device and instructions to flash them can be found here: https://developers.google.com/android/images

Hope this helps!
> 1 votes

# Answer
What I did when my Nexus 6P didn´t boot past Google logo and entered in a loop that never passed that state, was:

First, I entered in the Bootload section pressing at the same time the Power button + the volume-down button.

Then, pressing twice the volumen-down button I chose the Recovery-Mode option. (You confirm it by pressing the Power button)

After that, an Android icon with an exclamation sign logo will appear and below this a statement that says "no commands" or something like that.

Now, to enter the Recovery-Mode you have to press, not at the same time, but first the Power button and without releasing it press the VOLUME-UP button, and a screen with many options will appear.

I selected the "Wipe Data/Factory reset" option and when it finished, I turned the phone off.

Then I turned it on but it kept booting and rebooting never passing the Google logo, so I left it on my desk rebooting and went to my job. When I came back, after a few hours, the phone was perfect and had the screen they have when you for the first time turn it on and says something like "Welcome, choose language".

Summary, reset it to Factory and turn it off. After that turn it on and go for a walk or whatever but leave it rebooting a couple of hours. It worked for me and I hope it can work for other people too.

Greetings!
> 1 votes

---
Tags: boot, nexus-6p
---


# Question
Title: How to repartition Google Nexus 4 (aka. LG E960)?
Over a month ago, LineageOS rolled out Oreo (I think) update for the Nexus 4 (mako), but there's a catch - the system now takes up so much space, that even the nano version of open-gapps package can no longer be installed without manually removing application in-between the installations. I thought, rather than shooting down apps from default LineageOS, I would rather bump the **system** partition's size by another 200 MiB.

I haven't attempted anything yet, as information how to achieve this on a snapdragon device seems to be very sparse - is it even possible? I've done repartitioning on a Mediatek device, where doing so involved hand-editing an MBR-like partition table and uploading it to the device using SP-flashtool. Is there a similar, or perhaps an easier-to-use tool for Snapdragon devices?

P.S. - I've read the answers/suggestions to question 65781, and none of them are helpful to my question.

# Answer
> 0 votes
As mentioned above, the Nexus 4 uses plain GPT on its storage to split it up into partitions. Any tool able to modify GPT should work. By far the biggest problem for me was *getting* an appropriate tool - the `fdisk` bundled with TWRP can only list partitions on a GPT disk, without making any changes. I prefer not to use `parted` (available from Termux), due to its inability to display/modify partition GUIDs (may have changed since the last time I checked).

Looking back, it may be possible to dump the entire storage to a computer, make changes there, and put the whole thing back, but I specifically wanted to avoid writing over critical partitions (loaders, kernel, etc.), so I set out to get `gdisk` for android.

I eventually found this thread, where the author prepared an archive with `gdisk` and a few other tools.

## Requirements:

## Overview

The relevant partitions (`system` and `userdata`) are 21st and 23rd on the storage. The 22nd partition is just `cache`, so there's no harm nuking it, and making a new one after data from the other 2 are in place.

The TL;DR version of the procedure is:

* pull the data partition to computer

```
[PC] adb pull /dev/block/mmcblk0p23 userdata.img

```
* put gdisk on the phone, and use it to modify the partition table - grow `system` while retaining its starting sector, shrink `userdata` by the same amount, and re-create `cache` between them

```
[PC] adb push gdisk /tmp/
[adb-shell] /tmp/gdisk /dev/block/mmcblk0
...

```
* use `resize2fs` on the phone with the `system` partition to grow it
* use `resize2fs`on the computer with the `userdata` partition's image to shrink it to appropriate size
* push the modified `data` image to the phone

```
[PC] adb push userdata.img /dev/block/mmcblk0p23

```
* format the cache partition, reboot into system

---
Tags: nexus-4, partitions
---


# Question
Title: Can anyone identify the S notification icon
Someone please help me identify the S at the top left corner of my picture

# Answer
I figured it out finally. It is Shopkick app.
> -1 votes

---
Tags: notification-icons
---


title: Recover hidden pictures from my system

text:
# Question
Title: Recover hidden pictures from my system
I am currently using Calculator Vault to hide my photos and would like to recover all my photos. But my system does not want to start since this morning. I have the password with which I lock it.

Where can I found all my pictures by the file manager ?

Thanks by advance for your help!

# Answer
From the Google play page of the app-

> Q - I uninstalled this app and again installed. Can I get my locked pictures back? A - You need to unlock pictures before uninstall. Files are not available in new install.

Unless you can get the phone working to access the app again you won't be able to decrypt the files. Decryption won't be possible on your computer too.
> 0 votes

---
Tags: data-recovery, file-system, images, hidden, gallery-vault
---


# Question
Title: Music playback stops when the phone sleeps
I got a new Sony Xperia V (LT25i). When listening to music on the phone it stops playing music as soon as the phone goes into sleep. I have tried both Walkman player and 3 and both give the same problem.

Clarifications:

* I play from SD card and internal storage.
* It is a new phone, there is no app killers running that I know of.

# Answer
> 1 votes
If you're *streaming* music via your WiFi connection, you might wish to check your WiFi settings, and there go to "Advanced settings". Here is defined how WiFi should behave when the phone goes to "standby". The default usually is to disable WiFi, so you might want to set it to be kept alive:

WiFi advanced settings and sleep policy

While screens might look a little different depending on the device being used, these screenshots should help you identifying the settings :)

# Answer
> 1 votes
I realise this is an older thread, but have had the problem using WiFi to stream from Huawei phone to wireless speakers. Music stops when phone goes to sleep, but little you can do to phone except in developer mode turn stay awake on while charging. Finally solved problems by installing "Insomnia" a free simple app that switches between sleep on or off. Other stay awake apps just didn't work.... Happy days!

# Answer
> -1 votes
I was having a similar problem but was playing mp3s from my SD card. I used the vlc player instead and the problem was resolved :)

---
Tags: music, standby
---


title: Problem playing music via Chromecast

text:
# Question
Title: Problem playing music via Chromecast
In the last couple of Android updates I've found an issue when playing music via the Chromecast device on my TV. It seems once the screen sleeps the phone disconnects from the Chromecast and doesn't continue playing music. If the power button is pressed quickly it will usually start to play again.

The only way I've found to resolve this so far is to set my screen to never time out and turn the brightness down to minimum, but this not an ideal fix.

I'm using the built in music app on my Xperia Z5. I've tried other apps but they all do the same thing. There was an app called N7 that when used along with Toaster Cast, worked okay, but then Toaster, Cast stopped working.

Does anyone know how to fix this. I don't think that the phone is disconnecting from the router as I still get notifications when the screen is off.

# Answer
Had similar issue when streaming music from phone to wireless speakers via wifi. Phone, unfortunately, wont allow sleep mode to be turned off completely (only when charging phone). Best solution I have is using app called INSOMNIA. It allows you to switch sleep mode off completely. Worked with Huawei P8 lite.
> 0 votes

---
Tags: wi-fi, music, chromecast, sony-xperia-z5
---


# Question
Title: Wifi status 'Connected, no internet'. Can access all internet resources I've tested
Related question

I've put a new router into the office to run our 'guest' wireless network. It's a FRITZ!box 3490.

Android devices connected via both 2.4 and 5G are showing as 'connected, no internet' except that they are all able to access the internet.

* What mechanism / method does android use to determine 'internet access'

Everything I've tested (`ICMP/HTTP(S)/DNS/Outlook [SMTP]/Sharepoint/YouTube/Plex/Spotify/Various Google Services`) all work as expected so it isn't really a problem but I've had a steady stream of people come over and tell me that they can't get on the network (even though they can if they'd just try it).

From the above linked question it is mentioned that the android device calls home to google to confirm 'internet access'. This must be being blocked but I can't see what traffic is blocked / not routing to cause this behaviour.

Sadly the new routers firewall interface leaves *much* to be desired so it's not clear whats being restricted, even after I've set everything to 'Unrestricted' in the router firewall interface.

* Is there a list of google systems/services/addresses that need to be available to get this working?

**EDIT.**
From the linked question a hidden comment suggests that the android devices are attempting to connect to https://google.com/generate\_204

Whilst connected to a network that is ok i get the following from a cURL against that page:

```
> curl http://google.com/generate_204
HTTP/1.1 204 No Content
Content-Length: 0
Date: Mon, 10 Sep 2018 11:21:24 GMT

```

Whilst connected to the network with the problem

```
> curl http://google.com/generate_204

```

There is no output on the second curl. This must be the root of the issue, now to work out where/why my router is blocking this.

# Answer
> 1 votes
Ashamed to say rebooting the router fixed it.

---
Tags: wi-fi, networking, 8.1-oreo
---


# Question
Title: How to disable pin/pattern lock in android device
I am not sure this is the right place to ask this question.? I have enabled pattern lock in my android device. Just for curiosity I am trying to disable and keep only swipe to unlock option but I can't do that. Is there a way I can disable these patter/pin lock in device?

Thanks

# Answer
> 10 votes
This is the right place, but it seams easier for people to help if they know your device as pretty much every settings screen is different for every device manufacturer.

For instance in my G4 I can:

1. Go to Settings
2. Go to Display
3. Go to Lock screen
4. Select from (None, Swipe, Pattern, Pin, Password)

As it seams None is disabled for you, I'm guessing you had an app installed that required an Administrative rights. Go to settings -\> General -\> Security -\> Phone administrators -\> Remove the app that made you set the screen lock from the administrators list (Or if it was a certificate from an app, go to Certificate Management and clear credentials)

# Answer
> 1 votes
I have rooted device. Device is connected to computer with USB cable. And those commands helped me out:

```
adb devices
adb shell
cd /data/system
su
rm *.key
reboot

```

Credit to: https://appuals.com/delete-android-security-pin/

---
Tags: lock-screens, security, pattern-lock
---


# Question
Title: Install TWRP to only one slot or offline boot.img file, not both
I want to install TWRP on my phone that uses the A/B partition schema. The official TWRP installer ZIP by default installs to both `boot_a` and `boot_b`. This always breaks the system in the inactive slot because I install Magisk after flashing/OTA.

Can I install TWRP to only one slot, or an offline `boot.img` file (like Magisk Manager supports)?

# Answer
So this way, I ended up creating a script on my own.

Lucky enough, installing TWRP to `boot.img` isn't hard at all. The install script in TWRP just replaces `ramdisk.cpio` with the one `ramdisk-twrp.cpio` provided in the ZIP.

The effective part of the script is as following, root is of course required.

```
ln -s /system/bin/linker64 /sbin/linker
cp <path-to-magiskboot> /sbin/magiskboot
mkdir /data/local/tmp/twrp
cd /data/local/tmp/twrp
/sbin/magiskboot --unpack <path-to-boot.img>
cat <path-to-[ramdisk-twrp.cpio]> > ramdisk.cpio
/sbin/magiskboot --repack boot.img
cp new-boot.img /sdcard/new-boot.img

```

Now the TWRP-installed `new-boot.img` is located at `/sdcard/`.

To install to a single slot, `dd` the boot image out and apply the same process as shown above and `dd` the new image back.
> 3 votes

---
Tags: recovery-mode, twrp, ab-partition
---