# Question
Title: Real root can not change any thing on /system original files!
On my rooted device running Android 4.2.2, I have following tools installed:

1. Terminal Emulator
2. BusyBox Free

On Terminal Emulator, `su` command successfully changes user to a real root:

```
root@hwH30-U10:/ # id -u
uid=0(root) gid=0(root)

```

Then I `remount` `/system` as `R/W`:

```
root@hwH30-U10:/ # mount | grep system
/emmc@android /system ext4 rw,realtime,noauto_da_alloc,commit=1,data=ordered 0 0

```

Then I even:

```
root@hwH30-U10:/ # chmod 777 /system

```

But I can not change any thing e.g. permissions or contents of `/system` original files like `/system/build.prop`!

I am sure that permissions and mounts are OK because I can create a new file, `/system/tmp.prop`, change it's contents and permissions by Terminal Emulator.

I really have no idea why these operations are not permitted while in Linux point of view, all things are OK for root to do these changes!

Is there any hard-coded further protection inside Android e.g. in kernel?

How to figure out this, please?

# Answer
Based on my comment and Yasser's subsequent comment , I can conclude that the issue was the immutable attribute set on the file build.prop. If other files and directories also can't be edited or deleted, then they may also be having the same attribute or append-only attribute.

The remedy is to use this command with root privilege:

```
chattr -i FILE_PATH    # FILE_PATH is the file which currently has immutable attribute

```

Use `-iR` followed by a directory's path to remove immutable attribute from a directory recursively.

It is to be noted that OP already has busybox installed. `chattr` and `lsattr` aren't the utilities found natively in Android.

Relevant info about the used chattr command and append-only attribute can be found in my answer here.
> 2 votes

---
Tags: root-access, mount, system, terminal, file-permissions
---


# Question
Title: Factory reset a rooted 4.4.4 and lost the keyboard
I factory-reset my Android 4.4.4 phone and lost my Swiftkey keyboard, which upon installing originally, I erased the standard Samsung keypad.

Now only only voice is available, and I cannot get into my Samsung or Google accounts to get things going again, because saying a password is impossible. All I want is access to a keyboard. What can I do?

# Answer
A factory reset removes user apps and data, leaving the system partition alone. It sounds like you removed the system keyboard and had a user keyboard erased. You could sideload a keyboard with `adb` or something, but based on your comment that the OS is not working in general it would probably be better to flash a ROM (presumably whatever ROM you're already using, whether the original software or a custom build).
> 2 votes

---
Tags: factory-reset, swiftkey
---


title: How to uninstall kingroot

text:
# Question
Title: How to uninstall kingroot
I recently rooted my Sony Xpera Z Ultra (Android Version 5.0.1)using kingroot but when i restarted my phone it got unrooted again, now the only app that has root access is kingroot itself (it has a option to uninstall system apps which is working). I tried 'uninstall root' option but it didn't work. So is there any way i can uninstall kingroot app.

# Answer
> 0 votes
Go install the app "supersume" and run it. It will remove kingroot and install the real supersu from chainfire and you will have real solid root access. You may have to reroot running the kingroot app again first and immediately open and run supersume as fast as you can before the system can plug up kingroots security breach ..of that doesn't work I would find the stock firmware and flash it back to stock

---
Tags: root-access, uninstallation, unrooting, sony-xperia-z
---


title: Does Greenify save battery usage?

text:
# Question
Title: Does Greenify save battery usage?
My phone drains a lot of battery during the day so I was wondering if the greenify app helps with the battery problem

# Answer
> 1 votes
They are right, it hibernates apps..if you are rooted with xposed it really does magic, but most modern apps are coded to restart persistently so a lot will restart after being hibernated because without root and xposed it can't hold the apps closed, it merely force stops them but that can still be effective if you only hibernate apps that don't restart until you open them. You'll have to just try and see which ones will behave, if you hibernate apps that restart and just keep closing then you will end up burning more battery. If you choose to root them you gotta lot of research and studying to do but it's well worth it but you gotta know what you're doing, good luck

# Answer
> 0 votes
Technically YES. Basically what it does is hibernate selected apps. That means the apps you selected for greenification will not work service after inactivity like screen lock etc. They will start again as soon as you launch them again. So it should help battery problem!

---
Tags: battery-life
---


# Question
Title: How to close (shutdown/kill) the Android web browser?
I did read this question What is the right way to close apps in Android? but I want to know how to close - that means **close** \- application to save power and download limit.

My observations tell me that `Back` button brings me to the previous page (something I am not after) while `Home` seems to me leaves the page loading in background. So the question is how do I exit the browser.

I tried Advanced Application Killer but I don't think it worked ...

Using **HTC Desire on Android 2.1**

# Answer
> 11 votes
Closing the browser has no benefit. The android subsystem manages the memory on the device really well and will free up memory from background applications if it needs it. As I understand it, it does this by saving the application state in a database on disk. If you run the application again, it can then rebuild its state from the info in the database.

If you want to stop the browser from downloading and you can't see the "Stop" button, press the menu button. This will bring up the address bar allowing you to press the stop button. Although if the address bar has disappeared then chances are your phone is not downloading anything, unless the site you are on has Javascript on it which is causing it to refresh elements regularly. If this is the case you are on your own.

# Answer
> 2 votes
You shouldn't want to close applications manually. Just stop loading the current page with the Stop menu item, and use the Home key. This will leave the app running in the background, but without costing power or wasting your download limit.

# Answer
> 1 votes
Applications are built to save their state to storage \_at\_any\_time\_, and to restore themselves from that state. They are also built to be closed by the OS at any time (e.g. when it needs the room for something else).

AFAICT, all applications share the same screen stack: opening an application's page "over" another one simply adds additional pages to the stack. The Back button just pops the topmost page off. The Home button pops all the pages off the stack.

The applications are still running and, if they are written as directed, will keep their previous state when you explicitly open them again. The difference between an application stored and an application waiting in the background is less than in a desktop OS.

Cheers

# Answer
> 1 votes
Open a new tab/window on your browser. Close the tab you were using and any others that were open, except for window/tab you have just launched, which should just leave you with the new tab/window which should be your home page. Now use the back arrow. That effectively exits out of windows and solves any java issues too.

# Answer
> 0 votes
The android designs says that when the user 'goes away' from the application the app should keep running for a fast start and for background music playing etc.

This means that what you're asking for is against the nature of android. Applications themself could choose to close themselves after you click 'a close button'. Since applications have to come up with their own solutions you can image that there is no 'one button solution'.

Using a taskkiller is a solution for this problem. A single program in the widget list to kill all unneeded applications for a performance and battery boost is a great help. I'm using Advanced Task Killer set up to keep my most used applications but to close all other rarely used apps.

There might be a browser with a close button but the one I use doesn't have a close button. Then again keeping open the page I last visited is a welcome feature.

# Answer
> 0 votes
Removing the browser entry from the recent apps menu will *kill* the browser in the sense you mean, but it won't stop any ongoing downloads. For that, hold down the download notification until it shows a small menu with "App info" on it, tap that entry, and press "Force Stop" on the screen that comes up. If the app responsible for the download is the native download manager, also clear it's cache (maybe even it's data) to prevent the download from getting resumed automatically. This is applicable for Android versions below Marshmallow.

# Answer
> -1 votes
press and hold the browser icon until the inline toolbar appears, press the application info icon, there u can press "force stop"

---
Tags: htc-desire, browser, task-management
---


# Question
Title: How do I install missing command line tools onto an Android device?
Android installations do not always have all the tools one would expect to have on a Unix-like system.

For example, right now I have a problematic device which doesn't have `find` CLI utility. I mean, this is what I get while in `adb shell`:

```
$ find
/system/bin/sh: find: not found

```

Also:

```
$ /system/bin/toolbox find
find: no such tool

```

This particular device is running Android 5.0 (plus some proprietary additions by LG, I guess), but the question is for all Android versions, of course.

Is there a standard procedure for installing native/CLI tools (such as `find`), on Android? (A *package manager?*) And, anyways, how to do it in the most correct way?

# Answer
# For rooted Android devices

You can consider installing BusyBox app by Stephen. Per Play Store, the minimum Android version supported by app is Android 1.6 and it is a well-updated app. In essence, it installs the busybox binary into `/system/xbin` and places symlinks in the same directory for all the utilities it has.

### What is BusyBox (not the app)?

> BusyBox combines tiny versions of many common UNIX utilities into a single small executable. It provides replacements for most of the utilities you usually find in GNU fileutils, shellutils, etc. The utilities in BusyBox generally have fewer options than their full-featured GNU cousins; however, the options that are included provide the expected functionality and behave very much like their GNU counterparts. BusyBox provides a fairly complete environment for any small or embedded system.

Here is the official list of utilities it provides. `find` tool can be found there.

**A competent alternative** to BusyBox is Toybox, which has replaced Toolbox in Marshmallow release.

### What is Toybox?

> Toybox combines many common Linux command line utilities together into a single BSD-licensed executable. It's simple, small, fast, and reasonably standards-compliant (POSIX-2008 and LSB 4.1).

Here is the official list of utilities toybox supports. BusyBox, at the moment, appears to support more tools than Toybox.

I do not think an app exists to install Toybox binary, so you may use my answer here for the purpose of its installation. **Note that** the answer can be used for the installation of both Toybox and BusyBox. Only prerequisite is downloading the binary from official sources.

Official download links:

# For non-rooted Android devices

I do not know whether there is a universal approach for all Android versions. That said, for Android 4.0 and up BusyBox Install (No Root) claims to work. There may be some terminal apps that comes with BusyBox binary. I've not personally tested any such terminal app but it is easy to understand that their biggest drawback is: you can't make any or much good use of them using .

There is an approach however, which appears to work for any Android version above 4.2 (based on my tests). `/data/local/tmp` is a directory which can be edited by `shell` user. `adb shell` grants you the remote shell on device and login as the same user.

All you've to do is put BusyBox/Toybox binary into `/data/local/tmp` and create symlinks for the utilities in the same directory. You can use the following steps for that.

(Requires setup in PC.)

```
adb push LOCAL_FILE /data/local/tmp/    # replace LOCAL_FILE with the file path of toybox/busybox binary in PC
adb shell
chmod 755 /data/local/tmp/FILE          # setting appropriate permission on pushed binary file. Replace FILE with the name of the binary you pushed in first step. Recommended is to use a single word as a name with all lower-case letters
box=/data/local/tmp/FILE                # setting up a local variable for usage in next step. Replace FILE as appropriate
$box | $box sed 's/\ /\n/g'| $box sed '$d'| while read line; do  $box ln -sf /data/local/tmp/FILE /data/local/tmp/$line; done   # We're executing the binary referenced by $box to list all utilities, followed by creation of a list and then for each item in the list, we're creating a symlink in a directory.

```

Izzy has recommended the most **straightforward way to place symlinks for BusyBox binary**.

```
adb shell /data/local/tmp/FILE --install -s /data/local/tmp/  # Replace FILE as appropriate. --install -s will create desired symlinks for you in a directory. Directory's path is provided next to it.

```

All those tools can now be accessed using the absolute path `/data/local/tmp/TOOL`. Replace TOOL with the utility name. Example usage of calling find command:

```
adb shell /data/local/tmp/find --help
adb shell /data/local/tmp/FILE find --help   # alternative way of using a tool

```

For interactive shell sessions, you can add the location of FILE into $PATH using export command:

```
export PATH=/data/local/tmp:$PATH   # this is prefixing /data/local/tmp into the existing value of $PATH. export would make sure that sub-shells see the same value in $PATH

```

Done that, you can now use find or another BusyBox/Toybox utility in this manner:

```
adb shell
find --help

```

It is to **be noted that** changes in $PATH are applicable only for the current shell session. It means that every time you launch a shell using adb, you would've to export $PATH.

That said, there is no Android-only solution for non-interactive shell sessions other than of finding a way to create a variable whose existence and value would persist beyond the current shell session **in your PC, not Android**. Example:

```
adb shell $lolcat   # $lolcat is a temporary variable in my shell on PC and it was assigned the value /system/xbin/toybox. My bash shell is replacing $lolcat with its value and then passing it to adb shell (or you can say, it first expanded the variable and then executed the whole command)

```
> 7 votes

---
Tags: adb, shell, command-line
---


title: how wanam exposed work?

text:
# Question
Title: how wanam exposed work?
I have a Samsung phone which is rooted and has xposed framework. There's an app "wanam exposed" it's runs using an xposed module. It can change themes of stock Samsung ROM. It can change color of notification bar, and almost anything. I want to ask that does it modify any configuration files? If so then what's the locationof those files? And all is changes can be reversed just by disabling the module in xposed app and restarting. How is that possible?

# Answer
I've just published a blog article on that yesterday you might wish to read: Xposed: The mighty Android toolbox. Amongst others, it explains some background on how Xposed works.

Basically, the framework modifies the cache at boot time (or the corresponding stuff on Android ≥ 5). So all changes take place on boot. Thus enabling/disabling modules only shows changes after rebooting the device: if you disable a module, it's changes simply won't be applied the next time you start your device.
> 1 votes

---
Tags: xposed-framework
---


# Question
Title: Chrome Browser is not supported on this device (Samsung GT-P7500)
I have a tablet Samsung Galaxy Tab 10.1 (P7500) with stock firmware P7500XWLPG (Android 4.0.4). I want to install Chrome Browser on it. But when I find it in Google Play I see message "This app is incompatible with your device". Is it any way to solve this problem and install Chrome on my tablet?

# Answer
> 3 votes
It is very much possible that support for API level 15 or below has been dropped for all the current Chrome builds of version 47.0.2526.83 or perhaps it has been so for the last few versions as well. I updated my Chrome app in Jelly Bean 4.2.1 and I can see that the minimum API level it requires is 16 and is targeted at 23.

Android versions corresponding to API level 16 are Android 4.1 and 4.1.1 while Android 4.0.4 has API level 15. Clearly, your Android version is not compatible with latest Chrome build.

Considering the details, I suggest you now move on to a different browser. That said, you can still use Chrome browser at a huge price. You can download an older build of Chrome which is compatible with your Android version (read API level), from a trustworthy source . The price you'll be paying is *risking* your device with infection from online malwares, simply because outdated as well as popular software is a goldmine for malware writers.

For your information, I've the APK of Chrome v39.xx and I can see that the minimum API level it requires is 14 and not 16.

---
Tags: google-play-store, 4.0-ice-cream-sandwich, chrome-for-android, samsung-galaxy-tab-10
---


# Question
Title: Which app specific prevents moving to external storage?
Subject. I'm not asking what I will lose if I move app, but rather about **how system detects if app is "movable" or not and enables/disables corresponding button in "App Info" activity accordingly**. Hope I made myself clear, if now - please comment and suggest better terminology.

# Answer
Okay, this is related to App Install Location and behavior in question controlled by application manifest, specifically, by `android:installLocation` attribute (**NB**: by default system assumes `internalOnly`).
> 1 votes

---
Tags: internal-storage, sd-card, app2sd
---


# Question
Title: "App not installed" error when trying to replace ROM-based app with modified APK without root
I'm facing trouble installing a modded APK if the same app is already provided in stock ROM.

I'm using Micromax Canvas E481, not rooted yet. It has the JioSaavn app already installed. I uninstalled it to install a mod version of JioSaavn. But I'm getting the error "App not installed". However, the same APK is working on my other devices. The same is happening for `playstore.apk`.

*JioSaavn* is not a system app, it's just provided in ROM by Micromax. From application, it gives the option to uninstall it. I can install APK for any version of *Saavn,* it's just not letting me install the mod version. If I modify it using Lucky Patcher, it won't install it, but it will let me install the original APK for any version bypassing the pop-up from ES Explorer.

When I tried installing it from ADB:

```
C:\Users\Syed\Desktop\adb-tools_treiber\adb-tools>adb install C:\Users\Syed\Desktop\Saavn.apk
4451 KB/s (11231546 bytes in 2.463s)
        pkg: /data/local/tmp/Saavn.apk
Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

```

```
C:\Users\Syed\Desktop\adb-tools_treiber\adb-tools>
C:\Users\Syed\Desktop\adb-tools_treiber\adb-tools>adb install C:\Users\Syed\Desktop\playstore.apk
3648 KB/s (9862605 bytes in 2.639s)
        pkg: /data/local/tmp/playstore.apk
Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION]

```

# Answer
`INSTALL_FAILED_UPDATE_INCOMPATIBLE` should tell you something. "app is already provided in stock Rom", "not rooted" and "I uninstalled it" don't match: w/o root, you cannot have uninstalled a system app (you probably have *disabled* it).

Same goes for Playstore: you cannot simply "update" it with a patched version. If it's an official version (signed by Google), you could update it – but then you must tell `adb install` you want to update: `adb install -r xx.apk` (note the `-r`, which stands for "re-install"). Not sure whether that works via `adb` for pre-installed apps, though (I've never tried).
> 0 votes

---
Tags: installation, apk
---


# Question
Title: What Android distro can boot from USB stick in PC/Laptop?
I have an old HP Pavilion dv2000 laptop with a busted hard drive. I want to put a compatible Android distro onto a USB thumb, plug this in to the laptop and boot into it and use it for casual www browsing.

Firstly, is this possible and if so, is LiveAndroid my only option?

# Answer
http://www.android-x86.org/

This is the only android distribution for Intel/AMD processors that I am aware of. It has little support, but is actively maintained. The latest version is a release candidate for Android 2.3. Obviously hardware support is hit and miss. For what it's worth it runs very well on my EEE PC.

You can install the ISO to a USB drive with Unetbootin, or use a drive imaging tool with the .img file.
> 7 votes

# Answer
You can install **Remix OS** or **Phoenix OS** \- both are Chinese distributions based on Android-x86. Here you can find the differences between them.

There is also **Console OS**, but it seems not ready yet.
> 0 votes

---
Tags: usb, operating-system, android-x86
---


# Question
Title: Does the Google Drive scanner cache local copies on Android?
I looked around and couldn't find the cached images or PDFs. But that doesn't prove they don't exist.

Our specific need is for our scan to go straight into Drive, with no stops along the way that can be tracked later. We have a regulatory imperative to save to a secure site and not leave anything on our phones (or tablets).

Interestingly, fidelity isn't that important, just that the scan has been saved in Drive and not locally.

# Answer
**SHORT VERSION**: The Google Drive Scanner will, by default, leave cached versions of the PDF file it creates. I still hope to find some setting that will turn off this caching.

**LONG VERSION**: Here's how I figured it out.

I have a rooted droid (Note2) I used to do some testing. It has BusyBox and a couple of good terminals installed. After getting into the root shell ('su'), and from the root position in the filesystem ('/') I ran the following command

```
find -iname *jpg -mmin -2

```

immediately after taking a pic with my camera. It found the new pic just fine. I then ran the same command after using the Google Drive Scanner. Nothing showed up. That's good.

I ran nearly the same command but changing the name:

```
find -iname *pdf -mmin -2

```

immediately after using the Google Drive Scanner. The find command located PDF files cached in this location:

```
/data/data/com.google.android.app.docs/files/fileinternal/

```

Now I have to determine a way to manage those caches (this is all about HIPAA data for my company).

Hope this is helpful to someone.
> 2 votes

---
Tags: google-drive
---


# Question
Title: Is Nexus 9 capable of accessing data when I connect USB storage?
Info about Nexus 9:

---

I have no idea how latest Androids work therefore asking a pretty basic question: Will latest Android (6.0 Marshmallow) detect additional storage?

*(cannot find this info in marketing materials out there)*

# Answer
Android Marshmallow and USB OTG Support confirms OTG working on Nexus 9 (**Note:** I have no way of verifying). Relevant extracts from the post ( missing text denoted by "....", emphasis added)

> But there is another feature that Android users have long wanted out of the platform that has come with Marshmallow: Native USB On-the-go (OTG) support...In previous released of Android, OTG support was not inherently supported and effectively required that you have your device rooted even if your hardware technically supported it. That, it seems for Nexus devices, has gone away.... I can **confirm** that I was able to connect a **USB drive** and a mouse successfully to my Nexus 6 and Nexus 7 while I was equally able to connect both to a colleague who as the Nexus 6P and **Nexus 9**
> 2 votes

---
Tags: external-sd, sd-card
---


# Question
Title: Xposed goes into bootloop -Can I still make Xposed work somehow? (Device Pipo X8)
I have installed Xposed onto my Android device and it doesn't work and goes into a bootloop. If I disable Xposed I get out of the bootloop so no problem there, except that I really need for Xposed to work. Is there something I can try to make it work? I tried `rm -r /data/dalvik-cache` but it doesn't help. What else can I do?

The device is a Pipo X8 media center with Android 4.4.4 and Windows dual boot, however I only use Android. For Kernel-version it says:

> 3.10.20-00003-g7240abc-dirty ibuilder@Exdroid #26 Thu Jul 23 17:21:56 CST 2015

# Answer
> 0 votes
I managed to get Xposed Framework 2.6.1 working on Pipo X8. I have described the steps necessary in my reply #15 on XDA forum. Please have a look:
Xposed for Pipo X8 -infinite bootloop

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


title: Galaxy S6 not seen by pc at all

text:
# Question
Title: Galaxy S6 not seen by pc at all
I have one week old S6 and now tried to use `adb`.

I unlocked developer mode, enabled USB debugging, connected to usb and nothing happened. `adb devices` shows empty list, `lsusb` on mac and linux as well as mac's "system information" app doesn't see any new usb device when I connect the phone. Nothing happens in `dmesg` too.

The phone displays "charger connected" notification. No mtp/ptp notification appears.

I tried to use different computers (two linux boxes and one macbook), different cables, nothing. Other android devices (such as old note2 and some noname stuff) works well.

I tried also other person's S6. Result it the same so I don't think it is some kind of damaged socket or so on.

What's going on? Am I missing something? Maybe some security setting prevents USB from working?

**UPD**

This doesn't look as a "driver" issue at all. `lsusb` shows *all* usb devices even if the system doesn't know how to deal with them.

# Answer
Sad but true, it's a hardware issue. As far as I understand, the board containing usb socket needs to be replaced.

PS: Also the worldwide warranty that I was promised to have in *official* (listed on samsung.com) retail shop doesn't exist.
> 2 votes

# Answer
I was getting very frustrated with my Samsung Galaxy S6 and my new Dell Precision M3800 and USB connectivity. Apparently the S6 is not fully compatible with USB 3 connections. I could not get it to connect (other than charging) to any of the 3 USB 3 ports on my laptop (no usb 2 on the new Dell). It connects fine to my older laptop (USB 2), so I decided to try connecting a USB 2 hub to my new Dell and the phone to the hub, and it works! So, Samsung, please fix this!
> 3 votes

# Answer
I had this same problem. Samsung buried the option to turn USB debugging on deep inside the Settings menu. You have to enable it in order to use ADB with the S6 (or any other Android device)

Have a look here.
> 1 votes

# Answer
It's not a hardware issue, or a computer driver issue. It's whatever the USB "driver" is on the S6 itself, because a factory reset resolves the issue.

I can't figure out what it is that breaks it, whether it's a setting change or an app getting deleted. If anyone's aware I'd love to know.
> 0 votes

# Answer
I was having similar issue with my S6 Edge(+). Found to be junkie usb cable. Switched to a quality cable and device showed up.
> 0 votes

---
Tags: adb, usb, samsung, 5.1-lollipop, samsung-galaxy-s-6
---


# Question
Title: How do you get to the hidden phone settings on Android 5.0
I have a Galaxy S4 running lollipop and the old way to get to this menu was `*#*#4636#*#*`. How do you do it in other lollipop devices?

# Answer
\*#0011#\* is the code I used on my S4 VE. Also, I used the Phone info app - it has a tab that has the Android dial codes.
> 0 votes

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


# Question
Title: Galaxy S5 SM-G900F programmed as SM-9006V
I have a Samsung S5. On the box, on the sticker inside the unit, checking the IMEI and using CPU-z they all said the unit is an SM-G900F and is using the Snapdragon core.

My biggest problem with it is I want to be able to back the entire unit up so that if I mess it up, I can put it back to its original state. There is no simple universal backup method, so I used ADB to do the following command:

```
dd if=/dev/block/mmcblk0 of=testsystem.img

```

I made changes to the programs and did this command:

```
dd if=testsystem.img of=/dev/block/mmcblk0

```

I thought this worked, so then I proceeded to try to install Cyanogen ROM. After many tries and other things too tedious to describe about what did not work, I finally got this version to work:

```
13.0-20160114-NIGHTLY-kltechn

```

This version and ones before it are for the SM-G9006V Chinese model, not my supposed international model. I tried to put in this version:

```
cm-12.1-20151007-SNAPSHOT-YOG4PAO333-klte

```

which should work for the SM-900F but it won't.

Now trying to put the phone back to its original state using

```
dd if=testsystem.img of=/dev/block/mmcblk0

```

does not work.

I think the phone was programmed somehow with two different ROMs, and I am hoping someone can tell me how to do this, or why I can't make dd command work?

---

Here is some more information before I did anything to the phone:

On Kies before changing to cyanogen rom it said it could not update the phone and reported the following:

```
G900FXXU1POEC/G900FOJV1POF1/G9006VZNU1BOE3/G900FXXU1POEC  (XSG)

```

Original answer to \*#1234# before Cyanogen rom was:

```
G900FOJV1POF1

```

Now this information cannot be gotten from KIES, and the \*#1234# no longer works.

In addition, I wrote down all the following from the phone in its original state:

* Device Name: Galaxy S5
* Model Number: SM-G900F
* Android Version 5.0
* Broadband Version: G900FXXU1POEC
* Kernel Version: 3-4.0-4884557 dpi@swdd5702 #1 Tue May 12 11:54:06 KST 2015
* Build Number: LRX21t.G900FXXU1POEC
* United Arab Emirates TRA ID:0016333/03 TP: 00000000/00
* Security Software MDF V1.1 Release 4 VPN V1.4 Release 3
* Knox Version Knox 2.3
    + Standard SDK 5.3.0
    + Premium SDK 2.3.0
    + Customization SDK 2.0.0
    + Container 2.3.0
    + IM 2.0.0
    + CEP 2.0.1
    + Enterprise Billing 1.0.0
    + SE for Android 2.2.1
    + SSO 2.1.1
    + TIMA 3.0
    + VPN 2.2.0

I want the phone to have a complete back up that is simple like using dd.

I want to use the phone in the US and Asia.

I would like to be able to put it back to its original ROM programming.

# Answer
**Current Situation**

* I am afraid you have messed up things in a big way by flashing a ROM not meant for the device ,see this to get more understanding Can I install a ROM made for a different device?
* Also surprised that you were actually able to successfully install CM meant for another device
* I am not conversant with "dd" commands, but the probable reason it is not working now is that the partition information has been altered after flashing the wrong ROM
* Samsung phones **do not** come with two ROMs as you are speculating based on *Kies* output. One remote possibility that strikes me is that this is a refurbished phone which had traces of earlier ROM (if that is possible ), leading to Kies reporting inability to upgrade. You can verify, if your phone is refurbished or not and also obtain more details about your phone, see my answer How can I tell if my phone is refurbished

**Next Steps**

* At this juncture, trying to solve things on your own may cause more damage than help, so visit a service center to get it fixed. **Leave it to the experts**
* If you still want to experiment, download *correct* stock ROM from Sammobile (requires registration) and flash stock using Odin as explained \[Guide\]\[Samsung\] How to flash Stock ROM

**Edit**

1. OP has confirmed that check by *Phone Info Samsung* shows it as refurbished. My *guess* is that the refurbishment was not properly done in terms of OS, leaving traces of earlier ROM as well. This could *possibly* disrupt attempt to restore to stock. This complicates situation further and strengthens my earlier recomendation to have the service center handle it. Of course, this does not stop OP from trying to flash stock ROM

> 2. *On Kies **before changing to cyanogen rom** it said it could not update the phone and reported the following:*
>
> G900FXXU1POEC/G900FOJV1POF1/G9006VZNU1BOE3/G900FXXU1POEC (XSG)

factually reported by *Kies*, shows this, which is further confusing, either all the actions done by OP are not correctly reflected or there is an issue with refurbished phone

* G900FXXU1POEC is UAE lollipop for your device
* G9006VZNU1BOE3 is lollipop for SM-G9006V
* G900FOJV1POF1 is lollipop UAE
> 1 votes

---
Tags: cyanogenmod, adb, rom-flashing, backup, samsung-galaxy-s-5
---


# Question
Title: Inputting katakana on Google Japanese Input
How do we use Google Japanese Input 12-key keyboard to input Katakana as the keys are in Hiragana? For example, how do I input アinstead of あ？

# Answer
Google Japanese Input only has 2 modes: kana/romaji.

There is no hiragana-only/katakana-only compared to other IMEs. However, in kana mode, the suggestion box provides hiragana (normal/small), **katakana (normal/small and full/half)**, kanji, and recently used words as possible conversion.

**Note:** sometimes you need to scroll to the bottom for katakana conversion.

Screenshot resized. Click to view the full-size
> 3 votes

---
Tags: google-japanese-input
---


# Question
Title: Change the Samsung's "Quick Settings" background color Or Remove Quick Settings
I have **Samsung galaxy core 2** Phone. I just want to change the background color (*The Dull Blue Colored one*) of the quick settings tab. I tried it by using **Wanam Xposed**. It has many options, but I can't change the Quick Settings background color using it.

Can anyone help ?

# Answer
Open *Wanam Xposed.* Go to *Theme**Background Color* → You may give *any HEX* value..

Also Go to *Theme**Panel Background* → You may give *any HEX* value OR Transparent Panel Background.

Also Change *theme**Tile Pressed Color* (scroll down to last ).

---

Related subreddit - Some modding I did with my S5, thought I'd share with y'all

---

Bonus: Install Bluured UI \- icons color on notification panel might not change on Galaxy Core 2
> 3 votes

---
Tags: samsung, themes, background-process, quick-settings, samsung-galaxy-core-2
---


# Question
Title: Why do some bookmark icons have a red background in Firefox?
I have Firefox for Android installed on both my phone (Nexus 5X) and tablet (Nexus 9).

On my phone, some bookmark icons have a red background:

Whereas on my tablet they appear "normal":

What does the red background mean? I couldn't find an explanation online. Even on Mozilla's help website the YouTube icon has a red background.

# Answer
> 0 votes
It's a small cosmetic feature of Firefox: dominant color as favicon background.

To put it simply, Firefox will try to calculate the dominant color of an icon, and apply it as the background. Here is the screenshot of the feature while it's WIP (might not apply to current version).

Image credit to Margaret Leibovic

As for the reason why some of the icons have it or not, it might be probably a bug on Firefox.

---

Further reading: Dominant Favicon Color, Revisited on Android - Margaret Leibovic

---
Tags: firefox-for-android, bookmarks
---


title: Where does LINE store profile pictures?

text:
# Question
Title: Where does LINE store profile pictures?
Similar to: Where does the LINE app store pictures and video files? , but in that folder I can't see any profile picture

# Answer
Profile pictures are cached in the following directory:

```
/sdcard/Android/data/jp.naver.line.android/storage/p

```

Rename the extension of files to *.jpg* to view them.
> 2 votes

---
Tags: line
---


# Question
Title: How can I decrypt or view images encrypted in Sd card, in other phone?
I had enabled Sd Card Encryption in my "HTC Desire 816 (d) phone in July 2015, after that I had taken backup of "Phone memory" in my computer, But few days back my phone got stolen. Due to which I m not able to view images encrypted in Sd Card. How can I decrypt or view images encrypted in Sd card, in other phone?

Kindly help me.

# Answer
> 1 votes
**Answer:** You **cannot decrypt**, since it requires both the device and the key which was generated on it to encrypt

**Why**

Encrypt Files on Your SD Card Using Your Android Phone explains this in simple terms. Quoting relevant portions (emphasis added; deleted text denoted by "...."):

> Unfortunately, it is virtually impossible to access or decrypt the files on your SD card without the right password. Android's encryption algorithm is **based on two major factors - the mobile device and the password**. **Lose any of these, and your encrypted SD card files will be inaccessible**. You can only decrypt the SD card files by inserting the SD card into the mobile device that was used to encrypt it and then entering the correct password when the device is powered on.... The password or key is stored to your mobile device's Random Access Memory (RAM)....Encryption is essentially classified as a high level data storage security process. When you encrypt a file, you are altering its form using a specific algorithm so that the operating system will not be able to readily classify or identify it. With advancements in information security, the encryption algorithms being employed nowadays are basically "fool-proof". This means that there is no viable way of opening an encrypted file other than getting a hold of the key. Even hundreds of supercomputers could take thousands of years to open an encrypted file.
>
> Encryption is designed to work this way for one obvious reason: **Security**

To further clarify on the query of OP\- again, **No**, you require the **same** device on which it was encrypted, it will not work on **same model** device. A simple explanation for this is

> The password or key is stored to **your mobile device's Random Access Memory (RAM)** ( hence, you require the same device)

The underlying principle is that data and key required to access it should be in separate *physical/logical* locations. While the algorithm for key generation is OEM specific, the actual key generated is linked to the device on which it is generated and hence decryption will not work if the device is changed, since the "key" portion of the puzzle is missing

---
Tags: encryption
---


# Question
Title: WhatsApp Web using CM12.1 often can't connect
I had CyanogenMod 12.1 on my Nexus 4 and after switching to the Sony Xperia Z3 I installed the newest nightly, too. On both phones I have trouble getting WhatsApp Web to work.

I can scan the QR code without problems but ~50 % of time the loading spinner on the website won't disappear. Removing the browsers in the app doesn't help and even removing the app's data and setting it up from scratch didn't change anything.

I have the same problems using 3G or WiFi and also in different WiFi networks (home/work).

Sometimes, the following exception appears in the LogCat

```
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.030 14060-14097/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.055 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.056 14060-14091/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.058 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.059 14060-14100/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.060 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.061 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:  Caused by: java.lang.Exception: delivery failed
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.a(m.java:2)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at org.whispersystems.jobqueue.m.run(m.java:4)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m: java.util.concurrent.ExecutionException: java.lang.Exception: delivery failed
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.a(bh.java:17)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.messaging.bh.get(bh.java:16)
    10-09 14:32:11.062 14060-14101/com.whatsapp W/m:     at com.whatsapp.jobqueue.job.b.k(b.java:1)    enter preformatted text here

```

# Answer
> 0 votes
I had this issue, and did two things at the same time to fix it (so not sure what the actual fix was)

1. Disable AdBlock filtering.
2. Hold phone in landscape to scan the QR code.

---
Tags: cyanogenmod, whatsapp-messenger, connection-issues
---


# Question
Title: Notifications don't show up when phone is asleep - Samsung Galaxy s4 running CM12.1
Ok so this is a curious little problem I have. I recently flashed CM 12.1 on my S4 and since then I don't receive any notifications from apps like Bleacher Report, Snapchat or Instagram when I'm not using my phone. However, when I am using my phone I see notifications on Snapchat at least pop up. I tested this my sending myself a snap and voila saw the heads up notification say I had one. But curious thing is, this notification would not arrive if I wasn't using my phone and had it set down somewhere else. I have again tested this by having a friend send me a snap while my phone was set down and when I picked it up later, didn't see a notification. Same thing with Instagram. It's driving me nuts. Can anyone help me with this? I have read around and some people suggest this may be a problem that happened while restoring using Titanium backup but I cannot see why it would only affect certain apps. Facebook notifications work just fine. Fotmob (a soccer score app) works just fine. It's just SnapChat, BleacherReport and Instagram (at least those are the only ones I have noticed).

# Answer
> -1 votes
Try installing Echo Notification Lockscreen. It is a decent third party app.
Check their official site here

---
Tags: cyanogenmod, notifications
---


# Question
Title: How to override default Android's default screen lock security policy?
I want my Android device screen to open without requiring password. So I chose "none" option in Security settings. But, when I needed to add a VPN connection, it required me to provide a password, PIN, or a pattern for the screen. Thus, the option to add "none" unlock is disabled once a VPN connection is set (figure below).

I want to know if there is a way I can override this security policy i.e. retain VPN connection but forego screen unlock password. The Android version is 4.2 and the tablet is rooted if it helps.

# Answer
> 2 votes
A couple of ways (None of these tried by me)

> To setup a VPN you are forced by the system to setup some kind of security.
>
> This module is for all the users who don't want to be forced to use a protection, although using the services described above

If you are not familiar with Xposed, Xposed: The mighty Android tool box by @Izzy, would be very useful

* VpnROOT-PPTP-Manager claims to do that, amongst other capabilities. App description says
> This application was designed to allow connection of a VPN server without having to use PIN or Pattern Lock-Screen in Android.

**Edit:** The first method did not work for me on 4.2.2 (tried after posting this answer).

---
Tags: security, vpn
---


title: Remote mass installation

text:
# Question
Title: Remote mass installation
We are about to develop an application for one of our client, to be deployed on over way over hundreds of new phones.

I would like to know if can could use google for work (or any other method / service) to "remote mass deploy" this app with no user interaction, or at least minimal interaction (like just accept installation popup) using a list of device ids ?

Thanks in advance for the help

# Answer
I work for a large company that uses Maas360 (https://www.maas360.com) to control company phones. It has a variety of features including security policies and push install of applications automatically.
> 1 votes

---
Tags: installation, remote-control
---


# Question
Title: Can I find out what exactly is "android system" traffic?
I'm using Android 4.4.4 CyanogenMOD 12. My traffic is dominated by "android-system" - about half of my data usage is caused by "it" and I have no idea why it transfers data. backup (backup & restore) is turned off. I dont use any Google Service besides the play store (and very seldomly youtube). All the "android system"-traffic is background-trafic.

Is there any chance (tool/app/whatever) to find out what exactly the cause for the "android system" traffic is?

PS: \- I use AFWall+ and in 3G even most of the system apps are blocked. \- I do not have the "Photos" app

# Answer
It's possible. I used ARM version of `tcpdump` command. You must copy that command by hand in `/system/xbin/`. In shell you ran:

```
tcpdump -i rmnet0 -w /sdcard2/tcpdump.pcap

```

After some time kill that tcpdump command and copy file tcpdump.pcap to PC. Then use Wireshark to load tcpdump.pcap file to investigate network traffic.
> 1 votes

---
Tags: data-monitoring
---


# Question
Title: Remove a folder I created in /system/lib
I have root access and am able to remount. I created a folder in `/system/lib/` named `rfsa`, but I don't know why I cannot see or open that folder.

When I type `ls`, it is there. But when I type `ls -l`, I get this error

```
lstat './rfsa' failed: I/O error.

```

The first time I get this error, I have to reboot and root and remount again. Also, if I try `rmdir /system/lib/rfsa/` (I created this folder myself), I get this error

```
rmdir: rfsa: Read-only file system

```

Any ideas what can I try?

---

Here it is before the `ls -l` command:

```
/dev/block/bootdevice/by-name/system /system ext4 rw,seclabel,relatime,discard,data=ordered 0 0

```

After `ls -l` and getting the error, it changes to:

```
/dev/block/bootdevice/by-name/system /system ext4 ro,seclabel,relatime,discard,data=ordered 0 0

```

---

I don't have busybox, but the first time I try `mount -w -o remount -t ext4 /dev/block/bootdevice/by-name/system /system`, nothing is changed. After I get the file I/O error, this time I get:

```
mount: Read-only file system

```

Here is the `cat /proc/mounts` output, before I try to access the bad folder:

```
rootfs / rootfs ro,seclabel 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,size=949072k,nr_inodes=237268,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,seclabel,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,size=949072k,nr_inodes=237268,mode=750,gid=1000 0 0
tmpfs /mnt tmpfs rw,seclabel,relatime,size=949072k,nr_inodes=237268,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
pstore /sys/fs/pstore pstore rw,seclabel,relatime 0 0
adb /dev/usb-ffs/adb functionfs rw,relatime 0 0
/dev/block/bootdevice/by-name/system /system ext4 rw,seclabel,relatime,discard,data=ordered 0 0
/dev/block/bootdevice/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/persist /persist ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/dsp /dsp ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/modem /firmware vfat ro,context=u:object_r:firmware_file:s0,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/dev/block/bootdevice/by-name/tctpersist /tctpersist ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
/dev/block/bootdevice/by-name/hdcp /persist/data ext4 rw,seclabel,nosuid,nodev,relatime,data=ordered 0 0
tmpfs /storage tmpfs rw,seclabel,relatime,size=949072k,nr_inodes=237268,mode=755,gid=1000 0 0
/dev/block/dm-0 /data ext4 rw,seclabel,nosuid,nodev,relatime,discard,noauto_da_alloc,data=ordered 0 0
/dev/fuse /mnt/runtime/default/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /mnt/runtime/read/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /mnt/runtime/write/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
root@idol4:/ # cat /proc/mounts | grep system
/dev/block/bootdevice/by-name/system /system ext4 rw,seclabel,relatime,discard,data=ordered 0 0

```

# Answer
> 0 votes
If you have a busybox you can try

```
busybox mount /system -o rw,remount

```

or use system `mount` command:

```
mount -w -o remount -t ext4 /dev/block/bootdevice/by-name/system /system

```

# Answer
> 0 votes
It is a mount-option that the fs is remounted readonly if an error occurs.

But for you problem with the folder:

Could it be that the foldername contains special characters (that includes spaces or backspaces)? Check it with `ls -b *` or `ls -q *` if your `ls` supports it.

---
Tags: adb, mount, system, selinux
---


# Question
Title: Mi2 broken screen, any way to retrieve photos?
My daughter's got a Xiaomi MI2 stock phone with a screen broken in such a way that it can't be unlocked. She already had a new phone on the way but she's devastated at the thought of losing her photos (no backup). Is there any possible way to retrieve the photos short of getting the screen repaired?

I've read around quite a bit but every possibility seems to require ADB enabled. And the Xiaomi MI phone manager can connect but doesn't show any files at all, nor allow backup, so I assume the phone has to be unlocked for this to work.

Oddly, some methods I've tried of retrieving the images (dropbox, windows) activated the camera, where I could see and delete the most recent picture, and also determine the pictures are stored on a path that suggests an SD card, but I understand this is only a virtual SD card so presumably removal is not an option.

So this is my last ditch attempt to avoid a screen repair. Can anyone help, or confirm that I really am out of options for retrieving the photos?

Thanks for your time.

# Answer
> -1 votes
You could try and boot the phone into recovery or bootloader mode (using either `adb` or just turning it off then holding the power and volume up or down keys as it's booting back up) and then use the `adb pull /sdcard/DCIM/* C:/camera_backup` command (as LyricWulf suggested) to backup all the photos from the phone.

Good luck getting those photos :)

---
Tags: data-recovery, broken-screen
---


# Question
Title: WhatsApp service extended to lifetime and revoked immediately?
I just saw the following when I opened Whatsapp:

Within few minutes I get the following message:

Why is this happening?

# Answer
It sounds like other blogs are talking about it:

WhatsApp official blog says that the app is going free:

> So over the next several weeks, we'll remove fees from the different versions of our app and WhatsApp will no longer charge you for our service.
> 5 votes

---
Tags: whatsapp-messenger
---


# Question
Title: Powering Samsung Galaxy J7 using an external DC power supply
I would like to turn on Samsung Galaxy J7 using an external power supply. The problem is that it uses 4 pins (+,\*,-,\*) to connect to its battery. The first pin is the positive and the third one is negative, the other two I think are used to transfer data to the battery.

When I connect my external power supply to the positive and negative pins, the smartphone stays on just for a few seconds, then it shows a message that the battery is low and turn off.

Can anyone help me how to cheat the smartphone in order to make it "think" that my external power supply is its battery?

# Answer
It is possible to "cheat" the mobile into thinking that is connected to battery, while it is in fact connected to external power supply

How to use phone without battery provides instructions on doing it and has a 4 pin configuration as on your device. I am not elaborating on the details involved as

1. This is **not a standard method** and more of hobbyist/ DIY project
2. I would not recommend **any** methods that are different from OEM specified. Battery Charging is fairly complex and attempting to replicate by such methods can cause **harm to battery/ battery life / device** besides being a **safety hazard**.

**Drawbacks**

To give you an idea of what typical OEM battery charging does and what you would **not be able to implement** (since you don't know how the drivers are designed):

> The IC (*fuel guage IC*) monitors a voltage drop across a small current sense resistor connected in series with the battery to determine charge and discharge activity of the battery. Compensations for battery temperature, self-discharge, and discharge rate are applied to the capacity measurments to provide available time-to-empty information across a wide range of operating conditions.
>
> Battery capacity is automatically recalibrated, or learned, in the course of a discharge cycle from full to empty. Internal registers include current, capacity, time-to-empty, state-of-charge, cell temperature and voltage, status, and more.

***What does it mean if you can't implement these features (listed above)?***

Li-ION batteries have four stages of battery charging- *Constant Current, Saturation (Constant Voltage), Ready (No Current) and Standby*. The battery charging hardware and OS is tuned to ensure that the battery spends *required time with appropriate Voltage and Current levels in each of these stages to ensure proper charging*

Charging directly by external power supply cannot achieve this resulting in **Short term- Battery not delivering rated capacity for every charge and Long term - reduced life of battery**. To understand more about Li Ion charging, see BU-409: Charging Lithium-ion

**Related:** For getting an understanding on the possible reasons for have 4 pins, see Why does this mobile phone have 4 terminals. Unless you have the specific *pin out* diagram for your battery, you can't be sure of the reason for fourth pin (my guess is NFC related). This is the only source I am aware of for getting pin out diagrams
> 1 votes

---
Tags: power-on, samsung-galaxy-j7
---


# Question
Title: Google Play says my device isn't compatible with the app even though it meets required Android version
I have a Hisense HS-U601 with Android 4.4.2 but when I try to download apps on Google Play that requires 4.0 and up it always says it's not compatible. For instance I can't update my Instagram app because Google Play says my device is not compatible with the app.

# Answer
> 1 votes
From Instagram's help center:

> ### I'm getting a "Device not compatible" error message in Google Play Store.
>
> We're aware of an issue where some people get a "Device not compatible" error message in the Google Play Store when trying to download Instagram, even though Instagram should support the phone. Google is currently investigating this issue with Google Play Store.
>
> As a temporary workaround, Google suggests clearing Google Play Store's data from your phone and then trying to install Instagram. To do this, go to **Settings \> Application Manager \> All \> Google Play Store \> Clear data.**

Instagram is definitely compatible with your Android version.

---
Tags: applications, google-play-store, 4.4-kitkat
---


# Question
Title: How to save the Home Cover Photo of a LINE profile?
In the upper section of each LINE user's home screen a background picture is displayed, called *Home Cover Photo* in LINE's own terms. How is it possible to save the cover photo of another user?

# Answer
Home Cover Photos are cached in the following directory:

```
/sdcard/Android/data/jp.naver.line.android/storage/toyboximg/line

```

Rename the extension of files to `.jpg` to view them.
> 2 votes

---
Tags: line
---


# Question
Title: How do I select a non-OEM charger for my device?
My Nexus 5 D821 (2014)'s original charger started failing to charge the phone since last week. There are 1.8A & 1.2A LG OEM chargers available in ebay.com. Is it okay to use the 1.8A charger? or Should I go for 1.2A charger?

# Answer
When you are switching to a different charger from What is OEM supplied, things to bear in mind:

* **Type of battery** (not really relevant these days as most batteries are Li-Ion or Li-PO . Both have sane charging characteristics. Your battery is Li-PO). Battery type dictates charging / charger features
* **Voltage** This is critical and **never use higher** rated voltage than what is specified for your device. For instance do not use 9V tablet charger for your mobile rated at 5V (vice versa is safe but charging will be slower )
* **Current** This does not matter much since the circuitry inside your phone / battery caters for this and draws as much current **as required**. Quoting from this

> Each device has a regulator or charge controller, known as a Power Management IC, or PMIC. This device protects the battery from charging too fast, or too slow.

Nexus 5 charging specifications listed at Charge your Nexus device and as confirmed by OP in his comments as same for his device

> The input voltage range between the wall outlet and this travel adapter is AC 100V– 240V, and the travel adapter’s output voltage is DC 5V, **1.2A**

The rating of LG chargers are 1.2 A and 1.8 A and should be 5V (which is the standard USB charger rating

Having said that, it is playing safer by choosing current rating closest too original-which is 1.2A in your case.

So you can go in for **either LG charger as long rated 5V, but given a choice go in for 1.2 A**

**Edit**

> In some neighborhoods you'll see a water tank raised high above the ground on strong legs. The water in this tank has been raised up there to create pressure in the system. A series of pipes carry the water down from the tank, under ground, into your house, and then to each sink, bathtub, and toilet. The water in your pipes is under pressure because the water in the tank is pushing down on it. This pressure is similar to **Voltage**. Voltage is the pressure pushing on the electrons in a circuit.

> If all of the faucets in your house are closed, no water flows through the pipes. If you open one faucet, some water flows. If you open all of the faucets, a lot of water flows. This flow of water is similar to electrical **Current**. Current is the flow rate of electrons through the circuit.

**Correlation of this example and charger selection criteria**

* **Voltage:** If the voltage is too high, the pipes in your home (*read device hardware*) may burst since they just are not designed to handle
* **Current:** The **flow of water** (read *Current handling hardware*)- if it is too low, you will increase by opening the tap outlet to allow more water and vice versa. This doesn't harm the plumbing of the house
> 4 votes

---
Tags: nexus-5, charging
---


# Question
Title: Getting "Can't open this video" when attempting to open a video
Video with extension VOB and transferred from my PC to the tab doesn't open in latter. When I attempt to open it I get "Can't open this video" and "No thumbnail".

How to play that video in my phone?

# Answer
Use a video player app, such as VLC for Android and MX Player.
> -1 votes

---
Tags: video
---


# Question
Title: wifi is getting turned off and mobile data is getting turned on automatically
I am facing a weird scenario in my android phone since 2-3 days.

My wi-fi is automatically getting turned off and my mobile data pack is getting turned on.

It has been cost effective 2-3 days.

I have followed different questions on Android forum and stackexchange it self.

I am listing out the suggestions, i have already tried:-

1. Disable battery saver app (I dont have any battery saver app installed)
2. Did restrict background data for each and every app installed on my phone (As many blogs were suggesting the same)

Still am facing this issue.

Model-Micromax A310 Android Version - 4.4.2

# Answer
There is an option in the Wi-Fi settings: **Keep Wi-Fi on during sleep**

It has the following options: -\> Always -\> Only when plugged in -\> Never

Make sure the above is set to "Always". I believe it will have set "Never" in your case.
> 1 votes

---
Tags: wi-fi, 4.4-kitkat, mobile-data, background-data
---


# Question
Title: How can i stop Call Broadcast massages in micromax yu yunique
getting lots of msg from CB channel in my micromax yu yunique cell. Please let me how can i stop. I have checked many time in my massage setting but i didn't get hug results. can help me, So let me know

# Answer
> 0 votes
Go to Settings \> More (In Android 5.1.1) \> Emergency Broadcasts There some options inside the above settings location.

Read the options carefully and set or unset whichever you want. I hope this will help you.

---
Tags: instant-messaging
---


# Question
Title: uninstalled play services&google app - system unstable
I uninstalled updates for Google App and Google PLay Services apps, and suddenly my phone started to turn off and back on again, non-stop. I can't do anything because it is up for no more than 10 seconds and then it turns off I don't know what is the cause of this, since I only uninstalled updates, not whole apps, I'm also not rooted.

I know there are similarly named threads already, but my problem is not with play store not opening, but the whole system not functioning properly

It's Xperia L if I'm not mistaken, and android is jellybean i think

I'd appreciate any help A LOT! :)

Cheers, Olek

# Answer
The phone might still be using the old caches of your old Apps that you have already uninstalled.

So, I suggest you to Go to recovery and try to clean cache and dalvik cache. Then try to reboot (which may take some more time than usual because you have cleaned all cache) and see it should boot properly.

If this do not help you then you have to go for factory reset as suggested by Firelord.
> 1 votes

---
Tags: uninstallation, google-play-services, google-apps
---


# Question
Title: Power button broken and can't switch on phone
I have HTC One mini. Power button is broken and can not turn it on. Phone is not rooted and unfortunately usb debugging is not turned on. Any ideas what to do? Or at least how to enable usb debugging?

I tried ./adb reboot but it can not find device

# Answer
> 0 votes
I am not sure if this will really help you out or not but it is worth a try. Make sure you have fastboot and USB driver for your phone is installed on your PC

Connect the a USB cable to your phone and keep on pressing the volume down button while the phone is booting. If you are able to access the fastboot mode then you are saved and you can try `fastboot reboot` command.

If your phone is not entering into fastboot mode then go to a nearby shop and get the power button fixed. I think there is no other way you can turn on your phone.

---
Tags: root-access, usb-debugging, htc-one-mini
---


# Question
Title: Remove unknown icon appeared on home screen after mounting SD card
How to remove this icon from home screen of Xperia M2 Dual?

<sub>(Click image to enlarge)</sub>

# Answer
Looks like you have unmounted the SD card once. Behaviour might change on the implementation of launcher app, basically it should be solved by re-mounting the SD card. The icon with the mark is installed on the SD card.

Settings \> Storage \> SD Card \> \[Mount / Unmount\]
> 1 votes

---
Tags: home-screen, app-icons
---


# Question
Title: Why is Google Calendar reminding me it's "Easter Sunday" on 19 Jan 2016?
A recent update to the Google Calendar app on Android enabled Google Keep reminders to be displayed on the calendar - which is what this looks like. However, I have no such reminder set!? It appears on both the Google calendar widget and inside the app itself.

If I tap-through on the event it does confirm that it is linked to my primary Google account. Whilst I do use Google Keep on this account and do in fact have two reminders set (which do appear on the calendar), there is no such "Easter Sunday" reminder (checked Android, Web Interface and iOS app).

This "reminder" only appears on the Google Calendar *Android* app. It does not appear on the Google Calendar iOS app, which also shows reminders (the other two reminders are shown correctly). It does not show on the web calendar - but this doesn't appear to have the option to show Google Keep reminders.

I've tried a manual refresh/resync, but this makes no difference.

Searching for "easter" or "sunday" within Google Keep on Android (or Web interface / iOS) does not return any results.

If I hide "Reminders" (uncheck the option in calendar settings) for this Google account then this erroneous reminder does indeed disappear from the calendar.

Latest Calendar app - version 5.3.1-109151569-release. Nexus 4, Android 5.1.1

Seems a bit weird.

Any ideas?

# Answer
I appear to have at least discovered where this reminder has originated from: in the Google app (formerly "Google Now"), under "Reminders", there is a "Past" reminder for "Easter Sunday (Apr 05 2015)".

Past reminder

However, there is no "Upcoming" (current) reminder listed here for "Easter Sunday" - so nothing should be appearing in the calendar. The two (recurring) Google Keep reminders (mentioned above) are the only two reminders listed under "Upcoming". So, it's still a mystery why this "Easter Sunday" reminder appears to have suddenly recurred after an unusual time period.

### Partial solution:

Tapping this "Past" entry simply gives the option to delete it. Which I have, and now it's gone from the Google Calendar! It's just a puzzle as to why (and how) it happened?
> 2 votes

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


# Question
Title: While on call, typing a digit on dial pad doesn't make any sound
Since my Samsung Duos phone was upgraded to Android 5.0.2, during a call, when I dial some digits on the numeric pad, there is no keypad tone heard. As a consequence, when an answering machine asks my choice like "press one", "press two", I just cannot provide any choice.

I tried pretty much all settings (dialing keypad tone, touch sounds), with no luck, I can't even imagine why disabling this feature.

Any suggestions?

# Answer
It is good to know that the problem has been resolved. After my suggestions including "cheat code" did not fix the problem yesterday, I discussed this with a Samsung ROM developer. You may like to consider options based on this discussion.

Firstly, the tones which failed are DTMF tones. These are NOT

* User configurable
* Affected by app misbehaviour
* Custom ROM developers also do not tinker with this as it is a deep feature and they don't need to tweak it for user benefit
* Stock ROMs/ upgrades will NOT disable it

As to how this happened is a mystery, but there is always an annoying possibility, that this *may* occur again. You have three options

1. **Do nothing:** If it happens again you can try using these kind of apps (bunch of them on Play Store, Google for "DTMF") DTMF Tone Generator

Any of next two options recommended

* **Device not rooted**

+ Take backup using *Kies*
    + Factory reset
    + Do firmware upgrade/restore using *Kies*
    + Restore data using *Kies*

Or see this for other ways of taking back up Full Backup of non-rooted devices

* **Device rooted**

+ Take nandroid backup using custom recovery backup
    + Factory reset
    + Flash upgraded Stock ROM

    - Can be downloaded from Sammobile after registration. Make sure you download the correct version and of your region
        - Flash stock using Odin
* Restore data from nandroid backuo
> 3 votes

---
Tags: calls
---


# Question
Title: How do I connect my Samsung Galaxy S6 to Android Studio?
I've downloaded a driver called SAMSUNG\_USB\_Driver\_For\_Mobile\_Phones. When I plug in my phone via USB-MicroUSB, the phones begins charging, but is not recognized by the computer. How do I get my computer to recognize the device, and how do I then connect it to Android Studio? I would really appreciate any assistance at all. Thanks!

Alex

# Answer
> 2 votes
* Make sure that your USB cable supports data transfer.
* Did you turned on 'Developer mode'?! Settings \> About Phone \> scroll to the bottom \> tap Build number seven (7) times.

---
Tags: samsung, usb-drivers
---


# Question
Title: Get a list of all applications I have ever installed on any phone
This is strongly related to Android market. I have once used an application which I now cannot find using the search function. Unless it was withdrawn, it must still exist and I want to find it. Obviously the search would be easier if I could just manually go through all applications I ever installed on any phone.

Is that possible?

# Answer
> 2 votes
Forgive me if you've already tried this, but there's a tab in the Google play store for all apps installed or not. It's under the my apps and games button.

# Answer
> 1 votes
https://play.google.com/apps

Is where you can see a history of all apps you have ever installed.

---
Tags: applications, google-play-store, data-recovery
---


title: Rooted Xperia Z2 won't read memory card

text:
# Question
Title: Rooted Xperia Z2 won't read memory card
Yesterday I connected my phone in mass storage mode to copy photos off the external microSD card and ejected it properly from Windows before disconnecting it. After that it said there was an error on my memory card. Now if I go to storage, it reports that the card exists and is mounted, but cannot read from it (and so does not display the usage breakup of apps and media the way it does for internal storage)

If I try using ES File Explorer, it too reports that the memory card exists as well as the count of songs and photos, but cannot read any of them. I have only a couple of apps that I had moved to SD card - these show up in the drawer but either fail with an error or cause the phone to freeze. I am able to view the contents of the memory card if it's connected to Windows in MTP mode, but again cannot read or copy files. What's going on?

Is there a fix that doesn't involve reformatting the card and losing everything on it?

**Edit** Just put it into a card reader, and it works normally. I'm able to view and open files.

# Answer
Ok, completely weird, but just taking it out, viewing it with a memory card reader and putting it back did the trick. Glad I didn't have to erase or format it. I'd like to know what went wrong originally though.
> 0 votes

---
Tags: external-sd, sd-card, sony-xperia-z2
---


title: Screen resolution vs. image resolution

text:
# Question
Title: Screen resolution vs. image resolution
I have a question about pixels and screen resolution of an Android device.

The app I developed was at the time when Samsung Galaxy S III was new. The images for my app had a resolution 2310x1300 (ratio 1.777 to fit screen). Samsung Galaxy S III has a resolution of 1280x720. I chose a higher resolution to have some margin for future devices with larger screens and higher DPI.

But that's not enough these days - Galaxy S6 has a resolution of 2560x1440, that is far higher than the resolution of my images. So I thought that the quality of the images for such a device would be deteriorated since the resolution of the images is lower than the resolution of the display. But when testing the app for the Galaxy S6 I **cannot** see any differences right now - the images scaled for the new device (image resolution of 2310x1300 used in a device with 2560x1440) is at least as good as for an older device with lower resolution.

Have I completely misunderstood how dpi and resolution works?

The images resources are under the `/res/drawable/hdpi` folder.

# Answer
As mentioned in @w3dk 's answer, you can't see any difference because **you can't see any difference**. As in, your eyes literally can not differentiate between the detail of the picture on either the Galaxy S3 and the Galaxy S6, because in either case, the picture resolution comes close to the eye's limit of resolution (the minimum angular separation of 2 distinct points/objects from a particular distance of observation for which they can be discerned to be distinct from each other). What I will address here are some of your concerns as a developer.

The S3 was a `xhdpi` device, so any apps on it will use image resources in the `/res/drawable/xhdpi/` folder. The S6 is a `xxxhdpi` device, and so any apps on it will use the resources in the `/res/drawable/xxxhdpi/` folder by default, but fall back to the next lower resolution if the requisite folder is not available, utilizing fast image scaling to show the images at the required *abstract* resolution (dip (device independent pixels), not pixels) (dip are hardware-independent, pixels are hardware-dependent).

You are correct in assuming that image quality should have deteriorated under normal conditions, but your images are in fact pretty high-resolution, and combining that with some downscaling on-device for the S6, you actually get a similar quality image as on an S3.

Why do I say downscaling even for the high-resolution S6? Simple. You're probably not using the whole screen to display the image, and probably what `dip` resolution you specified maps out to less than 2310x1300 real hardware pixels, so the image is downscaled.

Contrary to what one may think, downscaling from a high resolution source actually increases image quality, and upscaling from a low resolution source decreases it on final display, given the same final display resolution and similar (except in resolution) source images. Here is my source about scaling as regards image quality.

As @DanHulme succinctly put it:

> "An image which has been downscaled from a high-resolution source will look better than one which has been upscaled from a low-resolution source."
> 2 votes

# Answer
Displaying a smaller image than the device is capable of is not going to "deteriorate" the quality of the image, it's just not going to be as good as what the device is capable of. The example image (2310 x 1300) you state should certainly appear "better" on the S6 than the SIII since the image is larger than what the SIII can display so must be scaled *down*. The S6 is capable of displaying all the image.

The fact that you cannot see the difference is probably simply down to your eyesight. Between 306ppi (SIII) and 577ppi (S6) and depending on the type of media being consumed, the average human at average viewing distances is probably not going to be able to tell the difference. 577ppi is getting close to what the human eye is capable of differentiating (at 4 inches)!
> 1 votes

---
Tags: photos, screen-resolution
---


# Question
Title: Cannot see the video files in the phone on my PC
I have this very strange issue which I discovered on my month-old Note 2. I never had this issue with my previous device which was a Nexus S.

I hooked up the phone via USB to my PC, and selected `camera PTP` mode. When I browsed the folders via `Computer\GT-N7100\Phone\DCIM\Camera`, I don't see any videos that I shot. However, when I browse the files through the default `my files` app on the phone, I see them. Why is this?

Windows 8 detected the device and installed all drivers too. Because of this, I am not able to move the videos shot with the phone to my PC. Any help?

# Answer
Camera PTP mode means Picture Transfer Protocol. This is probably why you can't see any videos. Select USB mode and navigate to the same folder. Make sure you are checking the right "camera" folder as you may have 2, one on your SD card and one in the internal phone memory.
> 6 votes

# Answer
I also had same issue and I initially connected my phone in PTP mode and then phone got detected but I could not see the videos.

I went to phone and changed mode to MTP and then the videos were available.

Catch here is that when you are connecting your phone to laptop it should be in PTP mode and then change to MTP. If you have MTP mode and try connecting your mobile to laptop then your PC might not detect the phone.
> 0 votes

# Answer
Just use any file explorer and copy or cut the DCIM folder, create a new folder and just paste. Click file transfer on your PC, the images will be shown in respective folder.
> -2 votes

---
Tags: usb, file-transfer
---


# Question
Title: Root Samsung Galaxy S6 Edge running Android 5.1.1
Is there a way to root this device? Its model name is SM-G925F. PingPong Root works only with Android 5.0.2.

# Answer
You could try replacing the stock Recovery with its respective TWRP Recovery and then flashing the SuperSU though the TWRP Recovery.

Next are the download links\_

* TWRP Recovery: Type the model of your device (Samsung Galaxy S6 Edge), select the correct version of your device and then download the image.
* Last version of SuperSU: Will give you root access
* Odin: You'll use it to flash the TWRP recovery

Here's a guide for rooting Samsung Galaxy Tab 4 7" Wifi. Even though the device is different, the steps should be the same you just need to use the TRWP specific for your device and the latest version of SuperSU (more change of success). Guide

I've rooted devices up to 4.4 but haven't tried this method with any 5.X device so please tell me if it worked.

**EDIT**

Here a very similar guide but specific to your device.
> 0 votes

---
Tags: rooting, 5.1-lollipop, samsung-galaxy-s-6
---


title: Saved pages on browser

text:
# Question
Title: Saved pages on browser
I am using basic internet browser on my Samsung galaxy GT I8262, if I cleared storage data of google search then will it affect to the saved pages on browser? Will the saved pages get deleted?

# Answer
Internet app is separate from Google search app so clearing data of Google search won't affect your saved pages
> 0 votes

---
Tags: samsung
---


# Question
Title: I have a Sprint Samsung Galaxy S4 which I want to root?
If I root my phone will I have any carrier problems? Towelroot seems to be the right program, but is towelroot.com safe? Virustotal said Dr. Web doesn't trust it. Is towelroot the right way to do it root it anyway? If I want to install Cyanogenmod what are my options.

Thanks

References: https://www.virustotal.com/en/url/46f8ce8a82ae707f6d951e528e4fb55514d55e929c3063ea9f3054003fa6d953/analysis/

When I scan the apk file itself, it has several hits as risk ware or exploit. Does this mean it is not dangerous?

https://www.virustotal.com/en/file/5aa19d58ccda518979ecec97db9ee7a6a1de606fd661ef9238e65f3b533f170c/analysis/

# Answer
> 1 votes
The most reliable root for the Sprint S4 is CF-Auto-Root, which requires a computer. Instructions

If you found an article saying Towelroot will work, then Towelroot will work as well. I have an S5 and I used Towelroot. It's definitely trustworthy.

When it comes to one-click-root apps, it's as easy as just trying them, if they work they work, if they don't move on to the next one. The only exception is when you have to flash a systemless root kernel for that specific device, which applies to some of the latest flagships

Of course I don't know your specific model number, so it's always good to google search your model number, android version, and the word "root".

Hope this helps

---
Tags: rooting, samsung-galaxy-s-4, sprint
---


# Question
Title: Android - Application Manager - Disable multiple apps at once?
Let me first say I am not an Android person and new to this. I am needing to disable applications on 300+ devices. I have a list that they want disabled, now I've been just manually going in and swiping each one to disable them, but this is very time consuming. There has to be an easier way. I was thinking with profile I could make and download it off the internet on each one or each device is encrypted with Mobile Iron, is there something to push to the device's to do this this. My searching has shown nothing useful.

Thanks,

Tablets are LG VK815 Android version 5.0.2

# Answer
> 2 votes
You can hook the tablets one-by-one up to a computer with ADB drivers installed and USB debugging turned on in the tablets' settings, and run a .bat file with the list of stuff to disable which will look like this:

```
adb shell pm disable com.trash.application
adb shell pm disable com.more.bloatware
[...]

```

It's that easy! Root may be required depending on device.

Here's an example on XDA: Bloatware disable in .bat file

# Answer
> 1 votes
If the devices are rooted then you can try ROM Toolbox Lite app. Otherwise, I think you are out of luck since disabling applications is a feature which requires root access unless done through Settings app.

**Note:** Most Android builds don't consist of many pre-installed system applications. If the application is not a system application it can only be uninstalled or frozen, not disabled.

---
Tags: automation, bloatware, application-manager
---


# Question
Title: Turn animated gif into WhatsApp sendable video
I'd like to convert a short gif-animation to a video so I can send it to a friend via WhatsApp. Do you know easy ways to accomplish that (e.g. codec etc.)? Best would be doing it on the device directly but I could do it as well on a computer.

# Answer
You can use this online tool to convert it: http://www.giftovideo.com/

Regarding tools, you could use FFMPEG \+ ImageMagick, but it's kind of tricky finding the correct options. There is some instructions here. I tried but some of the cases didn't work.
> 3 votes

# Answer
If you're happy with a solution that you can use on a PC, then SuperUser.com has this: How do I convert an animated GIF to a YouTube friendly video format?

For an on-Android solution, none of the video coverters specifically mention this but as the ffmpeg library does support this (as seen in the SuperUser answer), apps like Video Converter Android or Media Converter and so on, being ffmpeg based, should be able to do it.
> 0 votes

# Answer
Just change the extension from .gif to .mp4 in your device and forward to anyone. Only thing is that the recipient needs to open it in gallery to see the animation.
> 0 votes

# Answer
I've tested this on Android 5.0.1:

1. Install this app: Convert GIF to Video & Share
2. Open the app and select the GIF you want to convert.
3. Choose 3gpp video codec.
4. Tap the convert button.
5. Done. Now you can send the video through WhatsApp.
> 0 votes

---
Tags: video, whatsapp-messenger, media-files
---


# Question
Title: Help me reinstall Gapps in my Rooted Xperia SP
Recently, I rooted my Xperia SP (running on Stock Jellybean 4.3). Out of excitement, I uninstalled a few Google Apps (gapps) from my phone. But I think I require the Play Store. How can I **reinstall Gapps** on my phone?

Let me clearly explain you my **current status →** for uninstalling those apps, I used ES File Manager (Root Explorer--\>Uninstall System App). Though some apps like the play store, gmail, facebook etc. were uninstalled, I found that apps like google account manager, google backup transport cannot be completely uninstalled. So, now I have an incomplete set of Gapps. I compared this list of **essential** gapps with my file manager's system apps' list and found only SetupWizard.apk missing. So, I downloaded SetupWizard.apk from here and tried to install using ADB but I got this error: `[INSTALL_PARSE_FAILED_NO_CERTIFICATES]`. Another interesting thing is that when I try to install SetupWizard.apk using my file manager, I get these screens, out of which the **first screen suggests that Setup Wizard is already installed** in my phone. What the heck is all these, man???

Now, I am a total newbie to flashing and other super-geek things, so I am pretty scared to flash the gapps' zip using CWM. Please give me an alternative way, if possible.

# Answer
> 3 votes
First of all you don't tell us what exactly apps you uninstalled there is a chance that you uninstalled some app that cannot be replaced by just adding gapps. Varius gapps for all the versions can be found here `https://goo.im/gapps/` please be carefull to choose the right version according to the version of Android installed on your smartphone.

You should not be afraid to flash .zips from the CWM, one of the reasons of root and installing a custom recovery it this one. Also it will save you a lot of time.

If the first line of this answer is true then you will have to reinstall the ROM that is currently being used at your smartphone.

# Answer
> 0 votes
There is indeed a way to obtain gapps without flashing your phone (I had similar issues with Google Play on Sony Xperia). There is an app that does this as long as you have root access enabled on your device -- the app can be found here (while the official website of the app is down). There are two simple buttons for deleting and installing the core set of gapps.

---
Tags: root-access, 4.3-jelly-bean, google-apps, system-apps, sony-xperia-sp
---