# Question
Title: How do I mute the sound when opening a folder in the home screen?
I have a Galaxy Note 2, running Android 4.1.2.

Everytime I open or close a folder on the home screen, I hear a click sound. How can I mute this?

# Answer
I have a Samsung Galaxy S4, but see if you can find something similar to this: `Settings > My device > Sound > Touch sounds`.
> 2 votes

---
Tags: 4.1-jelly-bean, audio, home-screen-folders
---


# Question
Title: Does the Android OS provide any overheating protection?
Apple iOS devices display the following warning and suspend operation should they overheat:

> # Temperature
>
> \[*iDevice*\] needs to cool down before you can use it.

Does the Android OS contain similar functionality?

(For reference, I'm using a Nexus 7, running stock Android 4.2.2 without root or unlocked bootloader. However, this question is intended to be device-agnostic. I have not experienced any overheating—the tablet does get warm under load but by no means excessively so. I'm just wondering if any protection exists at the system software level in stock Android.)

# Answer
> 2 votes
Provided it can read the CPU temperature, the Linux kernel will detect an overheat condition and gracefully shut down the device in the event overheating occurs. However, Android does not contain built-in mechanisms that selectively disable components or reduce heating in the manner iOS does, such as by dimming or turning off the screen, stopping charging, reducing the power of the cell antenna, or disabling the camera flash.

# Answer
> 3 votes
Within the BatteryManager documentation for Android there is a constant that can be used to check against that is named `BATTERY_HEALTH_OVERHEAT`. This would lead me to assume that there is a check that the OS does against this value, though I have never personally experienced a warning like this. I did on my old iPad, but being a recent Android convert I haven't had the time to find out about this just yet.

# Answer
> 0 votes
There is an app called Battery Protector by Apphibios. You can set whatever temp you want it to give you an alarm. I think 104f is about where you want to let it cool off.

---
Tags: system, overheating
---


title: PDF reader and trusted identities

text:
# Question
Title: PDF reader and trusted identities
Acrobat Reader has a nice feature "manage trusted identities" that allows to import CA certificates to validate the signature on a document. Is there an option to define trusted identities in the Android version of the reader (or in any other free pdf reader for android)?

# Answer
\[Disclosure: I work for CoSign\]

I just viewed a digitally signed PDF in Adobe Reader for Android version 10.6.0.

Unfortunately, it does not appear that the app will verify the digital signature. It does display the graphical representation of the signature, but there is no Signature Panel and no message about the signature's verification status.

Hopefully they'll add that feature to the mobile version someday.

Please submit your own answer to your question if you find any Android software that will verify a digital signature.

In the meanwhile, you could roll your own solution if you're willing to write an app. See the Signature API guide at www.arx.com/api for info.

Or you could use CoSign Web App, Box or Google Drive. All of those apps work in mobile and include integration with CoSign. By opening the doc in CoSign, you'd see the doc and its signature verification status. See screen shot below.
> 1 votes

---
Tags: pdf
---


# Question
Title: How do you set up internet pass-through (reverse-tether) on linux?
I have an HTC Desire S that has the option to connect through usb, and use the computer's internet connection. This works fine on Windows, but I'm struggling to set it up in Ubuntu. When I plug in and select internet pass-through from the usb menu, the usb1 device is created and I can ping it's ip address. I have tried various iptables configurations and setting up nat, but I'm not sure if I'm doing it right, or if there needs to be some additional configuration...

Thanks for any help.

# Answer
> 11 votes
The following works for a while, but only for the browser.

When you plug in your phone via usb and choose Internet pass-through, you should get a new RNDIS device (usb0 or usb1). For ubuntu, edit /etc/network/interfaces and add the following lines:

```
iface usb0 inet dhcp
iface usb1 inet dhcp

```

This will assign an IP automatically when the device is added. If a network address is not assigned automaticly to usb0 or usb1 you have to do it manually.

Then you need to set up NAT on your linux computer. Something like:

```
sudo iptables -A POSTROUTING -t nat -j MASQUERADE
sudo echo 1 > /proc/sys/net/ipv4/ip_forward

```

You also need a DNS server:

```
sudo apt-get install bind9

```

This works for a few minutes, but after a while the phone gives up looking for HTC Sync and disconnects.

## For rooted phones

You can connect permanently if you have a rooted phone (fre3vo worked for me). Execute the following with adb.

Enable usb mode for network and adb:

```
adb shell echo 6 > /sys/devices/platform/msm_hsusb/usb_function_switch

```

Assign an IP to the usb0 device on the phone:

```
adb shell ifconfig usb0 192.168.99.5 netmask 255.255.255.0 up

```

Add a default route. The IP should be the IP assigned to usb0 in linux:

```
adb shell route add default gw 192.168.99.1 dev usb0

```

Set the DNS server. This is google's open DNS server, but it can be the IP of your linux computer if you have a DNS server:

```
adb shell setprop net.dns1 8.8.8.8

```

# Answer
> 3 votes
A made this small bash to automate all. Just plug your phone in charging mode to your computer and run this bash.

```
#!/bin/bash
/opt/android-sdk-update-manager/platform-tools/adb shell 'echo 6 > /sys/devices/platform/msm_hsusb/usb_function_switch'
sleep 1
/opt/android-sdk-update-manager/platform-tools/adb shell ifconfig usb0 192.168.99.5 netmask 255.255.255.0 up
sleep 1
/opt/android-sdk-update-manager/platform-tools/adb shell setprop net.dns1 8.8.8.8

get_ip ()
{
ifconfig usb0 | grep inet | awk '{print $2}' | sed 's/addr://' | grep .
}

echo "waiting for IP on computer usb0"
while [[ `get_ip` < 192 ]];do sleep 2; done
ip=`get_ip`
echo "IP adress is $ip "
/opt/android-sdk-update-manager/platform-tools/adb shell route add default gw $ip dev usb0
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

```

# Answer
> 0 votes
Since I don't have access to Linux machine myself I can't test this solution but you can try the steps described here *(Google translation from Russian)*.

Comments to the translation:

* "rutovanym" means rooted;
* WB or BB means Big Brother (desktop);
* smarta is abbreviation from "smartphone's".

Good luck!

# Answer
> 0 votes
Ok, here's exactly what I did, no rooting of HTC desired:

Setup bind9 and NAT etc...

note: 1: if you just do sudo echo 1 \> /proc/sys/net/ipv4/ip\_forward you will get a permissions error, so here's a script for the process 2: You can make iptables more specific about how it does things by adding parameters for specific devices.

```

cd ~
echo '!/bin/bash
apt-get install bind9
iptables -A POSTROUTING -t nat -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward' > setup_bind9_nat.sh

chmod +x setup_bind9_nat.sh
sudo ./setup_bind9_nat.sh

```

now plug in you're phone and select 'internet pass through'

wait for the device to appear in: `ifconfig` check it is also in: `arp`

I found I had to unplug the device then plug it in again for it to appear in arp, things don't work properly if arp doesn't show the device.

The device will then sit waiting for HTC Sync to send it a message so you have to mock HTC Syncs message:

```

#change this line to be more specific if you have more than one usb network device
phone_usb_device="usb"
get_ip ()
{
    arp -n | grep $phone_usb_device | awk '{print $1}'
}

#TODO: This needs a timeout and loop needs cleaning up, but works fine and borrowed from another post.
echo "waiting for IP on computer usb"
while [[ `get_ip` < 192 ]];do sleep 2; done
phoneip=`get_ip`
echo "IP adress is $phoneip "

echo -n -e "\x00\x02\x00\x00" | nc -q 2 $phoneip 6000 > /dev/null

```

I may write a version of this using D-Bus so the latter part executes automatically when the device is plugged in etc....

Ok here's my work in progress, I couldn't find anything 'generic' on d-bus so I opted for a bit of a hack solution using udev.. This isn't perfect, for instance the command gets run twice, so I'll have to see if I can filter the matching parameters a bit better, also add a timeout on the last script, just incase and see if I can replace arp with something a little better, say looking in /proc

here.s my .rules file from /etc/udev/rules.d I created

```

cat /etc/udev/rules.d/htc-desire.rules

```

You can call it anything you like but DON'T START IT WITH A NUMBER, that way it gets run last of all.

Add the following to the file as sudo using an editor of you're choice etc....

```

#KERNEL=="usb?" or DRIVERS=="usb" not sure which is best, may need extra mode information too from usb device.
SUBSYSTEM=="net", DRIVERS=="usb", ATTRS{manufacturer}=="HTC", ATTRS{idProduct}=="0ffe", RUN+="/home/olli/chain_mock_htc_sync.sh $kernel"

```

```

Ubuntu is setup to create the file with the correct permissions already

ls -lrt /etc/udev/rules.d/htc-desire.rules
-rw-r--r-- 1 root root 248 Jun 26 22:09 htc-desire.rules

```

Basically, if you don't see those 3 'r's,

```

sudo chmod a+r /etc/udev/rules.d/htc-desire.rules

```

Then you'll need two further files, one to chain the other, since RUN from udev will block everything else (even though it's run last!!)...hmm... anyhow:

I created the files in my home directory for now "/home/olli/" ... so remember to replace the '/home/olli/' bit with whereever you create the files:

so for me, cd to my home directory.

```

cd ~

```

create a file called

```

chain_mock_htc_sync.sh

```

containing the following:

```

#!/bin/bash
/home/olli/mock_htc_sync.sh "$1" &
exit

```

make it executable

```

chmod +x chain_mock_htc_sync.sh

```

create another file called

```

mock_htc_sync.sh

```

containg the following

```

#!/bin/bash
#change this line to be more specific if you have more than one usb network device

phone_usb_device="$1"
get_ip ()
{
    arp -n | grep $phone_usb_device | awk '{print $1}'
}

#TODO: This needs a timeout and loop needs cleaning up, but works fine and borrowed from another post.
echo "waiting for IP on computer $phone_usb_device"
while [[ `get_ip`  /dev/null

```

Make it executable:

```
chmod +x mock_htc_sync.sh

```

Hopefully I should have a nice tidied up version soon as pos. (probably tomorrow).

---
Tags: linux, internet, reverse-tether
---


# Question
Title: Google Drive app on Nexus 7 doesn't allow offline editing
Okay, so I have a problem. I have a Nexus 7 (rooted, unlocked bootloader, but no other changes to the system). I have a few google documents (native gdoc format, I'm the owner) that I'd like to edit in my spare, off-the-net time.

The problem is, when I select 'make available offline' in the application, the document appears in the offline tab, and I can edit it as long as I'm connected to a network. When I disconnect, wham, offline documents are set into read-only mode, I can select text, but I can't do anything else (also, there's that blue-ish bar on the top with ios-like "all docs" button).

So, what's going on? I really need to be able to edit some documents when I don't have an internet access.

# Answer
From the looks of it, at this point, marking something available offline only allows you to read it offline when using a mobile device (Source). However, you can edit and write files offline if you are using a computer or device running Chrome or Chrome OS. I'm sure at some point Google will allow editing offline, especially for tablets, but at this point, I am pretty sure that you can online view files offline. Sorry.
> 2 votes

---
Tags: google-drive, offline, documents
---


# Question
Title: Transferring data (contacts, SMS, call log(s), browser history, application data) from rooted phone
My understanding is that, even with access to the filesystem exported over USB, one still does not have access to SMS data, for example. I have a phone that needs to be sent back to my insurance company (the screen broke and I received a replacement), but it is important that I get the data off of the phone, mainly so that I don't lose it.

I've tried a recommended app for saving SMS data on the filesystem with no luck (its output was garbage). Is it impossible to just dump the phone's internal storage, or wherever such things reside, to an external medium for later analysis/extraction?

# Answer
As already pointed out in above comments, there are multiple questions on this site offering parts of the solution you might need:

I'd recommend you taking the payed version of the last mentioned app. While 5 bucks may sound a lot in terms of an Android app, you won't ever regret having spend them. *TiBu* was one of the first apps I've bought years ago, and I'm still a happy user. Using this app, you not only can backup all your apps *including their data*, but all your messages, contacts, call logs, and whatsnots. Even the system settings go along. Provided you get back the very same device running the very same Android version, you simply can go ahead and batch-restore everything (Pro only; with the free version, you need to do this manually for each item).

But even if you switch to a different device or Android version: restoring your apps+data goes the very same. Just with system apps and their data (including your APNs, WiFi hotspots, contacts, text messages, etc.) you need to take special care. *TiBu* offers a "migration mode", which I strongly recommend in that case; but still, some extra care cannot hurt: For your user apps+data, use the batch mode -- no problems to expect there. But for the just mentioned system stuff, better restore items one-by-one using the migration mode, and then check if everything works fine (even a reboot in between might be required, e.g. after restoring your text messages, contacts, and the like, as Android does not expect them coming that way). It's just in case. And if something seems "botched", remember what you restored last -- then do a factory-reset, batch-restore all apps, restore everything up to the point before the "botched" item, and skip to the next.

I don't expect any trouble that way. But in case it comes (thanks to Murphy's Law), you're welcome to ask that in a new question, giving the details, and we'll do our best to help you again.
> 1 votes

---
Tags: applications, contacts, sms, data-transfer
---


# Question
Title: Create customized zip including system.img, boot.img etc for Android customized ROM
I downloaded AOSP source code and built it as instructed in its official site. Now I have 4 img files as system, boot, recovery, userdata. I want to create a zip file which should include these files and can be installed via a recovery manager like 'Clockwork mode recovery'.

For an example we can install CyanogenMod customized rom zip by using clockwork recovery while in boot up process of device. Like wise I need to create a zip including my own imgs. How should the folder structure of the zipped file system should be created, what script files should be included and how that scripts should be written etc.

Used this link (http://lazydroid.com/2011/03/howto-repack-and-sign-rom-image-update-zip-files/) but how to create /META-INF/com/google/android/update-script is not well explained there.

# Answer
> 1 votes
Recently I found a source that can help you to create update-script. Here it is: http://marakana.com/s/updating\_android\_os\_via\_ota,1065/index.html

---
Tags: rom, cyanogenmod
---


# Question
Title: Which version of Heimdall to use with S2 or S3?
I think this is a pretty straight forward question.

I have a Galaxy S2 (i727) and a Galaxy S3 (i747) and I'd like to use Heimdall with both of them, but can't seem to find which version of Heimdall supports them.

Working with the 1.3.1, for example, when I boot my S2 into download mode, zadig.exe does not list the Samsung driver everyone mentions. Heimdall Frontend says it detects a device when I click Utilties-\>Detect, but I can't seem to interact with anything on the Flash tab.

I'm trying to flash recoveries.

# Answer
> 0 votes
I never did find out which version of Heimdall to use with either device, but settled on using ODIN3 v1.85 with my S2 (didn't work with an S3, after all).

If you have the AT&T Skyrocket version of the S2, a great place to start looking is: \[HOWTO\] THE ULTIMATE NEWB GUIDE \> | INSTALL CWM/TWRP | ROOT | UNROOT |the SKYROCKET

---
Tags: samsung-galaxy-s-2, samsung-galaxy-s-3, clockworkmod-recovery, recovery-mode, heimdall
---


title: Mute Button Missing?

text:
# Question
Title: Mute Button Missing?
I upgraded to a Samsung Galaxy S4 from an iPhone 4 today and have been setting various settings. When I first made a call there was a mute button in the middle bottom of the screen. Now, after I have changed settings, there is no more mute button.

I am at a lost as to what I changed to make my mute button disappear.

What do I do to see the mute button?

Note: I am referring to muting my phone during a call.

# Answer
> 3 votes
Try this

1.**Settings** \> tap **Home Screen Mode** \> select **standard mode**
2.Tap apply and reboot.

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


# Question
Title: Can we upgrade AT&T SAMSUNG-SGH-I897 Galaxy S to Android 4.1?
I have the AT&T Samsung Android Mobile with 2.3.5 OS and it's model no is SGH-I897. Now I want to upgrade my mobile os to lates 4.1 or 4.2, So can any body help me how to do that. Thanks in Advance.

# Answer
Can we? **Yes** (But you have to go for a custom ROM)

How? Well, you can use a custom ROM like CyanogenMod or better, you can use Salty Bean ROM.

Steps:

* Backup everything. (including messages, contacts, apps, settings and OS)
* Download the ROM
* After downloading ROM package & Salty Bean addons, connect your phone to the PC. Enable mass storage mode to access SD card data. Transfer both the files on it.
* Disconnect the phone from computer. Now boot into the recovery mode. For doing the same, switch off the phone completely (until it vibrates). Press & hold Volume Up + Volume Down + Power Key together until recovery mode appears (you can release power button after Samsung logo appears but keep holding other two until recovery mode shows up).
* After getting into the recovery mode, take a nandroid backup of your current ROM so that it can be restored back in case if anything goes wrong. To backup your current ROM, select Backup and Restore option from the recovery menu & on next screen, select backup. Now It will make a nandroid backup of your whole system (excluding SD card).
* Select wipe data/factory reset & wipe cache partition to wipe all the data & caches from the phone memory respectively.
* Now Select *install zip from sdcard* & then *choose zip from sdcard*. Select the ROM file from the location where you’ve transferred it earlier & press on Yes to confirm the installation.

All the **detailed information can be found here**

If your are not sure of what to do, please do not attempt to do this. Get help from someone *(as in getting help from someone who can hand your phone over to)* instead
> 0 votes

---
Tags: updates, 4.1-jelly-bean, samsung-galaxy-s
---


# Question
Title: Goclever Hybrid 3G Update will I lose any factory apps and settings
I have very recently bought a Goclever Hybrid 3G tablet/combi.

When going on Goclever web site I saw that there was a new update which is to improve power system problem? It says that if I download the update without back up of apps and data I will lose all, so to back up externally to a PC. I am not too clever on things like back ups so I was hoping that if I download the update without backing up the apps and data would the apps and data that came with the tablet remain on board only losing stuff that I have put on or will I end up with an empty shell. Please help.

Barry.

# Answer
> 0 votes
That very much depends on the update. The manufacturer/vendor might have made only "bug fixes" with this update -- but he might as well have decided to replace the entire system. In neither case you end up with an "empty shell" (I wish that would be the case!), as manufacturers/vendors are rather known to *add* stuff nobody really wants (see: ) rather than to remove apps that ship with Android by default -- but it might very well be that some apps got replaced or will simply be removed.

What surely will be gone, according to the description you gave, are all your data and the apps you've installed yourself, as obviously the update implies a . If your device is already running Android 4.0 or higher, you might wish to take a look at Full Backup of non-rooted devices for how to make a good backup. At least apps+data should be restorable to a newer version of Android then; for other things (SMS, call logs, etc.) you might rather prefer some dedicated tool -- or rely on your Google-Cloud-synced data and pray they will restore automatically (if they start to, don't interrupt them: you cannot re-start the restore, which is one thing making it so unreliable). See also the tag and especially its tag-wiki for details on available backup methods plus hints for recommended readings on this topic.

---
Tags: 4.1-jelly-bean
---


# Question
Title: How can I prevent an app being uninstalled from the Play Store?
In our organisation, we are providing Android tablets to some users. There is an app we have installed on the devices that we don't want users to be able to remove.

I have searched for "app lock" in the Play Store, and tried the various 'app lockers' which password protect the apps I choose.

If I then use the Android menu to try to uninstall an app that I have protected with the app locker app, it prompts for a password - which is good.

But, if I go into the Play store app and try to uninstall through there, it removes it straight. And I don't want to password protect the Play store. Is there any way to prevent uninstallation of certain apps in a foolproof way?

# Answer
One way to achieve what you want would include the following steps:

1. (temporarily) the device
2. converting the app in question into a system app (e.g. using Titanium Backup ★ root, but there are also other apps helping you with this step)
3. unroot the device again

As the app now resides in read-only space (`/system`), the user cannot delete it without either rooting the device or flashing a ROM -- which of course could be done, but it's a higher inhibition threshold at least.
> 9 votes

# Answer
Izzy's method works just fine, but if you don't want to temporarily root your device(s), you could make an update script which copies your app to the root of the device, so that it's been recognised as a stock app.

Take a look at the following tutorial: http://www.londatiga.net/it/how-to-create-android-update-zip-package/
> 1 votes

# Answer
Is the app developed by your organisation?

If you can control the source code of the app, you may prevent users accidentally uninstalling your app with the help of DevicePolicyManager. The advantage is that you don't need to convert the app in every tablet to be an system app. Once the app is installed from Google Play, it can not be uninstalled unless users disable the DevicePolicyManager in security settings.

If you can't change the app, then convertit to a system app. Because there are many devices to handle, you should write a script to do the job.

In both ways, if the users really want to uninstall your app, they can always find a way. So make sure your user do not hate your app.
> 1 votes

---
Tags: applications, uninstallation
---


title: Add Share option without an app?

text:
# Question
Title: Add Share option without an app?
Is it possible to install/setup a new sharing option without the use of an app?

In my case I'd like to be able to share photos to Flickr, but I have no interest in installing the Flickr app (or any other app whatsoever, for that matter).

# Answer
> 8 votes
No. It's not just a question of adding something to the *chooser* (the menu of apps): there needs to be an app on the other end to take the photo, log into Flickr, and understand Flickr's *API* (the programming interface that apps use) in order to upload the photo. It also needs to handle possible failures, such as resuming or retrying the upload later if you lose internet connection.

If you want a share option that shares to Flickr, there are many Flickr apps on Google Play that only do uploading, and don't have any functionality to browse or view photos. That way you can have the share option while still keeping your phone lean.

Alternatively, you can browse to the Flickr website in your web browser and upload photos from there. It's not as convenient but it's the only way that doesn't involve any kind of special-purpose app.

---
Tags: share-menu
---


# Question
Title: What determines the order of my contacts on the frequent contact toolbar?
I am seeing a contact in recently contacted friends in whatsapp to whom I have not sent a message for a week now. All the other contacts are chronologically arranged except for him. Why is this happening? Is it that he is spying on me and my phone is sending him my history automatically? Or is it normal to be so?

# Answer
> 2 votes
I *think* from reading the source code here and this line and also from reading the code in the Contacts application that the "Frequently Contacted" list in the Contacts application orders the contacts by the number of times that you've called them. That's the `DataUsageStatColumns.USAGE_TYPE_INT_CALL` bit. This is also assuming you're using the default Contacts application but since you didn't specify I assumed you were.

So it must be that you've called this particular friend more than any others. To test this try and make a large number of calls to the next person in the list and see if it overtakes the top person.

It could also be the case that you've 'starred' him. If you go on his contact profile at the top there's a star. If this is white then it means that you've favourited him which means he will always appear at the top of the "Frequently Contacted" screen. Just uncheck the star and he'll go away.

There is also the option to clear the list if you like, just click on the Action Menu or your menu button and select "Clear frequents".

---
Tags: contacts, whatsapp-messenger
---


# Question
Title: Attempted installing Google Play Store, but ended up installing Android Market!
As seen below, anything to do with Google Play is installed in the Android SDK in my Ubuntu.

In light of this SDK Extras set above which has the Licensing Library, it is perfectly legal to have Google Play in emulators created here (correct me if I am wrong). Google Play is a factory default. Yet, when an emulator instance is created (even for that matter, a Nexus with Google API (say 10)) Google Play isn't already there.

So, in an attempt to install Google Play the closest I got is using this guide, as per which, I downloaded `gapps-jb-20130307-signed.zip` (the ZIP file for Gingerbread 2.3.3) and unzipped it and just executed the adb commands in the script given at the very end.

What I ended up installing was the Android Market! Why?

# Answer
I browsed a bit on Android Market and then I pushed another file from the zip downloaded. It's named `MarketUpdater.apk`. That's what updates the Market to Play Store!

Tried starting from scratch and pushed market updater too! So it was Play Store right when it sat in.
> 2 votes

---
Tags: google-play-store, 2.3-gingerbread, android-emulator
---


# Question
Title: Sony Xperia Z corrupted photos in LOST.DIR folder inside microSD
I have a curious problem and I hope someone can help me

I was traveling and took about a hundred photos with my new Sony Xperia Z 6603 phone which were saved on my Sandisk 32GB microSD card

Some photos would not show, so I rebooted the phone (unaware that this may result in corruption). Yes, all the photos were corrupted and appeared under LOST.DIR in my SD card under titles 8216, 8217, 8219 and so on. They have no extension (original should have been jpg)

They still take up the normal space for a JPG photo and there's exactly a hundred. They are just simple files, no extension

I tried to change the extension to JPG, JPEG, PNG for photo formats, ZIP, RAR as I read they may be compressed. I also tried to repair them with JPG repair software. They do not open with any photo viewers, photo editing software either

They do not show up under Recuva, ZAR, Wondershare Dr.Fone, or any other recovery programs that scan the SD card FAT32 sectors. They just stay there in the LOST.DIR folder. They are not overwritten as I have removed the SD card

Can they really be gone and are only just ghost files? Or are they still my holiday photos that I so desperately need to recover? Is there anyone that experienced a similar problem and is there any way to recover? I wouldn't mind taking my microSD to a specialist should it come to that, as those photos are really important

# Answer
well the 4.1.2 was in the fat32 format however the 4.2.2 wants a "exfat" but becarefull since this format is very weird because in not always working due to the fact that the master table very messy therefore it might asking for the deframenting often. so it can lock it self 0x.... So re format to exfat and everthing should will be fine and there should be no issues .
> -1 votes

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


title: OUYA Custom ROM support

text:
# Question
Title: OUYA Custom ROM support
OUYA has been one of the largest backed products on Kickstarter.

Unfortunately it runs a custom version of Android which does not provide Google Play Store support. At the same time by design it is supposed to hackable so I wanted to explore the available options in terms of custom ROMs.

Are the any custom ROMs available (or planned/in development) for OUYA?

# Answer
It looks like the crew over at XDA are already on it:

XDA OUYA
Main Page

Ouya General
Discussion about the Ouya Android game console (general, tips & tricks, etc)

Ouya Q&A, Help & Troubleshooting
For all of your questions relating to the Ouya Android game console

Ouya Android Development
Android development for the Ouya game console
> 8 votes

---
Tags: custom-roms, ouya
---


# Question
Title: Clock / Weather widget does not display on the home screen
I accidentally deleted my clock/weather from my home screen on my Samsung Galaxy S3. I downloaded a new app but when I add it to my home screen it just stays small, when I tap on it it just gives me "important information" on how to add it. It is added, it just won't open! Help!

# Answer
> 1 votes
1. Go to the app drawer. At the top, you should see `Apps` and `Widgets`.
2. Click `Widgets`, and scroll through the pages. Look for the weather widget.
3. Once you find the widget, long-press on it and drag it to your home screen.

**EDIT #1:** Here's an example. In this case, I am using the Accuweather app. AND, I'm not using the default launcher, but you should find something similar.

---
Tags: app-widgets
---


title: Stock Messaging App Locks and is Slow

text:
# Question
Title: Stock Messaging App Locks and is Slow
I upgraded to a Samsung Galaxy S4 (from iPhone) and still trying to make the transition and learn all of the new features.

One issue I have is with the stock messaging app. It completely freezes up at times. I cannot back out of a conversation thread. Messages do not go out. Eventually I will receive a message saying this app has frozen do I want to wait or close. Finally the messaging app doesn't load at all and I have to reboot the phone to get the app back.

What can I do to solve this problem and have the messaging app functioning smoothly and properly?

Notes:

* I am running 4.2.2.
* Memory is 8+ GB available
* Only a few apps are running (I know how to close open apps)

# Answer
If you are coming from an iPhone and looking for a better messaging app, check out Go SMS Pro and use an iPhone theme.

This app allows you to customize several things while still looking very similar to the iPhone's messaging interface. I always install Go SMS over the default messaging app and you might just want to give it a try, especially since you are coming from iOS. There are other plugins that are all free that allow you to view iOS emojis and other cools things like that.

Let me know if you still have the same issues with this app as well.

btw, congrats on smartly making the switch ;)
> 1 votes

---
Tags: sms, 4.2-jelly-bean, samsung-galaxy-s-4
---


# Question
Title: disabling sms content and just seeing name on the lockscreen
I have an htc one. Is there a way to disable the sms content in lockscreen and just see the name, without using any other application?

# Answer
> 0 votes
I do not have an HTC One, but I use Go SMS Pro which is a third party SMS/MMS app that has a easy setting in there to only show a "New Message" notification instead of actually showing the message's contents. You said you didn't want another application, so you might be able to look through the settings of the default messaging app on the One and see if there is something similar.

If not, I highly recommend Go SMS Pro to solve this issue and several others.

---
Tags: sms
---


title: Blinking icon in notification bar

text:
# Question
Title: Blinking icon in notification bar
I have a new annoying icon on my Razr notification bar. It is a tiny blinking symbol that sort of looks like a tiny house with a cloud over it. It is blinking above the network strength bars where the "x" would be if there was no service.

Anyone know what that is?

# Answer
> 2 votes
If the icon looks like this then it means you're connected to a network extender.

A network extender plugs into your existing internet connection to enhance indoor coverage in spotty areas, like a miniature tower in your home or office. Even if you don't have one yourself you could still be picking up one from a neighbour if it's in open mode.

# Answer
> 2 votes
If this is what you are referring to, it appears to be notifying you of a network extender that your phone could be using to get better signal wherever you are.

Even if you don't have network extender, your phone could be connecting to someone else's that is on the same network (Verizon, AT&T, etc.).

---
Tags: notifications
---


# Question
Title: Install application in SD card or external USB drive without root?
Is it possible any of the following in a **non-rooted** Android device?

1. Install an application "manually" (without using Android Market/Google Play)
2. Install an application in an external SD card
3. Install an application in an external USB drive connected to the device

# Answer
1. Yes. See: Can I install apps on phone without using the Android Market?
2. You can't install directly to the SD card. In many cases you can move much of the app and its data to the SD card, but the OS and the app have to support it. Even then, you need to install normally and then move it, and you can't move 100%.
3. Not without a custom ROM, and maybe not even then.
> 0 votes

---
Tags: usb, external-sd, installation
---


# Question
Title: lock screen always toggles between two variants
Galaxy nexus, CM10.1, standard lock screen/ cLock. If I repeatedly turn the screen off and on it goes back and forth between the two screens below. Super annoying...

**Edit to include a question mark:**

How do I make it NOT switch between the two different lock screens every time? I just want one lock screen; the one with the calendar and weather widgets I added...

# Answer
> 2 votes
Finally tracked down something official:https://code.google.com/p/android/issues/detail?id=48164

# Answer
> 2 votes
Unfortunately I don't think you're going to find a setting change to fix this. It's likely a bug in the ROM, or the lock screen or cLock apk(s). I'm also running CM10.1 on my phone (LG Nitro HD) and I can't even get the cLock app to change to using an analog clock (vs. the Digital). Even after multiple reboots and confirming that indeed I have the right settings in Settings-\>Lockscreen.

Some rudimentary net searching and you can see issues with the lockscreen on CM10.1 is not unusual.

# Answer
> 0 votes
Do you have Lockscreen Policy installed? That's most likely the issue.

---
Tags: cyanogenmod, lock-screens
---


# Question
Title: Rooted Kindle Fire - Mounting Filesystem from Ubuntu
I have a first gen Kindle Fire that has been flashed with Android 4.0.4 (hashcode's of course).

The device was rooted using my thoshiba NB305 netbook running ubuntu 10.04 (Lucid).

While the original OS was still installed, I could mount the kindle's filesystem over a usb connection using

```
 mount -t ext3 /dev/sdc /mnt/kfire

```

Now I'm trying perform another rooting operation from the same laptop, to upgrade android to 4.2.2, and cannot get the kindle's file system mounted with this command.

I checked dmesg and the devices is still being detected as SCSI device on /dev/sdc

```
 sd 11:0:0:0: [sdc] Attached SCSI removable disk

```

however, a

```
 ls -l /dev/disk/by-id/

```

reveals that

```
 usb-Am_File-CD_Gadget_0123456789ABCDEF-0:0 -> ../../sdc

```

The thing is, mount isn't even detecting that a device is present at /dev/sdc, I simply get the error

```
 mount: no medium found on /dev/sdc

```

I'm not sure how to mount a usb-Am\_File-CD\_Gadget, or why I'm not at lest getting a "wrong filesystem type" error from mount.

Also, the kindle is not showing up when running

```
 adb devices

```

and so figured I needed to mount it in order for adb to be able to see it. However, I just tried my LS970, and its showing up in adb devices, but also cannot be mounted with the above command (or mtpfs -o allow\_other /mnt/kfire).

**So, I'm looking to get the kindle discovered and communicating with adb first and foremost (I thought mounting was required for this, but apparently isn't).**

---

I found this article to be potentially helpful, but still need to give it a through reading:

https://developer.ridgerun.com/wiki/index.php/How\_to\_use\_USB\_CDC\_ACM\_and\_MS\_composite\_Linux\_gadget\_driver

Any help is much appreciated, Thank you.

# Answer
> 0 votes
Turns out it was the micro-usb cable I was using to connect the kindle to my laptop.

Once I found my uber quality ASUS cable, progress began...

Now the OS atleast properly detecting the device, and loading it as a mass USB storage device.

**dmesg:**

```
[ 5516.756143] usb 1-1: new high speed USB device using ehci_hcd and address 125
[ 5516.824377] hub 1-0:1.0: unable to enumerate USB device on port 1
[ 5517.216091] usb 2-1: new full speed USB device using uhci_hcd and address 21
[ 5517.355193] usb 2-1: not running at top speed; connect to a high speed hub
[ 5517.383505] usb 2-1: configuration #1 chosen from 1 choice
[ 5517.405589] scsi4 : SCSI emulation for USB Mass Storage devices
[ 5517.411906] usb-storage: device found at 21
[ 5517.411919] usb-storage: waiting for device to settle before scanning
[ 5522.409318] usb-storage: device scan complete
[ 5522.412282] scsi 4:0:0:0: Direct-Access     Am       File-CD Gadget   0000 PQ: 0 ANSI: 2
[ 5522.415038] sd 4:0:0:0: Attached scsi generic sg2 type 0
[ 5522.433234] sd 4:0:0:0: [sdc] Attached SCSI removable disk

```

However, adb devices now gave:

```
List of devices attached
????????????    no permissions

```

to get ADB to properly list the device, and be able to connect to it, please see this solution on SO:

https://stackoverflow.com/questions/5510284/adb-devices-command-not-working

---
Tags: 4.0-ice-cream-sandwich, cyanogenmod, linux, amazon-kindle-fire
---


title: What is this in my system tray?

text:
# Question
Title: What is this in my system tray?
Every so often, seemingly random, this notification appears in my notification bar, but not in the tray.

The circles on the left in the notification bar. I have no clue what it's related to. There's no notification if I slide the tray down. It doesn't stay long, about the time I check for it in the notification tray, it's gone. I develop for my phone. Would anything on the development side of things trigger this weird notification?

It's a Samsung Galaxy S3 running CyanogenMod nightlies, specifically 10.1-20130405-NIGHTLY-d2spr which is Android 4.2.2.

EDIT:

I've noticed that this appears very consistently when I have Moon+ Reader open. It does not appear to be a notification caused by that app, but instead appears to be that the app is somehow "muting" notifications that happen while it is open. Is there something in the API that allows for the silencing of notifications originating from other apps?

# Answer
I've found it in the Android API: http://developer.android.com/reference/android/view/View.html#setSystemUiVisibility(int)

A flag, SYSTEM\_UI\_FLAG\_LOW\_PROFILE, can be passed to indicate that certain UI elements be put into a Low Profile and offer less of a distraction to the user. If I had a nexus device (really any device with soft buttons across the bottom) then I would also notice those buttons being replaces by the same dim circle I'm seeing in my navbar.

This has been available since 4.0 and is intended for book readers, games, and other immersive applications.
> 5 votes

# Answer
This is the indicator for low priority notifications, for example from Google Now.
> 0 votes

---
Tags: notifications
---


# Question
Title: Dual booting linux on android galaxy note 10.1
I have a samsung galaxy note 10.1 and would like to be able to run a linux distribution. I would suspect that this is attainable, and that people have already done it. What I want to know is the specifics such as:

1. When I start my tablet, can I select which operating system I would like to run? I do not want to run both at the same time.
2. Which Linux distribution will give me the best performance?

I pretty much want to keep my Android functionality for the S pen, note-taking, and games (as it was made for that). I would also like to have the option to run an efficient Linux distribution so that I can run the standard UNIX tools/programs/compilers that are all familiar to me. Also, I do not really care about having all the features of my tablet working with the Linux distribution (such as camera and GPS). That being said I do care about the Bluetooth working as I have a Bluetooth keyboard!

# Answer
I just want to start this answer off by saying that if you are not an expert computer user, this is probably not for you. You will need to know how to setup and edit partition tables, along with knowing how to resize, delete and add partitions. I of course accept no responsibility for any damage you cause to any device from reading this tutorial.

In theory here is what you need to do:

1. Repartition your device's SD card so that you can make room for all the the Operating Systems you want to run
2. Get a new boot loader that supports dual (or multi) booting
3. Flash the partition with a build that is compatible with your phone

Specifically for your device (the Galaxy Note 10.1), here is a GREAT link on dual booting:

The tutorial is on an Ubuntu machine, if you do not have Ubuntu it is pretty easy to install from their website:

You probably don't even need to install Ubuntu to do this tutorial, I think you would be fine just running off of the live CD. I am a little biased because I love Ubuntu, but I would recommend installing it when you have free time. It really is a life saver and it runs on top of a linux kernel so you get all of the benefits of linux when you use Ubuntu.

# **VERY IMPORTANT BEFORE YOU START THE TUTORIAL**

> 1) Backup your device every time before you make a change to the OS or to the boot loader. It is extremely easy to brick your device if you don't know what you're doing. If you brick your device and you have no backups to go from, then you are out of luck my friend.
>
> 2) You need to have a CWM (Clockwork Mod) installed on your device before you start the tutorial along with Nandroid Backup. See Extra Stuff below for install information.
>
> 3) I cannot stress this more: MAKE SURE THAT YOU ARE INSTALLING A MOD THAT FITS PERFECTLY WITH YOU DEVICE!! You will potentially render your device unusable if you do not check your ROMs thoroughly.
>
> 4) This is not so important but will save you a lot of time in the future. Go get a bigger SD card, no 1GB or 2GB is not enough and 4GB is pushing it. Go out and buy a 16GB SD card, they are not that expensive and if you are going to be doing multiple booting, then you will want the extra space. It will be a huge pain to transfer all of your files onto a bigger SD card because you decided you wanted to triple boot Android, Arch Linux and Ubuntu all on one device. This is the voice of experience unfortunately.

Hopefully the tutorial works out well for you. When you get comfortable with installing OS partitions, then you can start trying out different flavors of Linux. My favorite is Ubuntu, followed closely behind by Arch Linux (ARM) (Which is great for server applications).

## Extra Stuff

Here is a Video tutorial for installing the CWM on the Galaxy Note 10.1 if you need to do that. Again make sure you get the right ROM for your device.

If YouTube is more your thing, then here is a pretty good video on doing the same thing in the other tutorial. This YouTube video requires you to already have CWM installed on your device.

For those of you who do not have the Galaxy Note, here is something else I found that might be useful (or at least a starting point):

Please feel free to edit if you have something to add (Tutorials for specific devices etc.)

Also, if you need more info, just comment and I will help you out.
> 4 votes

---
Tags: linux, dual-boot
---


# Question
Title: Where does Android store the "default application for file type (open with)" settings?
Where does Android store the default application settings that connects each type of content with a designated application? I mean which application open each kind of file or content type so if I got two PDF readers and I downloaded a PDF file android will use one of them without letting the user an option to choose.

I know I can clear the default settings of an application but it's not what I'm looking for.

I want to find the table/database/file that android uses for this. Is it in a sqlite database file? Where is it stored ?

# Answer
> 5 votes
On Jelly Bean, the *preferred activities* are stored in the XML file `/data/system/users/0/package-restrictions.xml` for the primary user. Other users have their user ID in place of `0` in that path. If *encrypted file system* is enabled, it starts with `/data/secure/system` instead of `/data/system`.

Other than through the `PackageManager` service, this file can only be accessed by root. You can see the code that reads and writes the file (and thus infer the format) in the class `com.android.server.pm.Settings`.

# Answer
> -1 votes
If I had an image file in my sdcard, I would open it via QuickPic because that is my default gallery viewer. If I wanted to switch my default gallery viewer, I would go to Settings -\> Apps -\> QuickPic -\> "Clear Data" and then I would be able select how to open an image file again.

Therefore, Android seems to store the default application data within the program's data files that is being used.

---
Tags: settings, default-applications
---


# Question
Title: Force close message for every single application on Easypad Junior
I have an Easypad Junior and have the following problem with it: When I start it and unlock it i get this error:

> The application \<..., it does that for every single one\> has stopped unexpectedly

The only thing I can do is to press `Force close` and then I enter a loop of pressing that. That leads nowhere. In safe mode, the same story.

Can you please help me?

# Answer
It may be because of permission issue.
If you are rooted and installed Custom Recovery(CWM recovery,TWRP Recovery) there is an option in `advanced`.

1: Boot into recovery
2: Advanced (CWM Recovery)
3: Fix permissions

It will fix permissions for all apps installed.
try it.. or else provide more details like ROM,Root status,recovery etc.
> 0 votes

---
Tags: force-close
---


title: What does the "Force stop" button mean?

text:
# Question
Title: What does the "Force stop" button mean?
When I go to `Settings > Applications > Manage Applications > Downloaded` I see an application list. If I select some applications I see button "Force stop" active, but some applications have this button dimmed.

What does it mean? What happens if I press this button?

This button can't mean application running, since the applications with this button are not listed in `Running` section.

Can I list just applications which have the `Force stop` button active and uninstall them?

---

Android version: 3.2

# Answer
As said in my comment to paco's answer, the information he gave is mostly correct: Most apps don't exit completely if you leave them, and no app should exit if you leave it via the "Home" button. Moreover, some apps have background services running which the user otherwise cannot quit.

Now there are some situations where you need an app (including its background services) to be stopped -- e.g. if you want to uninstall that app (or, in case of a system app, its updates). You will notice this when the "Force Stop" button is active, the "Uninstall" (or "Remove") button is grayed out -- but the latter gets activated when you stopped the app via "Force Stop". (If both buttons are grayed out, you can tell it's a system app, by the way -- which you cannot uninstall).

Btw: If the "Force Stop" button is grayed out ("dimmed" as you put it) it means that app is not currently running, nor has it any service running (at that moment).
> 19 votes

# Answer
The code behind the **Force stop** button is complex and undocumented. I'll reproduce it verbatim and then go through it one piece at a time.

```
private void checkForceStop() {
    if (mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {
        // User can't force stop device admin.
        updateForceStopButton(false);
    } else if ((mAppEntry.info.flags&ApplicationInfo.FLAG_STOPPED) == 0) {
        // If the app isn't explicitly stopped, then always show the
        // force stop button.
        updateForceStopButton(true);
    } else {
        Intent intent = new Intent(Intent.ACTION_QUERY_PACKAGE_RESTART,
                Uri.fromParts("package", mAppEntry.info.packageName, null));
        intent.putExtra(Intent.EXTRA_PACKAGES, new String[] { mAppEntry.info.packageName });
        intent.putExtra(Intent.EXTRA_UID, mAppEntry.info.uid);
        intent.putExtra(Intent.EXTRA_USER_HANDLE, UserHandle.getUserId(mAppEntry.info.uid));
        getActivity().sendOrderedBroadcast(intent, null, mCheckKillProcessesReceiver, null,
                Activity.RESULT_CANCELED, null, null);
    }
}

```

The first `if` line checks if any *component* of the package is a *device admin* (that is, if it's checked in the **Device administrators** list in the **Security** page of the **Settings** app). If so, the button is *disabled* (greyed out) so you can't stop device admins.

Then, the `else if` checks if the package is already *stopped*. Here, stopped doesn't just mean "not running". As far as I can tell, a package is in the *stopped* state if you've never run any component from it (such as by launching it from the menu), or if you've pressed a **Force stop** button (this one or in a "stopped working" dialog) and not run any of its components again. If the package **hasn't** been stopped, the button is *enabled*.

The `else` case covers the rare eventuality that an app **has** been stopped and isn't a device admin. In this case, it gives other *system services* a chance to enable the button. For example, the app might have an alarm set and pending, which would later cause the app to be started again even from the stopped state. In this case, the button will be enabled. If no other system service has a reason to enable the button, it will be disabled.

## Summary

The **Force stop** button is enabled if the package is not a device admin **and** either you haven't already force-stopped this app or you have force-stopped it but a system service thinks it will run it again.

If the app is running (and it isn't a device admin), the **Force stop** button will definitely be enabled, but the button being enabled doesn't mean the app is running.
> 16 votes

# Answer
Android maintains 4 types of applications in its memory. I dont remember all but *running* and *cached background* are 2 of them...(cached background can be accessed by clicking the hardware menu button when in the *running* tab and selecting the poped up option)

So though it might not be seen in the *running* processes, it is not entirely dead.

Mostly it shall be in the *cached background* prcesses.

also, about task managers..Its is not advised to use them as android has been hardcoded to manage apps efficiently.App/Task killers actually rather drain battery as after the killer kills apps, acording to the algorithm android follows,they will be started again!(and apps take up rather more memory at startup than in ideal state) thus it becomes a cycle and drains the battery.

so the force close button is active on *mostly* running and cached processes and may exist on a very few apps that reside in the other two types of processes!

on other apps its greyd out!
> 2 votes

# Answer
This button is active for apps that are running or are be running since the last time that you started your device.

Android do not kill the apps totally when you exit from it, this button is for close completely the app and remove it from the stack (apps running), also this button free the memory used by the app.

There is no way to list the apps running, also the apps running in background have this button.

There are free killer apps in the Play Store, to manage the memory of your device automatically.
> -2 votes

---
Tags: applications, application-manager
---


title: Link2SD proper usage

text:
# Question
Title: Link2SD proper usage
* I have a 64 GB micro SD card.
* I partitioned 1.2 GB as Ext2 with Mini Partitioner (highest option was about 4 GB).

This is great and all, but from all of the literature I've read, Link2SD seems like it would utilize the entire SD card, not just that second partition.

If what I'm seeing currently is correct, the only thing that Link2SD does, is give you an extra GB via the Ext2 partition, and imposes a dependency so that you're never able to actually remove the card due to the links.

I believe my thinking is wrong so any help is appreciated.

# Answer
The literature you read was wrong, then. Link2SD only uses the extra partition. The main partition is still mounted under `/media/sdcard` or somewhere similar.

With Link2SD, you cannot physically remove the SD card, but you can mount the SD card on the computer. The second partition does not get mounted, so the apps are still accessible while the standard partition is mounted on the computer.

If you want more space, you can always repartition your SD card manually on your computer, if your version of ClockWorkMod (CWM) doesn't have the size you desire. GParted on linux is a handy GUI, and there are apps for Mac and Windows as well.

And you can still install apps to your SD card the normal Android way, though the dalvik cache and other data will still use up the internal memory (which is likely limited in your case, as that is the reason to use Link2SD in the first place).

## Purpose of Link2SD

Here's an hypothetical example+. You have 180MB free internal memory. You have a standard 16GB SD card.

When you install an app to the SD card, 10%\* of the app is actually still on the internal memory. So when you have installed 1.8GB of apps, you run out of internal memory, even though your external SD card could hold a bunch more.

In comes Link2SD. Now, your SD card is actually 12GB standard and 4GB for linking. New apps get Linked, but this time 100% of the app is moved, so you can install 4GB of apps instead of 1.8GB.

You shouldn't be limited to 4GB, either. ClockWorkMod (CWM) may only list 4GB as the maximum size, but you can use a computer to make the linking partition as large as you want.

\*Made up percentage. It varies by app.
+Not so hypothetical. With my old Optimus V, this was almost exactly my setup.
> 2 votes

---
Tags: applications, file-system, link2sd
---


# Question
Title: Alfar 780 tablet not updated from ICS 4.0.3 to ICS 4.0.4
My Alfar 780 tablet wasn't updated to ICS 4.0.4.

I downloaded 4.0.4.zip, and turned off the tablet. Then, I clicked the `power` \+ `volume up/down` buttons. It opened but did not show the menu to update.

# Answer
Change the file name of the 4.04.zip to update.zip and that should do it if you are able to boot into recovery.
> 1 votes

---
Tags: updates
---


# Question
Title: Issue Updating Google Apps - "Not Signed Correctly"
First and forehand, I am running JB 4.2.2 AOKP on my AT&T Samsung Galaxy S3. I have the latest gapps package installed after every time I flash an update to my ROM.

For some reason though, whenever I try to update either Gmail or Play Music, I get the error "Package file was not signed correctly. Uninstall the previous copy of the app and try again."

I can't uninstall the apps because they are used as system apps, and the best I can do is disable them, but that still didn't let me update them. I'm sure it has something to do with the gapps package that I flashed, but why does it not give me the same error when I update Play Movies and Play Magazines?

I do not use Titanium Backup to back up any of my apps, so I saw that that was a problem for some other people. If however, there is another question that relates more to mine, I will be glad to go and check it out, but after my looking I did not find a solution to my specific problem. Thanks in advance!

**EDIT:** Here's the link to the gapps package that I installed as well as the exact ROM I am using.

# Answer
> 2 votes
In Android, every package is cryptographically signed by its author. To be an upgrade, the new package has to be signed with the same key as the old package. Since packages can read previous versions' data files, this is an important security precaution.

The error you get tells you that the update you're trying to install was not signed using the same key as the package you had flashed to the ROM. Either the original package you flashed, or the new package, was signed by a different developer.

You should either obtain an update from the same source you originally got the gapps package from, or flash a new ROM with a gapps package from the same source you're trying to update from. We may be able to help further with this if you edit your question to say where you got these packages from.

---
Tags: google-play-store, 4.2-jelly-bean, gmail, google-play-music, aokp
---


# Question
Title: Is there a way to automatically improve the quality of pictures taken with the camera?
Is there a way to automatically improve the quality of pictures taken with the camera? For example with some sort of post-processing

I was told that iPhone makes better photos because of good (built-in) post-processing software (which runs automatically). Can I have the same on Android somehow?

# Answer
The new updates to Google+ has features called auto enhance auto awesome. It is a feature that automatically enhances the photos you have uploaded. Just make sure instant upload is on and the auto enhance settings are on in the app Settings\>Camera&photos. Here are the things that it does. https://support.google.com/plus/answer/3113884?hl=en
> 1 votes

---
Tags: camera, photos
---


# Question
Title: How to turn HTC Widfire with blank screen into debug mode
My screen on HTC Wildfire has gone blank and so have got my phone upgraded. Whilst the guy in the shop was able to transfer my pictures and video, when he tried to transfer my contact phone numbers he said he couldn't do that without putting the phone into debug mode, and he could only do that if he could see what he was doing on the screen.

Is there any way of getting a HTC Wildfire into debug mode without having to use the screen?

# Answer
> 0 votes
Your contacts are saved in Google contacts and your photos and video in SD card.

---
Tags: usb-debugging, htc-wildfire
---


# Question
Title: Adding a 2x Picture Widget on home screen
I have a Samsung Galaxy S4.

I have a picture that I would like to have as a 2x2 widget. I don't want to set it as background; I want it like the Weather widget.

# Answer
> 4 votes
There is a 2x2 Picture widget. Drag it to your home screen.

Here's what it would look like:

# Answer
> 0 votes
You can do this with my **free** app Showr. With Showr, you can choose a picture from another app (such as the Gallery or Dropbox), you can take it directly with any camera app, or you can have it download from the Internet and update by your schedule.

Showr lets you resize the widget to any size. You can also set what happens when you click on the photo widget: you might want to view the photo in the Gallery, or start some other app, or launch a website. And because I'm active on this site, you know it's going to be easy to get help if you need it.

---
Tags: app-widgets, images
---


# Question
Title: Remove unneeded 'system apps', and notifications (tool)
There does appear to be cumbersome methods: (*that you may not know of ..*)

**(1.)** Goto: Settings \> Applications Manager

For each application, un-tick 'Show notifications', press 'Ok'.

( repeat 100 times )

**(2.)** Goto: Settings \> Applications Manager \> (scroll to right) (select ALL)

For each SYSTEM application (you don't want, eg. ***Google+***):

* un-tick 'Show notifications', press 'Ok'
* click 'Force Stop', wait .., click 'Ok'
* click 'Remove Updates', wait .., click 'Ok'
* click 'Disable', wait .., click 'Ok' (option not visible, until updates removed)

( repeat as needed, for: Chat On, Group Play, Hang Outs (Talk), You Tube, Game Hub, WiFi Direct + WiFi Direct Share )

---

***My real question ..***

Is there a **tool** to automate this? (global disable-notifications, simple un-tick for system 'bloatware')

> Why is this not in **Google Play** (from desktop browser)? *More of a philosophical question.*
>
> What portion of (unwanted) data traffic is caused by this 'bloatware'?

# Answer
As WiKi says, such a tool would require root on your phone. For security reasons, only system apps can enable and disable notifications for an app, only system apps can force-stop other apps, and only system apps can disable other apps. You really wouldn't want every app on your phone to be able to turn on notifications for itself and disable the Settings app so you can't turn them off again.

If you want to disable most of your system apps, it sounds like it might be better for you to replace the OS with a . The tag wiki for that page will give you some hints to get started. Be warned before you decide: you do need to unlock the bootloader to achieve this, and you should take a backup first as it's an advanced procedure: people do manage to brick their phones this way.

As a quick note: most of the apps you list are Samsung's apps. Samsung are known for shipping particularly bloat-heavy software, so you may find it easier to buy a phone from a different manufacturer next time. Nexus phones in particular run a very minimal Android: that's their main selling point.
> 1 votes

# Answer
You need to root your phone for this.
> -3 votes

---
Tags: 4.1-jelly-bean, 4.2-jelly-bean, google-apps
---


# Question
Title: Trying to vacuum all databases under /data with sqlite3, but fails with error 14
I would like to vacuum all my database files under /data, to achieve somewhat better performance so I ran the following script:

```
for i in $(find /data -iname "*.db"); do
#echo $(basename $i);
sqlite3 $i 'VACUUM;';
resVac=$?
if [ $resVac == 0 ]; then
    resVac="SUCCESS";
else
    resVac="ERRCODE-$resVac";
fi;

sqlite3 $i 'REINDEX;';
resIndex=$?
if [ $resIndex == 0 ]; then
    resIndex="SUCCESS";
else
    resIndex="ERRCODE-$resIndex";
fi;
echo "Database $i:  VACUUM=$resVac  REINDEX=$resIndex" | tee -a /data/vacuum.log
done

```

As you can see this script vacuums and reindexes each database file under /data. REINDEX works fine, but VACUUM does not. **It returns "Error: unable to open database file". (error code 14)**

I am dealing with /data. So, it can't be a mount problem.

# Answer
> 2 votes
Unlike `REINDEX`, the `VACUUM` command needs to create a new temporary file to work in. It then replaces the database file with this temporary file. This means that it needs write access, not only to the database file, but also to the directory it's in.

---
Tags: sqlite, optimization
---


# Question
Title: Is there a way to disable touch temporarily?
Imagine that you want to do something, while the display in is action (not in sleep mode) and at the same time, you don't want to do anything else. This situation is like **children lock**, in which, all buttons fail to react, temporarily, to disable any kind of interaction by a child.

Is there a way to achieve this in Android? Do we have something like **lock screen**?

# Answer
> 2 votes
If your talking within your app, this is impossible as you cannot override the home button even if it is soft or hard button. So a full lock is always impossible.

This is to stop rogue app's taking full control of the phone.

# Answer
> 5 votes
There are several apps on Google Play that can do that, such as, TouchBlocker.

---
Tags: touchscreen
---


# Question
Title: Any Android phones that don't support Bluetooth?
Does anyone know of any current Android phones that do not have Bluetooth? We are trying to test our application on phones that do and don't support Bluetooth, but having a tough time finding any phones that don't have it.

Any pointers to sites that may help me track this down would be appreciated.

# Answer
> 3 votes
There's probably not a single one.

The reason is that initially (or still?) Google had requirements for handset makers if they wished to include the Google apps in their phone like: handset needs to include 3G, GPS, Bluetooth support (and probably more).

All recent phones will have bluetooth, so if you really find one without: It's probably outdated and runs on an old version of Android.

You might try an Amazon Kindle (that's really stripped down), but that has also no Google Apps, no GPS and no GSM and is a tablet.

Last resort if you really want to get one without bluetooth support: Get a model with good CyanogenMod support and build your own ROM with bluetooth patched out (Seems like you do development, so you might consider this).

EDIT:

Here's the Android Compatibility Definition Document

You might find more information here why every device nowadays has Bluetooth integrated: Due to the Oracle America vs. Google lawsuit some of the contracts ("Mobile Application Distribution Agreement") between Google and handset manufacturers HTC and Samsung were published:

http://www.benedelman.org/docs/samsung-mada.pdf

http://www.benedelman.org/docs/htc-mada.pdf

# Answer
> 3 votes
Due to no licensing cost and cheap hardware, its difficult to find a smartphone without bluetooth.

To test your application, you can disable bluetooth hardware in any rooted Android device. To do this, use Hardware Disabler app. But, make sure you have selected correct driver of bluetooth to disable. To find correct driver of bluetooth, you can either Google or find it using Android Sensor Box app.

# Answer
> 0 votes
You should try the phone finder @GSMArena. These search results give you a list of candidates with Android and no Bluetooth -- according to the data available at that site. I'm not 100% sure if some of the results are just listed because it is unknown to the site whether they support Bluetooth or not, but it at least gives you a good start.

---
Tags: bluetooth
---


# Question
Title: Cannot get Android 4.0 NFS client to connect to my NFSv4 Ubuntu server: "no such device"
I'm using GLaDOS kernel which includes the NFS modules (and I'm using the Codename Android ICS 4.0.3 ROM) on a GSM Galaxy Nexus. I'm trying to connect to my NFSv4 server (Ubuntu 11.10). My other clients (e.g., Ubuntu 11.04 laptop) can connect over the same LAN network, but my Galaxy Nexus will not connect.

In the Android terminal (BTEP), in su mode, I'm entering these commands:

```
insmod sunrpc.ko
insmod lockd.ko
insmod nfs.ko

```

lsmod shows the modules loaded:

```
nfs 104232 0 - Live 0xbf036000
lockd 42336 1 nfs, Live 0xbf028000
sunrpc 150792 3 nfs,lockd, Live 0xbf000000

```

My mount command (In the terminal, in su mode) is:

```
mount -t nfs4 nfserver:/shared1 /sdcard/nfs/shared1

```

The error is "no such device". (See edit below - I have a new error now.) It returns immediately, so I'm fairly certain this is entirely a client side error. It is probably not even trying to contact the server.

Usually the "no such device" error means that the nfs kernel module is not loaded. However, in my case, it is indeed loaded, as shown above. Can anyone help?

**EDIT**: so now I believe that the BusyBox mount command does not support NFSv4. Unfortunately, my server only supports NFSv4. So I borrowed a NAS device which supports NFS v3 and set that up.

Now the error is "invalid argument". In fact, the BusyBox mount command gives the same "invalid argument" error on all mounts using either "-t nfs" or "-t cifs". That leads me to conclude (based on quote below) that there is a version mismatch between BusyBox and my Linux kernel.

* busybox: 1.19.3-Stericson
* linux: 3.0.8-GLaDOS-V1-15

My conclusion is supported by this link where he says:

```
This is how I interpret it.
kernel is newer - recompile mount command (i.e. busybox etc)
Make sure that it uses the headers from the kernel it will run with.

```

Finally, trying a regular NFS v3 server (the NAS device) with Mount Manager does not succeed with either NFS or CIFS. But AndSMB will connect to the NAS using CIFS.

# Answer
> 1 votes
I can tell you that is is Not the `mount` command, it is the nfs.ko module that probably doesn't support NFS4.

When you call `mount -t nfs ...` the mount command is going to look for the filesystem type of nfs. If it doesn't find it, then you get the `no such device` error. If it does find it, it basically hands off the "mount" to the module.

For the mount manager issue, if you do not have a cifs module, cifs will not work with mount manager. AndSMB uses its own cifs/samaba implementation, and that is fine, but in order to accomplish something that allows any application to access the mounted share, it has to be cifs.ko module. I have to do some more looking in to the nfs issue you are still having.

# Answer
> 0 votes
might not be what you want but i do this

busybox mount -o rw,intr,soft,nolock,nfsvers=2 192.168.0.7:/mnt/HD/HD\_a2 /mnt/sdcard/nfs

# Answer
> 0 votes
You have to write the mount command using `-t nfs ... nfsvers=4`

---
Tags: 4.0-ice-cream-sandwich, mount
---


# Question
Title: Open Web Page in Browser (not on SD card)
My question is similar to this one, but my HTML file and resources are not on an SD card, as my phone does not accept SD cards. It is currently at `file:///Download/AnotherFolder/here.html`. I have resources like images and javascript in a subfolder. How can I run this is in a browser, preferably Chrome? Just entering `file:///Download/AnotherFolder/here.html` does not work in Chrome.

# Answer
Is it in the internal SD card? Try `file://mnt/sdcard/Download/AnotherFolder/here.html`.
> 0 votes

# Answer
Even if your device has no SD card slot, there is an internal SD and memory hard coded into your device. So the path to your html file would be something similar to `file:///mnt/sdcard/dir.....` or `file:///storage/sdcard0/dir......` You can find it using a file manager app.
> 0 votes

---
Tags: 4.2-jelly-bean, browser, internal-storage, chrome-for-android, html
---


# Question
Title: Tethering options for the laptop and the phone
I have a rooted Samsung Galaxy S3.

I am about to go abroad and will need to connect my laptop to the Internet without having someone come and install a DSL or cable router (as the waiting time to install these is quite long I would be gone before the internet technicians drop by).

So what I have decided is to purchase a SIM card and connect my laptop to my android phone to do internet browsing. My understanding is that with tethering I can transform this phone into a router or wireless hotspot.

1. What are tethering options (settings or apps) for this phone?
2. Is it better to connect the PC to the phone wirelessly, via a USB cable to use tethering, or via Bluetooth tethering? *In terms of speed, I guess Wi-Fi tethering would be superior here.*

# Answer
> 1 votes
In my experience, bluetooth tethering (using Bluetooth Garden) has been problematic. It disconnects too often, or can't open certain sites.

USB tethering (via ClockworkMod Tether) was OK. This way, my phone would be charging while providing internet to my laptop. Downside is I needed to install a program (not an issue, because the program is safe) on my laptop. Another downside is I couldn't tether another device (like a tablet) to the phone.

Turning my phone into a hotspot, was a better choice. I could surf with little issues. I could connect my tablet or laptop to the phone via WiFi. However, this drained my battery quickly. I'd occasionally fix this by plugging my phone to an outlet with a charger.

# Answer
> 1 votes
I use all 3 methods and prefer USB tethering if possible.

Some notes on each:

**USB tethering**

* Exclusive for one device (there's only 1 cable)
* charges the phone
* Safe (network is not exposed wirelessly)
* No driver needed (recent Macs/Win/Linux)
* Best speed and latency (USB 2.0 has 480MBit/s)
* Tethers any active connection on the phone (wifi, 3G)

**Wifi tethering**

* more than one client at once possible
* Wifi chip may draw extra power in this mode
* Easy and well known setup on clients
* No strings attached :-)

**Bluetooth tethering**

* Doesn't draw extra power when enabled
* Can be enabled 24/7
* Capps speed at respective BT speed (2MBit?)
* It's really OK (speedwise) for surfing

I tether my PC via USB (most of the time to a wifi network\], my tablet tethers via BT primarily, but I switch to wifi as needed too. I use this app to automatically enable BT tethering on my Nexus phone. The "BT tethering always on" is very cool when I'm on a train and use my tablet: No need to enable (and remembering to afterwards disable) wifi tethering, the phone just stays in my pocket.

---
Tags: tethering, wifi-tethering, usb-tethering, bluetooth-tethering
---


# Question
Title: GPS Battery Drain -- LocationManagerService
EDIT 3: Someone pointed me in the right direction on another forum. There was a bug with HD Widgets that rolled out yesterday. HD Widgets Bug

As of yesterday I am getting a 35%/hour battery drain. I have not installed any new apps that would have caused this, this literally came out of nowhere. I noticed my phone was getting extremely warm in my pocket, pulled it out and say my battery was almost completely discharged and went in to look at what caused the battery to drain so fast. Top app on the stock Android battery usage settings was Flixter. I thought maybe something was wrong with the app, FC'd it and put my phone away. This morning I took my phone off the charger (100%) put it in my pocket on my way to work and again my pocket got nice and warm. Pulled it out and saw that I was already at 81% battery after about 40 minutes of driving. Again I pulled up the battery settings and saw Maps was the number one culprit this time.

If I use an app that needs GPS it works fine, can lock on to location quickly, etc, but I am getting a huge battery drain all the time. Using Better Battery Stats under partial wakelocks my top two drainers are "NLP PendingIntent client in com.google.android.googlequicksearchbox" (Maps) and "LocationManagerService".

Anyone have any idea what I could try? Been off the charger for an hour and already at 60%.

EDIT: I have rebooted the phone several times.

EDIT2: Just realized that when my phone is connected to WiFi the drain is much less than on network data. Not sure if it's related, or just the extra battery required to constantly do a location fix over network data. Just more information, if it helps.

# Answer
> 0 votes
Unfortunately there was a rogue update from HD Widgets that caused this: HD Widgets Bug I have emailed the developer and hopefully they can update soon. This was insane how debilitating this was to my phone.

# Answer
> 2 votes
## Short answer:

Simply reboot the device. I've had that on multiple devices already, a reboot always cured this.

## Explanation:

The real culprit is not the *LocationManagerService* itself, but the way how is dealt with it. In my answer to the question How to deal with (orphaned) WakeLocks? you find a section called *What if it is the Android System itself?*, which explains this to a degree (and offers a link to further information):

An app might have requested location updates with a frequency of 0 seconds, thus keeping the device busy. Instead of requesting a "partial wakelock" (with an appropriate auto-timeout), it might have requested a permanent one (which it needs to release explicitly). If now this app crashed, the wakelock gets orphaned, the request for location updates remains, and nothing (but a reboot) can solve this.

This is just a raw description and probably not 100% technically perfect -- but I tried to put it into "laymen's words" to make it easier to understand. If somebody wants to put the details into "technically perfect terms", feel free to do so :)

# Answer
> 0 votes
you might also want to look under Google play to make sure your apps are not set to automatically update. I had a friend that did this for every app on their phone and would suck the battery life like crazy BC especially if the service wasn't great was constantly trying to update the apps.

---
Tags: battery-life, gps, 4.2-jelly-bean
---


title: Does Android 2 support swap space?

text:
# Question
Title: Does Android 2 support swap space?
With Android 2.3 being Linux-based, can Android 2.3 use a swap partition without being rooted?

# Answer
As using swap is a system-wide thing (even on Linux/Unix, you need to be root in order to activate/deactivate swap), this cannot be done without having root access to your device.

If your device is rooted, however, there are several apps available to help you manage swap space. You might want to take a look at e.g. Swapper 2 (for Root users) (free) or ROEHSOFT RAM-EXPANDER (SWAP) (paid, and not really cheap). Both seem to have quite good reputation. Of course there are several other solutions available as well.
> 1 votes

---
Tags: 2.3-gingerbread, linux, kernel, swap
---


title: Cannot Factory Reset after Encrypting

text:
# Question
Title: Cannot Factory Reset after Encrypting
I encrypted my phone but now want it not encrypted so have to factory reset. However, if I try to do this from the CWM Recovery it says

```
-- Wiping data...
Formatting /data...
Error mounting /data!
Skipping format...
Formatting /cache...
Formatting /sd-ext...
Formatting /sdcard/.android_secure...
Error mounting /sdcard/.android_secure!
Skipping format...
Data wipe complete.

```

When I try to factory reset from the normal GUI it doesn't give me an error but finishes very very quickly and hasn't worked (presumably the output above has happened in the logs).

What can I do?

# Answer
> 2 votes
I have also encrypted the `/data` partition (on my Samsung I9300) and wanted to reset it for an upgrade. This failed with the error you mentioned, `/tmp/recovery.log` contains:

```
ClockworkMod Recovery v6.0.3.2
recovery filesystem table
=========================
  0 /tmp ramdisk (null) (null) 0
  1 /efs ext4 /dev/block/mmcblk0p3 (null) 0
  2 /boot emmc /dev/block/mmcblk0p5 (null) 0
  3 /recovery emmc /dev/block/mmcblk0p6 (null) 0
  4 /cache ext4 /dev/block/mmcblk0p8 (null) 0
  5 /system ext4 /dev/block/mmcblk0p9 (null) 0
  6 /data ext4 /dev/block/mmcblk0p12 (null) -16384
  7 /preload ext4 /dev/block/mmcblk0p10 (null) 0
  8 /modem emmc /dev/block/mmcblk0p7 (null) 0
  9 /sdcard datamedia /dev/null (null) 0
  10 /external_sd ext4 /dev/block/mmcblk1p1 (null) 0
<snip>
-- Wiping data...
Formatting /data...
I:Formatting unknown device.
W:failed to mount /dev/block/mmcblk0p12 (Invalid argument)
Error mounting /data!
Skipping format...

```

**DISCLAIMER**: I am not responsibility for anything that goes wrong, including (but not limited to) user error.

If you wish to wipe the `/data` partition completely (including media like photos), follow the below instructions:

1. Boot into recovery.
2. Run `adb shell` in a terminal (Linux) or Command Prompt ("CMD", Windows). After a few seconds, you should see a line containing `~ #`.
3. **WARNING**. Triple-check the command that you are entering here. White space and capitalization are important. Make any mistake here and you may accidentally wipe your whole flash memory including recovery images.
**NOTE**: if you want to encrypt your partition later, you have to leave 16KiB unallocated space on the end of the partition.
In the `adb shell`, run the command `mke2fs -t ext4 /dev/block/mmcblk0p12`. Substitute `/dev/block/mmcblk0p12` and `ext4` according to the recovery filesystem table (for `/data`). Output when running the command:

```
~ # mke2fs -t ext4 /dev/block/mmcblk0p12
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
755904 inodes, 3022848 blocks
151142 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=3095396352
93 block groups
32768 blocks per group, 32768 fragments per group
8128 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 34 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

```
4. (Optional) Install new firmware (E.g. CM 10.1).
5. Reboot.
6. (Optional) In order to encrypt the partition while clearing your whole data partition, run `vdc cryptfs enablecrypto wipe PIN_OR_PASSWORD` (before Android 5.0) or `vdc cryptfs enablecrypto wipe password PASSWORD_IN_HEX` (since Android 5.0, see this post for details).
7. Reconfigure device, choose language, enter name, install apps, etc.

---

Technical details below.

The *factory reset* menu item activates `erase_volume("/data")` in `recovery.c` which calls `format_volume("/data")`.

`format_volume` is defined in `roots.c`:

```
int format_volume(const char* volume) {
    // <snip>
    // check to see if /data is being formatted, and if it is /data/media
    // Note: the /sdcard check is redundant probably, just being safe
    if (strstr(volume, "/data") == volume && is_data_media() && !handle_data_media) {
        return format_unknown_device(NULL, volume, NULL);
    }

```

Since the volume name indeed starts with `/data`, and the recovery filesystem table contains an entry for type `datamedia` *and* `handle_data_media` is initially zero, format `format_unknown_device` is called. That function is defined in `extendedcommands.c` as follows:

```
int format_unknown_device(const char *device, const char* path, const char *fs_type)
{
    LOGI("Formatting unknown device.\n");

    if (fs_type != NULL && get_flash_type(fs_type) != UNSUPPORTED)
        return erase_raw_partition(fs_type, device);

    // if this is SDEXT:, don't worry about it if it does not exist.
    if (0 == strcmp(path, "/sd-ext"))
    {
        // <snip>
    }

    if (NULL != fs_type) {
        // <snip>
    }

    if (0 != ensure_path_mounted(path))
    {
        ui_print("Error mounting %s!\n", path);
        ui_print("Skipping format...\n");
        return 0;
    }

```

`fs_type` is `NULL` and the `path` is `/data`. That means that the code path ends up at `ensure_path_mounted(path)` which is the place where this function fails. Looking at the name, `ensure_path_mounted` attempts to mount the partition by name which of course fails since the encrypted partition is not supported in CWM. Therefore, CWM refuses to "format" the partition (actually, all it does is erasing all files except for `/data/media` after mounting).

Therefore the goal is to format `/data` with ext4 (see recovery filesystem table) or mount the encrypted data partition somehow. I could not easily find the tools for mounting encrypted partitions, so I decided to go the easy way and just format the partition.

---
Tags: factory-reset, encryption
---


# Question
Title: Is it important to have an anti-virus application running on your phone or does the carrier protect it?
I use my phone like I do the computer. Shopping online with a credit card etc. Surfing unknown sites... Does my phone require an anti-virus application to protect the internal drive of my phone? Can it be damaged by a virus like on a computer?

OS: Android 4.1.1 Phone: Samsung Galaxy S3

# Answer
Android is an OS built using Linux, which is fairly resistant to viruses. Hence primarily there is no need to have an antivirus software in your mobile device.

As in your case, if you are browsing unknown sites, there is a chance that you will be attacked my malware and adware (which are very truoblesome programs and which *cannot harm your moblie*, but show ads, popups, etc.)

Also these malwares tend to come from the apps installed from unknown sources. Always install apps from the Play Store itself and you will be safe from the majority of malwares.

As a precaution, do not use untrusted sites and never enter your financial details into sites that do not have secured connections (`https`).

If you have to install apps from unknown sources, it is better to have a antivirus software, just to be safe. But keep in mind that any of those software cannot do much in protecting you with the transactions entered into with unsecured sites other that showing a warning.

Oher than that, the need for an antivirus software is very remote.
> 2 votes

# Answer
First off: no, your carrier does nothing to protect you from malware. It's entirely up to you. But you have a tool to help you keep your phone safe: Android's permission model. When you install an app on your Android phone, it tells you before you install it what it can do to and with your phone. It's up to you to decide whether you trust the app with that ability.

For example, you might go on Google Play and download a game that looks a little like Angry Birds, but it wants permission to directly call numbers. If you install it anyway, you may be surprised a month later to see it has been repeatedly calling premium-rate numbers behind your back, costing you hundreds of pounds. Even an app that wants internet access and the ability to read your SD card might be looking for your 'private' photos so that its owner can sell them on the internet: or if it wants to "take photos and videos", it might use that to take its own when you least expect.

The threat posed by malware on Android is completely different to on PC. "Damaging" your storage is not an issue, but there are more harmful things that malware can do, to invade your privacy, steal your money, or attack your friends and other contacts.

The question is trust, in two ways. You have to decide whether to trust each app you install with the permissions it asks for. Whether you need an anti-virus is down to whether you trust yourself (and everyone else who uses your phone or tablet) to make that decision.

If you're the kind of person who clicks on emails that claim to be from your bank, or on those banner ads that offer you a free download to speed up your internet connection, then you need an anti-virus. If you're the kind of person who doesn't even download an app from a reputable source without checking out reviews on independent sites, then it's probably not necessary.

Before you decide, bear in mind that most anti-virus products also offer browsing protection: they try to detect phishing sites and other harmful websites. App downloads aren't the only source of malware. And if a vulnerability is discovered, which would allow apps to bypass the permission system (such as the `/dev/exynos_mem` bug in the ), they'll even protect you from malware that exploits that bug.
> 2 votes

---
Tags: samsung-galaxy-s-3, security, antivirus
---


# Question
Title: Bluetooth option not found on an ICS device
I have Android 4.0.4 (ICS) and the system report app says that it supports bluetooth. However this isn't shown in the settings for wifi etc. Is there any way of turning bluetooth on?

# Answer
> 0 votes
So, if you go to "Settings", the first section should be "Wireless & Networks". Under that, I have "Wi-Fi" (ON/OFF), "Bluetooth" (ON/OFF) followed by Data Usage. How does that look on your phone? If Bluetooth is not there, I don't think the ROM you are running recognizes your ability to run Bluetooth (if you do indeed have that ability).

What device and what ROM are you running?

---
Tags: 4.0-ice-cream-sandwich, bluetooth
---


title: Do away with/Hide Emulator Keyboard?

text:
# Question
Title: Do away with/Hide Emulator Keyboard?
I learnt from here the various keyboard commands for an emulator. I therefore thought one could afford to do away with/hide the on-screen keyboard that has the DPad buttons, the home, menu and back buttons; and have the emulator occupy less screen space. For emulators that are not snapshot-enabled, one can do this!

However for snapshot-enabled emulators, I find that whatever hardware config I set it's not happening. By me, the hardware configs that matter are:

1. Keyboard Support
2. Hardware back and home buttons

For each of the above you either don't add them to the config, or add them and set value 'yes' or add them and set value 'no'. So far none of the configs I tried so far worked. By my tries, at least, it is found that no matter what I do with regard to the Keyboard Support configuration or Hardware Back/home buttons (independently of each other) - yes, no or don't add - the keyboard remains there. I didn't find a hot-key to hide the keyboard either.

I thought therefore that it's better to post a question on this here, than try booting with umpteen different hardware configurations (it'll be a precious 2-3 minutes spent on each configuration trial!)

Thanks in advance,

P.S. I use Gingerbread.

# Answer
> 0 votes
I learnt from here (in the question, not the answer) that if one sets a custom resolution in pixels rather than selecting from the built-in ones, then the emulator does **not** display the skin with the emulator controls.

Below is the configuration I therefore set to solve my problem, at the same time not creating new problems:

I just estimated the dimensions in pixels of a WQVGA size instrument and set that as my custom resolution.

---
Tags: keyboard, android-emulator
---


# Question
Title: My Galaxy Nexus detects wifi signal(at home) but can't connect to it
My Galaxy Nexus detects wifi signal(at home) but can't connect to it.

I cant connect to wifi. The wifi icon doesnt appear beside the time on the upper right of the screen. When I try to access facebook it says connection lost. But wifi works properly well on the laptop.

I've switched the ON/OFF , restarted the galaxy Nexus and still nothing.

Please help.

# Answer
A few things to try:

* Ensure that the Wi-Fi network you are connecting to is an infrastructure mode (router) and not ad-hoc (shared connection via another phone or laptop) as Android doesn't support ad-hoc mode out of the box.
* Disable the `Avoid poor connections` option under Settings -\> Wi-Fi -\> Menu -\> Advanced.
* On the same screen, switch the `W-Fi frequency band` from default "Auto" option to the one your router uses (2.4 GHz Vs. 5 GHz).
* Check your router settings to ensure it's not filtering by MAC address. If it is - either disable that option, or add your phone's MAC address to the list of allowed devices.
* Check the settings on the Wifi network on the Settings -\> Wi-Fi screen. Long-press on the network you are trying to connect to, select `Modify network`, and check that the settings for Security are correct.
* Try re-connecting fresh. On the Settings -\> Wi-Fi screen long-press the network you are trying to connect to and select `Forget network` option. Try re-connecting to it.
> 3 votes

# Answer
I had the same problem and then remembered that the new router was set to only accept connections by MAC address. When I added my Nexus one MAC address to the new router, it connected perfectly.
> -1 votes

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


# Question
Title: Ask for help according to samsung Galaxy Gio GT s5660
I am honestly ask any professional who have an idea about Samsung. I forgot my password i made by my own. as a result, i cant do anything on my phone right now. i can't get through the screen. because I've forgotten my password. could anyone help please? Thanks for your helps

# Answer
Insert a wrong password again and again (maybe trying to remember the correct one). At a certain point (after several tries), you will be asked something like "Forgot your password?" and then you should be able to unlock the phone with your google account.

Of course, you must have had associate your google account with your phone.

This way works on some phones, I hope it works on yours too.
> 0 votes

---
Tags: locked-out, samsung-galaxy-gio
---


# Question
Title: Why are some contacts missing in some views after an android update followed by restoring the contacts?
Here is what happened: I upgraded my android version (to 2.1 on an Xperia X10 ), restored my contacts using the native apps. Some contacts are missing, but when I look at speed dial I can see some of the contacts. For example, I have contacts ABC and AYH: I see only AYH in phonebook but when I look at speed dials I see ABC also. I don t understand why is this happening. Am I, by any chance, not using an option to display all my contacts in phone book?

# Answer
> 2 votes
Go into your contacts Tab.

Press Menu \> Display Options

You can then select 'Display only contacts with phones'

Also There is a list of accounts with 'Choose contacts to display' above it.

If you select each one of these you can choose which groups to hide or show, this may be were the numbers are being hidden.

---

Also within your text messaging app, you can press:

Menu \> Settings and there is a setting that says 'Only mobile numbers'

deselect this as sometimes it hides numbers thinking they're not phone numbers when they are!

# Answer
> 0 votes
I finally found the solution for this problem. Follow these steps:

1. Backup all your contacts
2. open AppManager and goto "ALL" tab
3. search for this app "CONTACTS STORAGE" and clear its data
4. reboot device
5. restore your contacts...

Done.

---
Tags: contacts, updates, restore
---


title: Why can't I create a hard link?

text:
# Question
Title: Why can't I create a hard link?
I wanted to create a hardlink but I can't. I'm rooted and I want to offload my internal memory and move the dalvik-cache to my sd-card.

# Answer
> 1 votes
You cannot create hard links across file systems, only soft links.

# Answer
> 1 votes
You can only hardlink inside the same partition/filesystem. It might help if you edit your question and include the steps you took (i.e. the commands you tried to execute). But from the phrasing it's quite clear you want to re-locate e.g. `/data/dalvik-cache` (located on the `/data` partition) to your SDCard (complete different medium). This cannot be done with hard-links.

I'd recomment you take a look at Root # All Data2SD card., Link2SD, and S2E, which help you to offload a bunch of things. For more details, please also refer to our app2sd tag-wiki, which gives you a short description on all these methods.

---
Tags: 2.3-gingerbread, internal-storage
---


# Question
Title: Samsung Fascinate - Custom recovery without USB
I have a Samsung Fascinate that has a faulty USB connection. No computer / cable connection will recognize that there is a USB connection, including Windows, Mac, Linux, and using ADB and "lsusb".

But the phone is rooted. Plain and simple, is there ANY way to flash a custom recovery without USB?

I get this when I try to flash Clockworkmod through the app or apply update.zip:

```
--Install from package...
Finding update package...
Opening update package...
Verifying update package...
E: failed to verify whole-file signature
E: signature verification failed
Installation aborted

```

# Answer
> 0 votes
**Recovery SD**

So I found a pretty good tutorial that shows you how to make a bootable CWM recovery. It was written for the Nook Color, but I'll help you through it.

Source: http://androidforums.com/nookcolor-all-things-root/327798-guide-how-make-bootable-cwm-clockworkmod-twrp-bootable-sd-card-06-04-2013-a.html

1. You need an SD card obviously, the guide says 1 GB is good enough. To be honest I'm not even sure if you can buy a 1 GB SD card at a store anymore (you can most defiantly get them online but don't waste your money). Just go to the store and pick out the cheapest 4 or 8 GB SD card, they are pretty cheap these days. You can get them online if you want to save a couple bucks but I don't think it's worth the wait.
2. Download a bootable image file. This is what your Android device is actually going to boot up onto. Make sure you find one that matches your device.
3. You need software to burn an image to an SD card. If you have Mac OSX or Ubuntu you are in luck because those systems come with software to write images. If you are a Windows user, you can just download some software. If you don't know how to do this, just check the tutorial, their instructions are pretty good.

If you did all of the steps correctly, you should be able to plug the SD card into the device and it should boot from SD automatically.

**adb over wifi**

I'm not sure if this will help you, but maybe it will if you couldn't get the Recovery SD card working. You can use adb over wifi to talk to your Android device.

Here is a guide to get you connected to adb over wifi:

from there you can push a custom ROM to install over your current one (which could restore your USB connectivity).

---
Tags: rom-flashing, samsung-fascinate
---