text:
What can I do to manage my phone's internal storage?
If you're not used to seeing the 'low on internal storage' notification, what is it that you're doing to keep your phone's internal memory from filling up so quickly?
The 'SD Card and Phone Storage' menu in the settings doesn't really tell me much other than how much is free. And, I don't really have that many applications installed. The top 5 storage hogging apps on my phone are Gmail (18.6 MB), Twitter (17.5 MB), Facebook (12.55 MB), Maps (9.63 MB), and Swype (6.06 MB).
So, are there apps out there (besides your normal file manager ones, like Astro) that will help monitor internal phone storage? Is there something I should be doing to keep my phone storage use to a minimum?

FWIW, Twitter (which I don't use) and Seesmic (which I do use) combined are about 5.3MB, and my Gmail (set up for manual sync) is 2.29MB. This is Android 2.2 on a Nexus One. Somehow, you're losing close to 30MB just in those two areas alone (36.1MB versus 7.6MB). Also, if you are on 2.2, see which of your apps can be moved to the SD card, if you don't mind doing that.

I'm on 2.2. I've moved all the apps that I can to the SD card. I'll have to try out Seesmic or Twidroyd. Haven't used either since Twitter released an official app.

See here how Android calculates your personal space limit: http://code.google.com/p/android/issues/detail?id=4991#c145

Related: How disk space is used on Android device?

I'm using an app called DiskUsage which helps visualize what's using both my internal storage as well as the SD card.

DiskUsage is spectacular, but it is hobbled because it does not have root access and therefore cannot see inside the mysterious folder "System Data", which can get very large (4GB in my case).  There is discussion elsewhere about what to do if this is getting too big, but I haven't found anything definitive.

@JessRiedel DiskUsage can access the /root directory, but the device needs to be rooted in the first place. This restriction applies to all apps that want to access /root directory.

Most of the apps you have listed are big because they are storing data.  The apps themselves are not that big.  I would encourage people to check large apps (you can sort by size in the manage applications area of the settings).   Chances are you can clear out the data and reduce the amount of size very easily.  Most of the data for those apps especially is email and data that are old and don't really need to be on your phone.

Going into "Manage Applications" and clearing an apps cache can be very helpful, although it should be managing those itself.

Yes that would be the easiest way to check which apps are using most of the data if your phone has lesser apps.

Here's a tip if you frequently visit "Manage applications" and "Storage"  to clear cache data, review storage usage. I used QuickShortCutMaker from sika524 to make desktop shortcuts to  get to these screens quicker (make in app via: select Activites; select Settings; find activity ending *StorageSettingActivity and *ManageApplications entries; use "try" option, and "create" button) . In AOS 5.x I found these options are several taps away, this saves a few taps. I only need to do cleanup frequently b/c I keep dipping just below minimum 10% threshold.

To better control your Gmail storage in Android you can adjust the number of days that are synced. The control is in a place many people don't think to look; it is in the "Labels" section. In there you can adjust syncing to a certain amount of days; I use 2 days. Depending on your daily volume you may need to go to 1 day or could go up to 10.
There is also granular control, you could keep your starred emails around for 4 days while everything else is at 2 days.
It is all about Gmail's label setup. It is better to think that you don't really have an inbox, you have emails that are labeled "inbox".
Hope this helps out! Once you make the change it will sync up and reduce your storage right away. I recommend turning off and on the phone after making the change (just like a computer, the Android phones like a reboot from time to time).

Have you found any setting changes that actually need rebooting? If there is any in an email app, that is a serious bug; I'd at most stand restarting the program (and even this is an annoyance bug), not the whole phone, just to apply a setting in an email program. Ideally, there should be no reason to reboot a Linux except when reinstalling a new ROM; any other reasons is generally a bug.

Cool! i couldnt see this option......

I am great fan of APP2SD. It comes directly with an advice which apps can be moved to your SD and if the cache can be removed!

This functionality is built into Gingerbread.

I'm using a combination of 2 apps, DiskUsage and Link2SD, and they've helped me keep storage use at bay both on Gingerbread and on ICS. The issues I had with the built-in storage management facility of Android were:

It only shows the space used by the app installation (doesn't count "resource" downloads common in games)
The size reported on the list of installed apps doesn't consider cache usage (so you have to guess and go looking in the details of suspected apps)

DiskUsage is excellent at locating "resources" that may be taking up lots of space, and may be even be left behind when the app that downloaded them is uninstalled.
But if you have lots of small to medium sized apps installed, or if you're using many apps that stay online, Link2SD allows you to quickly locate any misbehaving one. It shows you a list of all installed apps, and allows you to sort them by name, install date, install size ("apk+dex+lib" option), data size, cache size, or total (install+data+cache) size.

If you have many apps showing a lot of cache usage, Link2SD can also clear all of them at once with the "Clear all app caches" option.
Also, if you're using Gingerbread, be aware that apps moved to SD card keep a part of themselves, called "dex", on internal memory, and the size of this "dex" varies from one app to another. With Link2SD you can sort by "dex" size, and quickly find any apps that may be too big to keep installed on certain phones, even if they allow moving to SD (I'm looking at you, Google+ client). Or the other way around, you can sort by "apk" or "lib", and move to SD all apps that show near the top (and allow being moved).

Yes link2sd increases free space inside phone memory but requires rooted phone

You can also choose to replace the default GMail app with the K9 mail client - the main plus point being it can handle other POP3/IMAP4 accounts as well as keep the storage for your email accounts on the SD card - this option does make it a little slow for first access, but if space in your internal memory is at a premium, then this might save space.
You can also try other smaller Twitter clients like Tweetdeck or Touiteur or even a web based mobile site like http://m.twitter.com OR http://m.tweete.net
That would obviate the need for a client app.
WRT Swype, if you prefer other ordinary keyboards, there are a plethora of them available in the market like Better Keyboard / Smart Keyboard etc. which are far smaller in size, but certainly don't have Swype's functionality.

Gmail is devil, it has many non-standard features I can't live without that IMAP4 clients cannot always handle cleanly (e.g. Archives, Labels, Important messages, etc).

Well, there are workarounds - moving a message into a label folder will in fact, assign a label to that message. Also, if you "flag" a message in an IMAP client, that amounts to starring the message in Gmail (of course, if you have extended star icons enabled in the labs, that won't help you assign the other icons)

Re: Twitter app. Unless something has changed in it (it's a couple of versions since I used it), it stores all its cache in "data", which you can clear out by going to "manage applications" in settings. If you do clear out all the data, you'll need to open the app and log back in again. Other apps, eg TweetDeck, have this stuff more easy to clear out in a "cache" section, but Twitter doesn't do it properly.

Either clear your dalvik-cache, install a custom rom (like cyanogen) or force apps to your SD card with an app called 'LinkApp2SD' (I had to reformat my tab because of this one, but it should work if you're rooted and have a G-certified phone).
Also, if you don't want to root your phone, you can try cleaning your app data and cache, or even uninstalling apps you don't use anymore.
See my website's blog to find cool apps and games that can be moved.

I have used the previously mentioned Disk2Usage to take a look at what's eating up my data.
What you can do depends on what your device is.
If you have an external SD card in addition to your phone's internal storage, you can periodically move data over. For example, my camera takes pictures and stores them in the internal storage. Since my phone (an Epic 4G Touch) has an 8 megapixel camera, those pictures can get pretty big, so I'll occasionally move all of my pictures to the SD card when space runs low.
I've also noticed that a lot of programs cache data in the internal memory. I've seen photo apps that cache thumbnails, and even Amazon's App Store caches the entire app APK for any apps you download from that store. This can take up a lot of space, and is generally safe to remove, since, if the app needs it, it can re-download it.
I use the above Disk2Usage app to find the large cache directories, then use a file manager app (like Solid Explorer) to delete those cached files.
Hope that helps.

I've used the terminal emulator to look at my folders (could not find any app that can look into the internal storage partitions - /data etc'
Note that you need superuser permissions for that (I'm rooted so I just enterd su)

In the manage applications area of the settings, select apps that you dont use. Uninstall these apps if possible,  if not the following method will greatly reduce their size. Force close, clear cache,  clear app data, Uninstall updates, disable.  This also prevents them from growing again. Also in android 4.x, the function of apps that write to sd are broken,  only android itself eg. through the file manager has that permission.  Additionally while many of the apps above look great, they will take some space. I'm posting on a Galaxy s5, but many older devices don't have 16gb of storage space to play with. I would however recommend a good cleaning app that detects app leftovers and removes them as well,  and of course if you decide to stop using such an app you can Uninstall it, it has already served it's purpose. Also ALWAYS move songs, ring tones,  pics, etc. to the sd card.

I just received the dreaded out of space notification and used Memory Map, which was very helpful in finding what the issue was.

To bring this a little more up-to-date, let me add a missing piece. Between the lines you could already read that many pre-installed apps are quite data hungry – even if you don't need them. They're receiving updates, which again consumes "user space". So here's a step you can perform:

Nagivate to Settings › Apps
Make sure you select the tab "All Apps" (on some devices: select "All Apps" from the drop-down)
Now walk the apps you haven't installed yourself. For each of them you've never used and don't plan to use (no panic if you change your mind later, steps can be reversed):

Tap their entry
Tap "force stop" (if not grayed out) to make sure the app is no longer running
Tap the buttons to "clear cache" and "delete data"
If you see a button labeled "Uninstall Updates", push that. It will then be re-labeled to …
Press the "Disable" button. See our disable-app tag-wiki for some background on this.

What you have achieved that way:

You freed the space used by the apps' data
You freed the space consumed by their updates
by disabling them, you made sure they do not generate new data and also do not receive updates

If at any time in the future you want one of those apps back: Go to the very same place. You won't see a "Disable" button there anymore: Aftger you've pressed that during above process you will have noticed it's now labeld "Enable". Press that. The app will be re-enabled and available, and its updates will start flowing in again as well.

I also found that "disabling" bundle apps seems to free a lot of internal storage.
I chatted with people on the android IRC channel, and it seems all apps always use some form of cache which takes memory.
Apps that you cannot uninstall like google maps, music, movies, youtube, drive, photos, hangout, etc can be "disabled". They're restored to their factory version, and don't run in the background anymore.
I was running out of internal storage, and doing so freed about 1GB of internal storage.
This was done on an archos 50 platinum, which has 8GB of ram.


text:
How to Import/Export Group field in Contacts via VCF?
OS: 2.1
Phone: Samsung Galaxy S (Vibrant)
When exporting or emailing a VCF file from the Contacts app, the Group data (e.g. Family, Friends) does not get exported.  Similarly, the CATEGORIES property is ignored when importing a VCF file.  Does anyone know how to get this data into/out of the Contacts app via VCF?  Thanks!

You are doing this on the web inside of gmail, right?
I didn't see the groups included in the VCF file either.  But they do seem to be included if you export it as a CSV.  Is it possible that you can use the CSV instead?

No, this is within the phone contact manager itself.  My contacts do not sync with my Google contacts.  Not sure why, and I'm not sure I want them too, anyway.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/2.5/

sort: votes


text:
What is meant by "Wi-Fi Hotspot" in Android 2.2?
Android 2.2 has a new feature called "Wi-Fi Hotspot" which was not available in previous versions. What is the importance of this feature? What is meant by "Wi-Fi Hotspot"? Is there anywhere that I can find information about this?

FYI, it's colloquially known as "tethering"

Wi-Fi Hotspot allows you to share your phone's internet connection with other devices which have Wi-Fi adapters. For example, of you have a laptop with Wi-Fi and you want to connect to the net, you can enable Wi-Fi Hotspot on the phone then connect the laptop wirelessly to the phone.
There may be carrier restrictions or costs for doing this... like Sprint which requires you to activate the Wi-Fi option for your EVO's account which costs an additional $30/month.  Other carriers may assess charges by amount of data consumed or block the feature altogether.
Some users have rooted their phones to bypass the enablement restrictions, but that may still result in charges for bandwidth used.

Is this feature not available for phones other than Android.How different is this feature of Android2.2 different than others.And also if we connect Laptop wirelessly to phone can we see all the data of phone from Laptop?

I imagine that there are non-Android phones that have a hotspot feature.  The Wifi Hotspot features was not introduces to Android until 2.2/Froyo.  I believe the hotspot is pass-through and doesn't expose the phone's data, but I'm not sure.

If a laptop is having WIFI, why should it connect to phone to access internet ? can't the laptop access internet directly with out connecting to phone?

Sometimes I work I my laptop in a place where there is no WiFi, but I have a 3g or 4g connection.  Having the option to share my phone's internet connection with my laptop is very useful in those situations.  I used to have a cellular pcmcia card for my laptop, but enabling the WiFi hotspot for my phone costs half as much each month for my carrier and I can add it to my account t only when I need the service which saves more money.

Indeed, it's so useful that Verizon and other carriers disable this functionality because they are trying to market products and services in this space, and Android makes it too easy.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
ZIP+4 ZIP codes in Contacts for Samsung Vibrant (Galaxy S)
I have a Samsung Vibrant (Galaxy S) running Android 2.1-update1.  I have ZIP Codes for many of my contacts in the ZIP+4 format (e.g. 99999-1234). However, the field for ZIP codes does not allow any character except numbers.  Without being able to add a dash it makes it difficult to read (e.g 999991234).
I would have thought that it would auto-format the number they way it does for phone numbers.  Is there anyway to have the default Contacts program accept ZIP+4 ZIP code format?  Are there any alternative Contacts programs that provide the correct formatting for ZIP+4?  Is the Contacts program standard across manufacturers (e.g. part of the OS)?

Not a direct answer, but if you create them on Google Contacts, you can enter the dash and it will show up correctly on the phone.  If you create them on the phone, you can edit them to have the dash on Google Contacts after they get synced there; on the next sync, they'll have the dash on the phone.

Well, at least that is a solution.  However, I would really like something that doesn't require syncing, editing, and re-syncing just to enter information that by default should be able to be correctly formatted when first entered.

It seems that entering ZIP Codes directly in the Contacts app in the ZIP+4 format under Android 2.1-update1 is not possible. However, I just updated to Froyo (2.2) (T959UVKA6).  Not only can the Contacts/ Storage app natively import and export contacts to and from the microSD card, but it also allows directly entering ZIP+4 with the dash in the ZIP Code field!

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/2.5/


text:
Send fax directly to or from phone without going through a web-based service?
Is there a way to send or receive faxes directly to/from the phone without routing through a web-based service?
There are times when I've needed to send or receive a document image without going through e-mail or a third-party service.  It may be a recipient without an e-mail option for a document I need to submit (e.g., a particular government agency) or it may contain sensitive information that I do not want going through other hands.  When I checked the app store, everything I found seemed to involve a web-based service (I could've missed one, though).
With a device that can take images and make phone calls, it seems like a natural extension of the capabilities to be able to communicate with a fax machine directly.

fax? why not simply send an eMail or the captured image to a webservice?

Under some circumstances fax can be more secure.  I don't want signatures or identity info going through e-mail or a third party.  (I realize an app or SD file could be a risk, too).  And sometimes the recipient doesn't do e-mail.

Did you search the Market before asking this question? I see at least 20 apps that come up with the keyword "fax".

Yes, I did.  I may have missed it, but I didn't see any that looked like they were direct by phone.  Everything I saw looked it went through a web-based service.

@Keyboard: Certain organizations (banks, hospitals and such) still work only with faxes, and email is not an option.

Are you sure fax over mobile network are actually secure? You're sending unencrypted data over the air, and you can't use encryption since that will break any unmodified fax system. GSM/3G offers only moderate level of security, and it is possible for a determined hacker with  some processing power to break GSM/3G's voice and data transmission. GSM/3G transmission passes unencrypted through your mobile operator (a third party you may or may not trust) and the receiver's operator, if you are concerned about privacy/security, you need an end-to-end encryption, e.g. PGP.

On the other hand, if you need to work with legacy systems that still relies on fax and does not accept emails at all; then you shouldn't need to worry about sending through web-based service?

I guess I figure that there's a lot more sniffing of web traffic than GSM/3G call traffic. I'm not worried about determined hackers because my usage is to infrequent and random to justify the effort - it would be FAR less work to break into my house and take it info. I'm concerned about casual and I guess I haven't seen anything that leads me to believe that I'm likely enough to be the victim of un-determined hacking on my calls.

Risk is not the same as security.  Sending email over an insecure connection is probably more risky than faxing, yes.  But sending email over a secure connection is less risky than faxing.  What are the chances someone breaks into the receiver's account (as opposed to walking past the fax machine) or cracks GMail's security (for example) and steals your message in particular?  Not high.

E-mail is not an option for some use cases, so acceptable risk with e-mail is irrelevant for my objectives.  Being able to send a fax image to a recipient is the point and I'm OK with the risk and have had more then one occasion when I would've appreciated an application that allowed me to send one.

As others have noted, this is not any more secure than email.  But yes, it is possible.  (See http://navasgroup.com/attwireless/fax.htm for an ancient example).  Has anyone written an app to do this with an Android phone? That's incredibly unlikely.

As above - I'm not convinced that for my use cases (which are infrequent) that it's less secure.


text:
Undeleteable blank contact on HTC Legend
I have a contact with no contact details, apart from a name and which can't be deleted. The option just doesn't appear in the context menu like for other contacts. Is it possible to delete this contact?

Try deleting it from your Google contacts.  If it's not in your Google contacts, it probably came from another source, like Facebook or Twitter.  You should also be able to hide contacts that don't have a phone number, so as a last ditch effort, that may be good enough for you.

The contacts appear to be from Skype. I wonder why they are shown as blank


text:
Anyone having the same problem with Facebook/Android not showing photo's uploaded from the phone
Has anyone noticed the problem when uploading photo's to Facebook using the Facebook for Android application ?
I uploaded photo's last week , and they displayed ok in FB/Android.
I did the same this weekend (uploading photo's using FB/Android), and now they are not visible in FB/Android (just showing the brown image place holder), although they are uploaded and displaying fine on FB/Windows .
My collegue noticed the same here.

From a couple of days a noticed too, that some pictures from Facebook are not shown. If I login later they will show up, but other pictures will not.
I saw a news that they made some changes to photos infrastructure so it's possible to be a temporary outage until they consolidate the new changes on all servers.

I've noticed that a few random photos will not display even when selecting them using different browsers in mobile mode. But reload using desktop setting and all fb photos display fine. I've removed both fb messenger and fb app due to them being so flaky. There's more stable ways to use fb on Android. My new Android rule is not to use an app where a browser can perform the same task, sometimes less convenient but always more reliable.

You may want to take your picture first, then upload it to Facebook via the Share button in the gallery app.

ABryan Denny: That does not make a difference.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Is it possible to create a URL link to a website on the home screen?
Is it possible to create an icon on my desktop home screen (Android 2.1 Samsung Galaxy) that I can tap to fire up the browser to a specific web site?

Create it as a bookmark in the Android browser. Then, long-press your home screen and choose the "Bookmark" option. Select the bookmark you made and Voilà!

For newer versions of Android, assuming you're using the Chrome browser:

Go to the URL you want in the browser
Open the menu (three vertical dots) and choose "Add to Home screen"
Confirm the title you want to give the icon and click "Add"

Et Voilà! You now have an icon on your home screen that will open your browser to that URL.

Why doesnt this work for me? I have android 5.0. Is this feature gone?

@the_prole: Hardly. Still works for me in Android 7.1.

I was having a problem with adding bookmarks to the home screen with my new Samsung Galaxy Fame, using Android 4.1.2. The 'Add to home screen' option seemed to have disappeared.
The solution seems to be to use the stock browser (not Chrome).
Create the bookmark.
Long press the new bookmark and select the 'Create Shortcut' option.
This places the bookmark on the home screen.

I just want to add that the currently updated browsers such as Chrome for Android and Firefox offers exporting any site opened in a tab as a shortcut to home screen. There is now no need to create a bookmark to make a home screen shortcut.

For Chrome, simply open the website, tap Menu button and choose "Add to Home screen".
For Firefox, open the website, tap Menu button, go to Page and choose "Add to Home Screen".


text:
How can my Chinavasion TechPad Tablet be put in standby mode
My Android Tablet. (TechPad 7" Tablet from Chinavasion, S3C6410 Android 1.6;) has an option to dim the screen after 2-10 minutes of inactivity.  However, there is no option to put it into a "standby" mode, and a full reboot takes 20-30 seconds.
Any ideas how to really put it into a standby / hibernate mode?

So does pressing the power button turn it off completely?

Android does not support a standby or hibernate mode.


text:
How to install the official Android 2.2 (froyo) on Samsung Galaxy S without Windows/Kies

Possible Duplicate:
How do I upgrade Firmware on my Samsung Galaxy S without windows

Froyo has been finally released for Samsung Galaxy S. The update seems to be only available via a Windows application called Kies. I don't have access to a Windows computer any more (I use Mac and Linux systems only). Does anybody know how to install the update (the official one, not CyanogenMod) without this application? Can I use Custom Recovery for this like in this related answer?

possible duplicate http://android.stackexchange.com/q/181/113

I think you'll find there's a lot of Windows users who'd love to ditch Kies and find a platform independent way to update. It is horrifically bad software, with massive problems even detecting that your phone's attached (I have to unmount my SD card before it'll detect the phone, other people have to jump through even more hoops, good luck getting it working if anything's saved files with long file extensions to your internal or external SD). Bring on OTA!

GAThrawn: Sounds like Samsung has the exact same issue than Nokia.

based on my experience Nokia Ovi Suite works like a dream compared to Kies on my Win7 x64... It's that bad.

Going through the Galaxy S Flash/Root/ADB/ROM guide on XDA, I just spotted this:

I'm running Linux/OSX. Can I still flash my firmware? Do I need to
  install windows?

If you are running
  Linux you do not need to install
  Windows. You can either run Odin in a
  virtual machine or alternatively use
  Heimdall by Benjamin Dobell. Heimdall
  runs natively on Linux and has reached
  a well tested release state.

Which takes us to here Heimdall - Cross-Platform Open-Source Flashing Software:

What is Heimdall? Heimdall is a
  cross-platform open-source utility to
  flash ROMs onto Samsung Galaxy S
  phones.
How does it work? Heimdall uses the
  same protocol as Odin to interact with
  a device in download mode. USB
  communication in Heimdall is handled
  by the popular open-source USB
  library, libusb-1.0.
What platforms does Heimdall run on?
  Linux, OS X and Windows (XP, Vista, 7
  etc.)
What Galaxy S variants has Heimdall
  been tested with? I've tested Heimdall
  with a Galaxy S GT-I9000 (8 GB) from
  the United Kingdom and Galaxy S
  GT-I9000 (16 GB) from Australia. I
  don't have access to any other devices
  to test with at present, but community
  members have confirmed it to also
  function correctly for the AT&T
  Captivate.

Hopefully this will help us all out!
Though obviously as this is effectively a replacement for Samsung's Odin software it's more designed towards people who are happy grabbing their ROMs from various places across the internet and flashing them on in a fairly custom way, as opposed to Kies which is (supposed to be) pretty much plug and play.

I don't know how much help this will be, as I've unfortunately not had any experience with the Galaxy S series or the Kies application.  However, I'm quite familiar with the Samsung Moment and the myriad of issues surrounding drivers and software running natively in Windows to flash that device.
From the Linux end of things (Ubuntu x64) I was able to get the software for the Samsung Moment (SWUpgrade, it's called) running through VirtualBox on a Windows 7 client from the Ubuntu host.  Took me a good couple of hours to get it working, and even still, it's a bit finicky at times, but I've successfully flashed my Moment several times from Ubuntu using that rather thick layer of virtualization.
I don't know if that would be a feasible option for your setup, or if the software would even work the same, being a completely different phone.  I would imagine the software would be somewhat similar, as they're both Samsung devices and most Samsung devices do share similarities when it comes to the proprietary file system and partition structure.


text:
Is it possible to make tasker events conditional on whether I'm roaming?
Using 'Tasker', I have a task set up to dial my mobile phone balance enquiry number at 7pm each night, put in the right options, then hang up.  That results in a text being sent to me each evening with my remaining minutes - great!
However - I'm about to go abroad for three weeks and, left in its present state, it will rack up quite a bill if it does manage to dial.  How can I make this action conditional on roaming?  I considered using the location context but it crashes above certain ranges and isn't that reliable.

If you are usually home at 7pm, you could make it conditional on the presence of your home Wifi network (using "Wifi Near") or a cell tower near you (using "Cell near"); if you use a dock at home, you could make it only fire when docked instead.
You could also make it dependent on a calendar and just set the dates for your trip now.

TomG:  Thanks.  Good workarounds - especially using wifi near as it's likely to be more robust than using location.  The dates idea is also nice but I go away quite frequently and it would be tough to maintain and expensive to forget!  I'm keen to hear any other means of detecting the roaming but will probably settle for your wifi idea Tom.  Thanks.

There's a Locale plugin (that you can use in Tasker) that might handle your needs.
And here is another plugin for Locale.

Try this:

Profile context triggers on set variable CELLID with task check if ROAM matches off.
Set a variable ROAMING accordingly. Now you can have other profiles use the ROAMING variable to change settings like calls to accept or limiting data.

Tasker may not update CELLID instantly so you nasty be roaming a little while before it fires. Maybe a minute.
Try and let me know. Here is an export:
 <class cl="TaskerData" sr="">
    <tv>1.2u2m</tv>
    <class cl="Profile" sr="prof5">
        <cdate>1328389747604</cdate>
        <id>5</id>
        <mid0>25</mid0>
        <nme>Roaming Monitor</nme>
        <class cl="EventContext" sr="con0" ve="2">
            3050
            <pri>0</pri>
            <class cl="StringArg" sr="arg0" ve="3">
                <val>%CELLID</val>
            </class>
            <class cl="StringArg" sr="arg1" ve="3">
                <val></val>
            </class>
        </class>
    </class>
    <class cl="Task" sr="task25">
        <id>25</id>
        <pri>10</pri>
        <class cl="Action" sr="act0" ve="3">
            37
            <lhs>%ROAM</lhs>
            <op>2</op>
            <rhs>off</rhs>
        </class>
        <class cl="Action" sr="act1" ve="3">
            547
            <lhs>%ROAMING</lhs>
            <op>10</op>
            <rhs></rhs>
            <class cl="StringArg" sr="arg0" ve="3">
                <val>%ROAMING</val>
            </class>
            <class cl="StringArg" sr="arg1" ve="3">
                <val>1</val>
            </class>
            <class cl="IntArg" sr="arg2">
                <val>0</val>
            </class>
            <class cl="IntArg" sr="arg3">
                <val>0</val>
            </class>
        </class>
        <class cl="Action" sr="act2" ve="3">
            43
        </class>
        <class cl="Action" sr="act3" ve="3">
            549
            <lhs>%ROAMING</lhs>
            <op>9</op>
            <rhs></rhs>
            <class cl="StringArg" sr="arg0" ve="3">
                <val>%ROAMING</val>
            </class>
            <class cl="IntArg" sr="arg1">
                <val>0</val>
            </class>
        </class>
        <class cl="Action" sr="act4" ve="3">
            38
        </class>
    </class>
</class>


text:
How to Edit Track in Google "My Tracks"?
I frequently for get to turn off Google My Tracks recording. When forget this after biking or hiking, it leaves a big trail on my track from where I got into my car and drove home. Is there an easy way to trim this portion of the track? Or to enter an edit mode in My Tracks or Google Maps to remove the extra section?
Thanks!
(PS can some one add a tag for google-my-tracks.

Upload the map to Google from your device
On maps.google.com, click "My maps" (top left, below the Google Maps logo)
Select the map you want to edit
Click the 'edit' button (top right in the left sidebar)
The line is now editable. Right-click points on the line you want to delete and select 'Delete this point'.

Is there a way to send it back to My Tracks?

endolith, at the moment you cannot do that. See http://groups.google.com/group/mytracks/browse_thread/thread/0aec47f8dec64588#.


text:
Merging multiple SMS databases
I have a lot of problems with my phone, and so I have a number of nandroid backups with different sets of overlapping SMS messages saved in them.  I've also made a few copies of the data folder when the thing wouldn't boot.  I like to have all my SMSes backed up to my Gmail for posterity and searchability, using SMS Backup Plus.
What's the easiest way to recover messages (and maybe other data) from my backups?  Is it possible to open or run nandroid backups inside an emulator?  Are they in a format that can be extracted to a filesystem, and then take the database files out and merge them with some kind of database tool and then put the merged file on my phone?  Would it handle duplicates?

I believe /data/data/com.android.providers.telephony/databases/mmssms.db is an SQLite DB, so you can use this firefox add-on, SQLite Manager and that should let you merge whatever backups you have lying around rather easily.
After you merge them, you can just replace /data/data/com.android.providers.telephony/databases/mmssms.db with the resultant merged file (backup the oringal first).

Would that automatically handle duplicates?  I don't grok SQL.

It depends on the manager. The feature list is here http://code.google.com/p/sqlite-manager/ At the very least it will take some monkeying around. But it seems like DB manager with an eye towards ease-of-use, so it shouldn't be too difficult. My guess is that you'll just do a series of imports on the backups and then save your master list to copy back to the database dir on your phone.


text:
What is the correct format/resolutoin for videos on an HTC Wildfire?
i currently own a HTC Wildfire. I am well aware of its "lower" CPU speed than its HTC brothers, nevertheless, it is a great phone and I'm very happy with it.
I tried putting a mp4/m4p video (around 330mb) and the built-in video player crashed.
Can anyone guide me on the correct format/resolution I can use on this phone? Additionally, if I do have to convert an existing video, what software do I use?
I appreciate all inputs, thanks!

sorry, haven't updated this in a while. Since i was only using the free 2GB MicroSD bundled with the phone, this was causing the problem. so I purchased a 16GB, this fixed the issue. thanks!

Your new card probably has a better data transfer rate.

Have you tried using VPlayer?  It should handle any mp4, avi, divx, etc. video that you throw at it, without the need of converting it.


text:
How can I access Internet using my PC through an Android phone connected via USB?
I have a phone with Android 2.2 (HD2 with CM6.0) enabled to surf internet pages (data connection). Now, I would like to "surf" using my PC connected via USB to the phone.
Is it possible? Which programs do I need both on PC and Android?
If there are multiple solutions available, a free or low cost one is preferred

I'm not sure what you're trying to do here what do you mean by "enabled to navigate"? Are you trying to use your Android as a tethered GPS device for a PC, or something else? Are you expecting the maps and driving directions from the Navigate part of Google Maps to appear on your PC?

Sorry for the poor explanation. I mean to surf internet web pages

Seeing that you have 2.2, the easiest solution would be to go to Settings -> Wireless & networks -> Tethering & portable hotspots. There you have an option to enable usb tethering (exactly what you asked for) or, even better try out Portable Wi-fi hotspot. That way you will be able to connect to the internet without connecting the phone via usb, and connect multiple devices if you want.

It sounds as though you are just asking for a tethering solution (whereby you share your data connection on your phone with your pc). A stalwart in tethering is the app PDAnet. The free version (which doesn't allow secure connections, but allows most browsing and even WoW connection) can be downloaded from the market and installed on your phone. From there you install a client side program on your desktop/laptop, enable USB debugging on the phone, and follow PDAnet's instructions.
If you want to one-up my suggestion feel free, there are better solutions, but I would recommend trying the baseline to get your feet wet first. Especially considering you'll want to keep the data usage inconspicuous.

If you're trying to use your Android phone as a GPS device for your PC (or presumably laptop) then you can try an app called GPS Tether this sets your phone up so that it will forward GPS details to a PC, but the PC does need the full Android Developer tools installed, so that it can use ADB (Android Debug Bridge) so isn't very straightforward.
This will only pass on the GPS location data to the PC, the PC will need to do everything else, so you'll need a separate navigation and/or maps program on the PC to make use of the data.

If you want something to connect to the files on your PC (which clearly is what you meant by navigate) you'll either need to share files on your PC, on the same home network you connect your phone to, or get an app like pocketpc to have a remote user connection to your phone.

Do you have a link to that app you mention?


text:
How can I download arbitrary files to the SD card on my phone?
So I have an android phone, and I wanted to download some files on it that are not currently accessible from my PC (corporate firewall).  The thinking is that once the files are on the phone, I can easily connect the PC to the phone to access the files.  The problem I have is that the phone refuses to download the files, claiming that
"Cannot Download.  The content is not supported on this phone."

So how can I get the content onto the phone?  I know the phone will be unable to run these files meaningfully;  I just want them downloaded and stored for later access.

If it's a file from a website, you should probably try to use a different browser. Opera Mini for example uses a different download manager (not the native one) so it doesn't refuse to download any files.
If you want to move them over from a PC, try some of those methods.

Quite correct;  the Opera Mini browser downloaded the files with no problem, and saved them on the SD card.

The ASTRO file manager has an option "Allow the Web browser to download any type of file". I think that does what you (and me and everybody else) wants, but haven't tried it yet.

use awesome drop. You only need to install the awesome drop app from the market, then go to http://labs.dashwire.com/drop, and then enter the pin given in the webpage to your app, et voila you can transfer any file from your PC to phone over the internet.
edit: there is an intro video here.

That looks like useful software, but it assumes that I already have the file, and want to move it to the phone.  Actually, I don't have the file, and want to download it onto my phone from a remote webserver.  Good link though!


text:
Can you setup android gmail to play a sound when an email from a certain email address comes in?
I have my work emails forwarded to my phone and I'd like to be able to give them precedence over emails to my gmail. Is this possible? Or can I setup my work email using POP and then use a different tone for those?

Not with the Gmail app that comes with the phone, no. But, if you really wanted this, you could do it like so:

Create a new Gmail account, like emailsfrommyfriendjohnsmith@gmail.com.
Setup the new Gmail account in your Android phone, and enable notifications.
In the Gmail web interface, set up a filter in your current Gmail account that has all email from your friend forwarded to the new email address. (You will still see these emails in your regular inbox.)

Voila!

Somewhat depends on what your work email server looks like, but I have a Gmail account, two Hotmail accounts, and an MS Exchange account on my Droid and there is an option within each Accounts settings to turn on/off "Email notifications" and to choose which ringtone is used for that notification.  So, by that token, you could have your Gmail emails sound off with the default notification and have your work email play any crazy sound you like.  Does that help or am I misunderstanding your question?


text:
How do I turn off auto-complete when texting?
Does anyone know how to turn off the auto-complete feature when texting?
Sometimes I just want to text and not have my device try and tell me what I'm thinking. Other times this is OK, but I just want to turn off the autocomplete sometimes.
I looked in the phone settings (not very hard I guess...) and I didn't really see anything to allow this.
Anyone know how this is done?
EDIT:
I am using a Droid X.

You're going to have to tell us what keyboard you're using, since I don't think stock does auto-complete.

I'm not sure what you mean... I just got my droid a few weeks ago, so I'm really new to this game... I'm using the standard textmessage layout that came with my DroidX

Maybe it's not called auto-complete... I want to disable the bar that pops up above the keys when you are typing. It resembles auto-complete, but to actually complete the word you have to tap one of the suggestions...

I know you had your question answered, but I just wanted to bring up the fact that some phones have multiple keyboards available, i.e. my Samsung has the Samsung keyboard and the Android keyboard.  I hated the Samsung auto-complete; however, when I switched to the Android one, it has auto-complete that is only activated when I hit the spacebar or use punctuation.  Otherwise it uses the word I actually type.  That's in 2.2 anyway.  This is in Settings -> Locale and text -> Select input method.

The following works for me on an HTC Incredible. Hopefully your settings are similar.
Settings > Language & Keyboard > Touch Input > Text Input > Prediction. You should be able to un-check Prediction.

Ah, thank you. The settings are similar, but a little different. The path is Settings > Language & Keyboard > Multi-Touch Keyboard > Show Suggestions. I should have seen that, but I kept overlooking it. :) thanks!

Yeah, I sometimes wish the settings were the same for all phones. Glad it helped!

I have a Nexus S with 4.0.4 and i have turned off Settings/Language and Input/Spelling correction, but when writing SMSes it still corrects me.
Then found another settings:
Settings/Language and Input/ Android keyborad -> press settings button next to this, then down you have show correction suggestion (i'm turing it to always hide)

didn't help. Set auto-correction to Off: http://www.youtube.com/watch?v=3Up_p7vzdQs

I knew I had turned it on (autotype/autocorrect/word predict) since I first got my phone, but could not figure out how to turn it off, until now.
On my Samsung Galaxy S, I use an Android keyboard. There are keyboard options and typing options for the phone under settings in the app area, but none of those will change the features of the keyboard itself.
These features are accessed from the keyboard, on the bottom line (as it appears when you first start to type). There is a settings button (looks like a cog or a sprocket) next to the "Go" button. You will find all the necessary settings you seek to turn on or off all features that your keyboard does automatically.

For HTC One VX
Settings > Language & Keyboard > HTC Sence Input> Advance Settings > (turn off) Word Prediction.

For a Galaxy Note 3
Go to settings -> controls -> language and input,  Click Samsung keyboard settings icon, deactivate auto replacement

on the galaxy s4 you can turn off the "predictive " text by going to settings in your apps.  Settings...Language and keyboard. Hit settings (cog wheel) then turn off "predictive " text.

Your answer does not help, where is this "predictive" text, I do not see it on JB...?

Found it in Android, in Settings - Locale and Text - AutoComplete.  You can still use the word suggestions bar since that is toggled separately.

As of 10/20/2014 for Android OS. Go to Settings / My Device / Language and input. Click the Settings icon for Samsung Keyboard.  You will see Auto Replacement there with other items.

Sure there's a SAMSUNG keyboard on a DROID X (a Motorola device)?

Turn off tracing. This makes it impossible to disable the prediction part because they use same software bits. Then disable the prediction.

I have a Samsung Galaxy Glide. The predictive text feature can be shut of by doing the following:

Open a text window like you normally would when you send a text using GO SMS Pro.
On the bottom left hand corner you will see the settings icon which is the same as the icon for your phone settings.
Hit this button and it will bring up a screen of settings that you can select.
Uncheck the predictive text setting and voilà - no more annoying auto complete when you're trying to text!

oops. that should be left hand corner.... sorry!

You should find your Caps Lock key above the shift key on the left side of your keyboard.


text:
Spell Check app or setting while using drop down keyboard

Possible Duplicate:
How can I get word completion with physical keyboard?

Is there anyway to get spell check functionality while using the drop down keyboard?

Do you mean "slide out" keyboard, like on the Droid?

Most keyboards come with suggestions for common words, so a spell check function is rendered moot. Once a user types a couple of letters, the most common words containing those letters usually show up in a bar above the on screen keyboard.
Most keyboards like Smart Keyboard / Better keyboard also have options that allow for word suggestion to show up if a user opts for the hardware keyboard instead of the "soft" on-screen keyboard.


text:
apps automatically starting?

Possible Duplicate:
How can I stop applications and services from running?

I noticed that some apps automatically starts without me opening it. Some of them runs everytime I turn on the phone (so they are like Windows startup apps in some way). Some others automatically run without an apparent reason, I killed it, and the next time i look at my phone it's there again. by the way I use Advanced Task Killer to kill and see the list of all active apps. And even weirder, some apps are apparently triggered by opening the android market.
What is the mechanics of this, and how do I control which app can automatically run?


text:
Inaccurate time? How to fix it?
Sometimes the time on my phone (X10 mini pro) is a little late while in sleep mode. I've experienced differences from 1 to 3 hours. My guess is that the clock system component (if there is such a thing in Android) doesn't get enough CPU time for some reason. This is not a big problem yet, since the clock will show the correct time just a few hundred milliseconds after I turn the screen on. The problem starts when I'm in sleep mode too and the phone is supposed to wake me up, because that way I have to wake up first to wake up my phone to wake me up.
So the question is: is there a way to force my phone's clock to always refresh it's time, even in sleep mode?
Update:
I think I've found a pattern which might be relevant. Looks like this behaviour never occurs while charging the battery.

Sorry, I couldn't resis the "I'm in sleep mode" part. :)

I would expect that the clock ticking on modern chip will be separate than the main CPU. I doubt that the problem wasn't because of the clock not getting enough CPU time

Ok, I changed my guess a little. The clock ticking has to be good for sure, since very shortly after I turn the screen on every application gets to know the correct time.

I would expect the possibility that the screen is simply not being updated because the display is turned off. Is the Alarm still going off at the correct time though? Or is your alarm going off late as well?

The alarm is late too.

@ytg Are you sure? I have the same experience but the alarm is fine, it's just the screen-updating.

@Matthew Read I had this problem before the 2.1 upgrade for the X10 mini. After that I didn't experience things like that, but I have to say that I charge the batteries at night in most of the cases now, and I don't really care about screen updating. But I'll try to not charge the batteries at night for a week and see what happens.

@Matthew Read: My experiments shows that the screen updating can be wrong but when the alarm fires it updates almost instantly. And I get the alarm four out of five times, which is better than before, but still not perfect.

Yeah, you want more than 80% reliability for an alarm.

updating ROM may be the solution for your problem.

Do you live near a timezone shift?

Interesting idea, but actually, no. :)

Just thought I'd add... I'm experiencing a similar anomaly on my ICS Tablet. When in sleep-mode my tablet will lose minutes (not hours). My tablet is in regular use, so I can lose 2-3 minutes per day - which adds up over a few days! However, turning the screen on does not correct the time. The alarm is also late as noted above. Full power off/on appears to correct the time, as does performing a manual time sync (disable/enable Settings > Date & Time > Automatic date & time). Auto time sync seems to be rather infrequent?!

You can use an app called ClockSync, which fetches time from NTP servers and updates the device's date and time.  Rooted users can make this app to update time at configurable interval.


text:
How can I play mkv files on Droid os 2.2 on a Droid x?
I'd prefer not to have to convert Them. Thanks.

Rockplayer looks promising

Correct. I've tried Rockplayer on my HTC Desire running 2.2 and it does work.

A good, simple and free alternative to RockPlayer I use is VPlayer.
http://www.cyrket.com/p/android/me.abitno.vplayer/


text:
Quickly connecting to Wi-Fi with Android
I'm having Android Froyo (2.2), in Archos 32.
The only way I found for connecting to a Wi-Fi wireless network is through
Settings -> Wireless & Networks -> Wi-Fi Settings -> "Wi-Fi networks" list

Very cumbersome! Isn't there a faster way to do it? After all the only internet connection Archos 32 has is the Wi-Fi...

Do you have it set to alert you when there are open WiFi networks available?

@AI I do. But it's not so convenient, as I can't control the exact time it's checking for new networks. Thus I can't easily adapt my position to gain enough reception for a WiFi network.

Are you connecting to a known network or a new network?

Here are a few ways to do it on a Samsung Galaxy S.

drag down from the notification area. Wi-Fi on/off is one of the controls.
long press on the home screen, select widgets then select Power Control.  This widget also has a Wi-Fi on/off control.
long press on the home screen, select Shortcuts, then Activities, expand Settings in the list that's displayed, then select Wi-fi settings.  This will take you directly to the page with the list of available Wi-Fi networks.

Hopefully one of these will help.

I think the Power Control widget came in Android 2.2 by the way. Older versions won't have that, but there lots of apps that do the same thing for older versions of Android.

@mufasa: I have Android 2.1 and have the power control widget.

Another option is Beautiful Widgets, which provides a wifi toggle widget.

I'm not sure why you thought so, but I really don't need any way to toggle the WiFi connection.

I was probably projecting my own usage patterns, where the main operation is toggling wifi. When it’s on, it automatically connects to networks I’ve used before, and if there are new unprotected networks, a notification appears, so I rarely open the wifi settings proper.

A "Quick Settings" application by Sergej Shafarenka. It allows quickly toggling WiFi as well as a quick access to a bunch of other settings. It stays in the notification bar for a convenient access. Probably the most used application on my N1.

You could also setup Locale or Tasker to turn on the wifi during certain times of the day.  So if you know for a fact you might be using your tablet during a certain time period, it could auto-turn it on during that.
Or if you look at it the other way, you can have it turn the Wifi off when you know for a fact you won't be using it (i.e. sleeping).

A possible option is to download a WiFi app from Market; many are free.
I use WiFinder.
These seem to integrate pretty well with the Android Wifi and doesn't conflict (unlike the PC, in which you have Dell's Wireless Utility AND the Windows wireless, which you cannot run at the same time).  When I installed WiFinder, it knew that I was already connected to my work network, and it remembered my preferred network.


text:
Italian Froyo not show Month Name
After update my HTC Desire to last Froyo Update, I can't see anymore Month Name or Day Of Week name.
Instead of January I see 1 and instead of Wednesday I see 2.
This happens in all my App (even Facebook).
How can I restore the names?
Do I have to root it?
My HTC language system is Italian.

I don't know if this will help, but what do you get if you use a different language? Does changing to English and then back to Italian change things?

How can I do this?

I don't know what it is in Italian, but from the home screen, choose "Menu", then "Settings", then "Language & keyboard", then "Select language". I only have two options: English and Spanish. You may have more.

I've tried and in English i can see month name, but when I switch back to Italian still no name.

This is a known "bug" with Android (it is probably intended behavior).  The language, locale, and related settings are all linked and cannot be changed independently.  Google apparently decided that people who read Italian want to see numbers for dates.  I don't believe this was changed in 2.3-gingerbread so I guess there is no fix yet :(


text:
How to configure HTC Desire for 3g connectivity in Peru?
How can I configure an unlocked HTC Desire for 3g connectivity in Peru?
I have managed to add an APN so that I have EDGE but I would like to use Claro's 3.5g.
I also have an iPhone with the same kind of dataplan that has 3g pre-configured so I am hoping that it is possible.
I realize that this is a very specific question but I can´t get any worse help than at the Claro office...

Were you able to connect the HTC Desire to Claro's internet?

@aescobal I have internet, but only EDGE as the model of HTC Desire I have, does not seem to support the band used by Claro, see the approved answer.

In order to connect to a given 3G/3.5G network, your phone must support the correct band.
Based on the sparse information I was able to gather, it seems that Claro is using bands II and V (1900 and 850)
It seems that there are at least three different models of the HTC Desire, of which the HTC Triumph / Desire US A8182 and HTC Desire Telstra A8183 support bands II and V.  The third model, HTC Desire A8181 supports bands I and VIII instead.
If your phone has the correct APN, supports the correct bands, and 3G is not disabled it should just work.

Thanks a lot, although it seems a bit more complicated than I was hoping for. I have an A8181 so I guess it's not going to work in Peru, I didn't realize 3G and normal GMS communication use different bands :-(

It seems that you need to configure the APN.
Go to the Settings of your phone -> Wireless & Networks -> Mobile Networks -> Access Point Names.
Maybe you have none APN configured, so go to the menu to add one.
The list of APNs by country is here :
http://www.androidonhtc.com/wiki/Carrier_network_settings
In particular for Peru you have :
Claro Peru (America Movil)

APN: wap.claro.pe
Username: claro
Password: claro
Proxy: 192.168.231.30
Port: 80

I hope that this information is useful. Regards!

Thanks, but as you can see, I already have the APN configured, I was wondering about 3G access instead of EDGE (which isn´t possible with my HTC Desire).


text:
Why does google maps need WiFi?
Sometimes google maps gives a notification that goes something like:
"for increased accuracy please turn on the Wifi"
I can understand if it said "For faster loading of map layers....", but how can a better internet connection result in increased accuracy by the GPS?

Some related questions here: http://android.stackexchange.com/questions/1522/what-is-assisted-gps http://android.stackexchange.com/questions/1648/how-does-android-get-the-coarse-location

You might be interested in Assisted GPS

Assistance falls into two categories:

Information used to more quickly acquire satellites

It can supply orbital data or almanac for the GPS satellites to the
  GPS receiver, enabling the GPS receiver to lock to the satellites
  more rapidly in some cases.
The network can provide precise time.
The device captures a snapshot of the GPS signal, with approximate time,
  for the server to later process into a position.
Accurate, surveyed coordinates for the cell site towers allow better
  knowledge of local ionospheric conditions and other conditions
  affecting the GPS signal than the GPS receiver alone, enabling more precise
  calculation of position. (See also Wide Area Augmentation System and
  CellHunter.)

Calculation of position by the server using information from the GPS
  receiver

The assistance server has a good satellite signal, and plentiful
  computation power, so it can compare
  fragmentary signals relayed to it by
  GPS receivers, with the satellite
  signal it receives directly, and then
  inform the GPS receiver or emergency
  services of the GPS receiver's
  position.

Many mobile phones combine A-GPS and
  other location services including
  Wi-Fi Positioning System and cell-site
  triangulation and sometimes a hybrid
  positioning system.[4]

"Assistance falls into two categories" ← None of these described categories need Wi-Fi. Only the last sentence has something to do with Wi-Fi, but it is very vague. Sam's answer should be the accepted answer.

If I'm not mistaken it is to access Google's (presumably large) wireless MAC address location database which like Skyhook (a competing service, also previously used on iOS devices) allows a handset to scan for wireless networks nearby and send their MAC addresses (possibly SSIDs as well, I haven't looked into it too depply) off to Google to compare to their database and fire back an approximate location based on their data collection (which you consent to help provide by enabling this feature).
To the answerer mentioning A-GPS, I think the OP was already using A-GPS and using Google Maps over a 3G connection but had Wi-Fi disabled.
I believe this technique is achieved similarly with the use of cell towers, measuring the signal strength between the connected and neighbouring towers and comparing it to a stored database (such as Ofcom's attempt available in the UK), Location Area Code (LAC) and Cell ID (CID). For anyone curious you can find these on most Android phones using the *#*#4636#*#* code in your dialer although for whatever reason it's encoded in hex so just convert it back to decimal if you like.
TL;DR - Triangulate your location quicker using Wi-Fi signals while your GPS gets a satellite lock, A-GPS serves the same purpose but achieves this using a different method (Secure User Plane Location I think, if anyone wants to read up on it).


text:
Is there an alarm clock event log?
Occasionally I wake up and find out that I've missed an alarm. I'm considering using a different program that is more likely to wake me, for example Math Alarm Clock. However before torturing myself with mathematical problems every morning I would first like to find out why I missed the alarm to see if there is an easier solution to the problem.

Did I try to hit the snooze button but accidentally turned it off?
Did I not hear it even though it rang 5 times?
Did I set it for the wrong time and it didn't ring at all?
etc...

In order to help investigate what the problem was I'd like to see a list of alarm related events. Is there any log where I can see all (or recent) alarm clock events, including changing alarms, alarms ringing and being turned off?
I use the currently use the default alarm clock on the HTC Desire, but if the logging feature is only available in another alarm clock application I would consider switching.

Do you use a task killer? Don't kill the "Clock" application, as the Alarm wouldn't ring otherwise. Better yet, don't use a task killer, Android manages your applications intelligently, and will kill unused applications if another applications needs the memory.

The only place that I can think of off the top of my head would be the logcat logs.  There's an app on the market called aLogcat that will show you the full system logs, or you can use a terminal emulator and just run the command 'logcat' to get the scrolling log output. There's also DDMS, available through the Android SDK, that will show you the system logs from your phone on the computer as well.
Honestly, I'm not sure if the Alarm is something that is reported to the logcat logs or not, but it'd definitely be worth checking.

I tried installing aLogcat, and while it seems a useful program for debugging errors I don't think it will work for this. I tried filtering on "alarm" and got no results.

@Mark Byers: on my Samsung Spica, when the alarm fires, it logs using the tag "AlarmClock". Try filtering using "tag: AlarmClock" (assuming aLogCat uses the same filtering syntax as Eclipse's LogCat) and see again.

+1 I was also going to suggest checking logs via logcat.  Also not certain if the stock alarm will log its alerts

I can't find any (useful) logs for the alarm clock on my phone (it's the HTC Desk Clock application). I'm not sure if it's because it's not logging or because I'm doing it wrong.


text:
Is it possible to remove shortcut labels in Launcher Pro?
Is there a fast or automatic way to remove the labels from all home shortcuts, while using Launcher Pro?

Yes.   On the home screen, hit the Option button, then go to Preferences > Appearance Settings > Hide icon labels and check the box.


text:
G1 Unable to get past android boot logo
I have a T-Mobile G1 (HTC Dream), this morning it vibrated once and then restarted, it then went to the android boot logo went through that and stopped at a black screen.
I've tried pulling the battery and restarting but it has the same problem.
The phone is rooted but it has NO custom boot screen, boot loader, rom. It has stock everything apart from the ability to use root.
Running Android 1.6
Anyone any suggestions, I intend to take it back to T-Mobile tomorrow night when they have late opening hours, but I'd like to get it working before then.

On mine you can press Call, Menu, and End at the same time to make it reboot, and then hold down Home as it starts, to get to the recovery mode.  I don't know if either of those are present without a custom ROM, though.

Have you tried doing a factory reset (you'll lose all data)?
Steps to do a factory reset are found here.

1. Power off the G1
2. Hold Home Key + End key for 20
seconds or until you see a "triangle with an exclamation point
and a picture of the G1"
3. Open the QWERTY keyboard and hit Alt+W
4. Restored!

Thanks!! worked like a charm. It appears to be ok now just need to reset everything up again.

@digital great! :)

I'm having this same problem, but I'm running CM6.  When I boot I don't even get the T-Mobile screen, I just get a blank one.  I've tried home+end, call+menu+end, etc. with no luck.  Right now I can't boot into anything.  Should I ask this as a separate question?

I found this blog post, but his solution is based on actually seeing the T-Mobile screen.  I don't even get that: http://the-dro.com/technology/g1-stuck-on-t-mobile-bootup-screen/


text:
Battery Statistics Viewer crashes every time
I have a DroidX with Android 2.2
I went into the Battery Usage settings
Settings > Battery Manager
See a fual cell looking battery image that says Touch for usage statistics, so I was like awesome let me nerd out and look at my battery usage statistics.
Then when I touch the image I get an error The application Settings (process com.android.settings) has stopped unexpectedly. Please try again. and the only thing I can do is Force Close.
Anyone have any insight into this issue?
I tried using aLogCat to find the error log after I got it, but it won't pause so I can read anything :-/ Where can I report this bug to Google, if there isn't a fix out there already?

There appears to be a software update coming out to fix this in the "near future". The actual release date for this update was not specified...
Here is the FAQ on the Motorola website...

It looks like it is a common bug with Droid X users and there doesn't currently seem to be a fix.  See this relevant thread here.

I actually got it to work for a few minutes after reading that thread, but then it went back to not functioning. :( Do you know how to report bugs for the Android OS?

There appears to be a fix coming out soon https://motorola-global-en-usa.custhelp.com/app/answers/detail/a_id/58009/~/droid-x---forced-close-error-using-battery-manager

Most Android issues are listed/added here: http://code.google.com/p/android/issues/list but this seems to be a manufacturer problem, not stock Android

Yeah that's what I found out, I didn't realize the manufacturers basically customize Android so much, I thought it was stock Android OS... Silly me :)


text:
Can Android run on an iPad?

Possible Duplicate:
Can I install Android on my non-Android device?

Can Android run on an iPad ?

Please answer only if you are 100% sure (or even better if you tried)
If yes, should I use a jailbreaker ? Could you suggest me one ?
If yes, what are the limitations.. are the applications running on it without issues ?
If not, why... is there a good tablet to test Android applications ?

thanks

It's possible on the iPhone, it should happen with the iPad eventually: http://www.taranfx.com/android-on-iphone

"is there a good tablet to test Android applications ?" -- any Android tablet would be a better platform to test Android applications than would a hacked iPad. You want your test equipment to match what consumers will use. There will be a few orders of magnitude more users of a Samsung Galaxy Tab, for example, than will be running Android on an iPad.

Note that once you have Android running on one of these Apple devices the major problem is that they only have one button, and almost every Android app assumes that you have "Home", "Back" and "Menu" buttons at a minimum. You are much better off testing Android apps on a tablet designed for Android like Dell Streak or Samsung Galaxy Tab (and they're generally cheaper than an equivalent iPad).

@GAThrawn thanks, yeah that's true, they are cheaper, but I actually would love to test all software on only one device.. (because of my wallet)

You would need two devices anyway. Once you converted an iPad to Android, it would (probably) never again run iOS.

It would seem as thought it has only so far been developed to be booted on iPhone 2G and 3G devices. It's mostly up to the interest of keen developers whether it would be worthwhile attempting such a feat, I would assume whatever exploit used to run Android on otherwise locked down Apple hardware would be different in later hardware (yes, this means an iPad).
"Please answer only if you are 100% sure" - Then yes, an iPad COULD theoretically run Android because of the open source nature of Android allowing it to be ported to various devices. Anything is possible when you put your mind to it, it's looking at the realistic feasibility and time vs reward involved though.


text:
How to set up reverse tethering over USB?

My HTC G2 phone is rooted and running Cyanogenmod 7
I don't have a data plan.
Sometimes I want to connect the phone to the Internet when there isn't Wi-Fi, to update Market apps, backup SMS messages to Gmail, sync new contacts from Gmail, etc.  Things I can't do with USB mass storage mode.
I have a Windows 7 Professional computer connected to the Internet, but I'm not allowed to set up an ad-hoc Wi-Fi network.  (If I do, they will notice and hunt me down.)

Is there a way for the phone to access the Internet through the USB connection to the computer?  If so, how do I set it up?

This looks like a partial solution: http://forum.xda-developers.com/showthread.php?t=1371345

Also see: http://android.stackexchange.com/questions/73168/how-to-use-pcs-internet-on-android-phone-through-usb-cable

I recently discovered SimpleRT which works very well with Linux (and apparently OSX as well).  Simply enable USB Debugging on your device (no root required), install the APK linked from that page on your device and connect it to your PC via USB, and then run the binary on your PC.
It will set up the connection as a VPN tunnel (tun0 by default) and your device should prompt you to (a) allow SimpleRT to create/oversee the VPN connection as well as (b) whether to run it when the device is configured as a particular USB accessory (which is what the binary does).
The project does not include a pre-built binary, so I've uploaded one I built for Ubuntu (file will download).

Below is a manual method that should work on Linux or Windows: http://blog.mathieu.carbou.me/post/60454997009/reverse-usb-tethering-with-android-2-2

STEP 1:
For Windows: Install USB drivers from Android SDK
For Linux: Nothing to do
STEP 2:
On Nexus One: Connect USB cable and activate USB Tethering. You should see on linux or windows a new network interface.
STEP 3:
On Linux Computer, setup a bridge:
# usb0 is the new network interface
# eth0 is the main interface connected to internet (or a gateway)

sudo ifconfig eth0 0.0.0.0
sudo ifconfig usb0 0.0.0.0
sudo brctl addbr br0
sudo brctl addif br0 eth0
sudo brctl addif br0 usb0
sudo ifconfig br0 up
sudo dhclient br0

See https://help.ubuntu.com/community/NetworkConnectionBridge to setup bridges
On windows, Bridge the 2 network interfaces
STEP 4:
Setup usb0 interface of your phone. You have to options:

From your computer, execute:
./adb shell netcfg usb0 dhcp

Or in a root terminal on your phone, type:
su
netcfg usb0 dhcp

You should now be able to connect to Internet on your phone using your computer’s Internet connection.
Try to do a ping www.google.com to be sure !
STEP 5:
To shut down the reverse-tethering, first unbridge interfaces on your computer:
sudo ifconfig eth0 down
sudo ifconfig usb0 down
sudo ifconfig br0 down
sudo brctl delbr br0
sudo ifconfig eth0 up
sudo dhclient eth0

Then on your phone, uncheck the USB Tethering option !

You can also use Windows to create a WiFi network (using Connectify) and connect your device to that: http://www.nexusoneforum.net/forum/nexus-one-faq-how-tos/3133-reverse-tether-getting-internet-your-phone.html

In my phone, "netcfg usb0 dhcp" should be "netcfg rdnis0 dhcp"

On my cyanogenmod 13, netcfg cannot be found :(

netcfg remains missing from LineageOS.  You might need busybox instead.  https://android.stackexchange.com/questions/141900/usb-reverse-tethering-netcfg-not-found-marshmallow-cm13

On running sudo ifconfig usb0 0.0.0.0  I am getting
SIOCSIFADDR: No such device
usb0: ERROR while getting interface flags: No such device

@user1917769 You'll have to figure out what your device names the USB interface if it's different.

SimpleRT does not work for me, error being "Device is not support accessory! Reason: Resource busy". Might be due to different way how Linux accesses USB devices nowadays. Solution might be here, but I did not try.

There are some more possibilities -- but all of them I know of require a rooted device.
Using the Reverse Tether App
First, there's an App named Reverse Tether available for free on the Play Store (it's a limited trial, which restricts the time you can be connected -- but at least you can test this way whether your device is fully supported; the full version is about USD 5). According to an article at AndroidAuthority, setup should be as easy as 1-2-3: Plug in the USB cable, start the app, let it auto-configure (manual configuration is available as well) -- and there you go. You can also let it ask you to connect when it finds an USB-connection.
Manual methods using Wifi
I know, this is not USB -- but for completeness (and giving alternatives) I thought I might add these as well:
fiddling with the system and patching around
Several manual methods are available as well (and described e.g. at XDA) -- but they are mostly technically complex, and expecting you to patch system files; not for the every-day-user, but rather for the tech-freak.
Terminal and go
However, another nice method should just involve 3 lines in the terminal, and is described in a post here, to connect to an ad-hoc Wifi network. Basically, it should go like this:
su
ifconfig wlan0 up
iwconfig mode auto;
iwconfig wlan0 essid "your SSID" channel 11 mode auto
ifconfig wlan0 10.0.0.x netmask 255.255.255.0

manipulating some config file
Another quite easy method is also described here, and involves editing the wpa_supplicant.conf file once (manually adding your ad-hoc Wifi network).
Easy-Peasy method
Do I need to say, really? Use a Wifi router. There are even some small "Travel routers" around for less than USD 50. And then connect your phone like you use to connect it to other Wifi networks...

I know this is an even later answer, but it is worth mentioning it.
No rooting needed!
No app installation needed!* Which is not even possible if you do not have some other internet connection.
There is a project called gnirehtet.

Install adb on to the host PC (Windows/Linux/Mac)
Download the gnirehtet zip-file to the host
Unzip it
Run the command

That's it! For more information, read the readme file of gnirehtet on their website.
*=Behind the scenes it will install an apk file on to your device via the USB connection.

Only cross-platform full-working non-commercial answer here. Even Google Play connects (Android 9 Pie).

@cdlvcdlv: There's no reason it shouldn't:) FWIW, this uses the Android VPN API, so anything over TCP/IPv4 or UDP/IPv4 should work. (IPv6 doesn't seem to be supported)

should be the accepted answer

Hey! there is an app for that
Android Usb Port Forwarding
http://www.codeproject.com/kb/android/usbportforwarding.aspx
I am a bit confused how to use it, please inform if you get it working perfectly.

This apparently requires a proxy other than the computer itself, and only supports web browsing?

It says it uses port 8080, which doesn't necessarily restrict it to web browsing, does it?  I thought Market could use this, however Market uses post 5228.

I've found a good tool for reverse tethering on xda-developers forum. It's called Android Reverse Tethering. It works with Windows and requires a rooted phone.
It works fine on my HTC Desire HD running MIUI v4.

I am using this software it works perfectly fine on mt galaxy s duosgts7562. I am able to use all internet related things via reverse tethering.

To use youtube and other such apps you require to click on the install hack button then you are ready to go.

Android reverse tethering steps:
Note: Works only in a rooted Android phone.

Connect Android device via USB.
Enable USB tethering. To do so, go to Settings → More... → Tethering & mobile hotspot → Usb tethering.
At host machine, the usb tethering connection may be detected by the network manager.
Its name will be something like "Wired connection 2" (or 3).
You must edit it's "IPV4/Method" to "Shared to other computers".

3.1. Without the network manager, you will have to do it manually:
    $ sudo ifconfig usb0 10.42.0.1 netmask 255.255.255.0
    $ echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward

Now, as explained here at the end of Step1 you have to modify iptables with sudo iptables -t nat -A POSTROUTING -j MASQUERADE. But... prefer allow network manager to do it if possible.

At Android device, you can issue these commands using a terminal with su there, or from your host machine by using ADB:
$ adb shell su -c "netcfg rndis0 dhcp"

If it doesn't get the IP address, or if you are using some application that a static IP address is desirable like "Webkey for Android" App, then assign it manually:
$ adb shell su -c "ifconfig rndis0 10.42.0.2 netmask 255.255.255.0"
$ adb shell su -c "route add default gw 10.42.0.1 dev rndis0"

Now internet would be working in the Android phone.
To check, at adb shell or android terminal, try the command ping www.google.com.
It works for me.

My device's netcfg seems to be more limited and the manual version of step 4 fails:  no such action '10.42.0.2'   usage: netcfg [<interface> {dhcp|up|down}]

@MatthewRead the command is wrong, it is actually ifconfig rndis0 10.42.0.2 netmask 255.255.255.0, btw to see all interfaces is netcfg alone.  similar instructions are detailed here

For unrooted devices
I know this is a late answer, but as all existing answers suggest that USB reverse tethering is only possible if either your device is rooted or has system support for reverse tethering, I though it'd be worth pointing out there's one more option:
I was looking for a reverse tethering solution that would work on my unrooted devices and with a MacBook, but I just could not find anything. Eventually, I started to develop my own solution. The result is an app that works on devices running Android 4.0 or higher on client side, and all major desktop OSs on the host side.

The app is available on Google Play: ReverseTethering NoRoot

I couldn't get this to connect on Windows or Ubuntu, but it seemed to work on OSX.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
How can I deal with "Low on Space" messages on my Android?
I keep getting the "Low on Space: Application data space is low. To free up" [the rest is cut off] message.
I've moved every app I can over to the SD card, cleared the cache, compacted my K9 mail cache.
Advanced Task Killer (ouch!) says I have 98M Available Memory
File Manager says I have 223M/748M (29%) free.
That's not so bad -- but I'm stuck in the no-updates scenario. The market downloads won't really start, gmail won't update, etc. I've rebooted several times, and nothing changes. Aaaargh.
What can be done, other than uninstalling everything ?

FWIW, I've been getting these often with my HTC Incredible. Clearing the data in HTC Sense seemed to be the one thing that solved the issue for me. (I'm using Zeam launcher besides.)

See here how Android calculates your personal space limit: http://code.google.com/p/android/issues/detail?id=4991#c145

This timely post from Lifehacker may help... Were you the one who emailed them? ;)
What Should I Do When My Android Runs Out of App Space?
Here's the summary, in order of easy to hard:

Move Bigger Apps to SD Storage - currently requires Froyo (2.2). Navigate to
Settings > Applications > Manage Applications (or something similar). View the All Tab, sort by size. You can't do anything about the big hitters, namely Gmail, Browser and Maps will always be pretty big.
Clear the Cache, and Maybe Data, on Some Apps Similar to #1, navigate to Settings > Applications.
Clear Out Apps You Don't Actually Use Shouldn't this be #1? ;)
Android 2.2: Set Your SD Card as the Default Installation Location LifeHacker points to the Androinica blog how-to here.
Root Your Phone and Set Up Apps2SD Disclaimer: rooting may not be fun for non-geeks. LifeHacker how-to-root and custom firmware CyanogenMOD (also supplied by LifeHacker).

Of course some of the comments on the post are helpful as well. Hope it helps.

You can use an app like DiskUsage to see which applications are taken up the most memory on the internal storage.
Clearing the cached data stored by app (from application screen in settings) is also a way of freeing up space temporary.

It may be time for you to start removing old applications that you no longer use or don't use very frequently.  You've already moved your apps to the SD card and cleared your caches, there isn't much more you can do.

And rebooting the device after doing all these things. This way the "Low storage" message will disappear.  Otherwise, we risk to see this message "sticking" there no matter how well we do the cleaning.

Ok guys I was having this problem a couple of days ago... I reset my device, deleted all the apps, had LOADS of free space but when I tried to install something it would tell me "insufficient storage available"
I searched everywhere, for more than a week, and found nothing. Now, i found the solution, and want to help everyone that is happening the problem!
Get Storage Analyser then open it, and you will see that instead of having free space, you will have -xxxx!
Yes! A negative number! According to my phone I had -8GB of space! There was this rogue app from Gameloft that used up all my space! And didn't get deleted with a factory reset!
Open the Storage Analyser and delete the huge app/folder! Then reboot and the problem will be solved! I promise 100% that this works. I recommend opening the app once a week and deleting the useless big stuff!

Please DO NOT use URL shorteners here.

Storage Analyser app is no longer to be found. I've clicked on the given link and got a blank page with this announcement on Google Play website: "We're sorry, the requested URL was not found on this server."

I tried all the standard cache cleaning and uninstalling updates which helped a lot. I tried storage analyser but that didn't help the internal storage. Wasn't keen on rooting the phone. Then I came across Clean Master and used it on my wife's Samsung Ace which is notoriously short on internal memory and no option to move most apps to the SD card. So far so good.


text:
How will a swap partition/file affect the system?
Some friends told me that their Android phones have very little (<100MB) available memory for regular apps, because the OS and some un-killable services take most of the RAM. For example, one phone with 512MB only shows 90MB available memory, so only 2-3 apps can run at the same time.
I'm wondering if creating a swap partition/file will help, but I saw mixed opinions all over the web and I'm not sure what to do. Here are my questions:
(1) Will there be many not-oftenly-used memory pages to swap out, especially in OS and those un-killable services?
(2) How will swapping out small memory pages hurt flash memory life span? Does the flash (or SD card?) do wear-leveling automatically?
(3) Will swapping really help performance when running multiple apps? I assume if the answer to (1) is yes, it will.
(4) Will writing to flash be too slow and thus hurt responsiveness when swapping happens?
(5) Is it true that Android keeps the swapping mechanism from the Linux kernel, so as long as there is a swapping partition/file, it will do swapping without extra configuration?
Thanks for reading.

I don't think there will be much benefit with swapping for Android, as the Android Application Life Cycle is a much more advanced form of swapping.

(1) Will there be many
  not-oftenly-used memory pages to swap
  out, especially in OS and those
  un-killable services?

You can't swap the OS kernel even in Desktop Linux and Android already kills services when it needs more RAM. If your device vendor persists that you have to have useless services running all the time, then root your device.

(2) How will swapping out small memory
  pages hurt flash memory life span?
  Does the flash (or SD card?) do
  wear-leveling automatically?

Even if the SD-card does wear-leveling, swapping will hurt quite a lot.

(3) Will swapping really help
  performance when running multiple
  apps? I assume if the answer to (1) is
  yes, it will.

Not in the context of Android. Unlike traditional OS that will keep trying to chug in processes as you requested it, Android will Force Kill older, unused processes and reclaims their memory; this killing is fast as applications will already save their state when you task switch.

(4) Will writing to flash be too slow
  and thus hurt responsiveness when
  swapping happens?

Probably, probably not. Will need benchmarks for that.

(5) Is it true that Android keeps the
  swapping mechanism from the Linux
  kernel, so as long as there is a
  swapping partition/file, it will do
  swapping without extra configuration?

I don't know whether Android keeps the swapping mechanism, but even if it does (or if you compile your own kernel), you will still need some configurations. It's usually just having an fstab file that points to the swap file and doing swapon -a.
In fact I have reasons why swapping may actually hurt performance: it prevents Application Life Cycle, Android's memory management scheme, to work correctly.

Thanks for the answer. I still have questions though. On a Samsung Fascinate, 10 un-killable services occupy about 110M memory. There are 22 other killable services running but "Running Application" shows no application running. It's my friend's phone and I didn't know what exactly she did before, but it seems that it is quite possible that many services/apps could run at the same time. I don't think all these background services/apps use all the pages they required when they started. Besides, save app state + reload and restart app + restore state would be slow as well.

Another way to think of this problem is this: assume flash life span is not a problem, should Android do swapping? If not, what is the key difference between Android apps and desktop apps that makes swapping not useful on Android? I don't think Android Life Cycle works for desktop/server applications.

@evergreen: Application state is saved when the application goes to background (e.g. when user press home to switch task). Later, when some other application needs memory, older applications or background services will be force killed (FK  takes practically no time). This means task killing is immediate, since application state is already saved a long time ago. When you reload an application that's already in memory, you will get the fastest reload time; but if the application is already unloaded, then the application needs to do full reload (which is the same situation with swapping)

@evergreen: if you use a task killer, then you will force applications to unload, and you will always have to do full reload, instead of the fast reload when the application stays in memory. If you use a swap file/partition, (older) applications will be swapped out, and restoring will take almost the same amount of work as full reload. Except: with full reload, the application developer has separated out persistent data with temporary data, and can optimize what to save and what not to improve storage. While with restoring swap, you leave application developer no say, and swap out everything.

@evergreen: Even when assuming flash life is not a problem, Android should not do swapping, because the Application Life Cycle does a better job. Android Life Cycle is designed for memory constrained environment, in desktop and server environment, you have a gigantic amount of memory, and users do much more multitasking, and they do not expect background programs to be killed by the OS. The weakness of Android Life Cycle is it requires application support. Application must be ready to be killed any time, and must save state at predefined points. Such complexity is extraneous for desktop apps.

There is definitely a benefit to swapping, despite what everyone else on the Internet will tell you.  Try it and see for yourself.  Empirically, on a G1 or other phone with low memory, swap makes the phone run better and faster.
Yes, Android has Life Cycle "task management" built in, but it's not very good.  It routinely kills processes when it runs out of memory, and the apps are expected to save their state using "Bundles" so that when you restart them, they restart in the same state they were last in.

Once Android determines that it needs to remove a process, it does this brutally, simply force-killing it. The kernel can then immediately reclaim all resources needed by the process, without relying on that application being well written and responsive to a polite request to exit. Allowing the kernel to immediately reclaim application resources makes it a lot easier to avoid serious out of memory situations.

This would be great if it actually worked, and would be better than indiscriminate swap.  But the apps don't really save their state; they just save the minimal amount of information to get back to that state.  (And some apps don't even bother to do this.)  Getting back to that state takes time.  Since swap actually saves the entire state of the app, which just has to be reloaded, it makes switching between apps much faster.
If you switch to another app from the browser, for instance, the browser almost always gets killed, and then it has to reload the entire page from the Internet when you switch back to it. This takes wayyyy longer than reloading the state from swap, wastes your money if you're on a data plan, and causes state problems when the web page is dynamic.
Many apps take much longer to start up than they should, or don't actually return to the same state when they're restarted, so swapping them out works better.
I'm guessing the people who are happy with the stock system use their phones differently.
Should I use a swap partition with Cyanogenmod?

If you leave it to the Life Cycle, it will be the application's decision to cache extra data to improve performance (e.g. loaded web pages). If you use swap, it's the OS' decision, but the OS isn't in the best position to determine what to save and what not to save to best optimize performance, so it have to save and restore everything. The Browser does not redownload pages from the Internet if you switch tasks, I've often open Browser, switching to a bunch of heavy games and other activities, and return to Browser with my last page with everything in place loaded instantly.

Right.  Neither system is optimal, but swap is better for most apps.  The browser only reloads the page if it is killed before you re-open it.  On a phone with low memory, it will almost always get killed.

@LieRyan - "return to Browser with my last page with everything in place loaded instantly" does you browser restore scroll position on the opened pages after reload? That is what Chrome doesn't do (though I like this browser very much) which is very unfortunate when you stopped reading on a middle of some rather log web page before switching to, say, take a call...

I have a Spice mi-435(only sold in India) which has a RAM of only 340M. Hell ya, the swap files help a lot. My phone runs ICS on such low RAM and definitely entered many out of memory states and there the swap file helps a lot. All the application states are transfered to swap when not in active use. This gives my phone room for more applications and RAM hungry apps to run smoothly with much much much less lag than before. Though there comes a problem when i open the app i have been using before. It takes time to load its state as the SD is much more slower than the high speed RAM on board. But, the swap option is better for so less RAM. I would recommend to swap partition for RAM less than 512M but not for more than 512M.
Hope it is helpful.

Swap file helps even on systems with higher RAM. My quad core 1gb ram 7 inch tablet gets a major multi-tasking boost from chucking in a 2gb swap, on the uhs-1 micro sd card. And of course, the price of memory goes down rapidly, and even at constant write, nand flash is supposed to last years.
Im basically of the opinion, because the performance difference is so radical, that probably anyone with less than a really large amount of RAM should be doing this. In fact it should probably come as a standard option in android (along with bigger app caches, and a proper sized internet cache).
I mean you have a 64-128gb micro sd (uhs-1), or even the uhs-2 that came out this year, plus a 16-64gb internal nand, often "fast" nand, which is a kind of primitive ssd or even SSD, as are used on windows slates - your not exactly filling all that high speed space up with much. The speed only really comes into play with video, or loading apps into memory - which is exactly the use here.
Of course ideally, manufacturers would focus more on RAM, than resolution or extra cores, because clearly the system speed benefits a lot from higher ram - and they should probably also up the speed of the internal storage too (like switching to full ssd type systems, or at minimum "fast" nand. But in the mean time, while high resolutions tend to cause a sort of RAM deficit in all devices, a swap file, and caching to a reasonably snappy external sd makes a lot of sense.
Indeed it would be nice to see some browsers keep fuller caching too, most browsers are either slow, or low feature, rarely fast and full featured - and thats partly because the space for the app cache on the internal drive is tiny. They are designed to operate within a low memory and storage environment, and that whole story is changing. Even if the ram isn't up to chop as much as it should be, the storage certainly is, and it can be pretty darn fast on UHS-1 standards (or the uhs-2 released this year), even if its not "fast" or ssd.
And the cost of external memory, is peanuts really, even for higher capacity uhs-1. At least a 64gb uhs-1 is perfectly affordable (50 bucks where I am, but it would be less USD), much cheaper than the device, and 32 gb and under is basically a couple of tenners.
Plenty of lessons to be learned from the desktop really, especially now the specs are getting higher - the slowest performance link is loading from storage to ram. The more you can do to mitigate that, the better.


text:
How can I root my Droid X with Ubuntu Linux?
My sanity is at stake here. I need root but I don't have access to any fancy proprietary  OS.
I'd appreciate any help.

I have a T-Mobile G1 running 1.6-donut. I rooted it this weekend from my Ubuntu laptop. Here's what I did:

install terminal emulator from the marketplace (I didn't end up using it, but it is good to have)
installed the Android SDK on my laptop (actually, I installed it six months ago, but that's not the point, is it?)
Downloaded Universal Androot from this XDA forum: http://forum.xda-developers.com/showthread.php?t=747598
used adb install to install the UniversalAndroot .apk -- the command will be something like adb install /home/amanda/Downloads/UniversalAndroot_1.6.1.apk
ran Universal Androot on my phone once it was installed.
rebooted my phone

Then I had root. I installed the BusyBox Installer from the marketplace (note: there's a $0 version but donating is nice, too) and used that to install BusyBox. Note that I wasn't able to install BusyBox (you install the installer from the marketplace, but then you use that app to install BusyBox itself) until I'd not only unmounted my phone from my laptop but actually pulled the cable. My phone didn't want to re-mount the SD Card with the cable in.
PS. The relative "fanciness" of a proprietary OS is debatable but also offtopic.

You don't need the full Android SDK; just adb is enough. It's statically linked.

Well, the one click root method requires Windows.  You could try running a Windows VM in Ubuntu?
But you can also do it manually.

I tend to read "No access to fancy proprietary OS" as "Not with a goat, not on a boat, Not even with a VM, I can't run it on my PC-em"


text:
Can I drive a USB webcam with my android touchpad?
I have I have an Android touchpad and a usb webcam... Can I use the pad to control the webcam?

I don't think directly. There are, however, several apps in the market that seem to let you view a webcam connected elsewhere by URL or IP.