# Question
Title: How do I install CyanogenMod on the Samsung Galaxy Tab Pro 10.1 Wi-Fi?
I put off buying a tablet or smartphone, because they seem like a kind of toy (not bad per se) and a way for big companies to use you. Even a laptop is not always practical though, and modern tablets are pretty powerful. After I found out that there are quality builds like CyanogenMod (CM) that can give you control over the device, I selected the Galaxy Tab Pro 10.1 Wi-Fi for its CM support, good reviews and current low price.

Unfortunately, I found out after the fact that the install instructions at the CyanogenMod (CM) wiki don't work: http://wiki.cyanogenmod.org/w/Install\_CM\_for\_picassowifi

This is according to CM users:

forum.cyanogenmod.org/topic/102253-help-flashing-using-heimdall/ http://forum.cyanogenmod.org/topic/109417-newbie-question/

In the second link, "the recommended method on the wiki for installing a custom recovery (via Heimdall) indeed does not work on the tab pro 10."

After many hours of research, preparation and finally success, I provide my own answer below in the form of a detailed, step-by-step How-To, because the information was scattered. Hopefully this can save someone time, or encourage someone to try it out. It's totally worth it.

I hope that some experienced users will vet my answer to correct any misconceptions and add helpful details and explanations.

NB: I currently don't have enough reputation to post more than two links.

# Answer
> 5 votes
# Overview

One user reported a method to do this on the CyanogenMod forums back in January, but it isn't exactly detailed.

Similarly, my path has three main steps, with varying levels of detail:

1. Install a custom recovery. I used TWRP.
2. Wipe the device.
3. Install CyanogenMod.

**Root?**
Note that I did not root the device. This is because I used Odin to install the custom recovery (TWRP). An alternative way would be to root the device and then install TWRP, without Odin; however, I shied away from rooting. There is more than one way to go about this.

**Terminology**
I do not explain certain concepts and terminology, but most are available here:

**Requirements**

* One Samsung Galaxy Tab Pro 10.1 Wi-Fi
* A willingness to void your warranty
* A PC or Mac with admin rights for flashing the custom recovery
* A USB data connection cable An external SD card could be helpful

Furthermore, these instructions assume you have the stock Samsung ROM installed. If you've flashed before, probably you don't need this guide or can use it to figure out how to adapt it.

# Step 0: Familiarize

If you are new to flashing, read through these instructions and some other resources (see below and search your own) to familiarize yourself before going ahead. In my case, I read for about a week before I decided to act.

# Step 1: Play and charge

If your device is new, turn it on and play around with it. This way you can familiarize yourself with the stock ROM to see what you will not miss later once CyanogenMod is installed. Since I'm new to tablets and smartphones, I didn't hate TouchWiz, but the stock ROM did feel restrictive. Personally, I didn't even turn on Wi-Fi at this point, much less enter any account details or install apps.

Most importantly, charge the battery to at least 60%. I just went ahead and charged it all the way. If the battery were to die while you're flashing later, it would brick your device.

# Step 2: Install a custom recovery

http://wiki.cyanogenmod.org/w/All\_About\_Recovery\_Images

The custom recovery will allow you to install CyanogenMod. This is the most critical and the most involved step. I've divided it into several small steps and provided lots of detail in an attempt to anticipate questions and reduce confusion.

*Note on the choice of custom recovery:*
The CM wiki instructions suggest using ClockworkMod (CWM) or TeamWin Recovery Project (TWRP). From reading on the XDA forums, I gathered that TWRP is both easy to use—it uses touch buttons rather than using the volume and power buttons with CWM—and most importantly that it works well. Having used it, I can confirm that it not only works, it provides useful feedback and an intuitive interface. I haven't used CWM, but it is also known to work.

The following four steps (2.1 through 2.4) can be followed in any order.

## 2.1 Enable USB debugging

I assume your device is using the stock Samsung ROM. If so, select Settings, then General (top of screen) and select About Device (on the left, probably have to scroll down). Look for "Build number" and tap it seven times, and it will display "You are now a developer."

There is now a new menu entry "Developer options." Select it and then tick "USB debugging" and select OK when asked whether to allow. Now you can power off the device.

## 2.2 Install USB drivers on your computer

You need these to communicate with your device via USB cable. This guide provides instructions here for Windows 7. I understand that it also works on Mac OS X. (I don't use anything Apple.) GNU/Linux, though indicated in the CM wiki, is out of luck since Heimdall is known to not work (see the threads linked in the question).

There is a good guide for installing the drivers on Windows, the key parts of which are reproduced below. As an aside, Samsung Kies didn't work for me.

2.2.1 Download the Samsung USB drivers
The link from the android.gs guide

This provides SAMSUNG\_USB\_Driver\_for\_Mobile\_Phones\_v1.5.25.0-retail.exe You can get them directly from Samsung by entering your device, selecting Product Support and clicking on USB drivers, but companies like to change their web pages and drop support, so no guarantees. This provides SAMSUNG\_USB\_Driver\_for\_Mobile\_Phones\_v1.5.45.0.exe.

2.2.2 Scan the drivers with your anti-malware program (optional)
My scan gave no indication of a problem.

2.2.3 Install the driver package
Launch the exe file you just downloaded and provide the administrator password when prompted, follow the on-screen instructions.

2.2.4 Reboot
After completion of the install, reboot the machine. You'd probably never have guessed this one.

## 2.3 Install Odin

According to the instructions on the TWRP website there are two methods of installing TWRP that require you to root the tablet, which this guide avoids, and one that doesn't require root but does require Odin. A way with just FOSS would be better, but I did go this path, which is a weird one. Odin is leaked software, so there is no official download site. Fight a web site you can trust to obtain it; one possibility is another android.gs article. The version that worked for me is Odin 3.10.6. Odin 3.10.7 is also available, but not necessary.

If you mistrust using Odin, look at the instructions on the TWRP site, or use CWM.

2.3.1 Download Odin
Search for yourself, although there is a link in this guide (June 16, 2015). The link from that android.gs guide is this.
Wherever you download Odin from, be sure it's a safe download!

2.3.2 Extract archive and scan with anti-malware
The program is in a zip file, whose contents you can extract and scan with anti-malware.

# 2.4 Download the TWRP image

This is an easy one. Go here

Under Download Links, click "Primary (Recommended)" and then the most recent version with the .tar filename extension. Currently, this is `twrp-2.8.7.0-picassowifi.img.tar` (9 MB).

# 2.5 Install TWRP with Odin

All of the above steps should be completed before continuing with this step. Your tablet should be charged and turned off.

2.5.1 Launch Odin
On your PC, navigate to where you extracted (unzipped) the Odin files, and launch the executable. You don't need administrator rights. At least, I didn't.

2.5.2 Plug the USB cable into the PC
I had success with the white cable delivered with the device, but that may be different for you. It needs to be a data cable; some are only designed for charging. Do not plug the cable into the tablet yet.

2.5.3 Boot into download mode
The Galaxy Tab Pro 10.1 Wi-Fi has an unlocked bootloader, which is one reason we don't have to root it. It thus comes with a unique boot mode called download mode. To enter it, press these three buttons simultaneously for five to eight seconds:

Power + volume DOWN + Home

The first two are on the top edge, the Home button is the one in the middle on the front under the screen. See for example here.

**WARNING!!!** This is your last chance to not void your warranty. Samsung has a KNOX flag on this device, an e-Fuse that you very likely cannot reset. Continuing will void your warranty. Yes, Samsung has an unlocked bootloader and then voids your warranty if you use it. To me the tablet is only worth having if I can have control over it, so Samsung makes voiding the warranty a necessity.

2.5.4 Plug in the tablet
The USB should be plugged into the PC at this point, the tablet is in download mode, and Odin is waiting to see a device. Now plug the USB cable into the tablet, connecting it to the PC. This is the moment of truth whether the USB driver was correctly loaded. I had some doubt, because Windows popped up a dialogue with the spinning blue disc, saying "Searching Windows Update" for approximately longer than I could handle. It finally did work though, and the battery had charge.

You'll know it worked when Odin's "Log" window adds a text to show the detected device: `<ID:0/003> Added!!`

That's what it read for me, anyway. Where Odin says ID:COM above several bars, there will also be a light blue background with the first tab listing `0:[COM3]`.

2.5.5 Set up Odin for flashing
Click on the Options tab to the right of Log, and make sure only the following two entries are checked:

* Auto Reboot
* F. Reset Time

The others should NOT be checked. Checking/ticking the wrong boxes here could brick your device. See here for some explanations of Odin terminology.

Now check/tick on the box next to the AP button. In earlier versions of Odin this button is apparently the same as the PDA button. Against my expectations, the BL (bootloader) button is not correct; the twrp.me instructions explicitly mention to use the PDA button (now AP). Browse to the TWRP .tar file you downloaded in step 2.4 and select it. Do not press Start yet.

2.5.6 Double-check everything
Seriously, do.

2.5.7 WAIT: Read this before pressing Start
We are about to flash TWRP to the device. The flashing goes very fast on this device, only a few seconds, and then the boot happens right away. The stock ROM will probably overwrite TWRP if allowed to boot. To prevent this, you want to boot immediately into recovery mode as described below. You need to have the tablet in your hands and be ready to press the keys as soon as you see it is rebooting.

2.5.8 Press Start and enter recovery mode
After pressing start, the tablet will soon reboot. To enter recovery mode, press and hold the following two buttons simultaneously:

Power + volume UP

If it worked, you will be greeted with the blue (in version 2.8.7 at least) TWRP splash screen.

If you missed entering recovery mode (I did the first time), Samsung will start your tablet as usual. *Don't panic.* Power down the device and repeat the preceding steps, starting with 2.5.2.

The next time you boot into download mode, you may notice the following line:
`KNOX WARRANTY VOID: 1`
Be glad that you are now out from under Samsung's oppression. :)

Congratulations. The rest is pretty painless, even fun!

# Step 3 Use TWRP to install CyanogenMod

TWRP is powerful software. Respect it, but don't be afraid. It's actually easy and fast.

## 3.1 Pick your CyanogenMod

Based on the 36-page thread on CyanogenMod 12.0 Nightlies for the Tab Pro 10.1 Wifi (picassowifi) (link), the June snapshot is stable for daily use, and that is my experience so far. (The 12.0 nightlies were discontinued sometime in April with the advent of 12.1 nightlies.) If that's the version you'd like, get the snapshot here
The CM12 June snapshot filename is `cm-12-20150626-SNAPSHOT-YNG4NAO0A0-picassowifi.zip` (231.71 MB)

Do not unzip the file. I recommend transferring it to the SD card in its own folder.

*Note on file integrity:*
Note there is a sha1 sum listed below the download. You can use this to check the integrity of the downloaded file. If you can use the PC to transfer this file to the Android storage, you can use the PC to check the file integrity after download (easy on GNU/Linux and probably on Mac, may need to download a utility on Windows). In my case, I couldn't get the PC to see the Android storage, so I ended up turning on Wi-Fi to download the CM12 snapshot directly on the device. If you want, "there's an app for that."

## 3.2 Back up (optional)

Restart the tablet in recovery mode (see 2.5.8 above), so that you are TWRP. If you want, you can back up the stock ROM to revert to in case of eventual trouble. I recommend putting this on the external SD card.

3.2.1 Press Backup

3.2.2 Set backup name (optional)
If desired, give a meaningful name; note it includes the date and build number, mine was `KOT49H.Tt520XXUAOB1`. I also clicked to enable compression (smaller file size, but takes longer) and allowed MD5 generation (for an integrity check when restoring, I believe). Use the enter key when done. (Took me a while to get this.)

3.2.3 Select Boot, Data and System

3.2.4 Swipe to Back Up
When done, return to the home menu

## 3.3 Wipe the tablet

This is a crucial step for correct flashing.

3.3.1 Press Wipe

3.3.2 Press Advanced Wipe

3.3.3 Make selections
You want these four:

* Dalvik Cache
* Cache
* Data
* System

Do not select Internal Storage or external\_sd.

3.3.4 Swipe to Wipe
This will go fast. When done, return to the home screen.

## 3.4 Install CyanogenMod

Go for it!

3.4.1 Press Install

3.4.2 Select the CM zip you prepared
You can use the Folders area on the left to navigate between external (SD card) and internal storage, wherever you stored the zip file in step 3.1. Select the file, making sure it's the right one. You can select "Zip file signature verification?," which I suspect also verifies the file integrity.

3.4.3 Swipe to Confirm Flash
Shouldn't take long, actually.

3.4.4 Return to Home menu
When done!

3.4.5 Press Reboot

3.4.6 Press System

## 3.5 Boot into CyanogenMod

You should now see the CM logo animation and walk through the device setup. Rejoice!

# Notes

*Note on GAPPS:*
I want to get away from Google and did not install the standard Google apps. If you want to do that, it's your homework.

*Note on Google leftovers:*
Unfortunately, CyanogenMod is not entirely free or open-source software—there are remnant proprietary Google components. You theoretically can remove these using a script called `freecyngn`. Sadly, I haven't been able to confirm yet that it worked on my device.
http://forum.xda-developers.com/showthread.php?t=2550769

NB: I didn't know how to take screenshots, but experienced helpers are welcome to do add images.

# Resources

# Answer
> 0 votes
Many thanks for the excellent write up. I'm surprised that this hasn't attracted more helpful comments. I found this from Google, and it certainly helped me.

One tip: To avoid the finger twisting you described in Section 2.5.7, simply disable the "Auto Reboot" option in Odin. When the flash is completed, long-press the Power button on the SM-520 to power it off, and then use Power + Volume Up + Home at your leisure to enter into recovery mode.

Note 1: I used TWRP v3.1.1-0. It crashed while performing a Nandroid backup of my existing setup. When I used the version 2.8.7-0 you used, it worked.

Note 2: CM ROM have been superseded by Lineage OS ROM.

Note 3: If you want to install Google Apps, it is best to reboot to complete the installation of the OS first, and then reboot back into TWRP to continue the installation of GApps.

---
Tags: cyanogenmod, installation, twrp
---


# Question
Title: What happens if you manually remove every launcher from your phone?
Someone on G+ is asking for help, claiming they accidentally uninstalled every launcher from their phone. He said his phone is stuck at the "company logo" when he turns his phone on (sounds like a brick to me).

He says his phone is rooted, so it's possible.

I've never done anything this dumb before (and don't plan to), so I can't verify what's going on.

If you uninstall every launcher from your Android phone, what happens when you turn it on? Will it actually refuse to boot properly if you don't have a launcher installed?

# Answer
Launcher is an app which gives interface between user and other apps.We can delete default launcher by root access.If default launcher is deleted (Assuming no other launcher is installed on phone), then OS will work but we can't access any other apps from phone and it is looks like crashed phone.

So when you reboot without a launcher it will not go to any home page because there is no launcher at all. So

```
1> It may show a blank screen
2> It may show company symbol with sound
3> Some times it shows "system stopped working" message

```

In this situation if you factory reset the phone (using boot loader) then also you will not able to get the launcher because the default app in the ROM is deleted.

To solve this you have to install ROM again you can also take necessary data backup(Using custom recovery).

You can also switch on phone and install launcher from Play Store using laptop/computer.Go to Play Store in PC and hit install on any launcher and it will install on phone.(You have to connect your phone to internet and signed in from same Google account)

You can install launcher app using a zip file. Flashing a proper zip file (which contains launcher app) in custom recovery.
> 1 votes

# Answer
Well, if your phone doesn't crash after removing the launcher, you should be fine. As long as your device comes with some kind of voice assistant, you should be able to use that to open the Play Store and then download a new launcher. You could also wait until you receive a notification from an app which will let you access the Play Store or the browser.
> 0 votes

# Answer
1. Ask your friend to call your number. If the phone rings, half the problem is solved. You can't attend call as screen is blank.
2. When that call is disconnected and you get a black screen, pull it down and activate Bluetooth. 3.ask your friend to connect via Bluetooth and send a launcher apk file via bt. 4.install the launcher apk. And enjoy.
> 0 votes

# Answer
the answer regarding having a friend call can work.

Its how im using my phone currently. Slightly different situation in that the proper launcher for ultra power saving mode is disabled, but after receiving a call I can wiggle my way into a few menus.

It at least gives access to calls and texts and can buy you time to find a proper solution.

Without the launcher though, i had to get a few things opened before ending the call or else it would revert to an unaccessable blank screen. My trick was pressing the "add call" button and from there could open contacts and a few other screens and menus. After that lock screen would finally reveal itself instead of blank screen
> 0 votes

---
Tags: launcher
---


title: In-app purchase on google play

text:
# Question
Title: In-app purchase on google play
Lets say i have an app I've recently downloaded and have made an in-app purchase on this app, if i were to uninstall this app and reinstall later on will my in-app purchase still be available? ( also same situation if i where to reboot my device)

# Answer
> 0 votes
First, a reboot will never "revert" your completed IAP, and never should it (unless serious problems with hardware that causes data loss).

When you uninstall and re-install an app (or simply clears its data), then:

* If that app supports cloud backup, your data will be recovered and nothing is lost or reverted
* If that app has no backup then:

See Consumable and non-consumable purchases.

* **Consumable** purchases are like golds, gems and timed boosts that does not last forever.
* **Non-consumable** purchases are like premium unlocks, special characters and coin doublers that lasts forever after purchase.

---
Tags: reboot, google-apps, delete, in-app-purchase
---


# Question
Title: Which filesystem does Android attach to the root directory?
I know that Android uses FAT32 for SD cards and mounts them via FUSE. But which FS is attached at **/**? Some kind of ext? ZFS?

# Answer
There is no singularly defined "Android" filesystem, so this can vary between devices. Any FS that the kernel can load drivers for is basically fair game.

By and large, you'll almost certainly find that ext4 is the most common filesystem on modern devices. Older devices may use older ext\* versions as well, or other filesystems entirely. Since everything is built on Linux, ext4 a pretty sensible choice, with solid kernel support and a good track record. You can read a bit about why this decision was made in Ars Technica's article about the switch to ext4.

Some devices have also used Samsung's Flash-Friendly File System (f2fs). Notably, several of Motorola's devices, as well as the Nexus 9, use f2fs. The goal of f2fs was to create a file system that was designed specifically with the needs of flash-based storage mediums in mind, in an attempt to maximize performance on devices using NAND chips for their primary storage medium.

This does not mean that these are the only filesystems that Android is capable of running on, however, as I noted above. Given the kernel source and the know-how, it would certainly be possible to include drivers for other filesystems in a kernel image. Android x86 supports installation on NTFS and FAT32 filesystems, for example.
> 30 votes

# Answer
YAFFS (Yet Another Flash File System) was generally used as the default file system for Android versions up to 2.3: http://www.yaffs.net/google-android

ext4 has been used ever since because of multithreading support: https://ext4.wiki.kernel.org/index.php/Main\_Page
> 4 votes

# Answer
I tried with formatting all partitions with `f2fs` then when I flashed a custom ROM, I could find, the / is formatted with `ext4fs`, when I checked the batch file which comes with ROM file is the culprit, it actually reformats the `f2fs` partition with `ext4fs`.
> 0 votes

---
Tags: root-access, file-system
---


# Question
Title: Very frequent Wifi disconnection while being in China
I'm having an issue on my Nexus 4 (Stock Android 5.1.1).

It keeps disconnecting from my Wifi. When I go back to connect, it says "No Internet access, automatic connection impossible".

I currently live in China so my guess is that Android checks if internet is available by querying a Google server, which is blocked in China so it then concludes "No Google = No Internet" and disconnects me from my Wifi.

I can't find any way to disable that Auto-Disconnect "Feature".

# Answer
> 2 votes
I know this is an old thread, but I found the solution. Enable airplane mode, then enable wifi. It will show the internet connection is down, but wifi will still work. Then you can disable airplane mode and it will stay connected to the wifi (until you leave the coverage area, then you'll probably need to do it again when you return).

# Answer
> 1 votes
My experience is that Android verifies the connection to a google server.

Guess what's blocked here (China). Right. Google.

Apparently Android's new policy is to prevent auto-connecting to trusted networks if it can't see any internet on the network. Which of course there is, may it be slower and limited to the Chinese Firewall.

So far I haven't found a way in Android to disable this check. And I'm forced to use 3rd party apps to solve this issue.

If I ever find a proper fix, I'll definitely post it here.

Screenshot - Failed to auto-connect (Click to enlarge image)

I travel here frequently, so I need this.

# Answer
> 0 votes
Check your Wifi encrytption. WEP dont seems to work , get it changed to WPA/WPA2

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


# Question
Title: Why do Android create "Shell Folders" automatically? Can I change the shell folders?
Android automatically creates these folders in primary storage:

```
Alarms
DCIM
Documents
Download
Movie
Music
Notifications
Pictures
Podcasts
Ringtones

```

They are the default "User Shell Folders" of Android (USF is a concept from Windows). There's hardly any documents or discussions on the internet. Most discussions are about MediaProvider (and Media Scanner).

Is there something like a "registry key" that controls these folders? Can I change the default location and name of them?

# Answer
Registry key is a windows concept in android these locations are handled as following

```
/**
 * Standard directory in which to place files that have been downloaded by
 * the user.  Note that this is primarily a convention for the top-level
 * public directory, you are free to download files anywhere in your own
 * private directories.  Also note that though the constant here is
 * named DIRECTORY_DOWNLOADS (plural), the actual file name is non-plural for
 * backwards compatibility reasons.
 */
public static String DIRECTORY_DOWNLOADS = "Download";

```

This code snippet is extracted from `android / platform / frameworks / base / android-<version-tag> / . / core / java / android / os / Environment.java`

So as you can see this returns a hard coded static string and I could not find any function to change it in AOSP code. So you can not change this location for all applications unless you modify the source code and build your own custom rom. For your application obviously, you can download it in its private folder also.

But some OEM had provided this capability in their rom. See this.

A work around to do so for Download folder is to download a 3rd party download manager like ES file manager. It will prompt you to choose download location for the file.
> 2 votes

---
Tags: file-system, file-management
---


# Question
Title: Android Emulator - INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113
When I try to install an `apk` file through the `monkeyrunner` Python script, getting the error `INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113`. How can I resolve this issue?

Detail of the virtual device is listed as follows:

* CPU/ARM: **x86**
* API Level: **24**
* Target: **Android 7.0 (Google Play)**

# Answer
> 0 votes
As mentioned here: INSTALL\_FAILED\_NO\_MATCHING\_ABIS when install apk:

> INSTALL\_FAILED\_NO\_MATCHING\_ABIS is when you are trying to install an app that has native libraries and it doesn't have a native library for your cpu architecture. For example if you compiled an app for armv7 and are trying to install it on an emulator that uses the Intel architecture instead it will not work

To get around this, you need to get these libraries in `/system/lib`.

This is possible though the use of `libhoudini.so` libraries. You can root your emulator and push the libraries through adb into `/system/lib`.

You can find the libraries here and the instructions are given as well.

Generally you need to do the following:

* Download a compressed package from the internet and extract it to `/ system / lib / arm` (or `/ system / lib64`, depending on whether the platform is 32-bit or 64-bit). x86 houdini libraries download link
* Second, to the directory `/proc/sys/ fs/ binfmt_misc` under the name of "register" in the file written in a string of strings to tell the Linux kernel, all use the ARM instruction set executable and dynamic library ELF. The file is opened with the houdini program, and all the ARM64 instruction set executable and dynamic library ELF files are opened with the houdini64 program (on the binfmt\_misc detailed explanation, you can refer to Linux how to specify a type of program with a specific program to open (through binfmt\_misc )
* You can remount adb as root and directly push the arm folder (with houdini libraries) to the `/system/lib` folder like so:

`adb -e push C:\Users\User25\Desktop\houdini\arm /system/lib`

(Remember to set the correct path and appropriate permissions)
* Another second option that I tried personally is to get an avd image with native arm bridge enabled already (in case you encounter problems with rooting your emulator)
* Preferably get the avd of RemixOS player or Genymotion and extract the `system.img`, `userdata.img`, `ramdisk.img` and other files like `build.prop` etc and place the in the system images folder of your emulator (e.g if the downloaded images are for an x86 avd, copy them to the system-images dir of your emulator and paste them in x86 folder of the correct api level - something like `\system-images\android-26\google_apis\x86` and create an avd based on that (this is useful for just testing you arm apps on on your x86 avd)

You should get over this error, if everything fails then just use an emulator with arm translation tools.

---
Tags: applications, adb, installation, android-emulator, native-library
---


# Question
Title: Install stock firmware on my Galaxy S5 SM-900T
I would like the correct info on how to install stock firmware on my Galaxy S5 SM900T. And what do I need to know about my phone before I do it. Like all the correct numbers so I do this correctly. Thanks KPH

# Answer
> 0 votes
Official website for downloading firmware here.

For method of flashing, precautions and other requirements follow this thread

> 1) extract/unzip firmware file (should show as .tar)
>
> 2) download odin v3.09 or newer and extract
>
> 3) open odin
>
> 4) Reboot Phone in Download Mode (press and hold Home + Power + Volume Down buttons)
>
> 5) Connect phone and wait until you get a blue sign in Odin
>
> 6) Add the firmware file to AP / PDA
>
> 7) Make sure re-partition is NOT ticked and keep odin default settings
>
> 8) Click the start button, sit back and wait few minutes

---
Tags: 6.0-marshmallow
---


# Question
Title: Can I disable geotagging and delete prior geotag information in photos?
My phone is a rooted Samsung Captivate (Galaxy S) running a 2.2.1-based ROM. Another question touched on this, but I want to do 2 things

1. Be able to take pictures that are not geotagged. According to the referenced post above, "it turns out Froyo made GeoTracking default and unchangeable in Galaxy S". Yay. So, I can either use another camera app that doesn't use geotagging, or some other solution. I may have more options since the phone is rooted. I would prefer not to disable GPS altogether.
2. Clear previous geotag information from my photos, either on the phone or through my desktop computer (Windows XP or Linux).

# Answer
As a solution to #2, GeoTag Security is a program you could use. It (should) run in XP, so you would have to copy your pictures to your computer first, or hook your SD up via usb, but it should do the trick!

Here's the site where i found it, the above is a direct link to their site.
> 2 votes

# Answer
I found a camera mod here that allows disable of geotagging and does it by default. It looks like I either need ADB or root to install it.

**Edit:** The camera mod doesn't work, as far as disabling geotagging.

**Updated Answer:** The Amazon App Store has Camera Advance Lite (and a non-lite for that matter) that has the option to turn off geotagging, which is disabled by default.

This app Geo Eraser looks like it will remove prior geotagging info.

It appears that using a Gingerbread based OS will fix the problem as well, based on my conversations with Gingerbread users.
> 4 votes

# Answer
I haven't looked at removing geotags yet other than desktop apps already mentioned above, for which I use the GeoTag Security. However, for preventing geotagging in the first place, this is easy seeing as you are rooted.

I recently wanted to do this, wrote to Samsung support and they told me the ability to do so in the camera app was removed with the last update. Whatever.

To stop it yourself, install LBE Privacy Guard. You will then need to go into `App Management > System Components` and remove Camera from the list of trusted system components. It will warn you... it's okay. Once you've removed it as trusted, go back to the main screen then to `Location Access Manager` and deny the camera app the right to get your location. This will stop it from geotagging while still leaving your GPS on and available for other apps such as Maps.

I have verified this with my own pictures I have taken.

This solution also allows you to hide your location from other apps you may not want to have it (such as twitter or facebook). The same app can also be used to restrict apps' access to your data connection, your contacts and a myriad of other options. Basically it allows you full control over which system permissions any app may use.
> 3 votes

# Answer
imagemagick has a "strip" command line argument which will remove all EXIF data (try it with the convert command.). It might be a little excessive, but imagemagick is very very very scriptable.

However it will recompress the image. See the answer to this question on stackoverflow.

Short version: jpegtran or exiftool.
> 2 votes

# Answer
Maybe I am missing something here, but **photos I take when my Froyo device's GPS is shut off are not geotagged**. Furthermore, **my default Camera app has a "Store location" option**. When exercising either of these options, my phone does not display the "tracking your location" icon in the notification area while taking photos.

It seems like the above options are a trivial solution to part 1 of your question. Is your phone missing these options? Do they not do what I think they do? I am running a Motorola Droid on stock Android 2.2.2 (FRG83G.)
> 0 votes

# Answer
In regard to your discussion, I would recommend an android phone application that is quite useful for the purpose. I use an app named “GPS Privacy” that automatically deletes the GPS location tags if the photo is taken in a privacy area – like around your home, school, work, etc. This way you don’t have to remember whether you have the GPS tags on or off. Simply define your privacy areas, and your pictures won’t have GPS coordinates when made in these zones https://play.google.com/store/apps/details?id=com.shumoapp.gpsprivacy&hl=en

Hope this would be helpful for you as well!
> 0 votes

---
Tags: 2.2-froyo, samsung-galaxy-s, gps, camera, geotagging
---


# Question
Title: How can I prevent apps from going full screen and hiding the notification bar?
The notification bar takes only a few pixels yet contains so much useful information. Unfortunately, there are some apps (that I otherwise love) that insist on being in full screen, and therefore remove the notification bar from sight.

Is there any way I can force the notification bar to remain while running these apps?

I run rooted Marshmallow with Xposed Framework on a Samsung SM-G900F.

The apps can run on all types of display sizes and aspect ratios, so technically they should be able to do without those pixels on top.

# Answer
> 4 votes
There is an app for your required feature Status bar in full screen

You can use it with any launcher and it is compatible with Android 2.2+

In the app, you can toggle status bar on/off in fullscreen mode.

# Answer
> 3 votes
Alternatively you can use AppSettings xposed module which also has the feature to disable fulscreen mode:

Or XHalo floating window which creates small floating windows when launching an application instead of full screen.

---
Tags: 6.0-marshmallow, notification-bar
---


# Question
Title: How can I disable automatic OTA updates on a Nexus device on Marshmallow?
With Google's new policy of issuing monthly security updates to Nexus devices going on from Marshmallow, me, the proud owner of a Nexus 9 (16GB,WiFi, Build version: MRA58K), has to dirty flash all the factory images every month just because Google issued a 4.0MB update, and I had to connect my tablet to WiFi just because I needed it.

Rather, I prefer to go manual and flash factory images to upgrade between major releases, and ignore those which come in between. So, these monthly OTA updates are a nuisance, even if all I have to do to not install it is ignore the notification it poses. The nuisance being that I have TWRP, root and ElementalX, and prefer to use OfficeSuite over Docs and have no use for Fit - hence I've uninstalled (removed) those system apps, which makes the updates unable to install anyway.

So, the question:

*What service(s) or process(es) is/are responsible for downloading this update? Which app are they a part of? And, most importantly,* **Can I Disable the offending app/process/service without otherwise affecting my system? (That includes interfering with GAPPs in any way)**

NOTE: I know the notification is presented by Google Play Services, I checked that. I want to know what processes/services are responsible for downloading the update, not showing the notification.

**Edit:**

For all those voting to close the question as a duplicate, I have not encountered an answer which satisfies my requirements in the referenced question which this has been thought to be a duplicate of. For future notice, I not only wish to disable the notification, but the updater service as well. Also, the answer provided in the linked question will potentially affect other components of my system, not just the OTA Updater, as it involves disabling all or just notifications from "Google Play Services", which is not at all what I want (I understand what that app is, and disabling any part of it is not in my best interests. So, anything **not involving GAPPs** is a better solution (since I am heavily dependent on them, excepting the Docs suite).

**Edit:**

I had since moved on to the PureNexus ROM and rid myself of these issues. Now I have manually upgraded to Android 7.0, and I don't use the device as much anymore. So these answers are not applicable to me any longer, but this question is a good reference point for others with a similar concern.

# Answer
> 3 votes
Rename /system/etc/security/otacerts.zip to otacerts\_bak.zip.

This will prevent it from communicating with the OTA update server.

# Answer
> 1 votes
Sorry, I don't have Marshmallow available to confirm the process 100%. That being said, the standard method for several versions of Android has always been the following:

1. Goto Settings
2. Scroll all the way to the bottom & find "About (... | phone | device)"
3. Find the "Update" | "System update" option
4. Disable "auto download" | "auto update"

Simple instructions with screen shots are available from WikiHow.

# Answer
> -1 votes
I bought a Nexus 6P and activated the service with Sprint. The problems was, a few months ago one of Google's updates has a bug that won't allow me to get LTE service with Sprint (fixed now). So what I had to do what revert my android phone to a previous version and not update my phone until the patch fixes the problem.

To go along with you problem, it annoyed me because after reverting to a previous version, I would constantly get these notifications to update my phone which I didn't want. Here's what I did to get rid of these notifications:

**Go to Settings → Apps → Google Play services → Notifications → Block all.**

I re-enabled it recently because it seems Google fixed this issue.

# Answer
> -1 votes
Enable Developer Options In Android 6.0 Marshmallow 1. Pull down on the notifications shade and open the Settings app. You can also achieve the same thing from the app drawer if you so wish.

2. Scroll all the way down and tap on ‘About phone.’
3. Now scroll down again and you’ll see an entry labelled ‘Build number.’ Keep on tapping till you see a prompt that says ‘You are now a developer!’

after on this option you can Automatic System Updates toggle is set to off, for get rid of this stupid automatic System update.

# Answer
> -1 votes
Deepak has correctly answered the question, however, has not been clear enough. To clarify: go to "Settings", "About", and tap on "Build Number" until you see the message "Developer Options has been turned on" (or similar) - requires 7 taps usually. At that point, GO BACK to Settings main screen and scroll all the way to bottom, where you will now see "Developer OPtions". Under this (new) set of options, find "Automatic System Updates" and turn it off. This should resolve the problem, though not sure about the notifications, but my quess is that will not pop up anymore, since you have disabled the functionality that causes it.)

---
Tags: root-access, ota-update, customization, 6.0-marshmallow, nexus-9
---


# Question
Title: Upgrade a partially Downgraded Moto G4 Plus (XT1644) with unlocked bootloader to Nougat
tl;dr: had a problem rooting on Android N, flashed stock M image. Now running unrooted M, but attempts to OTA upgrade to N fail. I'm unable to relock bootloader by reflashing stock. I think this is because Motorola doesn't want users to downgrade. How can I get back up to N?

For the past year I've been using Android 6.0.1 rooted on my Moto G4 Plus (XT1644), the US retail model. This weekend I wanted to upgrade to Android 7.0 and install the security patches.

I made backups of my phone using FlashFire (standard and fastboot), then followed this guide to return my phone to stock and relock the bootloader. It worked, and I was able to OTA update to Android N and install the latest security updates.

I still wanted root, so I unlocked the bootloader again, booted into TWRP, and flashed the Magisk zip. After doing this, the phone would not boot except to recovery.

Here's where I screwed up. I figured I could just start again, and tried to flash the same 6.0.1 stock image. It worked, and the phone is now running 6.0.1, but is unable to install OTA updates. Further, when I try to flash stock and relock the bootloader, fastboot warns me `(bootloader) Invalid signed image
(bootloader) Preflash validation failed` for most steps, and `(bootloader) Still require signed boot.img` when I attempt to `fastboot oem lock`. The same happens when I try to restore my FlashFire backup. I believe this is functionality to prevent users from downgrading, although I was able to revert to 6.0.1.

I can't find a stock Android N rom for XT1644, just an OTA udpate I'm unable to install. What steps can I take to get back to Android N, or to completely revert my phone to stock so I can upgrade again.

# Answer
> 0 votes
You can update to Nougat by downloading stock firmware and flashing it via fastboot. For full guide go to this xda thread.

Method and files will work for XT1640/XT1641/XT1642/XT1643/XT1644.

> fastboot flash boot boot.img
>
> fastboot flash recovery recovery.img
>
> fastboot flash dsp adspso.bin
>
> fastboot flash oem oem.img
>
> fastboot flash system system.img\_sparsechunk.0
>
> fastboot flash system system.img\_sparsechunk.1
>
> fastboot flash system system.img\_sparsechunk.2
>
> fastboot flash system system.img\_sparsechunk.3
>
> fastboot flash system system.img\_sparsechunk.4
>
> fastboot flash system system.img\_sparsechunk.5
>
> fastboot flash system system.img\_sparsechunk.6
>
> fastboot flash system system.img\_sparsechunk.7
>
> fastboot flash modem NON-HLOS.bin
>
> fastboot erase modemst1
>
> fastboot erase modemst2
>
> fastboot flash fsg fsg.mbn
>
> fastboot erase cache
>
> fastboot erase userdata fastboot erase customize (optional: will erase any customizations if ordered through motomaker)
>
> fastboot erase clogo (optional: will erase the custom boot logo if ordered through motomaker)
>
> fastboot oem lock
>
> fastboot reboot

As you stated in the question that you are unable to run `fastboot oem lock begin` so skip this command and you will update to android N with an unlocked bootloader.

---
Tags: updates, rom-flashing, bootloader-lock, downgrade, motorola-moto-g-4g
---


# Question
Title: Samsung phone still bricked via FRP after factory reset
This is a continuation of this question, but here are the facts: I have a rooted Samsung Galaxy J1 Ace SM-J111F running the stock ROM in Android 5.1.1. I used this XDA-Developers guide to root it. It suddenly got bricked via FRP lock so I tried to unroot it using the stock boot binary.

Here is an Imgur album containing screenshots and images of the phone during the unrooting process.

Description of images:

1. The phone is set on Download/Odin mode.
2. Odin is ran as administrator and is loaded with `boot-stock.tar` provided by this XDA-Developers guide.
3. The settings of Odin.
4. This shows that the flash has failed.
5. The custom binary is blocked by FRP and I have to restart the phone to flash again.

I tried downloading from www.samsung-firmware.com and www.sammobile.com but all downloads have failed. It stops midway and asks for a HTTPS certificate and the archive becomes corrupted between 20 to 70 percent.

I therefore decided to wipe the data using the stock Android system recovery. However, after rebooting it, the binary is still blocked via FRP lock. I've wiped the cache as well.

What caused this issue and how do I solve this?

# Answer
**Be sure that the stock firmware is correct. It should be 1 or a few gigabyte(s) in size.**

I've finally unrooted my phone. I used Updato's firmwares (which is the only one that has SM-J111F stock firmwares), specifically SM-J111F with product code XME and its PDA as J111FXXU0AQD2 (`J111FXXU0AQD2_J111FOLB0APL2_J111FXXU0AQC2_HOME.tar.md5`).
> 0 votes

---
Tags: recovery-mode, factory-reset, unbricking, samsung-galaxy-j1
---


# Question
Title: Unbricking a FRP-locked phone while leaving it rooted
I have a rooted Samsung Galaxy J1 Ace SM-J111F running the stock ROM in Android 5.1.1. I used this XDA-Developers guide to root it. The reason it's rooted is so I could format the attached SD card as internal storage. I've had no problems for the last 2 to 3 weeks until I switched the phone off in one country and switched it on in another. When the Samsung logo appears, it shows that the custom binary is locked by FRP.

I decided to re-root my phone again using the same method however, the terminal returns:

```
Waiting for phone to be connected...

```

Even though the phone is in download mode and all the appropriate settings have been set.

The guide also provides the firmware for the phone, I haven't tried it yet because I fear that the SD card will be have to be reformatted and all my data may be lost. I'm trying to find a way to fix my bricked phone and while keeping it rooted. Unfortunately, there is only one rooted binary available for this phone.

So I ask:

1. Is there any way to unbrick phone and keep it rooted?
2. If I do restore the firmware, will I have to reformat the SD card and will my data be deleted?
3. What caused this issue?

**EDIT**: I have continued this problem on a different question since it corresponds to a different issue, where factory resetting the phone still leaves it bricked via FRP.

# Answer
Unfortunately, there is no way to unbrick a device and leave it rooted (1). You must flash the stock firmware into the device, thereby making it unrooted. Usually this a bricked device occurs when the device has been modified with so much alterations to the point where FRP detects it bricks the phone (3). The best way to counter this is to install a custom recovery image (like TWRP) to safely fix your device.
> 0 votes

---
Tags: rooting, unbricking, internal-sd, samsung-galaxy-j1
---


title: How can I root the Micromax A110Q

text:
# Question
Title: How can I root the Micromax A110Q
I am using ubuntu 12.04 LTS and want to root my micromax A110Q.

# Answer
**Note #1**:

* Rooting Mediatek devices isn't usually a clean area. Please remember that this solution is to help you out only and is not a mandate, which means the responsibility of recovering device (if required) lies upon the reader only.
* Taking backup is very important. Consider the answers here to take backup. I can't stress this more. Please do not ignore this step.

**Note #2**: Keep you device's battery charged, possibly above 80%. Best is to keep it fully charged. Few folks sometimes report that low-battery during flashing resulted in soft/hard-bricking of their device.

---

I'm aware of two methods to root this device and both are tested by me on this very device.

### Method #1

This method will sideload an app in your Android. You can see this answer to know how this kind of apps works. Also, I'm using this guide on AndroidXDA to corroborate my answer.

**Instructions**:

1. Go to **Settings → Security** and check **Unknown sources** -- in order to sideload apps.
2. Download and install Framaroot from any of the following links:
3. Launch the app and **Install SuperSU** will be shown selected. If not, do choose it.
4. Tap any of the following options(exploits):

* Boromir
    * Faramir
    * Barahir

and wait for few seconds.
5. If the exploit you chose works fine then you would see the following or similar message:

> ```
> Success :-)... Superuser and su binary installed. You have to reboot your device.
>
> ```
>
> ---
>
> ```
>                                     OK
>
> ```

Otherwise, choose the rest of the two options. But eventually, it would work. (Worked on my A110Q).
6. Reboot your device and you would see a new app installed in your device named SuperSU.
7. You can use any of the root checker apps here on Play Store to see whether SuperSU is intercepting root access, or apps can detect `su` binary.

**Congrats!** Your device is now rooted.

---

### Method #2

This method is a typical technique of flashing Recovery partition with a custom recovery and then flashing SuperSu zip file from the latter accompanied by installing an app from Play Store.

**Note #3**: The following instructions are platform dependent, tested and mostly works on Microsoft Windows 7 OS.

This method uses a tool named SP Flash Tool to flash Recovery partition of your device using a scatter(text) file. I've covered this tool in **Method #1** of an answer here with links to some videos(to familiarize yourself). You can also see this guide as well.

About Scatter file : *Scatter file has the index of location of partitions (including boundaries) your device has*.

**Instructions:**

1. Download ADB drivers for your device, install them and verify that your device is getting detected. You can either query Google for them or download them from here.
2. Download a scatter-based ROM (Stock ROM preferred) for your device. Query Google for such with details like `device model name`, `chipset`, etc. You can download it from here as well. Note that the solution needs only a text file which is packed inside the ROM.

As an alternative of downloading this ROM, you can generate your own Scatter Based file. The instructions are mentioned here. I didn't try the instructions there so I can't cover them here. On a side note, I recommend downloading stock ROM since its always good to have this ROM ready for flashing in emergency.
3. Extract files from downloaded ROM and look for `.txt` file with name similar to `MT6589_Android_scatter.txt`. Note down the location of this file.
4. * Download latest SP-Flash Tool.
    * Download a custom Recovery for your device. Alike step 1 querying Google is the option here. Mostly, the recovery you might get is either CWM or Philz Touch recovery. You can consider these links to download CWM recovery or Philz Touch Recovery.
    * Download **SuperSU** zip from here. The name might be similar to `UPDATE-SuperSU-vX.YZ.zip`. Put this `.zip` file into the root directory (Home folder) of your Internal SD card. You can do so by firing up your favorite File Manager.
5. Connect your phone via USB cable into PC.
6. Extract SP Flash Tool, look for **Flash\_tool.exe** and execute it by doing **Right-click → Run as Administrator**.
7. Once the interface comes up, click **Scatter-Loading** button, locate the scatter file (from Step 3) there and proceed with it -- this will list some partition names (unfamiliar names possibly) like `MBR`, `UBOOT`, `BOOTIMG`, etc.
8. Make sure that all the entries below **name** are unchecked except **Recovery** -- we do not want to replace the content of any existing partition other than of Recovery.
9. Click on **Recovery**, locate the Recovery file you downloaded in step 4 and proceed with it. Below the **location** you would see the file path of your Recovery file (like `C:\Users\...`).
10. **Power off** your phone (do not disconnect) and click the **Download** button in the tool.
11. If the flashing proceeds successfully you would see a small window with green circle. Otherwise, you would have to query Google for any troubleshooting. You can now unplug your phone and power on.
12. Power off your phone completely (it will vibrate after screen goes blank during this process). Press and hold "Volume Up" + "Volume Down" + "Power" button simultaneously. You'll see two options:

* Recovery Mode: Volume Up
    * Factory Mode: Volume Down

Press "Volume Up" button then select the entry **\[Recovery Mode\]** using "Volume Up" button and press "Volume Down" button to proceed.
13. You'll now boot into your custom Recovery (CWM for me).
14. * For CWM go to **Install zip → choose zip from /sdcard/sdcard0** and use "Volume Up/Down" buttons to go up and down in the entries. Select your `.zip` file (from step 4) entry and press "Power" button to install. Choose **Yes** to install SuperSU zip -- this step will copy `su` binary *et al.* in your system which will be used by a Play Store app.
    * For Philz, look for similar options since most of the popular recoveries have similar options to flash a `.zip`.
15. If step 14 proceeds successfully, reboot your device and download SuperSU from Play Store.
16. Launch the app. Choose **Continue** and it will ask two options, choose **TWRP/CWM**. It might reboot your device but will eventually get installed.
17. For verification see whether SuperSU has been successfully installed and working, or not, by using any app that requests Root privileges. E.g. See these apps.

**Congrats!** Your device is now rooted.

---

### About Framaroot

> Now you can root your android device without PC, just use framaroot. This app including several exploits named as the heroes of the book "The Lord of the Rings" Gandalf, Boromir, Pippin, Legolas, Sam, Frodo, Aragorn and Gimli. You can install Superuser and su binary on phone or tablet from android version 2.x to 4.x.

### About SP Flash Tool

> Smart Phone Flash Tool (SP Flash Tool) allows you to Flash any Stock Rom or any Custom on the Android Smartphone.

---

<sub> Note: I'm aware of MTK Droid Tools as well. Aforementioned methods should possibly work out easily for you. In case they don't or you wanna explicitly use this app for rooting (it has some other useful features as well), then consider this XDA link.</sub>
> 0 votes

# Answer
Download ADB drivers for your device, install them and verify that your device is getting detected. You can either query Google for them or download them from here. Download a scatter-based ROM (Stock ROM preferred) for your device. Query Google for such with details like device model name, chipset, etc. You can download it from here as well. Note that the solution needs only a text file which is packed inside the ROM.

As an alternative of downloading this ROM, you can generate your own Scatter Based file. The instructions are mentioned here. I didn't try the instructions there so I can't cover them here. On a side note, I recommend downloading stock ROM since its always good to have this ROM ready for flashing in an emergency.

every thing good but where i can download

This website also provides Micromax a106 flash file but not working.
> -1 votes

---
Tags: rooting
---


title: Oneplus 2 Soft-Brick

text:
# Question
Title: Oneplus 2 Soft-Brick
I bought a Oneplus 2, two years ago and it was running quite well. A couple of months ago, I decided that I didn't like the way that Oxygen OS 3 was running so I decided to root my phone.

I successfully rooted it, added TWRP Recovery and added Resseruction Remix. It was working perfectly for the last few months without any problems. However, when I rebooted it yesterday, out of the blue, it went into a boot loop.

I can see the Oneplus logo and the boot animation that I have, but the animation runs indefinitely. I did some research and I believe this is known as soft-bricking. I tried to clear the Cache and Dalvik from my recovery but that doesn't work either.

How do I get my phone to work properly? I don't have a recent backup and would prefer not to factory reset my phone.

# Answer
flash the rom again preferably a previous build which was working perfect.

Dirty flash will do the work but if it doesn't then clean flash it.
> 0 votes

---
Tags: custom-roms, unbricking, 7.0-nougat, oneplus-two
---


title: Can I create folders

text:
# Question
Title: Can I create folders
I have a Samsung Galaxy s6 with Nougat.

When I connect,with cable,my phone to the pc in the window I can see "folders",on

the phone I can't (archive\>documents).

How can I see or create folders on my phone?

Thank you

# Answer
> 1 votes
There are a number of file managers available on Google Play. Simply select your favorite and you will be able to see the folders on your phone, from your phone.

---
Tags: file-management
---


# Question
Title: Can I get the content of a conversation with one of my contacts that I made using WhatsApp calls (not chat)?
I would like to know if I can get the content of a conversation with one of my contacts that I made using WhatsApp calls (not chat), or if the information is stored in my phone and how I can get it.

I already contacted WhatsApp Team, but it looks like they are going to take a while to respond.

What do I need to know to get that information?

# Answer
No, you can't. The content of the call isn't stored on your phone.
> 1 votes

---
Tags: whatsapp-messenger, calls
---


# Question
Title: Recover contacts and images from stolen phone
My samsung note 3 was stolen yesterday, the phone is off. how can I get my pictures from the internal memory of the phone and contact numbers? I was registered with google account

# Answer
if you had synced the device with your google account then you can find your contacts at google contacts and photos at google photos.
> 1 votes

---
Tags: 6.0-marshmallow, data-recovery
---


# Question
Title: Can you grant superuser privileges to an application?
I was wondering wether it is possible since ES File Explorer has the root explorer option, which I need to see where Termux got installed/from where it's running to be able to navigate (though it seems that I can't).

So, is there a way to grant just it such privileges with adb, or at least a permission for viewing such files?

# Answer
* Your device needs to be rooted first
* You can only grant SU permissions when the application asks for it in a rooted environment. Forcing the app to ask for permissions is not trivial or likely to succeed . For details, see related question linked below
* If you are not rooted, you can't bestow super user privileges to any app

Related How to add root permission to some app by myself?
> 1 votes

---
Tags: samsung-galaxy-s-4, supersu
---


# Question
Title: Lineage OS 14.1 ROM can't connect to camera
I have recently flashed Lineage OS 14.1 (fortuna3g unofficial build, Android Nougat 7.1.2) onto my Samsung Galaxy Grand Prime Duos (G530H/DS). Everything in working order, except the rear camera. Each time when I try to access camera from other apps(Whatsapp, Banking etc.) OR opening the stock camera app, it gives me "Can't connect to camera" message.

I have tried with 3rd party apps (open camera), some online tutorial fixes (cmfix camera fix for cyanogenmod), restarting camera app, restarting phone, reflashing LOS 14.1 etc.

I went back to stock to verify that camera works fine. There is no hardware issue.

Anybody had similar problem? Were you able to fix it?

# Answer
> 1 votes
Answering my own question.

My particular problem had to do with baseband and device codename, no bugs or problems with the build. For those, like me who were unaware of how this is related.

My baseband version matched the fortunave3g codename. So I should have installed that build of the of the ROM instead of fortuna3g, like I initially had. More information can be found in the device model master thread at xda-dev forums

I was unaware of the relation between the two things. But anticipating issues I had previously downloaded the three available builds (fortuna3g, fortunafz & fortunave3g). So all I needed to to was flash the appropriate build. Everything is working fine now.

Thanks to all for the attention. Ultimately my problem was lack of awareness.

# Answer
> 0 votes
As this is an unofficial build so most likely this will be a bug in the rom.

Update it to latest build if problem still persists then stick to the xda thread for the rom and wait for the developer to fix it or try fixing it yourself if you have experience in android builing.

Edit: By browsing through xda thread I found this comment. So it seems like there is no camera bug in new builds so you have to just update it to the latest build.

Try **clean flash** if the problem still persists.

# Answer
> 0 votes
This is a common bug in during early stages of android nougat development in custom ROM Lineage 14(cyanogenmod14), which was solved after few updates. This problem doesn't occur in latest builds.

Possible Solutions:

1. Try to clear cache of stock camera.
2. Try to find any Official Nightly Builds(which updates regularly, otherwise contact developer and report the bug).
3. Try to clean flash(Backup user data, and wipe /system, /data, cache etc. install as new)
4. Please check whether you can turn on flash light from notification shade.
5. If you have used adoptable storage(SD card as internal), then check whether camera storage is internal or not.

---
Tags: samsung, camera, lineageos
---


# Question
Title: Can i make a phone call at my Lenovo A5500-H tablet?
I have a Lenovo A5500-H tablet with a sim card slot and i want to know if i can make calls on it. I hope you can help me fix this.

# Answer
> 0 votes
According to some sources, the H variant cannot make voice calls, instead it supports Wi-Fi and data (2g/3g) hence the sim slot.

As stated by one user on XDA forums:

This tablets comes in 3 ROM variants; the *F, H and HV*.

Lenovo H variants are made with the same hardware as their HV variants but a different ROM. H's have 3g data & wifi **but not voice calling**, HV's have 3d data & wifi & voice calling.

Some users have found a workaround to enable voice calling using some unofficial means:

> With most a Lenovo's recent tablets, if you have the 'H' model (3G data only), you can load the firmware for the 'HV' model (3G data with calling) and it will work.

In case you wish to understand more on this topic, read detailed instructions provided on XDA

---
Tags: calls, tablet, lenovo
---


# Question
Title: Unknown apps/processes with number only are shown in the battery screen
There is a mysterious app, `99070` that is consuming power on my Nexus 5X. Any idea how I determine what it is?

There is no option to stop or uninstall it. My phone is a Nexus 5X running stock Android 6.0.

# Answer
> 2 votes
Possibly right answer:

### It's a sandboxed process from a *removed* app.

For such a number over 99000, it is the Unix UID for an **isolated sandbox process** (`u0_i70`).

In Android's UID system, called "AID". Android allocated 1000 special UIDs for isolated sanbox processes, 99000-99999. Some apps use that for security reasons, like Chrome (Incognito mode).

# Answer
> -2 votes
I use OS Monitor from the Play Store to see what's going on: https://play.google.com/store/apps/details?id=com.eolwral.osmonitor&hl=en .

Here's the Help Page that pops up from the APP. http://www.osmonitor.mobi/maunal/index.html

You can view Processes and kill them or see where they connect to (with a Google Maps view of the IP Address - really nice).

# Answer
> -5 votes
I suggest contacting Google right away and have them identify the app. Have them tell you what it's called, what does, why it's on the phone, and if there is any real need for it. If not, get Google to remove it.

# Answer
> -7 votes
You can open the app list from the boot menu & then find the app & then uninstall it... maybe it is an unidentified process in your phone...

---
Tags: applications, battery-history
---


# Question
Title: Why is a suspicious program draining my battery with GPS usage?
* Phone : nexus 5 version 2013
* Android version : 6.0
* Kernel version : 3.4.0-g2aa165e
* Build number : MRA58N

For the last few days, 10118 has been draining my phone's battery. It drains battery by using GPS. I typed 'ps' in a terminal emulator, and there was no application with PID 10118. I don't know what exactly 10118 is. My guess is that it's one of recently installed weather apps.

How can I fix this?

Screenshots (click images for larger variants)

# Answer
> 1 votes
### It's the UID of a *removed* app.

For such a number like 10118, it is the Unix UID for a **user app** (`u0_a118`).

There must have been a power-intensive app like a big game and **you uninstalled it**. Then there's nothing but its UID left, which is used in system logging.

Android does *not* log by app (for user apps), but its UID instead. So when you view battery usage, Android tells you the list by process UIDs, which contains one that has no app associated to it. Android cannot determine what app that UID is for, so it chooses to give you the UID directly, and that's the number you see.

---
Tags: battery, battery-life, 6.0-marshmallow
---


# Question
Title: No Command Error on Nexus 5X, even in recovery mode
I used Wugfresh' root installer before and it worked like a charm. You can't get any OTA's with it though. Since I wanted Android 7, I wanted to unroot, install the OTA and reroot using Wugfresh' client. I already did this before when I wanted to upgrade to Android 6. Then everything went well and I was done in an hour.

This time however, I'm stuck. When it needed to reboot after succesfully installing Android 7.1.1, I got set to the No Command screen. After some googling I found out that you had to go to the bootloader first, and then go to Recovery. I got that far, but now I have no clue on what to do.

Rebooting from there doesn't work (obviously). It seems logical to me that I have to install TWRP, but the zip file is not there anymore to install it. Is there a way to still get this zip file on my phone while in recovery mode, and is this the solution to my problem? I also found the format option in TWRP. Does that get rid of all the TWRP stuff and bring me back to complete stock, so I can go back to rooting everything again? I'd be happy to do so, since right now I'm sitting with nothing but a dead Android.

Thank you so much for your help in advance!

# Answer
> 1 votes
1. Download the latest TWRP image.
2. Download Android SDK platform tools and extract the zip file.
3. Move the TWRP image inside `platform-tools` folder.
4. Boot your phone into bootloader (keep holding volume up + volume down + power until you see the bootloader screen).
5. Connect your phone to PC / laptop via USB cable.
6. Navigate to `platorm-tools` folder which was extracted on PC / laptop.
7. Hold shift and right click inside empty space in the folder and click `Open command windows here`.
8. Type `fastboot devices` and press enter. You should see your device being listed.
9. Type `fastboot flash recovery twrp-3.1.1-0-bullhead.img` and press enter. It should finish flashing in a few seconds.
10. Press volume down two times on your phone to select `Recovery`.
11. Press power button and it should boot to TWRP recovery.

---
Tags: nexus-5x
---


# Question
Title: Is there any way to reduce minimum brightness without root?
I want to reduce the minumum brightness of the screen of my Toshiba Excite Pro tablet. This is a tablet which (as far as I can tell) is essentially impossible to root, but I want to change the brightness of the screen, the value of which is stored in a file in the /sys/ directory of the tablet's filesystem. I want to change the value stored in this file from "35", to, say "10". Is there any way I can do this? For example:

* a way of temporarily getting permissions to alter this file without fully rooting the device
* an app which does not require root which reduces brightness beyond the default minimum
* or if there is, indeed a way to root this device now, that would be good.

Note: I'm not looking for an app which will put a filter over the screen to darken it; I want to turn down the screen as it's the biggest consumer of energy and I want to increase battery life.

Edit: I want to change this file as 35 is the *minimum* screen brightness. The system settings for some reason have a very narrow range of allowed brightnesses.

# Answer
> 0 votes
### Impossible.

I used to have your idea and I gave it a try, but to no avail. I rooted my phone and did the following

```
echo 1 > brightness

```

... but it seems to be identical to its lowest value, which is in my case, 20.

The mininum brightness is something in the **screen's firmware**, which is even **beyond the Linux kernel**. You can't change it unless you flash a custom firmware to your screen, and it will almost surely destroy it, so don't attempt to do so.

---
Tags: root-access, screen-brightness
---


# Question
Title: remove locked by android device manager message
I have played with Android device manager and I have blocked my phone. I have deblocked but everytime my phone enters into standyby it apears me the message "locked by android device manager" and I have to enter the password again.

Do you know how to remove this message?

# Answer
> 2 votes
Remove "locked by android device manager" without factory reset.

Here are the steps:

1. Ask the owner in order to get the passcode or password
2. (Once you have the passcode or password) Go to settings \> Lock screen
3. Enter passcode or password
4. Select none or whatever you choose to use
5. In order to see it, swipe down from the area at the top (Notification panel)
6. You will see a new (android device manager icon) at the top of your screen. The icon looks like a raindrop (green in color) with a bullseye (white in color) icon inside the circle
7. Tap and hold the ADM (Android Device Manager) icon
8. Tap app info
9. Tap Manage Space
10. Tap clear all data

Now the icon has been removed.

# Answer
> 1 votes
You can remove the password from Settings -\> Security -\> Screen lock, enter the specified password and choose your desired new lock type. If you previously didn't have a PIN, Pattern or Password lock, use the Slide option.

# Answer
> 0 votes
Yes. I had to perform a factory reset, because I think I've tried everything. Changed the password on android device manager and blocked again. It appeared the new password, I have deblocked again, went to Settings -\> Security -\> Screen lock entered the new password and I choose None. I restarted the phone but it keept appearing me the text "locked by android device manager". After the phone ringed on phone that I set on androide device manager I could enter the phone without entering the pasword.

So I performed a factory reset and erased everything from the phone and got rid of all the problems.

I use an zte blade q maxi phone.

# Answer
> 0 votes
Go to settings \>display \>security \>credential storage\> clear credential.. It will do it for you :)

# Answer
> 0 votes
The key to unlocking and removing this is hard for the galaxy note 3. I had to reset the password multiple times because with the note 3 if you put a passcode it wont let you,but if you put a password it will always be wrong...So the only solution is putting in the orignal password instead of the device manager.

I tried to put a new password on my phone because my mom changed my password and wouldn't tell me because I got a C+ on my report card. She acts like she pays the bill for it.

The ultimate thing to do is not to put a password on it from device manager!

# Answer
> 0 votes
Get into the phone change the password to a pin like 1234. Go back to find my phone and set the lock phone on the find my phone to the same pin you already have your phone set to. Used LGL21G

# Answer
> 0 votes
Ok so here's how I fixed mine on Moto X.

Go to Settings\>Security\>ScreenLock\>ClearCredentials

Go back to Screen lock, the option to choose "None" as the screen lock is now available.

Thanks for the help Sumit Sharma :)

---
Tags: android-device-manager
---


title: Unbrick lenovo vibe shot z90a40

text:
# Question
Title: Unbrick lenovo vibe shot z90a40
I have tried a lot to unbrick my Lenovo Vibe Shot. Now I am helpless and looking for some workable solution:

I used Lenovo Smart Assistant to download a proper firmware so it turned out it is: z90a40\_USR\_S363\_1606250500\_Q202533.1\_ROW.zip

I tried to use Lenovo Smart drive assistant to update ROM or Device Rescue, but both wont detect phone. The phone default Lenovo recovery can be loaded by pressing VOL+, VOL- and power button, and then releasing power button when logo appears. I used an Update.zip in 8GB mem card and used the option: ‘install update package’ then it complete the process 100% I was happy that I was going to get my phone unbrick

After trying a lot of things I realized the actual problem is with partition table of its internal memory, so whenever I try to connect phone via USB cable to PC and turn it on simply with power button or trying with fast boot mode (VOL - and VOL + then pressing power), it shows all the following partitions that are write protected. So is there any way I can forcefully remove the write protection and delete all these partitions ??? I have tried with Disk part as well but no luck. Plz help PS if some one wants to read more about this problem, plz check following thread of mine that is still unreplied: http://forum.xda-developers.com/android/help/unrbick-lenovo-vibe-shot-z90a40-t3505789

# Answer
Actually I bricked my phone a whole lot of times even after my post. That's because once I knew that it is just soft bricked and I can get it back somehow, I got the confidence and tried advanced things that bricked my phone again and again.

And it was only the recent time (around 3 weeks ago) that I figured the 100% working 9008 method for my phone.

Actually you have to drain the battery completely out. Then it will get into 9008 mode. To do it youu need to try turning your phone on again and again so that the battery goes off.

For example: Press Power button for a few seconds to turn it on.

Or press 3 buttons at same time (VOL+, VOL- and Power), then release only Power button when you get vibration. Then after 2 seconds release both VOL buttons as well (this is for going to recovery mode).

This way you can drain the battery of the phone completely, and you will know when the battery is all gone when you press the Power button and the phone will not show any LED light or screen light, it will just vibrate and stay turned off.

Now you connect your phone to a PC in the following way:

If at bricking you you were on Lollipop (Android 5): Pressing VOL+ key and plug the USB cable in **without pressing the power button.** 9008 will open. Use Qfil to flash the ROM you want.

OR If at bricking you were on Marshmallow (Android 6): Plug the USB cable into the phone, then connect the cable to a PC and exactly at the same time press the power button (sometimes you don't need to press the power button so try with both options). Then if you see 9008 mode in Qfil, immediately press the Download button in Qfil.

If you see an Qfil error then repeat the above process to get 9008 mode and use miflash instead of Qfil. Miflash worked for me better than Qfil because Qfil often gives error in between.

And when you get the flashing 100% then phone will either auto restart or you have to restart it manually. Using Qfil it shows you a message when it is restarting the phone, and I think using miflash it just says process 100% complete. Then you have to restart the phone yourself.

Remember at this point (after restart) connect your phone charger properly into an electricity power socket instead of to the PC as the battery was already drained -- you need to charge the device while it shows the long booting process due to the newly flashed ROM.
> 0 votes

# Answer
I figured it out from my semi-sleepless nights. But b4 the solution that worked for me, I had to learn a lot out of my desperation to finally get it worked on the day I decided to hand over to some technical guy from local market

The full comment form Francisco Kadzi helped me finally do it from following youtube link: https://www.youtube.com/watch?v=SmMg00Wqabc&t=1s

Besides I had to take care of many things. First here are the things I was doing wrong:

* Not taking care of a heavily charged phone, I would try to unbrick after just 1 hour or less charging from a total uncharged device.
* I was going to a backward step whenever I failed on something (Reboot in fastboot mode, trying with QFIL etc.). Whereas many different forums (mainly XDA), people were saying to try again and again.
* I was using improper ROMS or flash files my device was: Z90a40\_USR\_S363\_1606250500\_Q202533.1\_ROW
* When I would see 9006 mode again I would be disappointed and would try different solution. The correct thing to try was uninstall this driver and then connect the device again with PC in fastboot mode .

Then I used Lenovo Smart Assistant and got this proper file: Z90a40\_USR\_S363\_1606250500\_Q202533.1\_ROW

OK read my first post to know what problems I faced, but at the end the multiple partitions were not really the problem. The actual problem was getting 9008 mode in Device Manager of my Windows 7. I always got it as Diagnostics 9006 mode. One I started getting 9008, things went in my way gradually. So the person posting on above comment from youtube link helped me

Am a happy fellow at the moment and will help anyone with same problem if needed

My email id is: usman400 on G Mail
> 1 votes

# Answer
Been there, done that.

I took me almost 15 days to research, try, and experiment and finally I was able to revive my Lenovo.

Basically, you have messed up the partition and now all you need to do is to delete them. try MiniTools to delete partition, it is a free to use software.

You are not able to delete partition from windows, because for that you'll first need to have your Windows in TEST MODE. without that, I don't think you'll be able to delete any of the partition.

Next is you'll have to check in which "Hard-Brick" mode your device is: OLD or New. Because recovering process for both modes are different. There are lot of other things you'll need to do before actually getting your device back.

I have also made a "TL;DR" kind of tutorial for the same problem. I don't know if I am allowed to post my blog links here or not, I am new. But anyways check the below link from Step 1 to getting your device back. http://www.dotandroid.com/android-root-guides/unbrick-qualcomm-mobiles/
> 1 votes

---
Tags: partitions
---


title: Ally Phone Voice Search problem

text:
# Question
Title: Ally Phone Voice Search problem
I have an old Verizon Ally Android phone that keeps popping up a prompt "Try saying 'call john doe.mobile phone'" literally every half second to the point I can't even reach the settings screen to attempt to disable Voice Search. The factory reset does not help. Is there a way I can fix this somehow?

# Answer
You can try wiping your cache partition:

* Turn off your device
* Press a combination of `Vol +`  \+ `Vol -` \+ `Power key` buttons and hold them down.
* Release only the `Power` button when the device vibrates
* Release the other buttons when the **Recovery Menu** screen appears
* Using the `Vol +`/`Vol -` buttons to navigate, select **Wipe cache partition**
* Press the `Power key` , which will act the enter key on your keyboard.
* Wait for the process to finish.
* You can then reboot the device and see if the issue is fixed .
> 1 votes

---
Tags: lg-vs740
---


# Question
Title: Calendar does not refresh when deleting contacts
When I delete a contact, its birthday continues to stay on the default Calendar app, in the Birthdays calendar. (FYI, this calendar automatically gathers events from contacts' dates.)

How to update/refresh the Calendar in this case?

I went to the app settings and clicked on *Clear Cache*, with no result. Should I do a *Clear Data* too?

# Answer
> 1 votes
I managed to do what I want via a combination of:

* removing the Birthday calendar from the web account
* removing the Birthday calendar from the calendar app
* doing a *Clear Cache* and *Clear Data* on the calendar app
* forcing a sync of my Google account on the phone

---
Tags: calendar, google-calendar
---


title: adb shell immediately terminates

text:
# Question
Title: adb shell immediately terminates
I have an emulator that I started with:

```
~/Android/Sdk/emulator/emulator -avd Nexus_5X_API_25_x86 &

```

I run "adb shell" and it enters the shell for about 4 seconds and then it terminates:

```
me@mycomp:~/codec/vlc-x86-android-master$ adb shell
adb server is out of date.  killing...
* daemon started successfully *
generic_x86:/ $ me@mycomp:~/codec/vlc-x86-android-master$

```

what might be the problem?

# Answer
This usually happens if multiple instances of adb are running. Many OEM's sync applications (e.g. HTC sync or droid explorer) runs adb automatically so you will get the error.

Kill all these instances beforehand from task manager and then start an adb server.

Or uninstall these sync application and everything will work fine.

If you want to use the sync application also then download adb fix from this link.
> 1 votes

---
Tags: adb, shell, android-emulator
---


# Question
Title: related to technical working of hotspot in android
As we know every device came with an application of tethering.As it is obvious that somewhere in our device definitely the matching of the passwords typed by a second person and the correct password is being done, So I want to know how this matching happens on the Android devices.

# Answer
> 1 votes
This is security related question that's why everyone wants to know how the functionality of android works and I think everyone should know.

So let me explain about this topic : suppose there are two devices **A** and **B**.

The device which want to connect to WIFI connection (suppose mobile: **A**)and the device which has tethering hotspot enabled(suppose mobile: **B**).

Here the A sends the request to B for connecting with wifi network and share the data.In response to this request device B sends the challenge of 8 byte with encryption on **key** and **hash** if the device B has password protection otherwise device A can directly invited to connect with that open network.

Now, Device A must match the credentials(challenge) to connect with that network, to do that device A enters a password and hit the enter button.After that the request with password is sent to the device B.The entered password is also sent with encryption algorithm to device B.

There are so many algorithms available for password checking.Here checking of password is done with algorithms which are stored in android somewhere.The matching will be done with stored encrypted password and user entered password.If the password pattern matches then device B send a flag with success, otherwise it will send bad request message to the device B and again ask for password.

If the password matches successfully the device A connects with device B and the device b stores the physical address of the device A to locate the device.

I hope it will helpful information.

---
Tags: applications, google-play-store, wifi-hotspot, tethering
---


# Question
Title: Is it a good idea to force stop apps after using them?
I find myself using **force stop** for every application once I have finished using them. Is this a good practice? Are there any performance or security benefits of doing this? Is force stopping an app necessary to get it out of RAM?

# Answer
> 25 votes
**TL;DR:**

No, it's not a good or advisable idea.

**Explanation and some background:**

Force-stopping apps is not intended for "routine use", but for "emergency purposes" (eg. if an app runs out of control and cannot be stopped otherwise, or if an issue causes you to clear cache and delete data from a misbehaving app). Generally spoken, it's neither a "performance booster" nor a "RAM optimizer".

In many cases it won't save battery life either, but rather deplete the battery even faster. Apps don't only start when you tap their icon, they can also get started via intents or broadcasts (eg. on battery low, network changed, USB device connected – but also on many more). So when you "force-stopped" it, on its next start it will have to do a "full init" (loading from the storage(s) and the network) instead of just going back to its "last state" still stored in RAM (unless the system had to clear it out – see our oom-priority tag-wiki for details on that process) – what Andy described as "will increase loading power consumption / time" in his comment on your question.

---
Tags: security, custom-roms, malware, customization, application-manager
---


# Question
Title: How do I install an apk as a system application?
I'm trying to install an application in the system/app folder of a device. It needs to be done since I'm writing a QAT program and the tests need to run with a few privileges not available to third party apps.

I already have the device's firmware signing key and need to set the sharedUserId of the application to android.uid.system . It however keeps giving me a failure message "INSTALL\_FAILED\_SHARED\_USER\_INCOMPATIBLE" .

Any ideas on how I can fix this?

# Answer
> 1 votes
If you don't have root to follow the manual install procedure Demizey describes, then the app **must** be signed with the same key that the ROM is signed with; that's to say, the same key that the existing system apps are signed with. This is a security precaution: otherwise, anyone could write an app that would run with full system access on any device.

# Answer
> 2 votes
Found these instructions to install PowerManagerPro into `/system/app`, just modified them a little. (Note: first install the app into `/data/app`, like you would any app, and you need a rooted device.)

> Open a Terminal Emulator app and execute the following command to copy the application to the sdcard:
>
> ```
> su
> cp /data/app/*your.apk* /sdcard/*your.apk*
>
> ```
>
> If you can't find the application in `/data/app` try `/data/apps-private/`. Then, un-install your app from the device.
>
> Execute the following commands in the terminal emulator to remount the `/system` directory as read/write and to install the application into the `/system/app` directory:
>
> ```
> su
> mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
> cp /sdcard/*your.apk* /system/app
>
> ```
>
> If you prefer to use adb from your computer, execute these commands:
>
> ```
> adb remount
> adb shell cp /sdcard/*your.apk* /system/app
>
> ```

# Answer
> 0 votes
You may want to exploit the Master Key vulnerability.

Choose an app that, if lost or replaced, won't affect your using the device. Take its APK and find a way to modify the content of it, and and insert the files of your app. Do not overwrite anything in the original APK, but try to make 2 entries of the same file in the ZIP header. Then you can install the modified APK over the original one. It will inherit permissions from the original one, but work as you intend it to.

---
Tags: applications, installation, apk, system, permissions
---


title: Audio line-in feature

text:
# Question
Title: Audio line-in feature
Does anyone know if any of the latest smartphones provide a audio line-in support? Am aware that this question has been addressed earlier as well but it has been a while since the last query on this and also the smartphones has evolved so much.

# Answer
> 0 votes
For the sake of completion, I will answer my own query. After googling for few days, I conclude that none of the existing Android phones in the market provide line-in support. This is more of a hardware restriction.

---
Tags: audio-recording
---


title: Android App Cache Security

text:
# Question
Title: Android App Cache Security
I have found that when an app is in use and correct information is provided to it from a user, the information doesn't allow a successful login. However, by clearing app cache, the login is successful without restart.

Hence, it looks like it's possible for the data to get into cache, and hence affect the working of application.

My initial thought is that this could be a possible attack vector.

I have searched on google and this site, but could not find much information on **Security of App Caches** on the Android OS.

I have found the following thus far: https://www.owasp.org/index.php/OWASP\_Mobile\_Security\_Project\_-\_Android

*Questions:*

1. How does the **App Cache** of Apps work on android?
2. What security features (if any) are present on Android, that would mitigate data from getting into the app cache from either local or remote sources? How do the security features work?

# Answer
> 3 votes
The "cache" of an app is just a directory inside that app's data directory in `/data/data`, so there are no special security implications compared with the app's general data. The cache directory has the same permissions as the data directory enclosing it: no other apps can access it, and the user can't access it directly (via `adb` or a PC), unless the phone is rooted (or the app itself exposes access).

From an OS point of view, the only difference between an app's "data" and its "cache" is that there's an extra button to clear the cache, with the expectation that no user data will be lost that way. They're both treated the same way by the OS, and it's entirely up to the app what data to store in each.

---
Tags: applications, security, cache
---