# Question
Title: Is there an FTP server which supports resuming failed downloads?
I am looking for an FTP server for my android phone which will allow me to resume a download that has failed. In other words it has to support the `REST` command. Currently I am using (the otherwise excellent) swiFTP, but it doesn't have this feature. I also tried File Expert.

# Answer
Or, if not FTP, and not `rsync`/`scp`, but an SSH server (like DroidSSHd, a free/libre SSH server which I could find that would work on my non-rooted Galaxy S with Android 2.2), you could use the simple script `rpush-into` to continue an interrupted transfer.

In rpush-\* scripts, I've implemented the file-transfer through SSH with the help of only the basic `cat` and `ls` on the remote side. So that it can be used even if the SSH server on Android doesn't provide `scp`, `sftp`, or `rsync`.
> 1 votes

---
Tags: file-transfer, ftp
---


# Question
Title: Receive VoIP call via Google Voice => IPKall => Sip2Sip => Android?
I'm trying to setup VoIP calling to/from my Android phone.

I'm currently working on the incoming call part of the equation. To try to isolate the various parts, I started with the "IPKall =\> Sip2Sip" part of the equation, and confirmed that calling the IPKall phone number results in a recorded incoming call on Sip2Sip.

I then added "Sip2Sip" as a SIP provider on my Android phone, and found that dialing the IPKall number results in the Android phone ringing.

However, *and this is where I need help*, even though it is ringing, when I go to answer the call, I am unable to pick up the call. Any ideas on how to fix this?

Version of Android is 2.3 Gingerbread.

# Answer
You can use sipdroid, released under GNU GPL v3, also available from Google Play Store and save yourself a lot of trouble.

> sipdroid is a free SIP/VoIP client for Android.

As for a SIP provider, Sipgate for example gives good results for both outgoing and incoming calls.

**From version 2.0**

> For Google™ Voice users, Sipdroid can now create a new, free PBXes account that is automatically linked to an existing Google™ Voice account. The new feature requires Android 2.0, or above, and Google's app connected to your Voice account.

Download the current version Sipdroid-2.7.apk available since May 21, 2012.

SHA1 Checksum: a261e14ba592c8a86e8d0f07374108c6d768e1d4
> 2 votes

# Answer
You can also use Grove IP or Talkatone.

**Why**

Because it transparently uses your Google Voice account. You don't have to bother with any SIP provider or configuring any other setting. Just give it your Google voice user name and password(Two factor authentication recommended) and you're good to go.

Grove IP comes with lite and paid version. Paid version is $.499 atm.

Talkatone comes with free and subscription based model.

However both worlds flawlessly on free version with ad support.
> 0 votes

---
Tags: voip, sip
---


# Question
Title: How active should I expect my Jelly Bean system log file to be?
When using aLogcat to view my Android log files, I find very few messages showing up in any of the views.

Selecting Verbose level and no filter, I see that *Main* contains mostly garbage collection debug and info messages, but I rarely more than about 20 messages every minute. *Events* mostly contains info log messages from alogcat itself, at about the same rate, while *Radio* remains steadfastly empty.

Being relatively new to Android, I wonder whether this is normal. Is this rate typical of the main system log file on Jelly Bean?

# Answer
> 5 votes
Not very active if you use apps like aLogcat. The permissions system regarding to logs was changed with Jelly Bean: The permission to read logs "READ\_LOGS" is now systemOrSignature, which means that an app that is not signed with the ROM/system key can only view its own log. You can still view the full android log with `adb logcat` from the SDK.

I think that this was a long overdue change in the log system.

---
Tags: 4.1-jelly-bean, logging
---


# Question
Title: Problems accessing message logs on Jelly Bean with aLogcat
# Summary

I have been having problems accessing the K9 log messages using aLogcat, see below for more details. What I would like to know is:

* Why are no log messages from K9 appearing in the aLogcat log viewer?
* Does anyone have any suggestions as to how I can see the full text of the errors which are occurring when trying to sync my K9 folders?
* Could something have changed in Jelly Bean which lead K9's logging to stop working?
* Since there seem to be remarkably few messages being shown by aLogcat in general, has something has changed in Jelly Bean which could mean that it is no longer able to access all messages?

# Detail

I have recently been having connection problems with K9. My folders fail to sync and the folder list ends up full of socket errors (`libcore.io.ErrnoException:`) or ssl errors (`javex.net.ssl.SSLException:`) etc. where the *last checked time* should be. I get different messages depending on which problem is occurring at the time, but I can't see the full text of the error message, so it's difficult to guess what the cause might be.

Thinking that the log files might contain more information, I followed the instructions at Recording a debug log, enabled debug logging in K9, installed aLogcat and tried to look at the logs. Sadly, whichever log buffer I select (*Main*, *Events* or *Radio*), there appear to be no messages from K9.

If I add the suggested `(k9|AndroidRuntime)` regex filter then I see nothing in *any* of the logs. If I remove it then *Main* contains mostly garbage collection messages, *Events* seem to contain mostly messages from aLogcat itself and I haven't seen a log message in *Radio* yet.

If it makes any difference, I'm using a Nexus 7, but I would have thought that logging would have been to a standard location which wouldn't change between android versions.

# Answer
> Does anyone have any suggestions as to how I can see the full text of the errors which are occurring when trying to sync my K9 folders?

It seems that there is no way to see these log messages **on the device** without **root access**, but if you do have root access, there are a couple of options, either **grant the required permissions** to *aLogcat* or consider using a horrible hackTM to view them directly.

## View the log files on your PC or workstation via `adb`

If you can connect your Android device to a PC or workstation, then you can access the logs via the `adb` command.

To do this on Windows, first you will need to install the Android SDK (which will require the Java SE SDK) and add the `android-sdk\tools` and `android-sdk\platform-tools` to the system path. Then enable USB debugging on your Nexus 7, plug it in via USB, and install the *Android Composite ADB Interface* from `android-sdk\extras\google\usb_driver` (I had to force Windows XP to look here, it wouldn't find the drivers on it's own).

For details of how to get `adb` up and running without the full Android SDK install, or on Mac or Linux machines, see Izzy's excellent answer to Is there a minimal installation of ADB?

Then you can open a shell (i.e. a `cmd` window) and run the command:

```
adb logcat k9:V *:S AndroidRuntime:E

```
* I have confirmed that this works on my non-rooted Nexus 7.

## Grant permissions to *aLogcat*

If you have **root access**, you could consider granting the `READ_LOGS` permission to *aLogcat*, as suggested in this post aLogcat/CatLog/Lumberjack not working? Do this ... on the xda-developers forum:

```
pm grant <pkg> android.permission.READ_LOGS

```

To grant this permission to `alogcat` or `alogcat.donate`, you would use one of the following commands, depending on whether you are running the donate version or not:

```
pm grant org.jtb.alogcat.donate android.permission.READ_LOGS
pm grant org.jtb.alogcat android.permission.READ_LOGS

```

According to one post on *android-developers* and the ticket, the permission grant survives reboot and update, but not uninstall/reinstall.

Sadly since this requires root access, whether I run this on the device or on my PC (prefixed by `adb shell`) I just get the error:

```
Neither user 12345 nor current process has android.permission.GRANT_REVOKE_PERMISSION

```
* I cannot confirm that this works, since my Nexus 7 has not been rooted.

## Consider using a horrible hackTM

If you have **root access**, you could consider making `logcat` **setuid root** and running logcat from the device shell, as suggested in this answer to my How can I access android log files on my Nexus 7 without root access?question:

```
chmod 04755 /system/bin/logcat
logcat k9:V *:S AndroidRuntime:E

```
* Again, I cannot confirm that this works and I would probably only use it as a **last resort**, given the security implications.

---

> Why are no log messages from K9 appearing in the *aLogcat* log viewer?
>
> Could something have changed in Jelly Bean which lead K9's logging to stop working?
>
> Since there seem to be remarkably few messages being shown by *aLogcat* in general, has something has changed in Jelly Bean which could mean that it is no longer able to access all messages?

This appears to be a change in Jelly Bean which affects all applications which may try to read the log files.

Apparently READ\_LOGS permission is not granted to 3rd party applications in Jelly Bean. Since this link seems to be unreliable:

> Today I've tested my application on newest (api 16) emulator before releasing it to Google Play. It turned out that Android now refuses to grant this permission to 3rd party applications. This is weird because I've looked through all Jelly Bean's documented changes and couldn't find anything that mentions READ\_LOGS permission.

and later

> The protectionLevel for READ\_LOGS is now "signature|system|development". The new pipe syntax for protectionLevel is also undocumented (see http://code.google.com/p/android/issues/detail?id=34785).

My suspicion is that *aLogcat* is only seeing messages generated by itself and it's vm.

For further information, see Flow answer's to my question How active should I expect my Jelly Bean system log file to be?
> 25 votes

# Answer
I've seen this behaviour in K9 when my mail server updated it's SSL certificates. The fix was to long-press the account, select `Account settings -> Fetching mail -> Incoming server` and just hit `Next` through the pages to confirm your settings until you get the popup about the certificate (this might not appear if everything is OK with the certificate, mine had a wrong vhost). Confirm the certificate and just go through the rest of the settings and you account should start to work.
> 0 votes

---
Tags: 4.1-jelly-bean, logging, nexus-7, k9-mail
---


# Question
Title: Adding web shortcuts with icons similar to chrome's new tab thumbnails
I have a Droid RAZR MAXX, and there are a few shortcuts to web pages on the screen. They have been there since before the phone got ICS.

Under GB one could long tap the screen, add a shortcut, and choose a web site rather than an app. This created a shortcut with the name of the site, and the icon looked like a screen capture of the URL that the shortcut targets (like the chrome new tab page).

However in ICS I can't see way to do it, I can add a bookmark to the home screen through the browser, but the icon is different. I tried adding a bookmark through each browser, chrome, default, firefox, opera, dolphin. None of them produce this icon.

Anyone know how to do it? Or is this something that Moto threw in to the software, but didn't keep in ICS? (Though in that case why do the old icons still work?).

# Answer
> 3 votes
Can't see how to get an individual bookmark with a thumbnail screenshot of the webpage, but there are a couple of similar things you can do with the default browser in ICS.

In the screenshot above the top row are bookmarks added to the home screen by going into the browser, opening the bookmarks list, long pressing on a bookmark and selecting "Add to Home Screen". These appear to be the using the site's "Favicon".

The next two rows are the "3x2 Bookmarks" widget, that just lists the contents of my browser's bookmarks folder. Add that by opening your apps list, selecting the Widgets tab at the top and then long pressing to drag the "3x2 Bookmarks" widget to a home screen. It then gives you a chance to pick a folder in your Bookmarks to show (you could create a new folder in bookmarks beforehand and fill that folder with only web pages that you want to show on your home screen).

# Answer
> 0 votes
You could also try Visual Bookmarks, although some users have found that it no longer works for them. YMMV.

---
Tags: 4.0-ice-cream-sandwich, home-screen-shortcuts, motorola-droid-razr, bookmarks
---


title: How to control my device from HTTP?

text:
# Question
Title: How to control my device from HTTP?
There is AirDroid, but it is

1. Focused on contacts/messages/files, not on settings
2. Too Web 2.0-ish, not easy to script

I want a simple tool to build my own solution with instead of mis-using some user-oriented application. It should listen some HTTP port and allow

* to turn on/off wifi,
* take photos,
* pause/resume music,
* adjust volume
* adjust brightness
* (and so on)

without any bells and whistles, so I can control the device using simple requests like `curl http://localhost:8080/wifi/on` or `curl http://localhost:8080/music/pause`.

/\* Actually I want good and easy android control from Linux command line tools, but remote HTTP control tools seem more likely to exist, so asking about them \*/

# Answer
The best solution if you're willing to write code is SL4A. This will give you the most flexibility. You could use the Python module with a lightweight web framework (like: bottle.py) or your favorite scripting language.

<sup> As a side note, get requests should not change state. Also make sure you implement some sort of security as this would make it possible for anyone to control your phone remotely. </sup>
> 1 votes

# Answer
GTalkSMS is worth a look (not HTTP but does also what you want, even easier accessible).

It's an open source XMPP bot (google code project) that you can add to your Google Talk friends list or communicate to with any XMPP client.

You need to find a suitable commandline/scriptable XMPP client for your solution yourself however (as the 'curl' replacement in your question), not sure what you like to use.

Here's an excerpt from the feature wiki on its Google Code project page:

> Further Commands
> send and receive files to/from the phone: "send", "ls"
> enable disable bluetooth: "bluetooth"
> \[...\]
> take a photo and send it via XMPP: "photo"
> \[...\]
> geolocalize your phone - it will send you google maps links: "where"
> \[...\]
> get help, using "help:all"
> 1 votes

---
Tags: remote-control
---


# Question
Title: How to install ClockworkMOD Recovery on Sony Xperia Neo V (MT11a)?
I have rooted my MT11a with UnlockRoot v2.4.2 and the "superuser" app has appeared. The tutorial said my phone should be requesting to upgrade 4.0.2.A.0.42 to another number ending in .62, but the Update Center says the phone is completely up to date. I should be getting the BusyBox *after* this update, but the update is not happening. Have I missed a step? The phone is working just fine. I downloaded the ROM Manager, and it is requesting to get "ClockworkMOD Recovery" in order to operate. All this I'm doing to get the cyanogen mod.

# Answer
> 2 votes
Probably the easiest way is to use x-Parts (formerly known as CWM Installer).

---
Tags: cyanogenmod, rooting, clockworkmod-recovery, rom-manager, sony-xperia-neo-v
---


title: Google Voice Number Displayed on Phone?

text:
# Question
Title: Google Voice Number Displayed on Phone?
I have Google Voice on my Android (4.0.4 Samsung Galaxy S3) and it is set to make all calls using GV (cause I want the user to see GV number on the caller ID). However I encounter this problem: the number that appears on my mobile phone (when dialing out using GV) is some unknown (random?) number, not the number that I'm calling. Say I'm calling 212-333-4444 it shows 617-234-1234. It is in fact calling the right number but what shows is the number that GV is using. The problem is that when I look at the log I can't see who was called nor can I try to recall that number.

# Answer
It appears this is a bug with the S3 phone.apk. The XDA thread doesn't have a solution, but there are some things to try...I just don't know if they'll actually fix the issue. You could try installing a replacement dialer. If you're rooted, you could try finding an alternative phone.apk (perhaps from the S2). Finally, a custom ROM built on AOSP (like Cyanogenmod) may not have this issue.
> 1 votes

---
Tags: google-voice
---


# Question
Title: Can any Android device be set to not auto power-off?
If I buy any no-name Android tablet from ebay etc, is there a chance it will not allow me to force it to stay on all the time? In other words, is "never auto sleep" a universal feature of any android device?

If not, how can I tell?

# Answer
> 3 votes
Check out the free StayAwake app

> Simple app to toggle a stay awake mode.
>
> enables stay awake,
>
> * always
> * if plugged in to AC/USB

---
Tags: screen, power-on, battery-life
---


# Question
Title: Is there a way to cache YouTube videos after playing them?
I have an HTC Desire, and the default YouTube app does not cache the video after it plays the first time. The second time you play, it downloads the same video a second time, but I would like to cache the video on the memory card.

Is there any way to do this with the default YouTube app? If not, is there a third-party app that can do something like this?

# Answer
> 2 votes
Google's YouTube app has an option to preload videos that are either in a channel you are subscribed to or that are in your "watch later" list. I haven't tested this but I think it will keep a video that you have preloaded cached for a while after you watched it for the first time.

# Answer
> 1 votes
I would think, that videos are not cached because of memory constraints on mobile devices.

Software developers have to design and implement software that works for the great majority of users. Perhaps adding an intelligent (device agnostic) cache function is not on the top of functionality they want to implement right now.

---
Tags: youtube, cache
---


# Question
Title: Using Android only with Outlook and not Google Calendar
When using Android ICS, can I use my phone without having my calendar and associated items going on Google Calendar but just synchronizing with Outlook (the desktop app) ? If yes, how may I do this ?

# Answer
Have a look at Sync Calendar. With the right settings I think it can accomplish what you want. If it's not what you're looking for you can try Outlook Mobile Calendar but it only has 3.5 (EDIT: 2) stars.
> 1 votes

---
Tags: sync, calendar, outlook
---


# Question
Title: Does 'poor' reception deplete the battery quicker?
In the area where I live I sometimes have trouble with reception. The Internet stops working for me or it takes time to load pages. The phone tries and tries to connect.

It seems to me that when this is happening it depletes the battery much more quickly. Is my observation correct?

# Answer
## Cell signal

To add to ce4's answer: You can check that for yourself. If you take a look at your battery stats (they are always at a little different place in the system menu: Sometimes in the main menu, other times under *phone info*), it lists the apps which used most of your battery. One of the highest consumers in there is most likely your display -- and close to it you'll find an item *cell standby* (sometimes called *phone standby*). This describes how much battery was used to "keep the signal". Check that in times of good reception versus those of bad reception and see how much it differs.

## Network stuff

This can even be "multiplied" if you have many apps running services to poll information from the net permanently -- like email apps using IMAP idle, or some social chat app keeping a push connection. It looks like the same is happening here: it tries hard to keep the connection, and thus pushes the cell radio further. Due to the bad reception, the connection gets slow, and those services keep longer "wake locks" (keeping the CPU alive to complete their task), which again eats battery.

## How to find out if your reception was good?

The system does in fact provide this information (at least from Android 2.3/Gingerbread on), in the very same battery statistics mentioned before. On top of the first page you find a small graph: tap on it, it brings up a bigger one.

The screenshots are in German, but you still can tell the details: In the first, you see the *cell standby* titled "Mobilfunk-Standby" right next to the Display, as said before. On top of that is mentioned "mini-graph". That tapped brings you to the page where you find the second image at the bottom. Here take a look at the first graph, titled *Telefonsignal* (*phone signal*). "The greener the cleaner": A bright green means "good reception" (the screenshot shows this at the begin and end, that is here: morning and evening -- so at home I have good reception). Getting yellowish: "Moderate reception". This uses more energy: compare it with the graph on top of it (not in the screenshot -- but the same as in the first screenshot), and you see the bar is almost flat where the *cell signal* is good -- but falls faster where it's not. See the little red spots: "no reception". And phone will power-up like crazy to find a new cell tower...

## How to find out ***where*** the dead spots are?

Here we need to use 3rd party tools. I will mention two of them here: No Signal Alert and OpenSignalMaps. Both can alert you when entering a "dead zone":

*No Signal Alert* lets you view a log of cell state changes, plus can show you a map of where the dead zones were. *OpenSignalMaps* has the plus of showing you all cell towers in reach, pointing out which you are connected to. It also offers you a "compass" giving the direction to the strongest signal.

## How to automatically deal with those *dead zones*?

There are some little helpers available which watch your signal. If it drops or gets lost, they simply switch the radio off (so it cannot further power up searching a non-existing signal) -- and periodically activate it again to check whether the situation has improved. One of them is Battery Saver, which also lets you define profiles so you can easily switch other things like Wifi. Then there are more powerful "automaters" like e.g. GreenPower free battery saver, which even manage a lot more. And these two are not the only ones...
> 15 votes

# Answer
Yes, it does cost you more power.

The transceiver circuit is engineered with power saving in mind and will reduce sending power as much as possible if the reception is good. This also reduces the SAR value which is a measurement for exposure of the human body to radiation.

If the reception is bad sending signal strength has to be adjusted accordingly.

Additionally:
The underlying protocols are also designed to retransmit packages in case of a corrupted transmission. This might have an extra impact on your battery too.
> 18 votes

---
Tags: network-signal, battery-life
---


# Question
Title: How to export bookmarks from default android browser?
I am using LG P500 phone, running Android 2.3 (Gingerbread).

I want to export bookmarks from default browser of my android phone.

Can any one suggest me how to do that?

I have checked settings of default browser but no clue..

# Answer
There are apps that can backup your bookmarks, e.g.

GMarks or TitaniumBackup (needs root).

You could also sync the P500 bookmarks with Google (by default on) and also set up sync for a regular desktop chrome browser (very prominently accessible in the settings).

You should be able to export your bookmarks then.
> 3 votes

---
Tags: 2.3-gingerbread, browser, bookmarks
---


title: Closing applications

text:
# Question
Title: Closing applications
I guess this has to do with our habit on desktop computers where we

1. open an application
2. use it
3. close the application

AFAIK there's no direct way from within the application to close it. And by pressing the Home button app just gets into the background. Still running.

I got a habit of pressing Home, then Recent apps and flicking all open apps out.

Is this a bad habit? Should I leave applications like GMail, FB, Currents, GNow, etc. running or is it better to close them and have as less apps as possible running?

# Answer
> 6 votes
From a developers point of view (my point of view):

Application's on Android work a specific way, they all have their own life cycle, the main ones we are talking about here is when the application is paused, or stopped (onPause, onStop) and when the application is destroyed (onDestroy), these two states are brought to light in different ways, onPause is when the user can no longer see the application, or screen, this is when the user presses home or clicks something on the screen that takes them to another screen, like pressing a link for example, there is still a possibility of you needing this screen, for example when you press the back button to get back to the screen, you still want it in the same state, so the application is still open and waiting for you to return.

The other state, when the application is destroyed, can happen three ways, firstly the developer might of added something in to close the application automatically, for example the Endomondo application you can press menu \> exit, this will "close" the application and it will no longer be in memory. The next way is the user pressing back on it, as in there is no way to get back to the exact screen (for example you can't press forward to get to it) so the application is no longer needed so it is closed.

The third way that an application is destroyed, or closed, is when Android needs more memory, when this happens it clears the applications that haven't had interaction the longest. Android does this itself, if it needs more memory it will get it.

So in all leaving applications open isn't a bad happen, however some applications can still use a lot of CPU power and not memory when its in the background, if you think this is going to happen you should close it yourself, android should be able to pick up on this however

Have a look here at the states of a activity, or a screen:

---

EDIT:

* Pressing back on a screen: Activity destroyed (`onPause > onStop >
onDestroy`)
* Swiping application away on recent apps: Activity destroyed (`onPause > onStop > onDestroy`)
* Pressing home: Application kept in memory, only if the developer hasn't added a self close feature (`onPause > onStop`)
* Navigating away from app, link etc: Application kept in memory, as above (`onPause > onStop`)

# Answer
> 7 votes
The answer is simple: Do not close apps when possible!

Android takes care of app managemnt by leaving them stick around (which is not necessary in memory) when possibile allowing faster startup times and resumption where you left. Swiping out a app of the recent app list is similar too closing it, but not the same.

# Answer
> 3 votes
This is not technically *better*. One of the main characteristics of Android is to simulate multitasking. When you switches the application to another (yeah, even the Home launcher is an application), Android *pauses* the current activity and tries to load the data of the next into memory. So, two things can happen here:

* If there's enough free memory, the data is loaded and the new activity is started. In this scenario, there's no trouble to switch back to the last application, since it's already running;
* If there's a lack of memory, Android have to "backup" the data of the current activity into internal storage. This has a cost and a delay; after doing that, Android can finally load the new activity into memory.

From a performance point of view, keeping as much data as you can on RAM memory is benefic. The fact that an app data is still on memory *doesn't mean* it's consumming battery resources, unless there's a service running, which is not always the case.

So, pressing `Home` or `Back` buttons has in practice the same effect on memory usage. Android is designed to manage RAM itself, and it's not a good idea to kill apps unless you really know what you're doing.

Many people start having problems when use many apps that run services in background. Some services tend to stay always in memory performing some task (like keeping you online, checking for new messages etc.). This costs more resources (memory and battery), and if your phone is slow everytime, it's a good idea to check which services are running and maybe uninstall some of them (you can see them in `Configurations/Applications/Running services`).

If you want to learn more things about that, you should take a look at this post: http://android-developers.blogspot.com.br/2010/04/multitasking-android-way.html

# Answer
> 1 votes
As far as I understand, Android is supposed to look after this itself. Many apps have services that run almost separately from the visible part as well and part of the lifecycle of Android apps is that the OS can indeed choose to close threads down as it sees fit.

But buried in the docs so well I don't remember quite where it is is the information that "Back"ing out of an app will tend to shut it down rather than if you just go "Home". Graphics-intensive apps like 'Angry Birds' should be closed like this, in fact, because the app gets the opportunity to shutdown processor-intensive threads properly.

---
Tags: applications, samsung-galaxy-nexus, 4.1-jelly-bean
---


# Question
Title: Forwarding text messages from an android phone to a TCP port of a PC
We are going to have an online poll using SMS in an upcoming ceremony. We also want to show the result of the poll on a large screen using a video projector. The idea that I have is to use an android phone to receive text messages and forward them to a PC using a TCP/IP connection. If the message is forwarded to the PC, I can handle the rest of the things easily. Now, I have two questions regarding the above idea:

1. Do you know any application of piece of code that forwards any incoming text message to a given ip address/port number?
2. Is an android phone capable of handling a large number of text messages? That would be 100-200 messages per minute. The latter issue is a more important one since I have no clue about the number and I cannot test the scalability of the system since the day of the ceremony.

# Answer
> 1 votes
It isn't difficult to create the necessary code to listen to incoming messages, handle their data and send them to a TCP socket. I've done such an app but can't release it's code, unfortunately. All I can say is it's pretty simple, just research incoming SMS handling (for example here) and sockets (for example here).

As to your other question, there is some latency when receiving SMS, but this depends on your carrier. They store the messages in a queue and send them to your phone as fast as they can. So, depending on your carrier they may have some limits on how many messages they accept into the queue.

You can estimate the delay in the messages by sending a SMS to your phone from 2 other phones simultaneously, and check the difference in receiving the messages. You can then estimate the handling speed per minute. For example, if there's a two second delay, it would take `(200*2)/60=6m40s` to process 200 messages.

# Answer
> 0 votes
I can think of two approaches:

For one, there is android-notifier, which claims to react on events (amongst others: incoming SMS) and sends notifications to a desktop pendant (multi-OS). As the source code is available, it could be investigated (as to replace the pc desktop application by your own processor) and adapted.

And then there always is Tasker (with good documentation and a free 7 day trial available at its project site). It also can react on, amongs others, incoming SMS, and perform different actions (also on the SMS' text), such as e.g. "browse url" (you could urlencode the SMS and send it as parameter, I guess -- the "http get"/"http post" actions is probably smoother, as easier to configure with parameters), "compose email" (again can be processed asynchronously at the PC), and more (see already linked project site for details).

# Answer
> 0 votes
If you just want to see the poll results without addition processing in your computer, I would suggest the following two apps:

1. Poll-Box
2. FastFeedbak Lite

With either of these apps you can receive the SMS (text messages) and display the result in the device's screen. This device screen can be displayed in any larger displays using HDMI connection or other screen cast apps. If this solves your issue, you can totally avoid your dependency on the computer.

---
Tags: sms
---


# Question
Title: Accessing a web server running in Android emulator from my local machine
I'm trying to access a web server running on the Android emulator from my machine. I know the reverse i.e., how to access the server running on my local machine from the Android emulator (using `10.0.2.2`). I have searched a lot about this stuff but couldn't get any relevant information.

When the server is up and running inside the emulator I can access it using `10.0.2.15:portNumber`. I can do a telnet to the emulator, but I wonder how that will be helpful. Any suggestions on how to get connected to the web server running inside the emulator?

# Answer
You need to create a port forwarding to your Android device. This can be done with ADB.

```
adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)

```

For example: run `adb forward tcp:12345 tcp:23456` and then use the URI `http://localhost:12345` to access the server running on port 23456 in the emulator. Note that some ports are reserved for Android and some can only be used after rooting, so I'd suggest using high ports (\>20000) if you can.
> 11 votes

---
Tags: android-emulator, web-server
---


# Question
Title: Galaxy S2 - Accessing Internal phone memory in Recovery Mode
How can i access to Internal Storage in Recovery mode using Android Debug Bridge (ADB.exe) ?

```
C:\Users\MohammadReza\Desktop\platform-tools>adb devices
List of devices attached
4F58000600000001        recovery

C:\Users\MohammadReza\Desktop\platform-tools>adb remount
remount failed: Operation not permitted

C:\Users\MohammadReza\Desktop\platform-tools>adb shell
$ mount /system
mount /system
Usage: mount [-r] [-w] [-o options] [-t type] device directory

```

# Answer
You cannot issue `adb remount` unless your handset is rooted, which is why it failed in your case a la "remount failed: Operation not permitted".

There is an answer to how to root the Galaxy S2.
> 4 votes

# Answer
i don't know much about the Android debug bridge, but i guess hard reset (simple) can do the trick for you. i have a solution with me right now, actually i had some sort of issues on my GS2, so i bookmarked the forum where i had found the solution, here it have a look:- http://howmobile.net/samsung/2150-how-hard-reset-samsung-galaxy-s2.html it worked like a charm for me and i hope will do the same for you and other who are looking for a Galaxy S2 hard reset procedure. thanx
> -2 votes

---
Tags: samsung-galaxy-s-2, adb, recovery-mode, mount
---


# Question
Title: Uninstall the applications provided by the company
> **Possible Duplicate:**
> How can I uninstall applications that are locked by phone vendor?

I am using the LG P500 phone, running Android 2.3 (Gingerbread).

I want to uninstall the applications provided by the operating system distribution, that is, the default applications. Is there a way to do this?

# Answer
> 2 votes
System apps are stored in the `/system/` partition. You can only uninstall them if your device is rooted (see: *How do I root my Android device?*).

Preinstalled software are most likely system apps, so if you can't uninstall them through the *Settings* menu there is probably no other way than rooting.

---
Tags: 2.3-gingerbread, uninstallation
---


title: Adding an extra tab in the ICS Launcher

text:
# Question
Title: Adding an extra tab in the ICS Launcher
I'm on Android 4.0.4. When I open my launcher, I see two tabs — Apps and Widgets. I'd like to add a third tab for Games. Is this possible?

Since I have quite a few games, I'd like to keep them separate and a new tab would be great. If there's an app that'd be awesome.

Any other suggestions are welcome

# Answer
It looks like the only way to do this would be to use a custom launcher. I've found three options that have this capability.

Nova Launcher Prime ($4.00)

Apex Launcher Pro ($3.99)

Holo Launcher Plus ($3.99)

There is also a free Holo Launcher, but I don't think it has the customizable tabs.
> 6 votes

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


# Question
Title: What Android OS version is on the Kindle Fire HD?
Which version of Android is running on the recently announced Kindle Fire HD, Amazon seems to fail to mention that detail in the specifications they list for Kindle Fire HD

# Answer
Amazon confirms Kindle Fire HD models use Android 4.0 under the hood.
> 15 votes

# Answer
By this comparison between Kindle Fire HD 7" and Nexus 7 done by CNET, it uses a **custom Android 4.0 version**.

Scroll down to the comparison table to see it

From the official product page, there's no corroborating information about it.
> 8 votes

# Answer
Amazon confirms ICS is running the Kindle Fire HD. For more infos follow this blogpost
> 2 votes

---
Tags: amazon-kindle-fire-hd
---


# Question
Title: Object reference not set to an instance of an object. SuperOneClick
Im trying to root my Motorola Defy (not plus) and when going to root it with SuperOneClick (1.9.5) I get `Object reference not set to an instance of an object.`

What can I do?

# Answer
The problem was a bug that this specific version had, if you are using this specific version I strongly advise you to update.
> 1 votes

---
Tags: rooting
---


title: Bookmark current song

text:
# Question
Title: Bookmark current song
I don't know if I need an app for this or can I do it with the given music app. I've downloaded a bunch of lectures and they're all in one album. Sometimes I want to listen to music, but when I do, I lose my place in the lecture album. Is there a way to bookmark or save the current song/position so I can quickly switch back? Preferably free.

# Answer
Try using the Audiobook variant of MortPlayer. I believe it ought to suit your needs. Also - it's free.

One of its features is particularly useful:

> List of 10 most recent events for each track (where did you press play, stop, got interrupted by a call, activate the sleep timer, ...)
> 2 votes

---
Tags: music
---


# Question
Title: Does Google Play have a podcast feature?
Just grabbed a phone with 4.1. Most questions talk about the Google Listen app, but I can't find it. Did google remove the "podcasting" feature from their Play suite?

# Answer
> 7 votes
Yes, on August 3rd 2012 Google Listen was discontinued and is no longer available on Google Play. If you already have it, it will continue to work, but on November 1st 2012, the Podcast Search will cease to work.

This project was very limited in functionality anyway. There are other apps out there that are updated and actively worked on. I think the last time Google Listen was updated was a couple months after it came out in 2009.

A lot of the podcast apps out there now can make use of the "Listen Subscriptions" folder that is in Google Reader. This is where Google Listen stored your subscribed podcasts. I continue to use Reader to store my podcasts in this location, then I import it to the player on my phone.

---
Tags: 4.1-jelly-bean, podcast, google-listen
---


# Question
Title: Can I buy apps from the play store without having an Android phone?
How can I buy apps from the play store with only a google account and no phone? Planning to buy the phone next week, but would like to grab the sale prices for various apps before they expire.

# Answer
> 4 votes
Generally, the answer is No. But there is a way to buy the apps first. Find a friend who is willing to let you add your account to his/her phone, then you can buy the apps under your own account.

Edit: Here's an article I just came across.

---
Tags: google-play-store
---


# Question
Title: How to view the files on mnt\sdcard on PC and how to set default download and save location
The directory mnt\sdcard is the location where all the downloads and the received files are saved, however this file cannot be located on the PC if connected using USB Cable. Moreover, it seems that this file is on the Phone's Internal Memory and not in the Memory card

# Answer
> 2 votes
It seems that, like on the Atrix, `/mnt/sdcard` is your internal storage, while `/mnt/ext_card` is your real sdcard. You can verify this if you check their seizes: You know the size of your sdcard, so you should be able to point that out. The internal will probably have a size which is not a multiple of 8 (most likely, it will be 6 GB or the like).

If you are unsure how to check this, you could e.g. use SanDisk Memory Zone or, even better, Storage Analyser, which should make it easy to point out:

---
Tags: internal-storage
---


title: DualBoot CM7 and CM9 for HTC Desire Z?

text:
# Question
Title: DualBoot CM7 and CM9 for HTC Desire Z?
I want to be able to switch from CM7 to CM9 and vice versa without losing my apps and data everytime. Is it possible to make a dualboot?

# Answer
> 2 votes
Making a dual boot is possible, there's a nice app for that end available from Google Play Store.

Boot Manager Pro (2,17€) and the Boot Manager Lite (free), both from Init 2 Winit Apps.

> Boot Manager is Android's first multi-boot application. It allows you to install boot ROMs from your sdcard and boot between then with just a reboot. The application acts as your recovery for your sdcard slots. Install your kernels, themes, and ROMs all through the app and use your normal recovery for your phone ROM only.

Unfortunately, I haven't found any supporting information if this will or will not share apps between ROMs, but at the very least it solves the dual boot problem.

**Ps:**
Since apps when installed on the SDcard still leave a portion of their code on the main installation directory of the current ROM, it doesn't seen possible to have apps shared across different ROMs.

---
Tags: cyanogenmod, htc-desire-z, dual-boot
---


# Question
Title: How can I easily edit / add contacts to my phone book without them showing on Google?
I got my Galaxy Nexus and now I'm stumped how to get my contacts right? There's no phone book anymore here. These are just my Google contacts of which I have just a handful with phone numbers.

1. What's the best way to get my phone numbers into those contacts without editing every and single one? So merging phone numbers on my SIM with google contacts.
2. Add new that are missing in my google contacts but are present on my SIM?

**Why can't I have separate phone contacts from Google contacts?** And what's the rationale behind the decition they've made with this?

Is it also possible that phone-only contacts (with name of course) woudl not show on my gmail afterwards? I mean on the web. On my computer...

# Answer
# Rationale

The traditional concept of mapping names to numbers which many people know from cell phones doesn't really apply to smartphones. Here the idea is that there is one central instance, the contacts app, that holds information about your contacts and how you can reach them, which could include a phone number but not mandatorily. Often there is also e-mail, third party messaging (whats app), third party VOIP (skype) social (micro) blogs (Twitter, Google+) or various social networks. (Facebook, LastFM, ...).

# Use www.google.com/contacts

I recommend to move all information about contacts that is stored on your SIM card to the Google contacts. Furthermore Gmail will only show contacts that have a e-mail address. So there is no need to have something like phone-only contacts.

The cloud idea is to have every piece of data (or information if you want) everywhere available. Why do you want to have some contacts just on one device? I know it's hard for some people that their contact app suddenly shows hundreds of contacts from different sources, but Google/Android provides techniques to deal with that too: Use contacts groups. Most Google software is able to show only certain contact groups (but will run contact searches for the whole contact set).
> 5 votes

---
Tags: contacts
---


# Question
Title: How to turn off vibration during a factory reset?
I am experimenting with my phone quite a lot, and I need to do a factory reset quite often (several times per day).

Everything works fine, but it vibrates several times during the factory reset. *And it's really annoying.* Maybe someone know, how to turn those off - some setting maybe?

I'm using Android 2.3.6, Alacritous v3 Mod.

# Answer
> 1 votes
I'm assuming you are using the menu found under settings when the phone is fully booted. Doing a factory reset from clockworkmod recovery shouldn't make the phone vibrate. Boot to recovery and choose wipe data/factory reset. The effect is the same as the menu in the settings.

---
Tags: factory-reset, vibration
---


title: How do I reset the fade effect on ICS?

text:
# Question
Title: How do I reset the fade effect on ICS?
I recently installed ICS on my Samsung Galaxy Ace and I have accidentally enabled the fade effect throughout the phone, but now I cannot find the setting that I changed. I don't want to perform a factory reset. Does anyone know how to reset this fade effect on ICS? The effect is being applied throughout the phone, while displaying system popups, pressing menu buttons etc.

# Answer
Go to SETTINGS \> DEVELOPER OPTIONS and change WINDOW ANIMATION and TRANSITION ANIMATION to 1x for the default or 0 for the speediest UI response
> 1 votes

---
Tags: 4.0-ice-cream-sandwich, settings, samsung-galaxy-ace
---


title: Removing stock browser on Jelly Bean

text:
# Question
Title: Removing stock browser on Jelly Bean
> **Possible Duplicate:**
> Unistall a system app without root?

Chrome is the default on Jelly Bean OS. When I bought Nexus 7 tablet it came preinstalled with JB, but when my Galaxy Nexus got upped the old stock browser is still present.

**How can I get rid of the stock browser on Galaxy Nexus in JB?** Is it at all possible?

# Answer
This does not really remove the app from your device, but "freezes" it (i.e. makes it "hidden", so it no longer shows up in your App Drawer etc.):

From your Homescreen, open the menu and go to *Settings → Apps → Browser*, and there hit *Disable*.

If you later decide you want it back: Same path, and *Enable* it again.
> 1 votes

---
Tags: samsung-galaxy-nexus, 4.1-jelly-bean, stock-browser, chrome-for-android
---


title: Set a particular browser as "always"

text:
# Question
Title: Set a particular browser as "always"
I have Galaxy Nexus with JB. I got stock browser on it and Chrome and I also installed Firefox just to keep it there since I'm a developer and I can test stuff on all three.

But the question I'm having is, what happens if I set a particular browser as "always" when it asks me which one I'd like to use? I keep pressing "just once" because I don't know hot would I change it later if I desire to do so?

1. Is it possible to change/reset this later? How?
2. Does "always" set it as default just for that particular app that's redirecting to browser or does it set OS-wide?

# Answer
Disabling the default action for an intent is easy enough to do on ICS.

1. From the launcher, press the menu button, and choose `Manage apps`.
2. Select the app that you chose as the default for the action.
3. Scroll down and touch `Clear defaults`.
> 3 votes

# Answer
If you can not find an appropriate setting on your device, you may have another app take care for that. There are some on the playstore addressing exactly your problem, e.g.: DefaultApp Reset explicitly states *This will work on android 1.5-2.3.3+ & 3.0-3.2+ & 4.0-4.0.3+ & 4.1+*, Default App Manager does not explicitly state (but is free, so you could check).

To your second question: It's rather system-wide for the same action. For example, if you open an audio file from the file manager, and select the player for "always" -- this will also be used if you select an audio file from, say, the browser. A second screenshot from the *Default App Manager* app may be helpful to understand this part:
> 2 votes

# Answer
On the Kindle Fire (Gingerbread), I go into Settings \> Applications \> Third Party Applications and select Dolphin Browser, my usual default browser. There is a Clear Defaults button on Dolphin's page. That button un-defaults my browser and restores the question.

I would expect you'd have to do something similar - use system-settings for a given application - to undo it's default-ness.
> 0 votes

---
Tags: browser, samsung-galaxy-nexus, 4.1-jelly-bean, default-applications
---


# Question
Title: Remove Snooze -button in Android Alarm-lock
I always by accident hit the Snooze button instead of Alarm -and it is irritating, alarm starting afterwards again. Is there some better alarm -lock with better UI or how can I remove the alarm-lock "Snooze" that is totally useless?

# Answer
Use Alarm Clock Xtreme. Its reliable & it has everything you want.
> 3 votes

---
Tags: alarm
---


# Question
Title: When I back out of an app is it still using up my data?
When I am coming out of an app such as facebook, do I just back out of it and is it still using up my data?

# Answer
Yes, such internet-based applications normally use background services to stay connected with their servers and use mobile data when Wi-Fi is not available. But data usage is often very low for such background apps.

If you want to stop any data usage of any app when you are not using internet apps, you can disable mobile data temporarily. To do so, Go to **Settings -\> WiFi and networks -\> Mobile data** and uncheck the option to disable mobile data.

Also, if you are using **Android 4 ICS** or newer, you can disable background mobile data usage for some apps. Just go to Settings and under Wireless and Networks, click on **Data Usage**. Then you will see a list of apps that has used your data. Select the app you want to restrict and in newer window, scroll to bottom and check option **"Restrict background data"**. Then, no background mobile data for that app is allowed.
> 6 votes

---
Tags: applications, data-monitoring
---


title: Remap menu key to multitasking

text:
# Question
Title: Remap menu key to multitasking
I'd like to remap the physical menu key of my Xperia Neo V running Cyanogenmod 9 to multi-tasking, the way it is on phones that were launched with ICS or Jelly Bean to begin with.

Apps built for ICS would then display the action overflow. With older apps, I guess an on-screen menu key would appear -- I think there is in fact an ICS phone that does this as it has only two keys, but I don't remember the name. Alternatively, the menu key would stay a menu key in these apps but this might be more difficult to achieve.

Is there any way to configure or modify Android to behave this way?

# Answer
As I have just discovered, the latest Cyanogenmod 10 nightlies have this feature. Unfortunately it doesn't ever display an on-screen menu key. As a workaround, I mapped long-press of the menu key to its old function.
> 1 votes

---
Tags: 4.0-ice-cream-sandwich, cyanogenmod, customization, sony-xperia-neo-v
---


# Question
Title: widgets not working when app is moved to sd card
When I move my applications to the the sd card using the "Move To SD Card" feature in ICS the widgets for particular application stop working it says "Problem loading widget".Does anyone know a solution to this? or do I just have to keep the application in the internal memory for the widgets to work?,

# Answer
> 6 votes
There are some technical reasons explained on the Android developers website that justify why the widget may have stopped working:

Any of this ones aren't recommended to move to an External Storage due to possible failure:

* **Services**

> Your running Service will be killed and will not be restarted when external storage is remounted. You can, however, register for the ACTION\_EXTERNAL\_APPLICATIONS\_AVAILABLE broadcast Intent, which will notify your application when applications installed on external storage have become available to the system again. At which time, you can restart your Service.
* **Alarm Services**

> Your alarms registered with AlarmManager will be cancelled. You must manually re-register any alarms when external storage is remounted.
* **Input Method Engines**

> Your IME will be replaced by the default IME. When external storage is remounted, the user can open system settings to enable your IME again.
* **Live Wallpapers**

> Your running Live Wallpaper will be replaced by the default Live Wallpaper. When external storage is remounted, the user can select your Live Wallpaper again.
* **App Widgets**

> Your App Widget will be removed from the home screen. When external storage is remounted, your App Widget will not be available for the user to select until the system resets the home application (usually not until a system reboot).
* **Account Managers**

> Your accounts created with AccountManager will disappear until external storage is remounted.
* **Sync Adapters**

> Your AbstractThreadedSyncAdapter and all its sync functionality will not work until external storage is remounted.
* **Device Administrators**

> Your DeviceAdminReceiver and all its admin capabilities will be disabled, which can have unforeseeable consequences for the device functionality, which may persist after external storage is remounted.
* **Broadcast Receivers listening for "boot completed"**

> The system delivers the ACTION\_BOOT\_COMPLETED broadcast before the external storage is mounted to the device. If your application is installed on the external storage, it can never receive this broadcast.
* **Copy Protection**

> Your application cannot be installed to a device's SD card if it uses Google Play's Copy Protection feature. However, if you use Google Play's Application Licensing instead, your application can be installed to internal or external storage, including SD cards.

# Answer
> 0 votes
As you've guessed, your widgets, live wallpaper etc won't work once you move them to SD card. If you're rooted you can use solutions like link2sd and data2sd which creates an extra partition in your SD card to move your app or part of the app.

---
Tags: 4.0-ice-cream-sandwich, sd-card, app-widgets
---


# Question
Title: Where to find the official Cyanogenmod release notes?
Where are the official release notes for Cyanogenmod, in particular the 9.1 release? I wasn't able to find them.

# Answer
Did you check with the official changelog site? Or the XDA thread on 9.1? The latter mentions http://cm-kang.appspot.com/anzu/ics for the changelog. And then there's this page where you even can filter changes by devices (probably the best source to check).

If you need more details: All that from page 1 of a simple Google search for cyanogenmod changelog "9.1" (\<- hint! ;) )

To the first (and explicit) question: If there were any new features? That probably very much depends on your device. So using the last changelog source I mentioned, filtering by the device you want to know this about, you will be able to answer your question. As I don't know your device, I can't ;)
> 5 votes

# Answer
Edit: OP has rephrased his Question

A good start is also the CyanogenMod blog

For CM9.1 it's:

A new NFC payment system, SimplyTapp has been added:

> **Let’s try something new: CM9.1 and SimplyTapp:**
>
> Welcome to Tapp! A near field communication (NFC) payment platform for the CyanogenMod community and powered by SimplyTapp. Founded by two CM enthusiasts, Doug and Ted, Simplytapp provides a method for evolving, securing and expanding NFC payments.

See CyanogenMod's blog post for more info.
> 1 votes

# Answer
A condensed changelog containing only "notable new features" can be accessed from within Cyanogenmod via the settings menu -\> about phone -\> view changelog.
> 0 votes

---
Tags: cyanogenmod
---


title: LG Optimus 2X ICS Rom

text:
# Question
Title: LG Optimus 2X ICS Rom
I came across a rom that i would like to try out on my LG Optimus 2X P990, but the xda page i found isn't for that phone. Any ideas on where i can download it?

the rom is called: \[Rom\] FB Jellybean Fusion Beta 3.2.2 \[ICS | Fast\]\[Jellybean Features & Theme\]

Link to xda for the version not for my phone: http://forum.xda-developers.com/showthread.php?t=1828606

# Answer
> 1 votes
I don't think that developer released a version of that ROM that's compatible with your device so my advice to you would be to go to the Optimus 2X forum and find a Jelly Bean ROM there or you can check out this link other roms:

---
Tags: 4.0-ice-cream-sandwich, custom-roms, rom-flashing, 4.1-jelly-bean, lg-optimus-2x
---


title: Force Trebuchet to reload my widgets?

text:
# Question
Title: Force Trebuchet to reload my widgets?
Whenever I install a new widget, I don't know if it supports ICS or not immediately because it won't show up on the Widgets tab until I restart the phone. It is highly inconvenient. Is there a way to force Trebuchet (my home app) to reload the widget list everytime I install a new app?

# Answer
In my experience, Trebuchet does always reload the list. I just have to wait a couple of seconds.

If it really doesn't, you can go to the Applications section in the settings menu, select Trebuchet and Force Stop it. That should force it to drop any state, including the widget list.
> 1 votes

---
Tags: app-widgets, trebuchet
---


# Question
Title: Is there a user accessible font size preference?
I would like to change the font size throughout the entire operating system, not just in one app or on one screen. Is there a way to do this?

Searching the internet brought up someone saying the Spare Parts app on the Market can do this, but that was incorrect. Its font size preference only affects the app itself.

The developer documentation does seem to imply there is a user font size preference. From http://developer.android.com/intl/fr/guide/topics/resources/more-resources.html :

> sp Scale-independent Pixels - this is like the dp unit, but it is also scaled by the user's font size preference.

But it does not say anything about how a user is supposed to set this. I don't see it in the settings on the phones I have.

# Answer
There is now a setting for this, though I'm not sure if it is in stock Android and since which version it is available. It was definitely there in Sony's Gingerbread and ICS ROMs (Xperia Neo V) and Cyanogenmod 9/10.

In Cyanogenmod 9+, it's in the "System" submenu below the "Interface" caption.
> 1 votes

# Answer
Take a look at "Font Size (for root users)" in the market. It costs $1.36 and only works with rooted phones but it claims to:

> "globally enlarges/decreases text size in all apps (Email, SMS, Maps, Home, Weather, Calendar, Widgets, ...)"

The reviews aren't so good but it's worth a try.
> 3 votes

# Answer
Another option ( very restricted, because involves changes in the platform ) is to change the

```
./frameworks/base/core/java/android/content/res/Configuration.java

```

file.

There you must:

-Create a setter/getter pair to obtain the font value

-Change the point where the file obtain the value. I changed the method

```
public void setToDefaults(){
  //I set the class member to the desired value trough my getter ( getFontScale )
  fontScale= this.getFontScale();
  ...
  ...
}

```

-Initialize the class member to the stored value:

```
   //This is the class member ( previouslly not initialized. Now i set it´s value trough my getter )
   public float fontScale= this.getFontScale();

```

This way every app will initially have it´s font setted to the stored value.

ps: You should create an interface in the Android Settings apk too, otherwise your font would only start with a fixed value.

I can give more details if needed.
> 2 votes

# Answer
The Spare Parts Plus app (free) does work on my Honeycomb tablet (Asus Transformer) across all apps.

However, as is noted in your question, it only works if the developer has used a specific technique of specifying font-sizes in their application. The sizes need to be specified in "sp" units for this technique to be effective.
> 1 votes

---
Tags: customization, fonts
---


# Question
Title: Is there a TODO app with nested todo lists?
There's a sea of todo apps out there, with all kinds of bells and whistles. I only need one feature: nested lists. I should be able to start with a general goal ("finish that course") and specify it further ("buy course literature", "turn in homework", "prepare bribes" etc) without cluttering the main list. Is there any app with this feature?

Except for that, I just want it to be simple. I don't need alarms, due dates, syncing, colors, etc.

# Answer
> 2 votes
Google Tasks allows for nested tasks, and there are multiple clients that support it.

# Answer
> 1 votes
You could check out Astrid Task or Checkmark they supports nested todo lists.

---
Tags: to-do-list
---


# Question
Title: Is there a way to combine settings (Mobile/GPS/Bluetooth/etc) into profiles?
I'd like to setup some combination of On/Off settings and create profiles. For example, when at home, I'd like Bluetooth/Wifi On, but Mobile Off. When going to work, I want Mobile On and everything else off. Is there an easy way to do this?

# Answer
Check out Locale. It's not the cheapest app, but it is very well made and will allow you to do this. It switches to profiles automatically based on certain conditions too.

For example, when it detects that you are at home it can automatically switch to your Bluetooth/Wi-fi profile and turn off the mobile network.
> 3 votes

# Answer
Another possibility is Llama. It's similar to Tasker and Locale, but free. I don't know what other differences there are as Llama is the only one I've tried so far.
> 2 votes

# Answer
Check out Settings Profile - http://www.probeez.com/. I bought both and I prefer Settings Profile (it's also cheaper @ $3.95). There is also a free version that only allows one active rule at a time.

Setting up the profiles in SP is more intuitive (to me). The notification bar displays the active profile(s) and that interface allows you to easily change to a new profile. SP contains a few settings for free that Locale doesn't (i.e. Airplane mode, Dock mode). There are plugins for Locale ($1.99) that can handle this - not sure if there are any free plugins.

I'd recommend trying out the free version to see how setting up profiles work, in general.
> 1 votes

# Answer
http://tasker.dinglisch.net/

Tasker is a bit complicated BUT it is insanely powerful. Check it out
> 1 votes

# Answer
Cyanogenmod 9 can do this. I think CM 7 also had this feature.

Unlike the other solutions, you'd have to switch the profiles manually. The upside is that it integrates into the OS more nicely.
> 0 votes

---
Tags: settings, customization
---


# Question
Title: how long does an OTA update normally take?
I am using the Oxygen ROM on my LG P500 (Optimus One) and I just did an OTA Update and the ohone restarted and it has been in a flashing mode every since, the bar is at about 15% for the past 30 minutes so I was wondering if there is a problem or the firmware upgrade normally takes a while.

# Answer
> 2 votes
The progress bar being stuck for a while is not unusual as progress bars are fairly difficult to get right. An update taking more than half an hour, on the other hand, doesn't sound right to me. Of course your phone could simply be slower at this task than mine.

---
Tags: updates, custom-roms, device-firmware, ota-update
---


title: images blurry in stock browser

text:
# Question
Title: images blurry in stock browser
How do I disable the automatic zoom-in in stock browser? It makes the images very blurry and eye strain. What I want is small but sharp (which is what opera does)

# Answer
> 0 votes
in `ICS 4.0.4`: Open stock browser, click **Menu**, click **Settings**, from the list, got to **Advanced** section, about middle of page, click on **Default Zoom** and select **Medium**.

in other versions, if available, it is somewhere near that!

---
Tags: images, stock-browser, zooming
---


# Question
Title: Looking for an app for "boosting" dark photos
I've used an app called "color touch" for boosting dark images whilst maintaining the global contrast (similar to PhotoShop). Unfortunately this app doesn't work anymore since I flashed my Galaxy S2 with CyanogenMod v10.

So I'm wondering, is there a similar app which allows boosting dark images (e.g. from inside a club)?

# Answer
> 2 votes
Photoshop Express comes to mind.

---
Tags: applications, images
---


# Question
Title: Have a widget activating something in an app?
I have the SyncMe app, and I would like to have a widget activating a fuction in the app.

Now I have to open the app -\> Click on a button -\> Click on another button.

Can I have a widget doing this by just clicking it?

# Answer
**In short**, you can't.

Only the application can interact with itself internally, unless an API was created for that end. External applications aren't able to know what to do in order to follow your desired "path".

The best you could achieve is opening the application, but you still needed to manually tap the buttons.

**My recommendation:**

I believe you are trying to have some sort of "Sync Now" functionality without having to open the application and clicking some buttons to achieve that. Either case, Email the developer and request such widget, I'm sure it's useful enough and interest will arise.
> 5 votes

# Answer
Working on it, you will have a shortcut in the next release of Syncme. Not a widget, gone through all the source code of the Android music app widget to figure out that will be an overkill :)
> 3 votes

---
Tags: app-widgets, automation
---


# Question
Title: Ankidroid -- What does the rectangular button in the action bar mean?
I have wondered for a long time what this toggle does. It saves some changes but doesn't indicate what has changed.

# Answer
> 9 votes
It allows you to "mark" a card.
It is a kind of bookmark that allows you to find this card easily later.

The most common case is when a card needs editing, but you do not have time/tools to edit it right now, so you mark it, and you will fix the card when you are back home.

Why not edit the card right away, instead of just marking it? Examples:

* You are reviewing in the bus, and you notice a kanji that you probably entered wrongly, so you need to check. But you need the library's huge kanji dictionary, which is too heavy to carry in the bus.
* You realize you made a typo when entering a LaTeX formula. You will only be able to fix it next time you are at your desktop computer.
* You have a doubt about a card, and must ask a native speaker, but there is none around.

Reference: http://ankisrs.net/docs/manual.html#editing-and-more

The button now looks like a star, like in web browsers:

Thanks for using AnkiDroid!

---
Tags: ankidroid
---


# Question
Title: Gmail gives no option to sync "All Label" label
HTC Hero, Android 2.1(!)

I have 3 Gmail accounts on my phone — none of them allow me to Synchronize the "All Mail" label. How can I do this?

# Answer
It appears it's just not possible to sync messages without any label whatsoever, even in Android 4.\*
> 3 votes

# Answer
Workaround: Create a filter that applies a label (e.g. ZZ\_All) to all emails you receive. Also apply this filter to all pre-existing emails and you have a label you can sync.
> 0 votes

# Answer
Create a new filter f.e. "all" and every mail what goes out or comes in get this lable. Use it for every existing mail and here you go. Change settings on your android device! Dirty variant...
> -3 votes

---
Tags: sync, gmail
---


# Question
Title: My Huawei u8160(Vodafone 858) supports usb-host although not working?
I have a Huawei u8160 running Psyke83's Cyanogenmod 7.2 14/8/2012 which had a package with it to apply usb-host mode kernel called usbhost1-cm-7-20120814-MADTEAM-u8160.zip.

So I flashed the zip using clockwork mod recovery (from Rom Manager) and was successful although when I started my phone and connected an USB mouse it didn't light(the mouse) and it wasn't working.

I want to ask here,what's wrong?

---

**EDIT #1:**

I downloaded the app USB host controller and when I opened it it told me that "S3C USB Host driver NOT found!"

---

**EDIT #2:**

I've found this blog (it's in Hungarian so I translated it using Google) talking about exactly my state and it says that I need a Y-Cable to feed the usb peripheral with power, so I'm going to try that and then I'll report here.

---

**USB Y-Cable :**

# Answer
I've found it,

I needed a Y-Cable and I needed to activate the usb host mode by using this command in the terminal emulator :

```
su
insmod /system/lib/modules/ehci-hcd.ko

```

that activates the usb host mode.

and the phone doesn't mount the flash drives so I have to mount it manually :

```
cd /dev/block
ls

```

the terminal emulator should turn out something like uba,uba1 then create a folder in your sdcard called data (or whatever you like) and then type the one ending with 1 (i.e uba1) like this :

```
mount /dev/block/ub*1 /mnt/sdcard/data

```

(\*) stands for the changed letter because it always starts with ub and ends in 1 but the third character changes between a,b,c,....

then open any file explorer and do whatever you want with data folder in your sdcard and then just unplug it, no need to unmount safely.
> 1 votes

---
Tags: cyanogenmod, kernel, usb-host-mode
---


# Question
Title: Is it possible to Share Android phone 3G internet connection to multiple clients (tabs/computers) via bluetooth
I want to share my android phone 3G internet connection (via bluetooth) so that multiple clients (other android phones/tabs/laptops) can access shared internet simultaneously.

Is it possible to have the above?

# Answer
> 1 votes
There's the bluetooth PAN profile which allows just that.
It is included with CM7+ and from Android 4.0 onwards (or already 3.0?). Bluetooth PAN's host (the device that provides the internet) acts as a router which does NAT + issue dhcp adresses for its clients.

There are also *Bluetooth DUN profile* apps that allow this (they provide a **virtual** GSM modem and may also allow for more than 1 connection at a time): See host+client BlueDUN apps from Mirko Solazzi

---
Tags: bluetooth-tethering
---


# Question
Title: Are there any Android phones that allow Bluetooth PAN off the shelf?
I'm specifically looking for an off-the-shelf solution.

Without going into too much technical detail, I need to connect a phone via Bluetooth to a device and receive IP traffic from the device. Bluetooth PAN provides that functionality, but it seems to be disabled by default in most commercial Android phones. Short of recompiling the OS, are there phones available (specific models, or buying directly from the manufacturer etc) that allow Bluetooth PAN?

**edit:** I'm actually looking for any solution that would allow me to establish a network connection from the phone to the device. The device's onboard NIC doesn't allow it to be configured as a WAP.

# Answer
> 6 votes
Android 4.0 devices (or already 3.0?) allow this.

Both client and host PAN roles are supported (I guess this was deliberately introduced by Google for UMTS-less tablets).

On the PAN host: Enable bluetooth tethering in the settings
On each device: Pair with the host and enable "Internet access" in the bluetooth device's tab:

---
Tags: bluetooth, hardware
---


title: Is z4Root infected?

text:
# Question
Title: Is z4Root infected?
I downloaded One Click Lag Fix and it requested z4Root, I also downloaded from the computer, because it was not on the market and installed, but AVG reported me that is infected.

I downloaded with multiple sites including xda-developers, and all were infected.

Should I proceed with installation?

# Answer
> 3 votes
z4root is in fact *infected*.

It is infected with an often used root exploit for Android 2.2 Froyo which allows you (or any malicious app) to gain root rights by executing it on a vulnerable phone. z4root is neutral if you have the original benign one however: It's only used to gain root. It does nothing else on its own.

AVG (and other antivirus vendors) flag this because it is a root exploit. They don't care if you like it or not and if you want to use it in a benign way (to install lag fix). It bypasses Android's security by exploiting a known vulnerability and this is enough to label it as *infected*.

To give an example:
Let's assume some app piggypacks this exploit to gain root to be able to start wreaking havoc on your phone (or with your data by formatting/wiping it. whatever).

# Answer
> 2 votes
Antivirus applications use special algorithms to scan, take apart and analyze files on your computer and network. If they are certain chunks in the files that it finds suspicious, then it gets flagged as malware.

Now, certain applications like one click root applications use hacks similar to the ones that some malware do. This causes the antiviruses to wrongly flag such software.

Most likely, z4root isnt infected but you can always use a secondary anti virus app to check or go on the xda forum thread and look for comments on infected files.

---
Tags: malware, z4root
---


# Question
Title: What way of controlling volume is more battery efficient?
I have a headset with it's own volume control, and I can also control the volume of the music through the android's volume control keys.
But which way of controlling is more battery efficient?

* Have my android device on full volume and control it with my headset's control.
* Have my headset on full volume and control it with my android device.
* None of the answers above. (if so, then which?)

EDIT: I'm not talking about an electronic controlled headset, I'm talking about a headset controlled by a dial resistance.

# Answer
Conclusion first: It doesn't really matter as this operation needs almost no power anyway for both ways.

Changing the volume alone has only a minimal affect on the battery given the screen stays off.

Reason: If you listen to music there's already some processing going on and increasing/decreasing volume levels has a very low processing demand (almost none). It's more of a side-note event for Android.

The volume buttons on the side of your device trigger some event and so do the buttons attached to the string of your headset. I'd say it's equal or at least very close to equal.

You can have a look over at George Smart's HTC headphone analysis and see that the L channel is not shorted against the common ground. Instead some coded resistor values is used to pull the common control line (also used for the microphone) which probably has a high impedance.
> 6 votes

---
Tags: volume-control, headphones, battery-life
---


# Question
Title: ICS (Android 4.0.3), Samsung Galaxy S2, Exchange Email
My phone just updated to ICS (Android version 4.0.3). Before I was able to ACCESS all sub-folders in my microsoft exchange email account, now I can only see my inbox!

How do I fix this? Does anyone know how to see the sub-folders when using ICS? I was able to before my phone updated to ICS, now I cannot!

Is it because of my phone? I am using a Samsung Galaxy S2.

# Answer
I just had the same problem and I found a way of seeing the subfolders on my Galaxy.

On the PC, open your inbox and create a new subfolder (eg foo).

On your phone, open email and open your inbox. in Options, select 'Folders'. You will see your Inbox with a small green arrow icon. Click the icon (not the Inbox title) and your folder list will expand.

Note that this only worked for me after I had created the extra dummy folder. Before I created the folder, I could see the green icon, but it would not expand the list of subfolders.
> 1 votes

# Answer
When I choose one mail source - instead of the "combined view" - the folders menu option shows all the other folders. Guess the "combined view" shows only a smaller common (sub) folder list.
> 1 votes

# Answer
what I did is to go to the Inbox, click the Option, then Folders, and click in the Inbox ICON (the folder drawing, NOT the Inbox WORD), and it showed the sub-folders.
> 0 votes

# Answer
Click on the inbox and a drop down box will appear with all your folders
> 0 votes

# Answer
You can click your inbox to show the folders and also change sync options by long pressing each folder in the default ICS mail client.
> 0 votes

---
Tags: 4.0-ice-cream-sandwich, email, exchange
---


# Question
Title: Samsung S3: Only retrieve "contact with number" in contact search
Synchronizing my phone with my gmail account it has imported, not only the contacts, but even all the people who I just wrote one mail in my life (even without phone number). I have hidden this contacts checking "show only contact with number" but if I perform a search this contacts appear. How can I really delete it, and set my phone to only consider GMail contacts (https://mail.google.com/mail/u/0/#contacts).

# Answer
> 1 votes
From my experience, GMail won't put people you have only emailed into your "My Contacts" built-in group (See Gmail and auto-adding contacts).

Because of this, you should be able to tell android to only pull from your "My Contacts" list, which would presumably only contain your important contacts.

The steps to do this will vary depending on your ROM. I'm using a nightly build of CM10, and these are the steps:

1. Open Contacts
2. Press Menu button, and choose "Contacts to display"
3. Choose "Customize"
4. Choose the account of interest, and make sure only "My Contacts" is checked/selected (Or any other groups you want).

Hopefully that helps you out, or at least gives you an idea of how to accomplish this.

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


# Question
Title: Are there intents for controlling Cyanogenmod profiles?
I'd like to use Llama. Instead of its own profiles I want to keep using the ones provided by Cyanogenmod because of their better integration. Is Ist possible to change them using llama, ie are there any intents that make this possible?

# Answer
> 2 votes
There's two ways of doing this:

1. The intents used can be searched throughout the entire source of CM available on github, notably `frameworks/base/core/res/AndroidManifest.xml` and general `grep` ping of the source.
2. `adb shell dumpsys | grep "Action: \"android.intent.action"`

The second option is the easiest - from AOSP here's a list of the intents... the mileage will vary slightly with CM as that would have extras or omissions:

```
android.intent.action.SCREEN_ON
android.intent.action.SCREEN_OFF
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REPLACED
android.intent.action.PACKAGE_REMOVED
android.intent.action.WALLPAPER_CHANGED
android.intent.action.BATTERY_CHANGED
android.intent.action.BATTERY_LOW
android.intent.action.BATTERY_OKAY
android.intent.action.ACTION_POWER_CONNECTED
android.intent.action.ALARM_CHANGED
android.intent.action.SYNC_STATE_CHANGED
android.intent.action.HEADSET_PLUG
android.intent.action.SIM_STATE_CHANGED
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.SCREEN_OFF
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.AIRPLANE_MODE
android.intent.action.BATTERY_CHANGED
android.intent.action.SCREEN_OFF
android.intent.action.SCREEN_ON
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.BOOT_COMPLETED
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.DEVICE_STORAGE_OK
android.intent.action.TIME_TICK
android.intent.action.TIME_SET
android.intent.action.CONFIGURATION_CHANGED
android.intent.action.TIMEZONE_CHANGED
android.intent.action.SCREEN_ON
android.intent.action.SCREEN_OFF
android.intent.action.TIME_TICK
android.intent.action.TIME_SET
android.intent.action.BATTERY_CHANGED
android.intent.action.TIMEZONE_CHANGED
android.intent.action.SIM_STATE_CHANGED
android.intent.action.PHONE_STATE
android.intent.action.ACTION_SHUTDOWN
android.intent.action.SCREEN_ON
android.intent.action.SCREEN_OFF
android.intent.action.BATTERY_CHANGED
android.intent.action.USER_PRESENT
android.intent.action.ACTION_SHUTDOWN
android.intent.action.SCREEN_OFF
android.intent.action.SCREEN_ON
android.intent.action.ACTION_POWER_CONNECTED
android.intent.action.ACTION_POWER_DISCONNECTED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_RESTARTED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.ANY_DATA_STATE
android.intent.action.DATA_CONNECTION_FAILED
android.intent.action.SERVICE_STATE
android.intent.action.ANY_DATA_STATE
android.intent.action.DATA_CONNECTION_FAILED
android.intent.action.SERVICE_STATE
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.BOOT_COMPLETED
android.intent.action.MEDIA_SHARED
android.intent.action.MEDIA_UNSHARED
android.intent.action.REBOOT
android.intent.action.AIRPLANE_MODE
android.intent.action.ANY_DATA_STATE
android.intent.action.HEADSET_PLUG
android.intent.action.DOCK_EVENT
android.intent.action.BATTERY_LOW
android.intent.action.SIM_STATE_CHANGED
android.intent.action.RADIO_TECHNOLOGY
android.intent.action.SERVICE_STATE
android.intent.action.EMERGENCY_CALLBACK_MODE_CHANGED
android.intent.action.USER_PRESENT
android.intent.action.SCREEN_OFF
android.intent.action.DEVICE_STORAGE_LOW
android.intent.action.DEVICE_STORAGE_OK
android.intent.action.AIRPLANE_MODE
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.CONFIGURATION_CHANGED
android.intent.action.CLOSE_SYSTEM_DIALOGS
android.intent.action.SCREEN_OFF
android.intent.action.ANY_DATA_STATE
android.intent.action.DATA_CONNECTION_FAILED
android.intent.action.SERVICE_STATE
android.intent.action.AIRPLANE_MODE
android.intent.action.TIMEZONE_CHANGED
android.intent.action.DOCK_EVENT
android.intent.action.BOOT_COMPLETED
android.intent.action.CONFIGURATION_CHANGED
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.SERVICE_STATE
android.intent.action.BOOT_COMPLETED
android.intent.action.DOCK_EVENT
android.intent.action.TIME_TICK
android.intent.action.TIME_SET
android.intent.action.CONFIGURATION_CHANGED
android.intent.action.TIMEZONE_CHANGED
android.intent.action.DEVICE_STORAGE_FULL
android.intent.action.DEVICE_STORAGE_NOT_FULL
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.PHONE_STATE
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_CHANGED
android.intent.action.PACKAGE_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.BATTERY_CHANGED
android.intent.action.SCREEN_ON
android.intent.action.SCREEN_OFF
android.intent.action.PHONE_STATE
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_RESTARTED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.BOOT_COMPLETED
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.DEVICE_STORAGE_LOW
android.intent.action.DEVICE_STORAGE_OK
android.intent.action.ANY_DATA_STATE
android.intent.action.DATA_CONNECTION_FAILED
android.intent.action.SERVICE_STATE
android.intent.action.AIRPLANE_MODE
android.intent.action.DOCK_EVENT
android.intent.action.BATTERY_CHANGED
android.intent.action.SIG_STR
android.intent.action.BATTERY_CHANGED
android.intent.action.DATA_SMS_RECEIVED
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.DEVICE_STORAGE_OK
android.intent.action.DEVICE_STORAGE_OK
android.intent.action.TIME_TICK
android.intent.action.DATE_CHANGED
android.intent.action.CLOSE_SYSTEM_DIALOGS
android.intent.action.MEDIA_BUTTON
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.ANY_DATA_STATE
android.intent.action.DATA_CONNECTION_FAILED
android.intent.action.SERVICE_STATE
android.intent.action.MEDIA_MOUNTED
android.intent.action.LOCALE_CHANGED
android.intent.action.TIME_TICK
android.intent.action.TIME_SET
android.intent.action.TIMEZONE_CHANGED
android.intent.action.CONFIGURATION_CHANGED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_RESTARTED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.HEADSET_PLUG
android.intent.action.DOCK_EVENT
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_CHANGED
android.intent.action.QUERY_PACKAGE_RESTART
android.intent.action.PACKAGE_RESTARTED
android.intent.action.UID_REMOVED
android.intent.action.UID_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.AIRPLANE_MODE
android.intent.action.DOCK_EVENT
android.intent.action.BOOT_COMPLETED
android.intent.action.TIME_TICK
android.intent.action.TIME_SET
android.intent.action.CONFIGURATION_CHANGED
android.intent.action.TIMEZONE_CHANGED
android.intent.action.DEVICE_STORAGE_LOW
android.intent.action.BATTERY_CHANGED
android.intent.action.AIRPLANE_MODE
android.intent.action.TIME_TICK
android.intent.action.TIME_SET
android.intent.action.CONFIGURATION_CHANGED
android.intent.action.TIMEZONE_CHANGED
android.intent.action.WALLPAPER_CHANGED
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_CHANGED
android.intent.action.PACKAGE_REMOVED
android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE
android.intent.action.MEDIA_BUTTON
android.intent.action.TIME_TICK
android.intent.action.TIME_SET
android.intent.action.CONFIGURATION_CHANGED
android.intent.action.TIMEZONE_CHANGED
android.intent.action.LOCALE_CHANGED
android.intent.action.SCREEN_ON
android.intent.action.SCREEN_OFF
android.intent.action.CLOSE_SYSTEM_DIALOGS
android.intent.action.SCREEN_ON
android.intent.action.SCREEN_OFF

```

---
Tags: cyanogenmod, profiles, llama
---


# Question
Title: How can I format a flash drive using terminal emulator?
I have a Huawei u8160 running Cyanogenmod 7.2.

I've recently installed the usb host package and some time then I successfully activated the usb host mode.

after that I needed to format a flash drive using ONLY my phone.

my phone doesn't recognize thumb drives, but I mount them on /mnt/sdcard/data folder.

So I wanted to know if there's any command in the terminal emulator that can format a usb drive.

**NOTE:** I've already tried "mkfs" command it doesn't exist,I won't accept answers telling me to format it on my PC.

# Answer
> 5 votes
There are native programs available on Android for creating file systems, and in most cases they reside in a directory below `/system` (my Motorola Droid 2 e.g. has them in `/system/xbin`. Depending on the file system you want to create, you can chose between:

* `mkfs.ext2`
* `mkfs.minix` (unlikely you want that -- and it might even be not available with your ROM)
* `mkfs.vfat`

As the latter is probably what you want, some closer explanation on its options here:

```
mkfs.vfat [-v] [-n LABEL] BLOCKDEV [KBYTES]

```

What do those options stand for?

* `-v`: Generate verbose output (reporting)
* `-n Label`: Give the file system a name
* `BLOCKDEV`: the file system you want to format
* `KBYTES`: probably the block size (I'm not 100% sure with this)

So the minimal thing to do would be:

```
mkfs.vfat -v /dev/block/uba1

```

(provided your drive to format is available as `/dev/block/uba1` on your system). One more example, giving the file system a name:

```
mkfs.vfat -v -n MyNewDisk /dev/block/uba1

```

It should report success then -- or an error if it failed.

**EDIT:** On some systems, the `mkfs` commands seem to be part of the `busybox` binaries -- which you can recognize with a full directory listing, e.g.

```
ls -l /system/xbin | grep mkfs

```

It should show them as "symbolic links" pointing to busybox then. In this case, you can optionally run them via busybox:

```
busybox mkfs.vfat

```

should show you the syntax then (thanks to ce4 for pointing this out -- credits to him ;) ).

# Answer
> -2 votes
The command to format through adb/terminal emulator is simply `format`.

---
Tags: cyanogenmod, terminal, usb-host-mode, formatting, huawei-u8160
---


# Question
Title: Will charging a smartphone while it is in a case lead to damage?
Will it harm my Razr to charge it while in an Otterbox case? I heard that would cause excessive heat which would damage the battery or shorten lifespan. True?

# Answer
> 1 votes
Heat and lithium ion batteries aren't the best of friends, so anything you can do to maintain a lower battery temperature will prolong your battery's life. While charging or under heavy load, you typically generate more heat than while resting, so in either of those cases, if your phone feels physically warm, it's probably a good idea to remove it from the case. However, if you're charging it somewhere that it's likely to be damaged by being knocked off a table, having something dropped on it, having a kid find and play with it, etc. then I'd be more inclined to keep a protective case on it. The life of your phone is much more important than the life of your battery, as a battery is much cheaper to replace (Note: I'm not familiar with how easy or difficult it is to replace the battery on a Razr, beyond knowing that it's not as simple as popping the back off and pulling the battery).

I'll add that while it's possible that a case (particularly the thicker ones like Otterbox produces) could lead to enough excessive heat that it damages the battery, I haven't heard of anything beyond a faulty battery actually damaging itself (think of the exploding battery stories). I would think that we'd hear a lot more about this if it were a significant issue.

---
Tags: battery-life, charging
---


# Question
Title: Email-client with Sent emails from many emails under IMAP?
I am struggling to set up graphical email-client program in Debian, more here and here. I have a similar problem with Android. I would like to see Sent -emails in my android phone. How can I see my sent -emails in my Android -phone from many email -addresses?

**Profile**

> I use IMAP. I have currently many devices such as laptop, Android and iPad -- to manage the same emails (some odd lag every-now-and-then). I have many email -addresses connected with apps such as Gmail -app by Google and K-9 Mail where I use IMAP.

# Answer
As with IMAP mails are stored centrally on the server, you can see all mails from all IMAP clients. You can automatically store sent mails to a "Sent" folder (instead of only send them and *not* storing them), which is configured on a per-client basis.

I cannot tell for your desktop clients how to do this, but with K9 you can select the folder in

*Menu → More → Settings → Account settings → Folders → Folder for Sent objects*

Just in the *Folders* menu, you will find some more special folders you can define (e.g. for drafts).

Having your "Sent" folder defined **on all your clients** (and **always having defined the same**), you should be able to easily view your sent mails from all clients, regardless of the fact from which client a mail was sent.
> 1 votes

# Answer
I built on top of Izzy's comment

> Having your "Sent" folder defined on all your clients (and always having defined the same), you should be able to easily view your sent mails from all clients, regardless of the fact from which client a mail was sent.

It really means that every client -- I mean every -- such as Mutt in Server, Evolution in Desktop, K9 in Android, Online settings such as Gmail-labels/filters, iOS email more here, desktop settings such as here and here -- must have corresponding settings. If one part is missing, your IMAP mailbox won't work over multiple devices or it has limited capabilities.

I gather below some errrors that I had to fix in order for IMAP work over multiple devices.

**Walk-through**

> 1. `'You have sent a message in a trashed conversation...'` -- fix this error in Gmail, more here. It may be because of filters or wrong setups.
> 2. Gmail folders are called `"Labels"`, make sure you have cross in a visibility -button, more here.
> 3. In mutt, make sure you have the record line correctly like this: `set record=/home/users/hhh/mail/Sent`
> 4. In iPad, make sure this here again and make sure `Settings > Mail, Contacts, Calendars >
>  Your@Email.com > Account > Advanced > Sent` corresponds to your other settings -- not something like `Sent Emails`.
> 5. In Desktop, make sure your Desktop client has right settings more here, here and here (Debian -biased questions).

Next time you may have the same problem with other folders such as `Trash` and `Deleted Messages` -- yes I know -- it is irritating that different email-clients use inconsistent terminology so you need to adjust every name and delete all extra folders/labels later.

I hope you luck, my setup looks to work but I am still fighting with a minor issues such as removing extra directories in K9, anyone knowing a solution to that?
> 0 votes

---
Tags: email, imap
---


title: cannot mount sdext for link2sd?

text:
# Question
Title: cannot mount sdext for link2sd?
I have a huawei u8160 running Cyanogenmod 7.2.

when I restart my phone I have to remount the sdext myself using terminal emulator.

```
su
mount -t ext2 /dev/block/mmcblk0p2 /data/sdext2

```

but now it returns :

```
mount : mounting /dev/block/mmcblk0p2 on /data/sdext2 failed : invalid argument

```

so I want to know how can I mount it again?

# Answer
> 1 votes
I've found it out,

the ext2 partition magically turned into ext3 without formatting I don't know how but it happened,

Formatted my ext3 partition into ext2 again and it worked,I couldn't find anyway to bring lost data back.

---
Tags: mount, terminal, link2sd, ext2
---


# Question
Title: How can I install CWM Recovery on my Galaxy Note?
I'd like to install CWM Recovery on my Galaxy Note. The build number is DDLPA. I installed ROM Manager but my phone wasn't listed in the options.

I've Googled this but haven't been able to find a reliable file as I'm not sure if my build number is supported.

A link and instructions to CWM Recovery for the DDLPA Galaxy Note would be helpful.

Thanks

# Answer
> 1 votes
CWM is not supporting ROMs and recovery images for the Galaxy Note yet. It is mistaken with Galaxy SII and other models.

If you are rooting your phone, DON'T USE THE CWM.ZIP file or you will brick it.

I've done it myself without knowing and now I cannot install roms or ever restore factory settings :(

# Answer
> 0 votes
Dr ketan has an excellent thread on this topic at the forums at xda-developers. I would consider this the definitive guide on how to safely root your Note.

---
Tags: samsung-galaxy-note, rom-manager
---