# Question
Title: How to get rid of update notifications for a given app in Google Play Store?
### General question

I have an app X installed on my device in version Y. I don't want to update it to any newer version (Y+z) for some reason. Still, the *Google Play Store* app always lists updates for X, which keeps me from a simple "update all". My question, put to a single sentence:

> **How to hide updates for X permanently from the "available updates" list?**

---

### Specific examples

First, I know there are alternatives as e.g. the AppBrain Market App, which can handle this quite well (skip this update, skip all future updates). I prefer a "generic solution", which does not depend on a 3rd party's market app.

Second, I know that Titanium Backup includes a "Market doctor", which can be used to disconnect an app from *Google Play*.1 However, in my specific case that only worked for a few hours: I disconnected *GTalk*, as I don't want it replaced by *Hangouts*. The update notification disappeared for a few hours, then it was back. No idea what restored the "link".

Third, just to make sure: I'm *not* talking about the "auto update" feature as discussed e.g. in How to enable Play Store auto-update for just a few apps?. I was rather hoping for something close to Does the google play store not provide updates for frozen apps?, but without the need to "freeze" the app in question (which I still want to use, but in the version installed, not in a "future version" available).

Fourth: No, uninstalling the app in question is no option here, though it would perfectly hide any future updates from being displayed :) Nor is "freezing", as the app is used regularly.

Fifth: There is a related question for my GTalk example: Do apps included in the gApps zip get updated via Google Play? However, I want the opposite: No update.

---

It might very well be that "Google Apps" (and other pre-installed apps) are handled in some specific way, and restore their "market links" themselves somehow. For this case, my question includes: How to prevent that from happening?

---

### Update

There's a thread at XDA discussing the very same issue. Until recently, a work-around for "user installed apps" was to uninstall them and then sideload the `.apk` – but even that stopped working. Well, re-signing the `.apk` with a different key *might* work for user-apps. But both would fail for pre-installed apps (can't sideload them to override; different signature would refuse that install completely).

Moreover, there's an issue filed on this by some "joel.bou..". Not hard to guess, though blanked out: that would be Joël Bourquard. If it's really him, then that's really an issue (for those who don't know: Joël is the dev behind *Titanium Backup*). Let me quote from the issue:

> For the record: in the Android Market days it was possible to "Attach" or "Detach" apps (on rooted devices) with a system tool such as Titanium Backup. But nowadays (with the Google Play Store app) this has become nearly impossible to do, because the complete app list seems to sync from Google's servers and the user has no control over that.

Which explains why detaching with apps like *Titanium Backup* is no longer permanent. And I'm afraid I've asked the impossible. But I thought the same in the past with other questions, and surprisingly got solutions here. So I do not yet give up hope on this one!

---

**1:** what that does is explained by eldarerathis in this post (thanks to Firelord for digging that up!)

# Answer
**Notes**:

* OP already know the details, but I've elaborated things considering other readers in mind.
* I've assumed that the device is rooted, and my solution is tested on Android 4.2, 4.4 and 5.0, all running **Play Store** v5.6.8. (Sorry! couldn't test it on Kitkat but no reason to believe that it wouldn't work.)

---

The solution by Craig is actually quite good, and if it somehow can be executed (the custom widget) with Tasker, then things would go very smoothly.

The answer by Anan can also do the job by using `pm disable <PKG>` in **Tasker**, but one can't use that favorite app as long as the Play Store is updating the list, which some users wouldn't prefer.

And I've never tried **Changelog Droid**, so can't comment.

But I've another way to get the things done, not so clean in GUI but good. Here we go:

**Play Store** has its databases under `/data/data/com.android.vending/databases/`. There are three databases worth considering *viz.* `library.db`, `localappstate.db`, `package_verification.db`.

* `library.db` -- it has a table named `ownership` which would list the apps that you've *ever* installed from Play Store with all the Google Play Store accounts associated to them. **Note** that *ever* includes those apps too which you once installed from Play Store long time ago and uninstalled later.
* `localappstate.db` -- this has a table named `appstate` which would list all the user apps now currently installed in your device. Those installed from Play Store would show title of the app too, but sideloaded ones won't.
* `package_verification.db` -- this database would show up if you've enabled "Verify Apps" under "Settings" of Android. It has a table named `verification_cache` having list of apps for verification.
* `suggestions.db` -- not relevant here but it has a table named `suggestions` having a list of all the searches (keywords) you've made using Play Store search bar.

**Note** that I've no source to back my claim, it's all personal experience here. You're encouraged to disagree (with evidence), so that quality of this answer can be further enhanced.

---

Now, back to the question. On my Lollipop, I was able to remove 37 apps from the update list and left only one app for which I used "Update all" to further test the solution. It worked perfectly!

### The required steps:

1. Force close the **Play Store** to avoid any data corruption since we need to edit its database.
2. **Remove the ownership of your app from `library.db`**: I've used `sqlite3` (use SQLite installer for Root if you don't have it). I've used a very simple query which would delete a record(row) from the database by identifying the row using a value. To know further usage of `sqlite3` use this resource.

The general command to remove the ownership would be:

```
sqlite3 /data/data/com.android.vending/databases/library.db "DELETE from ownership where doc_id='<PKG_NAME>'"

```

Replace `<PKG_name>` with package name of your app. E.g. for **Chrome browser** the package name is `com.android.chrome`.

You can find your app's package name using App Browser, or OS Monitor, or simply refer to the question: View app's full package name?
3. **Remove app's further details from `localappstate.db` and `package_verification.db`**: **Note** that the above two steps did the job in my devices. Since I don't want the app to show up by any reason in the update list, I've purged all the details from all the aforesaid databases.

The general command to remove the information from `localappstate.db` would be:

```
sqlite3 /data/data/com.android.vending/databases/localappstate.db "DELETE from appstate where package_name='<PKG_NAME>'"

```

And, for `package_verification.db`, it would be:

```
sqlite3 /data/data/com.android.vending/databases/package_verification.db "DELETE from verification_cache where package_name='PKG_NAME'"

```

---

### The core is covered. Now, as for the execution:

* You can make a script
* Use `adb shell`, or `adb pull` the databases, and do editing on PC using an SQLite software (like DB Browser for SQLite)
* You can use apps like SQLite Editor or aSQLite Manager to manually delete the app records
* Use any terminal app, like Terminal Emulator for Android -- it allows widgets which you can use as a shortcut for a command or a script. See my answer to know how to make such shortcut
* Use Tasker to create profiles based on time, application, or any profile that would suit you
* Plug your script into start-up, though I've not tried it, so ask OP

---

The app though won't show in the installed apps or update list, but it will definitely show up in "All" under "My apps" in **Play Store**. I don't use this store much, so I didn't test other settings of it further anymore.

Additionally, you may note that if you've had earlier unchecked "App updates available" under **Play Store** settings, and you check it after executing the said commands, it will trigger a sync and your changes, as obvious, would be lost.

Also, be aware that Google holds all the info on their servers. So sooner or later, the databases are going to be updated. In my Lollipop device, I waited for around 24 hours and saw no changes in the databases, but YMMV.

---

# For non-rooted devices

It's a theory and I won't claim that it would work but you can try:

1. Force close and take `adb backup` of **Play Store**.
2. Extract backup and make required changes into the databases.
3. Pack the changed files into a new backup file and restore them into the device.

If you're unaware of unpacking and packing an ADB backup on PC, then take a look at Android Backup Extractor (ABE) (it needs Java Runtime Environment, and has `README.txt` for usage) which would unpack the `.ab` file into a `.tar` which you can then extract using an archiver like Ark, 7zip, WinRAR, and more.

 You can use DB Browser for SQLite to make changes into the databases found inside the extracted content (probably) `apps/com.android.vending/db/`.

Also, you may take a look at Android backup related posts such as this, this and Adebar -- all suggested by Izzy.
4. See if the app is gone from the update list.
5. If you succeed in step 4, then run ADB wirelessly to execute steps 1-4 on the Android device itself (somehow) rather than using a PC -- this could be very helpful in **Tasker** if you succeed.
6. Well, if you succeed all the way down to step 4 or 5 then you perhaps can also answer: How Do I Get Rid of Apps from Play Store Update List? :)

---

### Edit:

Well, I'm not the only one who figured it out this way:

1. Android: Stop Wanting to Update Skype -- very close with script part added, but with no reasoning of course
2. (Requires Root) For future reference how to update Ingress without waiting on the rollout. -- not good enough because `library.db` is the main culprit
3. Getting the package name for an app
4. \[WIP\] No Call Sound, block Auto-Update Play Services
> 14 votes

# Answer
This is an issue for me with a couple of apps as well, specifically a torch flash light app, where the newest version doesn't play well with Lollipop, but the previous version does.

My solution to this in the past was to use Change Droid, but as has been stated above, if you open the play store it can return.

Currently the solution I use is to run a scheduled task from Titanium Back up to detach the app from the market. I currently run this 4 times a day. It runs in the background at the scheduled time and so, when I check the Play Store for updates, it is not there.

I will have to look into it, but there may/should be a way to run the task when the play store is open...not sure.

----Edit---- Some have asked for more detail on the TB setting...

First you have to create a filter only select those apps that you want to detach. You access this under the menu. You add the "Elements" or apps to the filter, so only the selected apps are affected. Make sure you don't run the detach with everything selected an no filter applied :)

Next, you have to make the schedule with the filter applied to the schedule.

As you can see this is just for one scheduled event m-s, at 4am

When it's complete your scheduled task will look something like this

You will have to replicate this and change the time depending on how many times you want it to happen.

I have mine set for 4am 8am Noon and 4pm. Seems to work for me.

Hope this makes it a little more clear. If you tool around TB, I am sure with these screenies, that you can work it out.

Craig
> 8 votes

# Answer
With the following solution:

1. You don't depend on a 3rd party's market app.
2. It can be configured to bypass update notifications by Google Play.
3. You can revert app "update block" whenever you want (allowing you to update apps for future versions)
4. It doesn't uninstall or freeze the apps you use.
5. It works with Gapps too.

There is a free app called **Changelog Droid** (formerly this was a freemium app, now it has full functionality for free). Through it you can manage updates of your other apps, being an intermediary with Google Play.

The advantage is that you can send apps to a **blacklist**, omitting to show updates temporarily or "permanently" (until you change your mind). You can also follow updates for applications you have uninstalled or you've never installed but want to observe. I accompany this response with some screenshots (identifying with colors the different screen navigation) for you to realize how it works.

The only downside is that when you open Play Store, either directly or from this app, all apps will be shown (including those that you didn't want to update, as the one applying the filter is Changelog Droid and not Google Play itself, this was expected)

But in Changelog Droid you can access each app on Google Play with a button and then upgrade it individually.

Sorry: there is currently no option to update all allowed applications **in one single step** from Changelog Droid, but perhaps the developer could implement it eventually.

*Note: I still haven't tested for the scenario you describe (I already have updated/replaced Talk/Hangouts), but it could work in your case. Just remember to do not open **My Apps** view of Google Play so it won't trigger automatic update of apps.*
> 3 votes

# Answer
Disable the app in main app settings, or app manager, and open play store and the app shouldn't be listed. Update all and simply re-enable the app when update all is complete. I have the same problem, a txt message app that if I update, I get ugly ads.. This is my work around
> 1 votes

# Answer
I know this is an old thread. And I understand that Ti Backup used to work for detaching an app from Play Store. But I also understand that this works no longer. For those who are interested, I have created an app that does a pretty good job of this. It is called Hide Updates In Play Store, and available for ~USD 1. There is a video showing the app at work. It does require root.
> 1 votes

# Answer
Solution I've found for root users is to simply re-sign the apk (found in `/data/app/` or your TitaniumBackup folder after backup) with ZipSigner and reinstall.
> 1 votes

# Answer
I tried using the app "Permission Manager" (have to be rooted I think). I disable a permission that is not important for the app I don't want to updaten (ex. disabled vibrate permission in ES File Explorer and wakelock in Quickpic). Permission Manager recompiles the app, uninstalls the original, and reinstalls the newly compiled app. After I did this, I opened Play Store and the update reminder was gone.
> 0 votes

# Answer
Another candidate just appeared at the horizon. I've not yet tested it, but it sounds very promising: **StorePrefs.**

* **Requirements:**
    + rooted device
    + Xposed installed
* **Promises:**
    + *Blocking rapid update*
    + *Ignoring some updates (When you have update available in My Applications in Playstore just long click on this update to ignore it)*

Being an *Xposed* module, it should be able to work around the flaws of the other solutions we've had up to now:

* If the Play Services decided to re-link an unlinked app, the module should be able to take action. So no special hand-work required, no Tasker setup
* no manual fiddling with the SQLite databases or `adb shell`
* no secondary "update checker" (a la ChangelogDroid) required
* no manipulation of `.apk` files
* only problem *for some users:* doesn't work on non-rooted devices and those w/o *Xposed*

As I have de-googlified my devices and no longer use the Playstore app, I cannot verify – so feedback from those who can is welcome :)
> 0 votes

# Answer
Like titanium backup you also can unlink the app from google play store with 3C Toolbox. This seems to be, until now, permanent. Root required.
> 0 votes

---
Tags: google-play-store, updates
---


# Question
Title: How to keep GPS turned on (not allowing to switch it off)?
I have bought an Anti-Theft application. The problem is that this application will not work properly if GPS is switched off. So I'm looking for a way to turn on the GPS and never turn it off (i.e. lock it so it stays on).

How can I achieve this?

# Answer
> 1 votes
Most Anti-Theft apps can turning on GPS automatically. And some Anti Theft apps has the abilty to receive a command from sms if there are no internet connection.

---
Tags: gps, anti-theft
---


# Question
Title: Using multiple Google accounts in device but don't want some of them to show up anywhere in Hangouts app's menu
I have five different Google accounts (my personal Gmail account used as the primary account and others for different Google Apps for Business email addresses), Gmail, Hangouts, and more, all work fine for each account. However, I don't use Hangouts on three of the accounts, and I'd prefer that I not even see these accounts in the Hangouts app.

While I can sign out of the unused accounts they still show up in the menu in the Hangouts app. Is there anyway to disable the Hangouts app entirely for specific Google accounts?

# Answer
> 0 votes
No, there is not. The Google Account system in Android is an all-or-nothing setup. If the account is configured on your device, and a Google app supports it, then it will be listed as an available option, even if you turn off syncing of that component in the settings.

# Answer
> 4 votes
Yes you can. Just open Hangouts\> tap the three horizontal bars on the top left\> tap the Settings option\> select the account you'd like to remove\> scroll down and select Sign out. This will sign the account of Hangouts only. You will continue to receive emails and everything else for that account as usual.

---
Tags: gmail, google-hangouts
---


title: Reset huawei Ascend P7

text:
# Question
Title: Reset huawei Ascend P7
I'm trying to reset my phone, but It doesn't work. When I try to reset it via android settings, it restarts, shows the Huawei logo and shutsdown. When I manually restart it its back to its original state before the backup.

I cant boot into recovery or fastboot, it justs shows a black screen. My phone is rooted, but I don't have root acces because of immutable.list. Help would be appreciated.

# Answer
As I don't have this device, I can't say too much. Also, I can't comment because of my rep. But whatever.

Try to flash recovery even if your flashboot returns blank screen. It might not work, but hey! give it a try!

Also, try to look Here or Here, it says about flashing firmware.
> 0 votes

# Answer
Shutdown your Phone and then press and hold Volume down + Power. Normally should your Phone reset then. If this doesn't work, you may have destroyed the recovery.
> -2 votes

---
Tags: 4.4-kitkat, factory-reset, huawei, huawei-ascend-p7
---


# Question
Title: Play music app doesn't find transferred mp3 file in library
I transferred an mp3 file from my PC using SHAREit app to my Android phone. It stored the received file it's own directory (SD1\Android\data\com.google...\files\SHAREit\audio\ on SD card. However I copied that file to another but already existing directory on SD card. Later I removed the file from the SHAREit path.

Now I can play this mp3 by directly going to the current directory and tapping on the file name. But this mp3 can not be seen or played by "Play Music" app.

Can you help me?

Thanking you Shashidhar

# Answer
> 0 votes
Thank you for your reply. However immediately after posting question, I just tried rebooting the android phone. After re-booting, the mp3 file in question was seen and played by the "Play Music" app. So this worked for me. But I didn't understand what .no media file is.

Thank you anyway. May God bless you Shashidhar

---
Tags: motorola-moto-e, shareit
---


title: Secure Android browser

text:
# Question
Title: Secure Android browser
The desktop versions of Firefox and Chrome use Google’s Safe Browsing service to warn the users about known bad websites.

Looking at a Samsung handset running Android v5 I noticed that neither the built in browser nor Chrome has this feature. I then downloaded Firefox for Android and CM Browser (due to it's rating) and they don't have it either. In CM's case it has an option under Security but a url that fails on the desktop, it happily loads.

Is there a browser that uses this? Or should I look to some AV/Security product to get this protection?

EDIT: With Firefox on the desktop, the blacklist is updated every 30mins. It has been hours since I tried both Chrome and Firefox on Android and neither is reporting the same URL as bad. Could be they are using a different list?

# Answer
> 0 votes
Chrome for Android definitely does (http://www.theverge.com/2015/12/7/9865928/google-chrome-safe-browsing-android-malware). The safe browsing feature isn't yet supported by Android WebView so any WebView-based browser (e.g. CM browser, Ghostery, or Lighting Browser) lacks it.

Firefox on Android should support safe browsing as well, as per their blog posts: https://blog.mozilla.org/futurereleases/2012/11/26/firefox-for-android-beta-improves-phishing-and-malware-protection/ and http://www.morbo.org/2012/10/phishing-protection-on-mobile.html. Not sure why doesn't it work for you.

---
Tags: security, browser
---


# Question
Title: Android Tablet Refuse to Enter Recovery Mode
One of my Tablet(ET-86V2G-A23) refuse to enter recovery mode. I did long press volume up and power switch together and nothing happens and I also tried holding down volume up, plugging in USB cable to PC, tap power switch up to 10 times and then release volume up. That didn't work too. I want to flash the Tablet because it stops at boot flash screen. Are there any other method to force it to boot mode?

I also figure out that kernel version in `system/bin/sh` keeps failing.

Is it possible to rewrite files in `system/bin` via adb using command. I think it may also solve the start up problem. I can remember the problem started after installing busybox. Seems something went wrong after installation.

# Answer
I solved it by doing a firmware upgrade with phoenix flash tool. I also figured out that there is a lot of fake firmware that do not work. they are just empty .img files.
> 0 votes

---
Tags: boot
---


# Question
Title: Notification icon that looks like 4 patches stitch together (shaped like Windows icon)
What is the circled icon that looks like 4 patches stitch together (shaped like Windows icon) circled in blue is for?

# Answer
It is pretty easy to figure out app icon on notification panel , downloaded from Google Play Store

* App notification icons *usually* are on the left half of notification panel
* *Google Play → My Apps and Games → Installed* brings up all apps on your phone. Just scroll through and match with icon on notification panel
* *Google Play → My Apps and Games → All* brings up all apps you downloaded , including on your earlier devices. This icon was familiar since I had used it on my earlier device and matching icons tells me it is AVG Antivirus. Thanks to Mathew and Vivek confirming same in comments
> 2 votes

---
Tags: notification-icons
---


# Question
Title: How can I move apps to SD on non-adopted Marshmallow storage?
Everyone seems to be getting excited about Marshmallow's adoptable storage feature, but to me it seems like a major regression. There can be several reasons for not adopting external storage:

1. When upgrading from Lollipop, I already have an SD card full of stuff. So re-formatting it and erasing everything in order to convert it to adoptable storage is a major disincentive. That would require transferring many GB of data off the device, re-formatting, and then transferring it back on, and I'm not sure how to do that in a robust manner or whether it's even possible, since adopted storage probably stores stuff in different ways.
2. My SD card might be too slow for it to make sense using it as an extension of internal storage.
3. I want to be able to use my removable SD card in other devices (e.g. quickly transferring huge video files to a laptop).

Based on these reasons, if I *don't* adopt storage, AFAICS that means that apps can *only* be stored on internal memory. And since I have a lot of apps, that means that since the Marshmallow upgrade, my device is regularly close to full, causing lots of functionality to break.

So is there really no way to move apps to *non*-adopted external SD storage on Marshmallow? If so, do I have any alternative besides uninstalling apps to free space, or downgrading to Lollipop? If not, this would be hugely disappointing and suggest that Google really didn't think carefully enough before providing this feature.

# Answer
> 2 votes
You are correct. Android Marshmallow has done away with apps being on the SD card when it's setup as portable storage. The only way to use it in that way is with root and apps like LINK2SD.

# Answer
> 13 votes
Marshmallow internal storage can be better used with a mixed-format SD card *as I also explain in my blog here*:

http://blog.sam.liddicott.com/2016/02/android-6-semi-adopted-storage.html

First, you need adb working.

1. Have SD card inserted and formatted as portable.
2. Eject your SD card from the Storage & USB menu
3. Use "adb shell" to list your adoptable storage:

like this

```
$ adb shell sm list-disks adoptable

disk:179_64

```

disk:179\_64 is my SD card that can be made adoptable, I want 75% as external SD:

```
$ adb shell sm partition disk:179_64 mixed 75

```

Note: Your card may be listed with a comma instead of an underscore, e.g. *disk:179,64* in which case, that is what you type:

```
$ adb shell sm partition disk:179,64 mixed 75

```
5. This will erase the entire SD card, giving 75% as portable storage and the rest as adopted internal storage.
6. Reboot your phone.
7. From Storage & USB menu, select the SD card (internal) and choose Migrate Data (so that apps, where possible, are installed there).
8. From the Storage & USB rename the adopted storage to have some name like *Adopted* otherwise if it has the same name as the external storage partition, the USB MTP view may only show the internal

Now you have adopted storage that can accept apps which allow "move to SD", and also an SD card where you can store Plex movies, google play music, photos, etc.

Thanks to @fernio who tipped me to post here.

---
Tags: insufficient-memory, storage, 6.0-marshmallow, app2sd, adoptable-storage
---


# Question
Title: How do I transfer my videos from my android phone to my apple IPhone
How do you transfer videos from my android phone to my apple iPad

# Answer
> 1 votes
I think they have the easy transfer app (Move to iOS) , it was uploaded by Apple itself for android user to easily move to Apple Devices.

You can find it on google play: Move to iOS

---
Tags: file-transfer
---


# Question
Title: How do I change my wifi cycle in moto g?
I had the same problem with data usage but that got solved. The drop down button in the wifi tab does not have the change cycle option. Please help with that.

# Answer
> The drop down button in the wifi tab does not have the change cycle option

That is very much expected. The data usage and monthly billing cycle of internet that you are using through Wi-Fi is provided via Router and is not controlled through Mobile device.

Since SIM-based Mobile internet is very much tied to the mobile itself, Android provides Setting to adjust the billing cycle to view/control data usage.

So, you cannot control your Wi-Fi Cycle via Android Settings. You may need to connect with your Internet Service Provider to check for change in Wi-Fi Billing cycle.
> 1 votes

---
Tags: wi-fi
---


# Question
Title: Applications installed get deleted after connecting USB to PC
I had installed quite a few applications on my tablet. But after I connected it to the PC for data transfer some of the applications got deleted by its own.

I connected to the PC by plugging in the USB thereafter turning **ON** the `USB` storage for data transfer. After the data transfer I switched the `USB` storage **OFF** only to find around 10 of my applications are missing.

I checked the Apps manager and found files like `com.YYYYYY.XXXX`, which I suppose are the left overs of the apps that were deleted.

I found a pattern(might be helpful) as this happened a couple of times with me. The application were mostly on the internal SD card(`/mnt/sdcard`) and most(not all) of the recent installed applications were deleted.

Since then I have not connected my tablet to the PC. How can I avoid applications getting deleted and still be able to successfully transfer data ?

**Device Details**

* Device : Intex I Buddy Connect
* Android Version: 4.0.4
* Internal(Phone) Storage: ~ 1.0 GB
* Internal Storage (eMMC I suppose) (`/mnt/sdcard`) : ~ 2 GB
* micro SD Card (`/mnt/extsd`): 16GB (~ 14 GB)

# Answer
> 1 votes
You should ensure that you dismount or "eject" the storage from your PC before turning off storage sharing from your device or disconnecting it. The PC may not flush all writes and properly close resources until you do that, leaving the device storage in a bad state. In Windows, you can right-click the drive in Windows Explorer and choose "Eject" or do the same from the Safely Remove Hardware icon near the clock on the start bar: http://windows.microsoft.com/en-CA/windows7/Safely-remove-devices-from-your-computer

As I noted in chat, Android has also been pretty finicky with homescreen shortcuts (my SGS loses all shortcuts to apps on the SD card upon reboot, for example). It could be that you are seeing the same thing here, and the apps are not really being deleted.

# Answer
> -2 votes
just install the same application again that is already present in your sd card, by agreeing 'all data will be saved'. You will get your application again, without loosing its 0.01%of its data...

---
Tags: applications, 4.0-ice-cream-sandwich, usb-connection-mode, delete
---


title: Nexus 4 disable vibrate

text:
# Question
Title: Nexus 4 disable vibrate
I am using a Google Nexus 4, running Android 5.1.1.

I am trying to disable vibrations when I use the unlock pattern, or the main button panel home, back, and open apps tray.

All of these buttons cause a vibration. I just did a factory reset and this problem arised. Before factory reset they did not vibrate. Factory reset did not change android version.

I have already disabled vibrate in the keyboard options. Where else can I disable it?

# Answer
Here's what needs to be done:

Launch *Settings* app → go to *Sound & notification* → tap *Other sounds* and slide leftwards the switch for *Vibrate on touch* to disable the latter.

<sub>(Click an image to enlarge it)</sub>
> 1 votes

---
Tags: nexus-4, 5.1-lollipop, vibration
---


# Question
Title: Please help, soft bricked my [US] [Sprint] Samsung Galaxy S6 SM-G920P
After around 5-6 hours this morning/afternoon, I've officially given up on fixing this on my own, and I've all but accepted my device to be an expensive paperweight.

I decided to make one last attempt at saving it by posting for help.

Problem: My phone has a feature called "FRP" (Factory Restore Protection), which is tied to one's Google account. Basically, if you have a Google Account on the phone, it locks the phone to any custom binary/custom OS/whatever.

Once I realized this, in order to root my phone, I went in and removed my Google accounts. Sure enough, this disabled the FRP Lock, and I was able to root my device.

After rooting my device, I re-added my Google accounts and went about my business for the next couple of weeks or so.

Just this morning, my phone was having issues charging, so I decided it'd be a good idea to give my phone a reboot. Big problem. It turns out I simply haven't ever turned off my phone since I rooted it. On top of that, I didn't think the FRP Lock would apply to booting the phone, I thought it only affected flashing new firmware. I was wrong.

After my phone turned off, red text appears at the top of the screen: "Custom binary blocked by FRP Lock".

This is the problem. It simply cannot boot. Because it cannot boot, I cannot remove the Google accounts to disable the lock and resolve the problem. Because the lock can't be disabled, I can't flash the phone's original firmware, because FRP Lock will stop anything and everything I try to do.

**tl;dr**: Soft bricked phone due to FRP Lock. Not able to restore original firmware, factory restore, or boot into phone's operating system.

**Important**: The phone turns on, and I have access to the recovery menu as well as "Download Mode"

## **What I have tried:**

* Factory restoring through the recovery menu, doesn't have any effect
* Flashing stock firmware through Odin (Nand write failure)
* Flashing a custom recovery environment (TWRP) through Odin (FRP Lock blocked this flash)
* ADB and Fastboot cannot recognize the device
* Tried to use Kies 3 and Smart Switch to "re-initialize" my OS or something. Both failed, saying that my phone wasn't compatible, and that my serial number was invalid (it was, in fact, correct)

---

The point here is that I've done everything, and literally everything has failed for one reason or another.

I feel like it is a possibility that if I attempted another stock ROM, then I might be able to avoid the Nand Write Failure. But again, I don't know.

# Answer
Turns out that the stock firmware was failing to write because it was an old version, and Android doesn't like old versions, and it won't work.

I downloaded the most recent firmware (6.0.1) overnight, and sure enough, it flashed, and my phone is now functioning again.
> 2 votes

---
Tags: rooting, unbricking, unrooting
---


# Question
Title: How to send a special keyboard sequence using Microsoft Remote Desktop
I use official Microsoft client and I need to "press" `Ctrl`+`Alt`+`Del` or `Ctrl`+`Alt`+`End`. How do I do that?

# Answer
Scenario: Your PC (node\_1) and Remote PC (node\_2).

Open the onscreen keyboard Start -\> All Programs -\> Accesories -\> Ease of Access -\> On-Screen Keyboard on node\_2.

When you want to send ctrl+alt+del, press Ctrl+Alt in node\_1 and click del in node\_2. (Worked for me in node\_1=XP and node\_2=Win7)
> 0 votes

---
Tags: 5.0-lollipop, keyboard, remote-access
---


# Question
Title: Can a Nexus 6P be factory reset when screen cannot be used and phone off?
I broke my Nexus 6P screen, so am replacing it - usually I would factory the phone. However, I can't as the screen is completely black.

I power cycled the phone, but I am unable to enter the pattern to unlock the phone (fingerprint scanner only works after you enter the pattern after restart).

I used Android Device Manager to wipe it, but as I can't decrypt it through entering my pattern, it isn't online, so can't be wiped.

**However, does any of this matter if the pattern can't be entered after power cycling?** Surely the device is encrypted so my data is secure. And if anyone manages to guess my pattern, the device will be online and ADB will wipe it.

Should I do anything else?

# Answer
If you enter the password wrong too many times on your nexus device, it will factory reset your data (by default). It is also possible to factory reset through recovery mode by turning phone off, holding power and down volume simultaneously, clicking volume buttons until hitting recovery mode, then clicking factory reset.
> 0 votes

---
Tags: factory-reset, broken-screen, android-device-manager, nexus-6p, remote-wipe
---


title: How can I un-brick my OnePlus One?

text:
# Question
Title: How can I un-brick my OnePlus One?
While installing a custom ROM on my OnePlus One, I accidentally wiped the INTERNAL STORAGE of my phone, thus wiping the zip files of the ROM and Gapps. So I'm stuck with only the recovery, but no OS. Upon reboot, the screen is stuck one the OnePlus logo. I've tried using adb push and adb sideload but 'adb devices' does not recognize my device. However, fastboot does recognize it. How do I install a ROM and get my phone to work again?

# Answer
> 0 votes
You've asked the question 15 days ago, did you manage to get your device working again? What steps did you take? I'll give it a go in case anyone needs it.

As I've experienced, having a USB OTG cable laying around can be most useful with this device. You can find them cheap just about anywhere. They convert any USB storage device you have to external memory for your One. Just connect it to your device and mount it in TWRP (or any recovery that supports it). Don't forget to unmount it or you'll run into trouble later on.

It does sound like you didn't get the drivers right if no device popped up with adb. You can install these generic Samsung drivers to make it work.

Another thing, if you're having issues in TWRP, it could be useful to flash a different version via fastboot. I'm using this one on my OnePlus One to flash Resurrection Remix M and it hasn't let me down yet.

---
Tags: rooting, custom-roms, unbricking, oneplus-one
---


title: Disable GO SMS Pro weekly nag messages

text:
# Question
Title: Disable GO SMS Pro weekly nag messages
About once a week, GO SMS Pro "receives" (I don't know if it comes from somewhere or if it's written into the application) a nag message from "c10000@go.chat" along the lines of:

> Most of users loves GO SMS Pro because of themes. Thinking of cool & stylish messaging experience? Try out another bestseller: ColorGlass Theme (Apply it through menu-\>theme)

It's extremely annoying. I believe I've logged out of GO Chat (though it tends to log itself back in without asking and won't stay disconnected), and have tried going through the app's settings multiple times without finding any way to kill these notifications. They're driving me batty.

# Answer
> 1 votes
I was able to blacklist the messages by pressing and holding over the "conversation" in the list and selecting "add to blacklist." This removed the messages and I haven't gotten any new nag messages from them since.

# Answer
> 2 votes
I'm pretty sure this will work but I can't test it fully because I never updated Go SMS to the "nagging" new version after reading all the complaints in the reviews...

You have to be rooted. If you are, install Root Firewall Free and block internet traffic for Go SMS. I don't get those nagging reminders but I tried it and I was still able to send and receive SMS messages but I could not use features that use the internet like the Go Chat. If you want to download a new theme or use one of the data dependent service periodically you can just toggle the block off from the firewall app and put it back on when you are done. Obviously this won't help you if you use those data dependent extra services regularly.

**Alternatively, if you are not rooted you can revert back to version 4.56 of Go SMS. You can download this version directly on the Go SMS website.** This is the version I have and I don't get any of those annoying nags. When I started typing this answer I didn't think they'd post past version but now that I see that they do I'd say this is probably the better option.

# Answer
> 2 votes
I just texted "stop" to the message and got a reply back stating "Got it, thanks".

All done.

# Answer
> -1 votes
The best way is to click on that message and then go to the top right corner and then click disable and confirm

---
Tags: notifications, go-sms
---


# Question
Title: accidentally deleted my gallery app can you help me
i accidentally deleted my gallery app. mine phone is rooted and its micromax a120. so can u help me to recover the app or u can provide me a link so i could download from that link. plz help me. plz

# Answer
> 0 votes
Download your phone's stock gallery app then move it to system/app change the owner

* Owner 0 - root
* Group 1013 - media

Then install apk and restart then you're good to go

---
Tags: data-recovery, downloading
---


title: Custom ROM installation without PC

text:
# Question
Title: Custom ROM installation without PC
I have downloaded many ROMs for my Android device (Micromax A120) but can't flash them. Can someone tell me how to flash those ROMs without any PC.

# Answer
> 1 votes
I don't recommend flashing ROM's without PC (Or other device).

Because think about it, if you want to flash it using a program or something else, then you are changing the system while the system is running, which is definitely not good (Some files might corrupt).

But if you are using the SD card method, then that might be good enough..
But still, PC flashes ROM without the actual android to work anything.

For flashing with PC, I would recommend this Link: XDA-Developers. Tho you might find an easier way with some research, or someone else might know an easier way for your device.

If you are really determined, you can use those links to get the general sense of it; (Btw, most of the methods to flash it self requires Root)

**Warning: You will void your warranty if you Root or Flash custom ROM.**

AndroidPit: Samsung devices to flash custom ROM w/o PC

TechnoWorm: Flash custom ROM w/o PC

AndroidForums: Flash ROM w/o PC

Skyneel: Root Micromax A120

---
Tags: rom-flashing, micromax
---


# Question
Title: Are there any command line SSH clients available for rooted Android phones?
I of course have ConnectBot, but I'm looking for something I can script.

Edit: To clarify here, I'm not interested in *running* scripts from a terminal. What I want to do is run an SSH command in an automated/scheduled manner. Tasker and Locale Execute are the equivalent of cron, all I need is the 'ssh' command to run ***from*** the script.

# Answer
You can install the Terminal Emulator from google. Alternatively there is the Better Terminal Emulator Pro. I tried the Terminal Emulator on a non-rooted phone and it seemed to work fine.

Better Terminal Emulator Pro includes the dropbear ssh client, which can be launched from the command line or via a launcher. More info from the authors.
> 13 votes

# Answer
Since my original question was about an ssh binary, and there is an answer for that, I'll accept that answer. However, there is another way to do what I wanted to do, kinda, that might be interesting to someone some day.

Tasker + ConnectBot can be used to execute arbitrary remote (or local, I guess, but Locale Execute is better for that) commands on a schedule.

Step 1: Set up your connection in ConnectBot.

* You can have duplicate connections in ConnectBot as long as they have different aliases. You have to rename one first (away from user@host) in order to create the second. Long Press and select "Edit Host" to perform these changes.
* You probably want to set up an ssh key without a password so that you can use this for automation.
* Once the connection actually works, you can use "Post-login automation" to add the remote commands you would like to run. Make sure there is a blank line at the end so that enter is sent after your last command. Use enter or ; to separate commands. I suggest using something like "echo hello" as a test until you are sure things are working, and "exit" at the end if you don't want to leave the connection open.
* Test this in isolation.

Step 2: Create a Tasker Task to call connectbot.

* Create a new Task in Tasker.
* Add an Action. From Misc, select "Action Intent"
* The fields are:
    + Action: android.intent.action.VIEW
    + Cat: Default
    + Data: ssh url, in the form of "ssh://user@host/#alias" (without the quotes). The alias, user and host here *must* match the alias you set up in Step 1.
    + Target: Activity
    + Click Test. Connectbot should open and your commands should execute on the remote host.

Step 3: Use this Task in Tasker however you would normally.
> 17 votes

# Answer
I know it's an old thread but wanted to +1 the comment about BTEP

I'm also using BTEP's ssh binary though I just call it from it's path instead of linking it /data/data/com.magicandroidapps.bettertermpro/bin/ssh root@192.168.1.1

or generate a pair of keys and use public key authentication /data/data/com.magicandroidapps.bettertermpro/bin/ssh -i /data/data/com.magicandroidapps.bettertermpro/home/.ssh/id\_rsa -l root 192.168.1.1

I use the above command from SL4A r4 in various scripts and it works fine :)

before I could do this I needed to chmod a+x /data/data/com.magicandroidapps.bettertermpro/home/.ssh

once this is done and you backup/restore BTEP with TitaniumBackup the permissions are kept this means if you flash a new rom you can just restore the apps and all your scripts will work again
> 5 votes

# Answer
I have successfully used BotBrew Basil Experimental when running Android 4.4. BotBrew Basil Experimental is based on apt-get so after installing APK and bootstraping I just did `apt-get install dropbear` in a root shell to install SSH client (and server).
> 5 votes

# Answer
Install terminal emulator and quickssh. Quickssh also includes dropbear. Does not cost you money, which it should not because this is surpassingly simple and it's based on dropbear.

https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid

`find -name ssh` user@host

Problem solved
> 3 votes

# Answer
Terminal Emulator absolutely supports scripts\*. Don't believe the nay-sayers. You will need to learn BASH shell scripting, if you're not already familiar with it. Write a script and save it on your SD card. Run it with "sh filename" from Term.

If you clarify what it is you want to "script" having to do with SSH, I can likely give you a better recommendation.

\*(It's actually the Android OS that supports BASH scripts, Terminal Emulator just grants you access to the Android shell, therefore scripting is inherently possible)
> 2 votes

# Answer
To call ssh from a script, all you need to do is set up ssh keys. There are a million how-tos on the web, but there's a page on the Cyanogen wiki that might be more suited to Android users. Once you set up keys, your general ssh command would look something like this: ssh -i /PATH/TO/KEY USER@IP

You can put that in a script, run it, and you will be logged in to the remote machine.

But here's what I think you're wanting to do. To only execute a command on a remote computer, just add it in single quotes: ssh -i /PATH/TO/KEY USER@IP 'command'

That executes the command on the remote machine without logging you in. You can run commands with options, pipes, redirects etc, but it's sometimes better to keep them simple. Except for the delay, it looks the same as executing the command(s) locally and can be used the same.

Locale Execute can be picky about what commands it will run. If it doesn't work, try putting it in a script and using Locale Execute to run the script.

Also, I have had problems with the ssh binary that is on the phone and found that moving it from /system/xbin and creating a link at /system/xbin/ssh to the Better Terminal Emulator ssh binary is more reliable. The BTEP binary is in /data/data/com.magicandroidapps.bettertermpro/bin/ssh
> 2 votes

# Answer
Botbrew is a package manager for Android, in the likes of `okpg` for BSD or more recently, like `APT` for Debian. Pretty nice. It doesn't have an ssh client as a package, but it doesn't look too hard to put in if you're used to building your own packages. And it could be useful as a toolchain for when you want to build other C/C++/etc binaries and libraries.

So albeit this isn't a direct answer, it may be useful for some people to know about.
> 2 votes

# Answer
Now there is a terminal called Termux that you can apt install openssh in. Available on Google Play Store, F-Droid, and Github.
> 2 votes

# Answer
AndFTP can connect over any port you configure so I'm sure it could connect over SSH. But I'm not sure how easy it is to script usage of it. I use the app myself all the time for my hosting server and it works great.

Not sure if you can SSH with Terminal Emulator, but you could try it too. I use that app frequently for doing things I'm too lazy to do with ADB.
> -1 votes

# Answer
Use an ssh plugin for Tasker? Don't need root or ssh binary then.
> -1 votes

# Answer
If the simple ssh client is interesting to you, I made under Android-NDK Bionic library drobpear-ssh-client-only. ftp://ftp.simtreas.ru/pub/my/dropbear/dropbear-ssh-only.tgz sourse and ftp://ftp.simtreas.ru/pub/my/dropbear/ssh binary
> -3 votes

---
Tags: ssh, command-line
---


# Question
Title: How can I root the Samsung Galaxy Note 3 SM-N900V?
I recently updated my phone to Android 5.0. I have been searching for a way to root this device for days and have tried every tool and technique out there including Cf-Auto-Root, Kingo Root, and Towelroot without success.

People say that Towelroot worked on Android versions prior to the latest updated version 5.0. They say that the bootloader is locked and no tool available currently works. Is there any way to get this device rooted or is it impossible to root it?

# Answer
> 1 votes
Guys at XDA again did the magic and finally found a way to root this infamous SM-N900V running lollipop 5.0. Here's the entire process in detail:

Follow the steps below to root your device:

* Install the samsung mobile USB driver. Plug in your note 3 to a PC, a CD drive pops up for few seconds, open it, you'll find the driver for your device there.
* Now enable developer mode and USB debugging on your device.
* Download and open the ArabicToolApp.
* Inside the tool, Select the baseband version of your device, you can find this information under ( Settings \> About phone \> Baseband version ) of your android device. Note the last 3 characters and select the Version in the Arabic Tool accordingly.
* Click on Read Phone Info. Now, note the log messages in the Arabic Tool, you should only procced if no warnings are given there.
* No press ROOT button.

The rooting process should not take more than 6 minutes. If it does, cancel the Arabic Tool and do the following and try again. \- Make sure you've restarted your computer after installing the USB drivers. \- Use USB 2.0 cable and port.

If during the process, your device gets stuck on the bootscreen, do the following: \- Turn off your device, Press (Home + Volume Up + Power) buttons to get into the recovery mode, reset the device from the menu and also clear the cache partition. Now, try restarting your device. If the bootloop still persists, follow the next step.

* If the above step didn't fix the problem, you will have to reflash your firmware. To do this, download Odin and SM-N900v OF1 firmware from the link provided below.
* Start Odin
* Reboot phone in Download Mode by pressing (Home + Volume Down + Power) buttons.
* Connect phone and wait for the blue sign in Odin.
* Add the downloaded firmware file to AP/PDA
* Click the start button and wait for it to show the "Pass" sign. This can take upto 10 minutes.

Once your device starts running normally, make sure you follow the rooting steps given above correctly and try again.

To confirm that your device is rooted, you can press the device info button in the Arabic Tool once again to see the root status or, you could also install RootChecker app from the playstore and see it there.

Once you've confirmed that your device is rooted, install SuperSu and follow the instructions in it to install required binaries.

Guys at XDA recently also found a way to unlock the bootloader of this device. Follow the XDA thread below for more information. Note 3 Verizon Bootloader Unlock

---
Tags: 5.0-lollipop, root-access, samsung-galaxy-note-3
---


title: app2sd via android terminal emulator?

text:
# Question
Title: app2sd via android terminal emulator?
ok so ik this has been asked 1,000,000 times...but not like this, i have a rooted plum z550 running stock kitkat 4.4.2, i dont have a pc, this phones default internal storage is 0.89 gigs...which is shit, phone storage is like 5 gigs and i have a 16 gig external sd...by default app and app data gets stored to internal storage and these days most new apps dont have option for move to sd...how can i change default download storage without a computer or another app ie...android terminal emulator or even root browser? please help thx

# Answer
> 0 votes
Maybe changing the default write memory could solve your problem, see the last entry in the *Storage and Memory* menu:

<sup>*Settings-\>Storage and memory* (click image for larger variant)</sup>

---
Tags: app2sd
---


# Question
Title: System apps location on Android Jelly Bean
I chose to pose this question here, since I don't have any Jelly Bean device nearby.

On Android **KitKat**, system apps are located at **/system/priv-app/**. On **Lollipop** and **Marshmallow**, instead, they're placed under **/system/priv-app/name-of-the-app/**.

Following a similar fashion, I would like to know the path of those apps which are installed as **system apps**, on Android devices in a version range going from **4.1.x** to **4.3.x** (namely, all of the Jelly Bean builds).

Are their APKs located under the **/system/app/** folder directly, are they placed in a folder of the same name of the corresponding app, or are they present in a completely different folder?

Thanks in advance.

# Answer
To my knowledge, before Kitkat `.apk` files of system apps all went to `/system/app`. Kitkat added the `/system/priv-app` directory. The structure having an additional directory level came later (LP or MM).

References:
> 1 votes

---
Tags: 4.1-jelly-bean, 4.2-jelly-bean, 4.3-jelly-bean, system-apps
---


# Question
Title: What do the terms root, bootloader unlock, custom recovery and ROM installation mean?
I'm trying to root my Galaxy Note 4 and I see the above terms being used everywhere. What do each of them mean? I have a vague idea about each of them, but I'm still confused about some of them. A brief description about each would be enough. Thanks in advance.

# Answer
> 0 votes
The Term `Rooting` in android means to gain super user access(Administrator access) for which root access is requires as the `su` binary should be installed to `/system` partition.

This is usually done via a `Recovery`.Every android phone have a in-built recovery which can generally only flash OTA updates and ROM's provided by the device’s manufacturer. So a `custom recovery` like CWM,TWRP etc is installed.A custom recovery has more features and allows you to flash any suppoerted file.

Each android device has a bootloader which is something like BIOS in PC.And many phones comes with locked bootloader which prevents users from installing any other ROM. Hence unlocking bootloader is a common term related to rooted devices.

`ROM` stands for Read Only Memory. A custom ROM replaces your device's Android operating system normally stored in read-only memory with a Different OS. Installation of Custom Rom is the process of flashing a Custom ROM usually using a Custom Recovery/ADB

# Answer
> 0 votes
`Root` \- means having "superuser" or administrator access to the OS.

`Bootloader unlock` \- means allowing the device to boot a custom OS.

`Custom recovery` \- allows you to make a complete backup of the internal storage as well as flash ZIPs.

`ROM installation` \- is actual process of installing a custom OS.

---
Tags: rooting, recovery-mode, rom, bootloader-lock
---


title: Bricked Nexus 7 in Recovery Mode

text:
# Question
Title: Bricked Nexus 7 in Recovery Mode
I have a Nexus 7 2012 grouper in recovery mode (TWRP). I have wiped the /system /cache and /data partitions and believe it has wiped the /boot partition. When I go to file manager, it says the /boot folder is empty. I don't want to reboot the device because it may render it unusable. What should I do?

# Answer
> 2 votes
Download the factory image for your device here: https://developers.google.com/android/nexus/images

Follow the instructions at the top of the page to flash. Note that the WIFI and Mobile versions have different images. Make sure to use `flash-all` otherwise the bootloader and radio will remain the same and the images won't flash.

Another option if you want to keep your ROM would be to download the factory image for the version you have on the device and flash only the `boot.img` using `fastboot flash boot boot.img` instead of `flash-all`. That should restore your boot but you have to know which version you have on the device.

---
Tags: adb, nexus-7, boot, twrp, partitions
---


# Question
Title: Why does Battery Doctor say my battery is 50% charged while Android says 23%?
Battery Doctor says my battery is 50% charged while Android says 23%:

Is there any reason why? I use a 4200mah Extended Battery on Samsung Galaxy SIII with Android 4.1.2.

# Answer
> 1 votes
There are two sources for reading the battery capacity

* From the battery files
* From the ROM

I learnt this when I saw a similar but smaller discrepancy on my new phone using 3c Toolbox and the developer clarified this on mail. To quote from 3C Toolbox developer mail

> In Android, one can get the stock hard-coded battery capacity from battery profiles, an hidden API in Android. That’s the one of the 2 sources the app uses.
>
> The other source is in the kernel, **usually** under /sys/devices/power\_supply/battery/charge\_full\_design

On my device path is different. To know the path on your device, from 3C Toolbox, tap *request support* from *Help and support* menu. An email will be generated to the developer having information about your device, including *battery\_info.txt*. This file amongst other things specifies the path of second source

Since you are using an extended battery, I would *guess* that the app is reading from the ROM and Android from the battery files (original battery is 2100 mAh and extended battery is 4200 mAh and the battery percentage readings are nearly half).

This is the only explanation I can think of

---

**Edit:** For more details , please see Where are the battery capacity files located

---
Tags: samsung-galaxy-s-3, battery
---


title: Bluetooth headset and HD voice

text:
# Question
Title: Bluetooth headset and HD voice
I'm trying to achieve better quality for remote communications. Thus, I'm trying to use a high quality headset for Skype calls.

The problem is, when connecting a headset to Android phone (both of them have HD voice support), the sound quality is very limited, i.e. much worse than Skype gives via the same phone's speaker & microphone.

Supporting cases:

* When I listen to music from phone using headset via bluetooth, the quality is good.
* When I use USB dongle (which is provided for headset with UC support, and appearing as audio device in system) for Skype with my laptop, the quality is good.

In all cases, I was using WiFi (NOT mobile data). I was using Skype call testing service for all tests.

Is there some way to force codec or bluetooth profile to enable HD voice with Android for headset?

---

Phone: Galaxy Note 3 (has HD voice support).

Phone OS: Android 5.0.

Skype version on the phone: v6.13.0.608

Headset: Jabra Motion UC (has HD voice support).

Laptop: HP EliteBook 8460p

Laptop's OS: Ubuntu Linux 14.04.03

Skype version on laptop: 4.3.0.37

# Answer
> 2 votes
I've found that it's an issue of Skype application. E.g. Google Hangouts gives good sound quality with and without bluetooth headset both.

I've filed a bug report here: https://community.skype.com/t5/Android/Forced-low-quality-voice-with-bluetooth-headsets/td-p/4366926

---
Tags: bluetooth-audio, headset
---


title: LG4 - Can't Find App's Data

text:
# Question
Title: LG4 - Can't Find App's Data
I have a LG4 and I have installed an app being developed internally. I am trying to view the data of this app but can't find it.

Do I have to root the phone to be able to view the data? I look in both internal storage and SD card but can't find the app.

**Internal Storage/SD Card**

I have no data directory in the root, only Android/Data and in there it's

1. com.airbnb...
2. com.android...
3. com.google...
4. com.lge...

Any help would be appreciated.

Thanks

# Answer
> 1 votes
An app has private data and optionally public data. The private data goes inside a directory with name as the package name and located inside */data/data/* \- an ordinary user/app cannot read that data. The public data may either go into internal SD card or external SD card, whichever is set as default and the app having permission to write it. */sdcard/Android/data* is where often the public data goes. Some apps opt to create a dedicated folder under the root of default storage as well.

Now, how do you access the private data?

* Since you noted that the app is in development, it may be possible that it is marked as debuggable1 (`android:debuggable="true"`). If that's the case, then setup in PC and execute the command:

```
adb shell
run-as PACKAGE   # PACKAGE is the package name of your app

```

Note: run-as would work only for debuggable apps.

If successful, `run-as` would drop you into the data directory of your app where you can see whatever you intend to see.

Follow this answer from marmor as an example.
* If the app hasn't explicitly declared itself not to be backed up1 (`android:allowBackup="false"`), you can use adb to backup the app. To do so, execute the command:

```
adb backup PACKAGE

```

This will create a file named *backup.ab* in the working directory from where adb is called.

In order to extract the data from the backup, follow an answer from here: How do you extract an App's data from a full backup made through "adb backup"?
* Yes, if the first two methods fail, then the Android should be rooted. Once you've root, you can use a file explorer or even a terminal emulator app to read the desired data.

---

1 Unless there is an explicit app to tell you so, you would be required to read the manifest of the involved app in order to ascertain whether it is debuggable or disallows backup. Axel (XML Editor / Viewer) and App Browser can help you to read manifest.

---
Tags: applications
---


# Question
Title: Not getting any internet on my phone even though it says I'm connected to wifi
My internet works fine on every other device in my house, and it connects correctly on my phone(Samsung galaxy S2), however when I try to load up any page on the browser, it says I'm not connected.

Can anyone suggest what may be the problem and what I can do to counter it.

# Answer
It might be due to the network connection of your house's wifi not completely connected yet.

Do ensure that your phone display Connected to (name of your house's wifi) before you continue to surf the net.

Do take a look at the up and down arrow of the wifi connections that its moving as well. Else, try to on and off your wifi and try again till you are completely connected to your house wifi.

If not, you can try to on and off your modem of your house and try to on wifi on your device again.

Hope it helps!
> 0 votes

---
Tags: wi-fi, samsung-galaxy-s-2, internet
---


# Question
Title: Is it possible to get the password from a wps wifi connection?
At school we have two wifi networks, one for teaches and one students, but the teacher network is much faster and is available everywhere in the building. I could connect to it by pressing the wps button on a repeater, but some of my classmates could not because they have iphones (iphones don't have wps). I would like to help them by telling the password, but i don't know if there is a way to retrieve it from this kind of connection. And this is what i'm asking your help for: Can i get the password somehow?

Thanks for your time.

# Answer
> 1 votes
Yes, WPS is insecure and the WPS PIN can be used to recover the password.

This app and this app claim to be able to do so if you have root.

However, as pointed out by Izzy the password should also be available as plain text in the file `/system/etc/wifi/wpa_supplicant.conf` after you have successfully connected to the network once.

---
Tags: applications, wi-fi, password, ios
---


# Question
Title: Measuring temperature using built-in laser in Nexus 5x
I know it's possible to measure temperature using a laser, and Nexus 5x phone has laser-based focus. So it might be possible to use reading of the laser input and output to gauge temperature at what your camera is focusing on maybe via root access.

However, is it really possible to do that, perhaps using some apps?

# Answer
I'm not an expert in this field, but reading the explanation of infrared thermometer on Wikipedia, I don't think general Android pdevice has sufficient component to do the reading. Here's the explanation from Wikipedia:

> By knowing the amount of infrared energy emitted by the object and its emissivity, the object's temperature can often be determined....
>
> ...
>
> The design essentially consists of a lens to focus the infrared thermal radiation on to **a detector, which converts the radiant power to an electrical signal that can be displayed in units of temperature** after being compensated for ambient temperature.
>
> <sup>(Emphasis added)</sup>

Even if the Android device has IR laser, I don't think it has a thermal radiation detector installed.

There's an app called IR Thermometer by Sensorcon on Play Store which needs their Sensordrone product to do the reading. Other product, like RYOBI Phone Works also claim that it can do infrared themometer, but again, you have to buy their sensor to do the reading.
> 3 votes

---
Tags: sensors, nexus-5x
---


# Question
Title: "Too many attempts. Please try later." message on first Dropbox login after install
Fresh Android 5.1 phone, just installed Dropbox app from Android Play Store. Started the app, tried to log in for the first time, got a message: *"Too many attempts. Please try later"*

Dropbox works OK on my other devices, including my previous Android phone.

I did some googling, and it seems that other people did face the same problem recently:

Dropbox Community Forum thread, a comments suggest that retrying after several hours may solve the problem. This workaround didn't help in my case (yet).

# Answer
It appears that the current version of the app is buggy. Nothing we can do about that.

However, a workaround was posted:

> I navigated into the website login \> account \> security \> two-step verification. Added my phone number as my 2nd step of verification (they send a code for new logins) and low and behold I got into the app first try with no problems!

Using an older version of DropBox might also work. I'd suggest 5.2.6, from February before the issue appeared.
> 1 votes

---
Tags: dropbox
---


# Question
Title: SD card not showing files when connected to pc
When my phone MOTOROLA G3(2015) is updated to Marshmallow, its not showing files when connected to PC. While connecting, it shows options as charing only, PTP, MTP, MIDI. When I select MTP, it shows the external card, but not showing the contents, where as internal memory is detected and all files are shown.

# Answer
This is a well discussed and easy to fix bug... Disconnect USB cable, go to Settings, Apps, and Show System Apps and find External Storage and Media Storage and clear data and cache on each one and reboot, then give it 5 min after full boot up to rebuild media databases and connect to USB and select MTP. Should be good to go.

EDIT: In some instances where the SD card contains a large number of (media) files, it can take more than 5 minutes for the databases to rebuild. There is no way to see if the status of this database buildup in the phone itself, so sometimes you just have to be patient.

Also note that some users have stated that this is not sufficient by itself, but sometimes the system cache partition needs to be wiped and rebuilt. Official instructions for performing this operation from Moto are here. Note that this operation can take significant time... 5-15 minutes, occasionally even longer, do not interrupt the operation.
> 29 votes

# Answer
After about 4 hours of installing drivers, wiping data & cache of apps, wiping cache partition, etc...

I found the solution was just to change USB option from 'MTP' to `Charging` while USB was connected to the computer, then while still connected, change the USB option back to `MTP` once more, voila!

**Edit:** How to find the USB options may vary between devices. On Samsung Galaxy devices, touch and drag the notification bar down, then tap "Connected as a \<whatever-device-type-the-phone-is-currently-connected-as\>".
> 7 votes

# Answer
After an update from motorola, it works..
> 0 votes

---
Tags: usb-connection-mode, 6.0-marshmallow, motorola
---


# Question
Title: How to change "Preferred Network Mode" using adb without reboot?
I'm trying to change my phone's (CM 12, Stock 4.2, both rooted) preferred network mode from "GSM/WCDMA" (0) to "WCDMA only" (2) and vice versa (there can be other modes too), using command-line only. Based on this answer I can make relevant changes into `Settings.db` using the commands:

```
adb shell
su
settings put global preferred_network_mode 2

```

However, I can't figure out from the logcat which or how many broadcasts do I have to send and with what extra key values. It is because of it I have to reboot my device to have the changes take effect.

**Ultimately, how do I change the network mode without the reboot using command-line only?**

**Edit**: Using aforesaid command in combination with airplane mode isn't working either.

# Answer
There are some couple of ifs and buts. I have not tried this, but this is just an idea that comes to my mind which is an extension of my previous answer.

Through this post, I learn that intents can be invoked through adb command prompt.

So, if the device is rooted and has Xposed framework, the above can be done.
> 3 votes

# Answer
You can refer to this post

KitKat:

```
echo "AT^SYSCONFIG=13,1,1,2\r" > /dev/smd0

```

Lollipop:

```
echo "AT+WS46=12\r" > /dev/umts_at0

```
> 0 votes

---
Tags: adb, mobile-network, command-line
---


# Question
Title: Connecting Android phone to OSX mac computer
I've had trouble connecting my android (The Nextbit Robin) to my computer. I am pretty sure it's an Android 6.0 issue. I have been able to get it to work by enabling USB debugging and selecting MTP on USB configuration. However when I tried to do that again it just selected 'Charging only', even when selecting any other setting. I clueless as to what to do. Does anyone know how to fix this? By the way, I should mention that I am using android file transfer.

Thanks.

# Answer
I should note that I have no idea why this worked, but it did.

I made a partition in my computer's memory. Then I installed a separate version of OSX. When I booted to that partition the Robin connected flawlessly. I thought that it would only work in the partition I created, however, when I booted back to the default partition, the Robin connected.

For perspective, here is a list of the things I tried before I got it to work:

* Fast booting the Robin.
* Rebooting the Robin.
* Wiping the cache of the Robin.
* Restarting my computer.
* Clearing the SMC and NVRAM of the computer.
* Turning on usb debugging.
* Switching between usb modes in developer options.
* Probing the usb ports in my computer (software).
* Disconnecting and connecting the usb several times out of pure frustration.
* Connecting the Robin to another computer (it connected).
* Uninstalling Android file transfer and reinstalling it.

Hopefully one of these things will work, if someone has this problem in the future.
> 0 votes

---
Tags: usb, connection-issues, usb-connection-mode
---


# Question
Title: Internal Storage Memory reduced after installing custom ROM
I just installed Cyanogenmod 12 into my HTC Desire 816 , for flashing I used TWRP. So the whole proccess was as follows:

1. Install CM via TWRP
2. Reinstall CM and GAAPS

Everything works fine and dandy but I have one big problem. My internal storage only shows 4gb of total space, from which I have only like 1GB of free space available. The phone originally came with 8gb of internal storage, and is just after I did this that it was reduced. I did clean up all the Dalvik cache, I also tried doing a new factory reset, but still it's showing only 4gb.

# Answer
> 2 votes
Unfortunately, devices with small ROM are prone to quick "runout", as correctly pointed out by previous comment. It is indeed true that the "actual" ROM size is not the one stated from the vendor but the one dictated by the Android OS itself. As an example, try to insert an SD card to your computer then right click and get to the properties. You will see that although empty , the available memory is less than the total memory reported. This is because also the SD card host some hidden files necessary for the proper functioning of the card itself. Hopefully you will have a slot for a microSD card on your phone so that you can save all your media and transfer most of the apps to it thus keeping your internal ROM as free as possible.

---
Tags: cyanogenmod, internal-storage
---


# Question
Title: Some secret codes not working after installing CyanogenMod
I installed CyanogenMod on my Galaxy SIII I9300, There was a secret code that shows MAC address of the device: `*#232338#` that was working when original stock ROM was on my device. But it does not works now. Is the secret code list differs between original stock ROM and CyanogenMod? If yes, where I could find new secret code list?

# Answer
> 1 votes
Some "secret" codes are provided via hidden apps that the carrier and/or the device manufacturer installs in the phone's firmware. When you switch to a custom ROM such as Cyanogenmod, those apps are no longer present.

Nevertheless, for just about anything you might have wanted a "secret" code for, there is some way to get that information already, either through an existing menu item or a free app you can find on the Play Store.

# Answer
> 0 votes
In CyanogenMod 12, it's **Settings**-\>**WiFi**-\>**Advanced WiFi** (in the menu) and there you can find both IPv4 and IPv6 MACs.

Or, to find it in the command line, say via adb, type `adb shell netcfg`. Also you can use `adb shell ip addr show` from the command line which also gives you this info. Both of these commands can also be entered via the Terminal app and neither requires root.

(On some older devices you can try using `ifconfig -a` or even `iwconfig -a`... good luck!)

# Answer
> 0 votes
Try this Code,

```
*#*#232338#*#*

```

Here is a List:

WiFi Mac Address Secret Code:

```
*#*#232338#*#*

```

Bluetooth Test Code :

```
*#*#232331#*#*

```

Bluetooth Device Address :

```
*#*#232337#*#*

```

Power Off Code :

```
*#*#7594#*#*

```

Quick GPS Test Code :

```
*#*#1472365#*#*

```

Different GPS Test Code :

```
*#*#1575#*#*

```

This list will be long, find the rest here

---
Tags: cyanogenmod, mac-address
---


# Question
Title: How do I check which apps are using wifi?
I'm using the red mi 2 and data transfer is taking place via wifi, problem is I don't know which app is using it. Is there a way to see wifi usage statistics?

# Answer
For even more detail, I recommend Trepn Profiler from the Play store. It's developed by Qualcomm and analyses CPU usage, Wifi and cellular data usage, and more.
> 1 votes

# Answer
Go to: *Settings \> Data usage – WIRELESS & NETWORKS*

1. Tap the right-top menu. It will open up a popup menu.
2. Check \*Show Wi-Fi usage.
3. Go to *Data Usage*. You'll realize a new tab called WIFI is added nexto to MOBILE.
4. There, you can see all apps that use WIFI and how much data they use.

> Visual how-to (source: TeckFront; click images for larger variants)
> 5 votes

---
Tags: 4.4-kitkat, miui
---


# Question
Title: How can I install Google Apps on Cyanogenmod for the Samsung Galaxy S2 (i9100)?
When I try to install the latest version of Open GApps onto my phone using `adb sideload`, and the default CM Recovery that comes with CM 13 for the Samsung Galaxy SII (i9100). However, I get the error message, "Failed to set up busybox." The suggested solution, which is to use TWRP recovery instead of CM, I have no idea how to do because I don't know where to find a kernel, with TWRP recovery, that is compatible with CM13. I can't find kernels for CM12, since many of the download links on sites like xda-developers.com are dead.

I tried to install with CM12 and CM13 and I get the same result.

I successfully installed a copy of `busybox` onto /system/bin. I first tried installing Open GApps via `adb sideload` however, this failed. Running `adb shell`, I saw that perhaps `busybox` was runnable, so I ran `chmod +x`, and ran `busybox`, after which I saw busybox's help message. Surprisingly, Open GApps still didn't install for the same reason.

How can I install the Google Apps onto my phone?

# Answer
Rahul is right, but I might contribute to this (I also got the i9100 and ran into the same problem). I had the problem that my google apps were already bricked so i could not install any helper apps.

TAKE CARE: This may brick your system if you are not sure what you are doing.

When upgrading CM12.X to 13 you have to install a new gapps version. The problem is, that with CM13 the old recovery system (which you need to install gapps) is being replacedby a new one which lacks the busybox. My solution so far: flash back the old recovery system using Odin (I used clockworkmod as recovery system which has busybox). Download the gapps and latest cyanogenmod on your sd card (zip files) and insert it in your phone. Boot into the recovery. Clean and wipe your system. Install cyanogenmod from zip file and directly afterwards the gapps zip file. This might take some time. Then reboot your system.

CRITICAL NOTES: \- When installing cyanogenmod from sd card, your recovery will again be overwritten with the new embedded recovery system cyanogenmod (that one that is lacking the busybox). \- If you haven't resized your partitioning, installation of gapps (I used the smallest version called pico) will fail because of insufficient storage. If this is the case, you also have to flash new pit files and format sdcard0 (vfat), system, data, preload and emmc (vfat). Then you may install your custom rom and gapps from recovery.

Links: Pit files different sizings: forum.xda-developers.com/showpost.php?p=60473209&postcount=1106 (pick one with 512MB preload (!) just to be sure) CWM Recovery: http://galaxys2root.com/cwmtwrp-recovery/ Philz Recovery for flashing pit files and formatting filesystems: http://d-h.st/SvM

Unfortunately this procedure have to be repeated once you have to upgrade your gapps. I found no better solution so far...
> 1 votes

# Answer
Okay, I add another answer because the protocol I am attaching differs from what I posted above. This worked for me, I cannot tell if this will work for you; please don't point your finger on me ;) This is meant for all who have a CM CM12.1 Nightly build 2016-01-19 or later installed - including Cyanogenmod's recovery which IS NOT ABLE to install Zip Files. The Procedure also reorganizes your Partition structure.

**== Resizing Partitions, Installing TWRP 3.0.2-0, CyanogenMod 13 nightly and OpenGApps Pico on Samsung's Galaxy S2 i9100 using Windows 10. Phone has CM12.1 nightly build 2016-01-19 or later, but no busybox. ==**

CAUTION: Following these instructions may brick your device. All steps are performed at your own risk. This protocol was successfully tested on two independent i9100 devices. Initially both devices had CyanogenMod 12.1 with CyanogenMod's "stock" recovery installed (which lacks the busybox). Build \> 2016-01-19. This protocoll will install CyanogenMod 13, OpenGApps and TWRP 3.0.2-0 recovery. This recovery should persist even after updating CyanogenMod to the next nightly build (not tested yet, would be nice if soeone could feedback on this!).

NOTE: All steps were performed on a Windows 10 PC. You may encounter different events using an other OS.

PREPARATIONS:

1. Read this first before executing ;)
2. Backup all your personal data.
3. Eject your extra SD-card from your phone.
4. Get the latest CyanogenMod Nightly Build: http://download.cyanogenmod.org/?device=i9100 -\> store the zip on your extra SD-card you just ejected
5. Get OpenGApps pico: http://opengapps.org/ Make sure that the build date matches the CyanogenMod nightly build date. Store the zip on the SD-card you just ejected.
6. Get HeimdallSuite\_v1.4.0.zip: http://forum.xda-developers.com/attachment.php?attachmentid=3713767&d=1460278689 -\> Extract it to a local folder (from now on called c:\localFolder)
7. Get Samsung\_Galaxy\_S2\_Pit-Files\_Collection\_All-In-One\_2015-05-04.rar - http://forum.xda-developers.com/attachment.php?attachmentid=3293884&d=1430622849 -\> store it in c:\localFolder
8. Extract yor desired system storage layout from the jujst downloaded pit collection archive. I strongly recommend to pick a file from the "I9100\_512MB\_Preload" subfolder, because those most likely won't cause trouble with CyanogenMod installation. I decided for the following configuration: I9100\_2.0GB\_Sys-08GB\_Data-512MB\_Preload.pit --\> store this file in c:\localFolder. This file will be called myPit.pit from now on.
9. Get SAMSUNG\_USB\_Driver\_for\_Mobile\_Phones.zip: http://forum.xda-developers.com/attachment.php?attachmentid=3713769&d=1460278744 -\> double click to install. When you don't install this, you might won't be able to establish a connection between your phone and your PC.
10. Get MSVC++ 2012 Redistributable x86, vcredist\_x86.exe (Heimdall won't open with x64 installed): https://www.microsoft.com/de-de/download/details.aspx?id=30679 -\> double click to install. If you don't install this, you most probably will get a dll not found exception when launching Heimdall.
11. Get latest TWRP recovery: https://dl.twrp.me/i9100/ -\> store the img in c:\localFolder. This file will be called as myRecovery.img from now on.

PROTOCOL:

12. Connect your device (and unlock it, if locked).
13. Open windows device manager (enter "device manager" in start). In the device manager, ensure that hidden devices will be shown ("View" menu).
14. Navigate to "Modem" -\> "Samsung Modem". Right click -\> "Uninstall".
15. Enter "change device installation settings" in start end select not to auto install drivers at all. This is necessary to prevent Windows 10 using any cached drivers for the setup.
16. Disconnect your device.
17. Reboot your system into advanced startup settings menue: Click the Start menu and select "Settings" -\> Click "Update and Security" -\> Click on "Recovery" -\> Click "Restart now" under "Advanced Startup". When after the system reboot the boot menu appears, click "Troubleshoot" -\> Click "Advanced options" -\> Click "Startup Settings" -\> Click on "Restart" -\> On the "Startup Settings" screen press 7 or F7 to disable driver signature enforcement. (taken from: http://acer.custhelp.com/app/answers/detail/a\_id/38289/~/windows-10%3A-disable-signed-driver-enforcement)
18. Turn off your phone. Bring it into download mode by holding "Volume Down" + "Home" + "Power" at the same time. A warning screen will appear. Acknowledge with "Volume Up".
19. Connect your device to your PC. The device is now in download mode.
20. Open explorer and change to c:\localFolder\Heimdall Suite\Drivers and open zadig.exe
21. In the "Options" menu tick "List All Devices"
22. Select "Gadget Serial" from the drop down menu.
23. Select "WinUSB v6.1.x.x.x" from the value picker and click "Install Driver". The installation should be confirmed with a success dialog.
24. Close zadig.exe
25. Bring your phone in the donwload mode again: Disconnect in from power. Reconnect it. Bring it into download mode by holding "Volume Down" + "Home" + "Power" at the same time. A warning screen will appear. Acknowledge with "Volume Up".
26. Open c:\localFolder\Heimdall\Heimdall Suite\heimdall-frontend.exe
27. Open the "Utilities" tab.
28. Click the "Detect" button in the "Detect Device" panel. Make sure the status message says "Device detected"
29. In the "Download Pit" panel click the "Save As" button. Enter a name like "backup". This is a backup file of your current phone partitioning. Because you are going to change its size, you will not use this file later on. However, this step is necessary to make the phone communicate with your PC, I don't know why...
30. Then klick the "Download" button in the same panel. If everything was set up correctly, no errors will appear in the status log. Please check.
31. Bring your phone in the donwload mode again. Disconnect in from power. Reconnect it. Bring it into download mode by holding "Volume Down" + "Home" + "Power" at the same time. A warning screen will appear. Acknowledge with "Volume Up". Yes, this is necessary.
32. Open the "Flash" tab.
33. In the "PIT" panel click the "Browse" button and select your myPit.pit (which you extracted from the pit files collection) and tick the "Repartition" checkbox.
34. In the "Partitions(Files)" panel click the "Add" button.
35. In the "Partition Details" panel at the "Partition Name" dropdown menu select "Recovery". Ensure that the "Partition ID" field reads "7". Click the "Browse" button in the "File" panel next to it and select myRecovery.img
36. In the "Sessions" panel, make sure that neither the "No Reboot" nor the "Resume (...)" checkboxes are ticked.
37. Now click the "RECOVERY" entry in the "Partitions(Files)" panel so that it is highlighted blue.
38. Click "Start". Hopefully the recovery will be flashed now. You will see progress when the status bar changes. Also check the output for errors. If just nothing will happen, check again if the the "No Reboot" nor the "Resume (...)" checkboxes are unchecked and/or retry.
39. Bring your phone in the recovery (!) mode. Disconnect it from power. Reconnect it. Bring it into recovery mode by holding "Volume Up" (!) + "Home" + "Power" at the same time. The TWRP Recovery screen will appear.
40. Navigate to "Wipe" -\> "Advanced Wipe". A list of available partitions will appear. (It is important to reformat at least "SDCard" (/emmc) so that it will be recognized by CyanogenMod later (otherwise it will most likely be marked as defect).) Check "Cache", tap "Repair Or Change File System" -\> "Change File System" -\> "EXT4" -\> Swipe. This will force reformatting the partition.
41. Repeat this step with all other available partitions (some of them like "Android Secure" or "Dalvik" won't work. WARNING: when you still have your extra SD-card inserted, you may see two "SDCard" entries in that list. One of them is your extra SD-card. If you format it, your personal data (as well as the cyanogenmod-nightly and OpenGApps zip files) on it will be lost. At this step, I assume you have no extra SD-card inserted...
42. Finally, just to be sure that all necessary partitions are clean, navigate to "Home" -\> "Wipe" -\> "Swipe To Factory Reset".
43. Navigate to "Home" -\> "Reboot" -\> "Power Off" to tun off your device.
44. Insert your extra SD-card with the OpenGApps and CyanogenMod nightly build zip files on it.
45. Bring your phone again in the recovery mode: Disconnect it from power. Reconnect it. Bring it into recovery mode by holding "Volume Up" (!) + "Home" + "Power" at the same time. The TWRP Recovery screen will appear.
46. Navigate to "Install" -\> "Select Storage" and pick you extra SD-card. Select your CyanogenMod nightly build zip file and swipe to install.
47. Repeat this step with your OpenGApps zip file.
48. Navgiate to "Home" -\> "Reboot" -\> "Power Off".
49. Turn on your device and let CyanogenMod complete its work. This may take a while (about 10mins).
50. In CyanogenMod enable development options. Go to "Settings" -\> "About This Phone" -\> hit "Build Number" seven times.
51. Protect your recovery from being overwritten: "Settings" -\> "Developer Options" -\> disable "Update CM Recovery"
52. Restore your personal data. That should be it.
> 2 votes

# Answer
You can get the appropriate GApps at Opengapps. And to install that, just put some custom recovery in your device like TWRP/CWM. I recommend CWM.

**Install ClockworkMod Recovery With ROM Manager:**

This is the easiest method available and lets you begin the installation using a graphical interface while you are booted into Android, thus you do not have to download the recovery image and enter any commands. This is the recommended method for most users and you should try other methods only if this one doesn’t work for you at all for some reason.

1. Install ROM Manager on your device. It is an app that basically lets you schedule recovery operations while booted into Android, and has an option for installing the latest version of ClockworkMod Recovery.
2. Launch the just installed ‘Rom Manager’ on your phone. The first option it gives you should say ‘Flash ClockworkMod Recovery’. Just tap on it and follow the instructions.
3. Wait patiently while the system reboots and the latest version of ClockworkMod Recovery is installed. Select to reboot the device if it prompts you to.
4. Once the device reboots into Android, verify that you have the latest version of ClockworkMod Recovery installed by launching Rom Manager. It should now mention in the first option that you have ClockworkMod installed along with its version you’re running, and any updates that might be available. If a newer version is available, tap on that option and follow the instructions to update.

The complete guide can be found at AddictiveTips.
> 0 votes

# Answer
Get older opengapps version. 2016-02-08 works for me. 2016-02-24 does not )
> -1 votes

---
Tags: cyanogenmod, samsung-galaxy-s-2, recovery-mode, google-apps
---


# Question
Title: Why expandable memory slot is not given in many phones?
There are many good mobile phones are available in the market who have only internal memory.

Why biggest manufacturers such as apple, Xiaomi and even Google nexus are not giving memory expansion slots to their mobile phones?

Are they facing any technical problem in terms of OS support or Performance degradation by giving memory expansion slot?

# Answer
Xiaomi put this down to design restrictions in the case of the new Mi5 - they say that there was so much to cram under the hood that they literally couldn't fit the slot in.

I believe them - I've just got the Mi5 and it's featherweight and slim.
> 1 votes

# Answer
Multiple reasons. Technical considerations like read/write speed significantly faster on eMMC than the best class 10. OEMs can guarantee the same experience and better support for everyone. Less hassle hardware and software side. It's generally a design choice, they restrict the user to save themselves headaches in tech support, ota builds, hardware design, roll-out time..etc. From OEM point of view the benefits far outweigh the costs of adding an sdcard slot.
> 0 votes

# Answer
The answer is simple, they want you to pay more for phones with more internal storage, versus buying one phone and expanding it when you run out of memory.
> -1 votes

# Answer
Perhaps because those phones already have enough (for some users) internal storage but best choice is expandable because in case your phone is wrecked or bricked you can save some of your files if the 'Expandable storage' is not damaged.
> -1 votes

---
Tags: insufficient-memory, xiaomi
---


# Question
Title: Nexus 5 crashing regularly after Marshmallow update
After upgrading to my Nexus 5 to Marshmallow, I find myself experiencing crashes regularly. The phone screen will go black, and attempts to restart will make it to the home screen for a few seconds before the screen goes black again (regardless of power levels). The only way to restore normal functionality is to hook the phone up to a charger, at which point it will boot without issue.

I have tried clearing up disk space, which did not seem to help. I have tried doing a factory reset (the one via "Settings \> Backup & reset \> Factory data reset"), but that also does not seem to have stabilized the environment any more. It doesn't happen at regular intervals, nor does it always happen with the same app. I have noticed that it *often* happens while I am using SuperCell apps (CoC or Boom Beach), but that my be correlation rather than causation. It has **never** happened while my phone is plugged in.

All this said, anyone have ideas on what may be causing it or diagnostic steps to take? I tried looking for logs, but haven't found much. Could also be a hardware issue and the update is a red herring, but thought I would ask those with more knowledge before writing my phone off as lost.

# Answer
You could try flashing the stock images available on Google Developers. The process is detailed on the same page. The flashing procedure involves removing the system from your phone and installing a brand new partition, hence any issues due to a faulty installation are rectified.
> 0 votes

# Answer
lol i experienced the exact same issue. if you're willing to go so far, wiping the said phone and NOT INSTALLING ANY NEW APPS will prevent the crash. insane, i know.. but it worked alright for me..
> 0 votes

---
Tags: nexus-5, 6.0-marshmallow
---


# Question
Title: How to sync deleted photos with google photos/drive?
Have in mind that when I take photos I might take 2 shots of same instance. I arrive home, start wi-fi. All photos are synced with photos. Now - looking into gallery I delete some of them - they were bad photos. How can I make sure that when I delete an image it is also removed from photos application?

# Answer
> 1 votes
Do not use Gallery to manage your photos. Use the Google Photos app to manage your photos on your device, when you delete a photo in the Photo app it is deleted from all attached devices as well, including locally and the Google Photo storage.

---
Tags: 4.4-kitkat, sync, photos, gallery
---


# Question
Title: How to connect Samsung J7 via USB but disable charging?
I would like to know if is it possible to connect my smartphone to a pc via USB without charging it?

It would be very useful to be able to disable charging (but still allow USB tethering, ADB debugging, file transfer etc).

Thanks a lot.

# Answer
> 3 votes
You can try these solutions, which directly address what you are trying to achieve (may not work on all devices)

> Adb shell echo 0 \> /sys/class/power\_supply/battery/charging\_enabled (1 to disable; 0 to enable)

If these methods don't work or you want to explore more possibilities, see methods below, which can offer you clues

* **On your Device:**
* As suggested by Firelord. Be aware that you would need time in identifying the right file to change values to fool the system. Naming of files related to this is apparently not standardised. One of the answers in the link is mine so I am talking from experience.
* You could also see this for another way it has been done https://stackoverflow.com/questions/11698979/how-to-change-android-usb-connect-mode-to-charge-only
* **On your PC:** You have not mentioned your PC configuration, but these have been successfully tried add may give you pointers

* **Modifying the connector hardware** (recommended since earlier two options ate Android and Windows version dependent but you would need to try doing the opposite these methods are opposite to your need)

# Answer
> 1 votes
Yup, you should be able to use the adb command. Or use an app I just released to disable usb charging in Android phone. Has not been tested on Samsung j7 though.

https://play.google.com/store/apps/details?id=org.bramantya.stopcharging&hl=en

It needs root access.

---
Tags: 5.0-lollipop, battery, charging, usb-connection-mode
---


# Question
Title: How does voLTE and Band 12 work for T-Mobile and can Cyanogen/AOSP allow us any control over this?
How does voLTE Certification work? My understanding is that *only* phones on this approved list by T-mobile are supported on Band 12. Band 12 is the new Extended Range LTE band and T-Mobile is investing heavily in. My understanding is that *voLTE Certification* is something that T-Mobile does to ensure that a phone connected to Band 12 but out of range of other T-Mobile services to fall-back on (ex. 2G, GSM, and 3G HSPA+) can still dial 911.. If the phone lacked this ability, when they went to dial out on Band 12 they'd find they couldn't. Even if I'm wrong, VoLTE seems to have something to do with data and voice integration.

> VoLTE calls already go through faster (twice as fast as other calls), and while on **VoLTE, customers can enjoy wicked-fast LTE data while they’re on a call. Customers on the old carriers’ CDMA networks still can’t do that.** Today, 27 million T-Mobile customers on 40 models of VoLTE-enabled phones are making over 300 million calls a day— well over half of all calls on T-Mobile’s network.

The voLTE process is expensive for the OEM and almost sounds like a shake-down by T-mobile:

> Speaking off the record to one major smartphone vendor, we have learned that there are very real costs and complexities associated with obtaining that certification, and it must be done on a device-by-device basis.

And, one of the OnePlus developers said this

> In terms of technical specs, supporting VoLTE is actually not so hard, but there's still a long way to go for users can actually use it. Why? Because VoLTE is carrier-specific, we needs to meet the carrier's requirements firstly then our users will be able to actually use it.

As if to say, we're only waiting on testing and certification.. Further, because T-Mobile had to ask Motorola to remove Band 12, I take it that the OEM (client side) has to disable B12 and not the carrier (server side).

Does that mean Cyanogen or other AOSP's can re-enable B12? I would think so, but even small OEM's selling unlocked universal phones like OnePlus have commented that they're having problems with voLTE Certification, so I guess it's not entirely software?

I understand T-Mobile's concern, but I simply don't care. Give me LTE if Band 12 is available and if my phone can't connect, well at least I've got decent data and I can use Google Hangout Dialer.

* What happens with a phone that has Band 12 but not voLTE?
* Can a rooted phone running AOSP influence this, or give me control over it?

# Answer
> -1 votes
So I'm going to answer as someone who has a non-VoLTE phone in a market that has T-Mobile LTE, but no 2G or 3G coverage.

With an alternate ROM (OR a way of editing the modem settings or keeping an older ROM installed) on your Android device, enabling Band12 will be no issue. It's possible with a bunch of Android devices already to enable bands that are available, but disabled by the OS.

What you'll have happen is exactly as described. You phone will get data service, but you will be unable to send or receive calls. You will get SMS and MMS messages just fine. My phone (Nokia Lumia 830 RM985) doesn't support all of T-Mobile's LTE bands, and HSPA bands. This means that in the market I'm in right now, I can't make or get calls as long as my phone is connected to a t-mobile tower. I can see when a call is trying to come in because my service will drop and my phone will roam, but the process takes longer than t-mobile's system allows and it times out first time.

Same with placing a call. First attempt times out and is registered as a dropped call. Second attempt drops to roaming and the call is placed.

---
Tags: 4g, t-mobile
---