text:
Are there any Android browsers that support loading a Java Applet in-browser?
We have a client who are switching away from Windows Mobile (and IE Mobile) to Android based devices.
We have some specific software that we deploy to their WM workforce by an ActiveX applet that loads in IE Mobile, but obviously Android will have no support for ActiveX. So we will need to re-do our application to an Android-specific platform, and Java is the obvious choice for this.
Are there any Android browsers that support loading a Java Applet in-browser, in much the same way an ActiveX applet loads in IE (i.e. it fully integrates into the browsing experience).

Similar questions have been asked here before, the short version, JAVA applets are not supported on Android. The version of JAVA used on Android is not just your run of the mill JAVA so you would need to get a JAVA compiler on the phone first to run any applets. Which I don't think is possible or at least feasible.
Why not just download the Android SDK and make your own app? You don't have to sell it in the marketplace, but if your app could be used by others you could do that which might help recover some money spent on development.

Why not just download the Android SDK and make your own app - because our app needs to be as cross-platform as possible. It's incredibly complex and the overheads involved in translating it from a web-based app to a standalone app are phenomenal. Thanks for the heads up though. So is it absolutally impossible to embed any sort of extra functionality inside a browser? The main thing we're doing is collecting signatures, like a courier does after making a delivery. In IE this was a piece of cake with a tiny ActiveX control.

If your JAVA app existed on a website that you pointed your phone to you might be able to have the JAVA code run that way, but I still doubt it because Android OS doesn't have a native way to understand JAVA code as you and I know it. The version of JAVA on Android is modified. Your best bet would be to look into creating apps for the different platforms or using a different language such as HTML5 or flash (unsupported on non-jailbroke Apple devices).

Sorry for the double dip, but just so you know, making apps for Apple and Android is really easy now. They have GUI systems that can do most of the work for you. Might not be as hard as you think. I would at least investigate.

As Android 2.2 and above (and some phones running Android 2.1) can run Flash applets in the browser, Flash could be a better cross-platform choice for you than Java.

while Android's Dalvik is not bytecode-compatible with JVM's bytecode; Java code that does not use libraries that are omitted in Android (e.g. Swing/AWT) should be pretty much source compatible, therefore you'll only need to recompile and most stuffs should just work as long as it doesn't use those omitted libraries.

JAVA and "Android's JAVA" are not so different... What you would have to do is just to translate the GUI elements to match the Android API and adapt the code to be in an Activity. The rest (functions, calculation, ...) can stay the same.

Creating an Android app with the official environment is an incredibly monumental task for your average user. Creating a Java applet and running it is very, very simple, and the rules aren't frustratingly different for every version of the software. I would rather you said, 'Why not go with Python instead and create a Kivy app?' Although that's still more complex than just creating an applet, and it doesn't even use Java, it's still a whole lot easier; there's not nearly as much overheard for the programmer. Plus, it's easier to program on more operating systems.

The only two options I can think of, is to make a HTML5 cross-platform mobile app that will work across the spectrum, having said that, I can understand corporate environments wanting to cling on to IE to support ActiveX apps within the browser, which is leading you to think that the Java on the desktop is the same as on Android, which is not true.
For the most part, and the second option, the SDK covers a subset of Java 5, collections, apache, etc, syntax wise, are identical, so maybe a recompile on the business logic and a new User Interface for the front-end for Android platform. (Yes you can recompile that targetting the Android SDK...)
In short, no can do unless there is a motive and drive to re-build it to be compatible with devices now and in the future.
Edit
After comments left below, to recap:

The browser does not support the running of Java applets within in itself. JRE != Android's Java Runtime aka DalvikVM. Desktop Java uses JavaVM/JRE as endorsed by Sun/Oracle and the OpenJava JDK which is sanctioned by Oracle. JRE = Java Runtime Environment

Terminal IDE which does contain "a java compiler", chances are (I will install it and report feedback on this btw) it is a extremely limited cut down version of OpenJDK, it is the only one available natively for ARM, according to this blog which cannot do native Java Windowing apps such as Swing or JavaBeans due to the simple reason that the version of the Java Runtime Environment is very different for Android, and highly optimized for the native processor.

Also, DalvikVM knows zero about Swing, JavaBeans, etc hence why it goes some way in explaining that the Java on the desktop is not the same as the Java on Android.
As for having the view that Android is very much like Linux, that view I stand by, is this, it is not Linux, the kernel is linux itself, but user-land tools are supplied by busybox, furthermore, the native C run-time library under Android is called bionic, and is limited due to those wee processors like ARM. When compared to the desktop Linux version, there's the run-time library supplied by gcc - GNU C Library or more commonly known as glibc - which supports vast more C/C++ idiosyncratics such as STL, Boost, full exception handling. That is my view and is separate from the topic and straying off the beaten path here. :)

The corporate system needs  java and there is nothing I can do about that. The only I thing I can do is configure the android tablet. What I don't fully understand is why an open source browser plus jre can't be made to work on an android tablet.

The browser does not support the running of Java applets within in itself. JRE != Android's Java Runtime aka DalvikVM. Desktop Java uses JavaVM as endorsed by Sun/Oracle and the OpenJava JDK...

Right. I don't understand why openjava jdk can't be compiled and installed to run in android. Maybe I have too optimistic a view of how much android is like linux?

Interestingly, there is http://terminal-ide.com/ which contains a java compiler it seems.

I appreciate the straying off the path, thanks! I am more and more convinced now that it is perfectly possible it's just that no one done the configuring and compilation work yet.  I should add that I know the native dalvikvm is irrelevant. My question was never about that. It was about someone compiling the desktop jre for android.  I think there is already an ARM version. Just not an android one.

The closest I've found is http://www.apogee.com/products/cjre-a
Unfortunately as stated on that page:

Note that Apogee temporarily suspended further development of CJREs+A
  in June, 2012, because of insufficient demand for them.  Please,
  contact Apogee if you are interested in a CJRE+A targeted at a an
  Android-running device of your choice for "volume" distribution to
  your customers and/or other third parties.

...and a download/demo is nowhere to be found.
Taken from their products page http://www.apogee.com/products it does sound like it would have been a great thing to have:

CJRE+A - The “CJRE for Android” is suitable for devices running
  Android v4.x or higher, which need to execute the Java SE 5 and SE 6
  applications in addition to executing the Android applications.

We can still dream. I have not contacted them. I am aware of many companies that are looking for this functionality. I can't imagine it will dwindle all too fast (or let's say slower than flash)?
I have not reached out to Apogee, might be worth a try...If anyone ever finds a solution, please keep us updated! Thanks.

Android still does not support Java applets, nor will it, without major work.
The Java in Android isn't 'real' Java - it is a custom written version by Google. Android apps may be written in Java, but they are converted to Dalvik at compile time.
As such, it would be nigh on impossible to develop a browser that has compatibility for Java Applets.

Is there a reason why 3rd party browsers couldn't include support for java plugins?  I notice that m0rtadelo at http://stackoverflow.com/questions/2433338/is-there-a-possibility-to-run-applets-on-android-or-blackberry actually claims to have got it working! I am actually only interested in getting it to work on a  tablet if that makes any difference.

@Felix because Android doesn't have it included in the system. m0rtadelo was running a whole OS inside their device, and that's how they got it working.

OK.. I don't mind doing that on my tablet as a workaround if it isn't dangerous and it's the only option. Maybe that's a separate question.

There is a post entitled "Is there a possibility to run applets on Android or Blackberry" over on Stack Overflow which will provide you more insight, it can be found here:
https://stackoverflow.com/questions/2433338/is-there-a-possibility-to-run-applets-on-android-or-blackberry
I have looked elsewhere however there appears to be no conclusive evidence that java applets are supported.


text:
Is Hebrew support built into Android?
Is Hebrew support built into Android?  If so, is it in all versions?

Here is my understanding as a developer:
Android 1.5-2.1: Right-to-left support is built-in, but most ROMs do not contain the letters.  This means that Hebrew in most applications will show up as boxes (but in the correct order).  This does allow individual applications to include their own fonts and thereby display Hebrew correctly.
Android 2.2: The default system fonts now include Hebrew characters.  Right-to-left layout still works.  (Although the rules for justification did change, annoyingly.)  Based on some bug reports, Google did not yet consider support for right-to-left languages to be final in this version.  (Note the comments by Google engineers, such as Romain Guy here: https://review.source.android.com/#change,15955).
Android 2.3: The SDK has been released, but no updates for actual devices.  The SDK does include a Hebrew locale for the first time (http://developer.android.com/sdk/android-2.3.html#locs).
Also note that locale support ultimately depends on the vendor of the actual device (either the carrier or handset manufacturer).  They may choose to remove locales they deem unimportant to save space, or they may choose to add some that they deem important for their targeted market.

Hi, I'm new to Android. What does the OP mean with Hebrew Support, is it Hebrew keyboard/visibility (i.e. the OS is able to show Heb chars), or Hebrew menus, buttons etc.?

And what about Android 3?

I meant that the OS is able to display Hebrew characters.  Hebrew keyboards are available with some of the third-party keyboards (AnySoftKeyboard, GO keyboard, many others in the Market).  Hebrew menus and buttons require a localized version of Android, and that doesn't often happen outside of Israel.  (Note that 3rd-party ROMs such as CyanogenMod contain the Hebrew localization.)

I believe that Honeycomb (Android 3) is the same as Gingerbread as far as Hebrew support.  I don't have any devices running it, so I am less sure.  Hopefully we'll learn more about Ice Cream Sandwich (Android 4?) soon.

Froyo/Android 2.2 added support for displaying text in Hebrew and Arabic (among other languages), including the needed fonts.
Unfortunately, previous versions do not have Hebrew support in the stock source, though I would not be surprised if a device maker added support to their device on an ad-hoc basis.

source: Stack Exchange

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

sort: votes


text:
Is it possible to have a phone without a voice plan?

Possible Duplicate:
How can I receive phone calls through WiFi on an Android phone?

I have an unlocked Nexus One.  I barely use the voice function, mostly just use data.  However, I'd like to have the voice function just in case.
Is it possible to use something else (possibly VOIPish) to replace the voice plan that I am currently paying?  Perhaps Skype, or Google Voice or something else.  Has anyone had an experience with this?
Thanks

Not exact duplicate; as linked answer assumes presence of WiFi. This question is about data; which is what you use when you are not near WiFi.

Since the cell network was originally built for voice, the cell companies kind of have a focus on voice. While this might be technologically possible, I can't imagine how you'd convince a cell phone company to sell you a data-only plan for a device that supports voice. I'm not sure it makes business sense for them to do so - after all, why not rip you for at least a little voice, along with the data. If you don't use it much, then so much the better because they save on capacity.

It's on T-Mobile right now and they have no problem selling me a data only plan.  I think this might be because the phone is unlocked and not on contract.

I don't think it's unreasonable to expect phone companies to offer data-only plans. Modern phones have so much technological potential, but US phone carriers avoid innovation wherever possible. Their stagnant, short-sighted attitude drives me crazy.

You could buy a plan for a data card (T-Mobile sells PCMCIA cards that pick up a wireless signal, or maybe a 3G iPad plan with AT&T) and swap the SIM card out. Haven't heard any stories about this, but I don't see why it wouldn't work.
AFAIK, Google Voice doesn't support VOIP.

This isn't really an option unless you're deaf or hard-of-hearing, but there are plans like this that do exist. On AT&T, it's called the Text Accessibility Plan (TAP) 1, and it offers you unlimited messaging/data while still having calls at 40¢ per minute.
1. These plans are not exclusive to the iPhone; I don't know why it lists those phones as the only options.

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


text:
Nexus One overheats/restarts when connected to car dock or car charger
Whenever I connect my Nexus One to the official car dock, my phone heats up rapidly, and eventually restarts.  Obviously, the phone is restarting to prevent it from damaging itself.  So the question becomes why is it over-heating (the phone can draw too much current for its own good?) and how can I prevent it from happening.  As a side note, I have never observed this happen while I had the phone charging in the official desk dock, although most of that time I was asleep, and it has happened infrequently while I was charging it and still using it.
Thanks in advance.

Shutting off the screen while using navigation seems to be the best solution, as I'll still get verbal prompts.

Can you check with the GPS turned off for a while?
I've heard reports of heating and restarts most of which refer to multiple things being active increasing current demands from the dock.
Here are a few references,

N1 heat issue while charging + GPS? at the nexusoneforum
Nexus One is overheating in car dock, becoming unresponsive (google android forum)

here is a quote from the second link,

have use car dock overheat problem before, But I solved the problem now! The car dock 12V to 5V adaptor it can provide max. 2A current maximum, the phone voltage is 3.7V, when you use this adaptor direct connect to the Phone Car Dock, the phone begin charging, the charging current supplied by car adaptor, if you at same time your phone operating like navigation (GPS, Data) or video streaming and just not the screen off , this time the phone's power provided by car adaptor through the phone itself, therefore the current = charging current + operatin current provided by car adaptor.
This probelm very easy to solve, you just need to buy USB car adaptor  from car accessories shop, the USB car adaptor maximum supply current not more than 1A or less, and then buy a micro USB cable connnect to the car dock body, the overheat problem have been solved.

I haven't had the opportunity to run an extended test, but the problem didn't present itself on my short commute to work this morning.  My battery was nearly completely charged though, and the sun wasn't shining on it due to overcast skies, the opposite of both being possible factors earlier.

So I had about an hour on the road and tried the dock without gps on.  It eventually restarted, but took significantly longer.  It's a bit of a bummer that I can't use navigation while the phone is charging in the dock.

Place it on the air conditioning vent and velcro it on. Now you have a speed charger with no overheating. I had the same issue and this solved it.

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


text:
Manage Contact Groups on Droid X
On the Droid X I'm able to create contact groups. However I don't seem to be able to add/delete group members. What am I missing?

Well I just did the OTA update so I'm not sure if it was there before, but now when viewing a group I can see the Edit Group button when displaying a group in the contacts.


text:
Help with Google Marketplace
How can I contact Google in regards to an issue that I am having with the marketplace? I am trying to buy an application and it is not working. I tried to buy another one and that didn't work, so I need Google's help at this point.

What is the nature of the problem? trouble arranging payment? authorising payment? downloading apps?

I'm pretty sure that the standard way (that Google want you to go through) to do this is to start by going through the Android Market Help (also available by going to the help menu within the Android Market app) going into the Buying Apps section, a lot of sectsions there have Contact Us links that you can fill in with your problem and details.
If that doesn't help you then can search the Market support forums.

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


text:
Activating wifi hotspot tethering on a Verizon Droid with Froyo 2.2
I rooted my Droid and got Froyo working on it (Bugless Beast).
What is the best way to enable Wifi Hotspot on this thing?
I tried an app "Wireless Tether" which allows me to connect my Mac via Wifi, but it doesn't assign a valid IP address to it.

What's the deal here? Question asked and answered by the same person, who's profile is mysteriously not linked any more?

Not only THAT, Caleb, the question was both asked and answered by same person BEFORE THIS SITE EVER EXISTED!!!    Questions from the now-defunct "Gadgets.stackoverflow.com" site got moved in here.

That app is really your best (and maybe only) choice. Try resetting (or maybe reinstalling) the Wireless Tether app and try again.
If that doesn't work, you may need to set a manual IP on your Mac.


text:
HTC Evo's Facebook Sync Reboots Phone
After a week's worth of troubleshooting, I have discovered that enabling any sort of account synchronization for "Facebook for HTC Sense" will cause the phone to randomly soft-reboot.  I believe this happens if either "Sync live feed" or "Sync contacts" is checked in "Accounts & sync".
I would like to have my facebook feed available to the facebook widget and I like having my contacts' pictures automatically updated when they change their profile picture.  However, the random reboots are extremely annoying and it also causes a ridiculous amount of battery drain.  One last symptom is that the stock messaging app will continuously scroll you to the bottom of a conversation when you attempt to scroll up.  Is there any way I can get the best of both worlds?
I am running 1.47.651.1 (Android 2.1).  Will upgrading to 2.2 fix this issue?  I haven't upgraded yet because currently their isn't a way to root 2.2 and I'm still on the fence about that.

Good work on not upgrading to 2.2 yet for purposes of rooting!
As for your specific issue, you mention it happens when attempting to sync with facebook and then mention the reboots are random. Are they random or a cause of a specific action? My guess is they would be more random since as far as I know few people have problems with FB. Although there was an issue on HTC servers that caused FB sync to stop working awhile back. I do not think that issue caused any phones to reboot though.
Where did you buy your phone and did you get it brand new or used or refurb? With random reboots I would think you could take it into Sprint and have them look at it if you bout it new, since the likelihood you caused the reboot issue is slim.
Have you looked at the XDA Forums for help? There are a lot of Evo users there and they may be able to help, even if you aren't rooted.
Also I would recommend rooting, check the XDA forums. I don't think a single custom ROM has any issues with FB syncing. Not that rooting will necessarily fix your issues.

I have turned off enable always on mobile data to save battery (works rather well).  However, when that is off and facebook sync is on, the phone reboots randomly.  Change either of those options and no reboots.  I've had 2 Evo's and both had this problem.  Both were acquired near launch.  It's a problem with Facebook unless one of the specs for turning off always on mobile data was to randomly reboot the phone =)

LOL that would be an odd feature for sure. Was there anything on XDA along these lines? I would still check out that site. If you go to Setting > About phone > Software information what do you have under "Android version" and "Software number"? Could be a bug in your version of Android with version of sync and facebook.
You could try going into Settings > Applications and find Facebook. Then click on it, clear cache, and reboot. Clearing the cache for apps sometimes helps. If that doesn't help, you could try upgrading or reinstalling facebook.


text:
How can I root my device?

Possible Duplicate:
How do I root my device?

What is involved in rooting an Android phone? I am thinking of rooting my Motorola Droid.

Please change the question title to reflect the actual question.  Also, this is probably too broad of a question.

I'd imagine this is a top topic that people would be looking for on Android StackExchange. It's an important question. It'd be nice if there were full answers detailed for the question.

this is more or less the procedure I followed for rooting my motorola droid on android 2.1
http://www.droid-life.com/2010/05/06/guide-to-rooting-android-2-1-on-a-motorola-droid/
It was straightforward and error-free.  That said, unless you have a compelling reason to root your phone (like upgrading to a pre-release rom), I don't see why you should bother (go volunteer your free time to community service instead).

In that case I suppose one shouldn't customize any of their possessions without a compelling reason. I feel that owning something is all the reason someone needs to customize to their liking. And with a straightforward and error-free process, why not?

there are also much simpler solutions, like the one click root apps.


text:
Note taking on the Entourage Edge
I recently came across some free money and am considering buying a tablet.  Specifically, the entourage edge because it would be in my hands the day the money is.  What I'm curious about, however, is how well this baby can take notes.  The floor model had been on for several days and had had sever people screwing around with it and had hence crashed.
So:

Can the entourage edge take notes in real time (ie what is the latency when dragging my pen over the ereader screen) when it has not been abused?
how many pages of notes can it store without extending the memory?
how well does the edge sync with a parent computer, specifically a mac?

According to the review on Engadget, note-taking is laggy; up to a second between writing a letter and it appearing.

That was an early review.  The note taking has been sped up considerably and although it is not quite as fast as a real pen on paper it is now a natural feel and I have not found a better writing experience on any electronic device.


text:
Droid Eris CELB Rom compatible with ROM Manager?
I've got a Droid Eris that I've loaded the CELB Froyo 2.2 Rom, which is based off Cyanogen Mod 6.  I know before that ROM Manager was basically useless with the Eris but I was wondering if it works now.

@Alex Larzelere: "compatable"? Don't you mean "compatible"?

@Peter lol, thanks.  I was rushing out the door when I wrote this one, and looks like I missed that.

Depends on the Rom developers. Unfortunately no one but someone with an Eris or someone that develops for Rom Manager could answer this question. Just download it and see what you get.
The way Rom Manager works is the developers have to contact the Rom Manager team with the appropriate information that can then be added to the app. So Rom Manager team can only do so much to get Roms in it. Plus there are a lot of side conversations about how well clockwork recovery actually works when wiping, but I have never had a problem with this. And the issue of some Roms do not play well with Clockwork recovery either.
On the Evo Cyanogen is very good about keeping the ROM up to date in Rom Manager. Which is nice since it is updated nightly. I say try it again.
Remember that paying for it will give you access to all the Roms, so if you haven't paid for it you might not see some Roms that you would otherwise see.


text:
Application manager for Android
Is there an application manager that would easily

kill/close an application from memory
install applications
unstall applications

Platform: HTC Desire and Android 2.1.

Please update your post with what phone you have and what Android version it is running.

If you are running Android 2.1 or 2.2 you do not want to use app killers. It actually hinders performance and could cause more problems because Android has built in app killing functionality into the OS.
No app currently exists that can do all three of those. You can get an app that can do the first one, there are lots of those but I wouldn't recommend any of them. Or you can get an app that can do those last two...

Native Marketplace
Uninstaller
AppBrain App Market
My Market
App Center - by AndroidPit

@Webs: that's very interesting... why I shouldn't kill app? I have lots of them in memory I thought it would slow down the whole system ...

I agree that it could potentially cause problems (I've only had one problem app [SportsTap used to give me a pop-up when I'd force-kill it], and that has subsequently been fixed), but they definitely have their place.  Sometimes I want to kill everything possible in one fell swoop because of a problem with the app.  For example, the built-in newsfeed widget sometimes messes up my touch screen, and killing it corrects my touch issues.
Nonetheless, I'm using TaskPanel these days.  As Webs said, it doesn't do install/uninstalls, but since he covered those, I figured I'd recommend my task killer of choice.

ASTRO file manager does all those things, although I have to agree with Webs and say that you shouldn't use task killers as they are no longer needed. For more information, go to Application Fundamentals and scroll down to component life cycles.
Just trust the system, the way Android is designed means you don't need to do memory management, the OS does it for you. Even the developer of Advanced Task Killer said in an interview that his application is no longer needed.


text:
Does constant charging harm my Android cellphone?
I usually disconnect my cellphone from the charger some time after it's fully charged because I'm afraid the battery could lose capacity over time if I don't. However, I believe modern electronics should be able to handle this kind of scenario and automatically stop charging the battery once it's full. Does this apply to modern Android phones? Or do I need to continue disconnecting it all the time?

If you leave a cellphone constantly connected to its charger, 24 hours per day, 365 days per year, it will put extra wear and tear on the battery.  Instead of wearing out after the usual three years, the battery might wear out after just two years.  Once the battery is worn out, it won't hold as much energy anymore.  You'll probably want to replace it.

(When you do replace the battery after a few years, avoid the unsafe counterfeit batteries sold by small online vendors. Many counterfeit batteries are indistinguishable from real batteries.  Instead, spend US$25-$50.  Choose a good-quality battery made by your phone's manufacturer or by a reputable aftermarket-battery maker such as Lenmar.  Purchase the battery from a reliable vendor.  In America, Best Buy is one reliable vendor.)

As njd pointed out, most cell phone batteries are Lithium Ion now.
Although constant charging cannot hurt, it looks like you may want to periodically run the battery all the way down so the digital circuits can correctly calibrate:

Although lithium-ion is memory-free in terms of performance deterioration, batteries with fuel gauges exhibit what engineers refer to as "digital memory". Short discharges with subsequent recharges do not provide the periodic calibration needed to synchronize the fuel gauge with the battery's state-of-charge. A deliberate full discharge and recharge every 30 charges corrects this problem. Letting the battery run down to the cut-off point in the equipment will do this. If ignored, the fuel gauge will become increasingly less accurate.

As for battery life, temperature is apparently a factor -- the hotter the environment, the more capacity loss over time. And storing the battery at 100% charge is actually unhealthy for Lithium Ion batteries!
Great set of Lithium Ion battery use tips here: https://www.batteryuniversity.com/parttwo-34.htm

Avoid frequent full discharges because this puts additional strain on the battery. Several partial discharges with frequent recharges are better for lithium-ion than one deep one. Recharging a partially charged lithium-ion does not cause harm because there is no memory. (In this respect, lithium-ion differs from nickel-based batteries.) Short battery life in a laptop is mainly cause by heat rather than charge / discharge patterns.

Batteries with fuel gauge (laptops) should be calibrated by applying a deliberate full discharge once every 30 charges. Running the pack down in the equipment does this. If ignored, the fuel gauge will become increasingly less accurate and in some cases cut off the device prematurely.

Keep the lithium-ion battery cool. Avoid a hot car. For prolonged storage, keep the battery at a 40% charge level.

Consider removing the battery from a laptop when running on fixed power. (Some laptop manufacturers are concerned about dust and moisture accumulating inside the battery casing.)

Avoid purchasing spare lithium-ion batteries for later use. Observe manufacturing dates. Do not buy old stock, even if sold at clearance prices.

If you have a spare lithium-ion battery, use one to the fullest and keep the other cool by placing it in the refrigerator. Do not freeze the battery. For best results, store the battery at 40% state-of-charge.

@jeff, I have never seen an answer from you off of meta, but I must add a comment, "Although constant charging cannot hurt, it looks like you may want to periodically run the battery all the way down so the digital circuits can correctly calibrate:" is not good advice. This strains the battery, if your charging circuit has a light error on showing how much charge you have left is a minor detail, but stressing your battery can cause problems.

@kortuk that's fine, do you have a citation for that?

@JeffAtwood, yes I do, my answer about charging cellphones elsewhere on this site discusses it. Also, to link directly to a source, scroll down to the bottom and read the "Simple Guidlines". I have also worked with lithium batteries a lot in a professional capacity at the last start-up I worked at, and these sources are backing for me, not the source of my knowledge.

@JeffAtwood, I have seen battery monitors that need this to stay 100% accurate, but it is a trade-off between battery life and knowing exactly charge left. Most people will chose to know their charge left, I just suggest that you note to people that this does age the battery significantly. You are not wrong, I just think it needs a disclaimer.

Never intentionally discharge a lithium ion battery to 0%. It will shorten the lifespan, and in rare cases it will cause the battery to no longer function.

"Batteries with fuel gauge (laptops) should be calibrated by applying a deliberate full discharge once every 30 charges." - what if my laptop is attached to the charger 100% of time for weeks, so we can't speak about  30 charges as it is to be discharged to get charged and it is never discharged actually?

Some of the information provided in this answer seems to run contrary to the answer provided by community member Cmazay, which is also supported by links from Battery University.

Modern cell-phones all use lithium-ion batteries, which work best with frequent top-up charges.
They have circuitry to monitor the input voltage and prevent over-charging.
Some chargers get quite warm while connected to the mains supply, and that's just wasted energy; so you might want to disconnect the charger from the mains once your cellphone is fully charged, but there will be no damage to the battery if you leave it charging a few hours longer.

All devices should stop charging once they're full. However, they might start recharging when the charge drops down to 80-90% depending on the manufacturer.
If I'm rights most batteries should be rated for about 1000 charge cycles before serious degradation occurs. If you charge the phone at night, in the car and at work that would be about one year. After that you might as well buy another battery since they are getting really cheap. Just dispose of the battery environment friendly.

Can you provide a source? "If I'm rights" is not encouraging.

Here are the real expert answers from Electrical Engineering, our sister site:
Effects of smartphones always connected to AC power?
Not directly related, but also a nice read:
Tricking the charging circuit considered harmful
TL;DR: The charging circuit is safely engineered to be connected to the charging circuit 24/7.

The phone I have (OpenMoko FreeRunner) specifically states in the documentation that it will live happily on the charger; it was made in 2006 or so.
If your phone's charging circuits are sophisticated enough it should be able to trickle charge and not overcharge or poorly condition the battery.

Modern electronics will not overcharge battery, and phone should be able to handle being constantly plugged in.
However keeping battery constantly in high state of charge and charge cycling in high voltage will increase battery degradation. It's best for the battery for it to be at full charge as infrequently as possible.
My personal experience is that my android phone SGS1 handled overnight charging all well so it's not wise to get too worried about this, but if your battery never last long keep eye on that.
https://batteryuniversity.com/learn/article/charging_lithium_ion_batteries

Some portable devices sit in a charge cradle in the on position. The
current drawn through the device is called the parasitic load and can
distort the charge cycle. Battery manufacturers advise against
parasitic load while charging because it induces mini-cycles, but this
cannot always be avoided; a laptop connected to the AC main is such a
case. The battery is being charged to 4.20V/cell and then discharged
by the device. The stress level on the battery is high because the
cycles occur at the 4.20V/cell threshold.
Chargers made for operational readiness, or standby mode, often let
the battery voltage drop to 4.00V/cell and recharge to only 4.05V/cell
instead of the full 4.20V/cell. This reduces voltage-related stress
and prolongs battery life.
To minimize stress, keep the lithium-ion battery at the 4.20V/cell
peak voltage as short a time as possible.

https://batteryuniversity.com/learn/article/how_to_prolong_lithium_based_batteries

Most Li-ions are charged to 4.20V/cell and every reduction of
0.10V/cell is said to double cycle life.

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


text:
Leaving wi-fi on all the time
Does it highly affect the stand-by time to leave wi-fi open all the time on my phone?

Yes, I would imagine leaving WiFi on all the time would drain the battery faster. Even if you're not actively connected to an Access Point (AP), the phone is still constantly scanning all the APs in the vicinity of where you are and that takes energy.

The general rule is to turn off what you are not using.

This has been my experience with HTC's Evo:
WiFi uses less power compared to 3G when actively downloading/uploading large amounts of data.  Even when doing a lot of browsing.  However, unlike 3G, the WiFi radio never goes to sleep.  So when you aren't actively downloading data, it's best to turn it off.  This is unlike GPS and Bluetooth where if they aren't being used, they don't use much power at all.

Turning off anything that isn't in use will generally increase battery life.  Also remember that the biggest drain on the battery is generally the display.  Setting your brightness to the lowest level (or at least auto) can do a lot to save your battery life.  Also, if you typically connect to WiFi at home, but don't have access at your work, there are apps that can automatically turn off the WiFi radio (among other things) in the morning, then turn it back on in the late afternoon/early evening.  I use Advanced Volume Mode Scheduler to do this.

Wifi uses significantly less power then 2G or 3G and in fact uses less while connected and inactive than when it is searching for an AP. So I leave it on all the time and my battery lasts longer.

That is only half the story. Wifi uses significantly less power when actively transmitting data since it transmits lower range signals; but maintaining a Wifi radio without transmitting any data uses much more battery than maintaining a 3G radio.

As JamesRyan pointed out, leaving WiFi connected and inactive uses less battery than if it has to keep searching for an AP.
I use a HTC Desire and initially had my WiFi set to sleep after 15min, but then realised that every time I unlocked my phone it would wake the WiFi, and in turn it would start searching for an AP. Afterwards, I set WiFi to never turn off - this actually resulted in more battery power left at the end of the day (even with the occasional sync of my accounts - email, twitter etc).

By my experience it seems that if WiFi is connected to a network then leaving it on will improve standby time as all the periodic data access that an Android phone does will go through WiFi. And accessing data over WiFi is more battery efficient than 2G/3G/LTE.
On the other side, if WiFi is not connected to a network then it will constantly search for one and decrease the standby time.
So what I try to do is to leave WiFi on whenever I think I will be around a known WiFi AP for some time but I leave it off the rest of the time. The drawback is that it forces me to change the setting at least a couple times per day.

Yes, it decreases standby time because WIFI is one of the more significant things draining the battery. As long as WIFI is enabled, your phone is constantly scanning for new networks and "listening" on TCP ports.
Additionally it will be sending data from applications, requesting updates, etc.; and if you have the Play Store set to automatically update apps then it will also be downloading and installing apps, which also significantly drains the battery.


text:
power consumption by application?
Since cellphone application software requires extra power for processing. Is there any application software that indicate power consumption by particular application?

What platform are you asking about? iPhone? WinMo? Android? Blackberry?

I would be interested in each platform.  A very good question, if the answers might be somewhat indeterminate.

Settings > About Phone > Battery Use

I don't think this is going to be a popular answer, but you have to realize that your modern smart-phone is an incredibly complex beast, and battery life is affected by all sorts of things:

CPU usage (your phone might get warm, or use a system activity monitor for more details)
Bluetooth radio, is it on, is it in use (ie, headset or tethering)
Wireless radio, what protocol is it using? HSPA, EVDO, EDGE?
WiFi radio, are you actively using it? What version?
Proximity and power of nearest cell towers (weak towers = cell phone tries harder to connect, using more power).
Baseband version (this is the part of the phone os written and maintained by your carrier)

As you can see there are a lot of things that affect battery life, so it's tough to guarantee that any given App will have a given profile, since it's data usage might be over weak signal (which will reduce your battery life more).

I'm guessing it would be a no for all platforms, but Android is the only one I can speak to with certainty.
However, Android phones can tell you battery information for specific items and apps. Also if you are rooted you can use a command line command that gives even more information. If you have a Sprint phone you can try dialing (without quotes):
 "*#*#4636#*#*"
or
 "##DATA#"

Both are ## codes that give detailed info. The first is a battery info code and the second is one that gives cell radio and all other kinds of detailed info. But I don't think it gets that granular for cell radio.
Sprint might be able to give this information from their 4g app they have in their 2.2 Android OS, but I haven't looked into at all so that is just a guess.
An Android app called "OS Monitor" will give information about CPU utilization, but not cell radio. I think such an app doesn't exist.

Linux-based phones (with a GNU or Busybox userland, I'm unsure about Android) might be able to run powertop. It was designed for desktop/laptops but it could be useful on a phone.
Intel wrote it so there may not be an ARM build, but it's GPL-licensed so some enterprising hacker could port it.

Why not PowerTutor app which is freely available in Android Market.


text:
How can I prevent my HTC Desire from overheating?
Recently I bought an HTC Desire overall I'm very happy with it. There seems to be one major flaw, it overheats quite easily causing it to reboot. I've run into this several times while driving using the navigation whilst recharging. Does anyone have any suggestions to workaround this problem? I've searched around but haven't found any helpful information.

Using while charging is generally a bad idea.  It'll be easier on your battery if it's off while charging, as well.  I understand it's necessary sometimes though.

I also purchased HTC Desire recently and I found it was overheating while using Internet on 3G networks. When using Wi-Fi it doesn't heat-up much. Additionally it has some battery issues. Battery is getting low too quickly and charging takes so long. However we shouldn't forget it has won Phone of the year award in many contests. So I'll continue with it. Lets see what it will do in future.

[I also have a HTC Desire]
Your device overheats because its hardware is strained a lot during heavy use such as turn-by-turn navigation. This is compounded by the fact you probably have plugged it in the car charger as well, which is also known to generate some amount of heat (you probably have noticed this yourself when charging your phone normally).
There doesn't seem much that you can do to alleviate the problem, except turning off turn-by-turn navigation and only use the map to show you the route. You might also want to check whether there are other apps and services that strain unnecessary the device (frequent syncing could be an issue, as well as Bluetooth and mobile internet).

I also have the same problem i bought my HTC desire 3 weeks ago and if i stay on the internet for around 5 minutes, the phone starts to become extremely hot and if i continue ton use it it will cut of and reboot. my solution was take of the back cover and expose the battery. Taking this measure it kept my phone a little cooler and did not have to reboot.

This is a Q&A site not a forum,it is expected from you to give technical answers. Although you can mention your personal experience but it should come with technical reasoning, not just an opinion. Back your claim with credible sources. See How to Answer.

I have a rooted HTC Desire. My phone used to overheat and reboot.
I tried to solve it by moving some of my apps from Phone to SD. The phone is generally good but the battery runs out very quick. I advise nobody to get a task killer application from the market as i have experienced that it kills the phone battery more.
I tend to use 3G mobile-internet and that made my phone to overheat and crash - after I started using WiFi, it made a difference. Also this phone has problems in general with the battery the best advice would be to get a new battery of Amazon or E-bay and it lasts twice as long and the phone doesn't overheat at all.

Do not install unstable software. It is not stable. Then your mobile overheat.
Do not change CPU pulse rate. Keep normal number.
Keep free RAM and free space. Overload can heat mobile.
Some games need more RAM. It can overheat mobile.
Update operating system.

I disagree. Custom ROMs might not be as stable as some stock ROMs but only badly configured ROMs would overheat the device. By CPU pulse rate, do you mean frequency? If yes, what constitute as normal number? What does RAM has to do with overheating? Much of the heating that contributes to heating issues come from consistently high CPU and GPU cycles (too much electron flow, therefore, high generation of heat). If there is no stock update for ROM, what can a user do given that you asked them not to update to a custom ROM?

I said unstable custom ROM. You increase CPU pulse rate, it can heat mobile. You do not have memory and use high application, it can heat mobile.

You didn't say unstable earlier. // I can fill RAM to the brink of its limit, and it would still not contribute much in overheating.

I have written "it is not stable = unstable". Anyway you are senior I follow your instruction.


text:
How to break in a new cell phone battery?
Whats the best way to break in a new cell phone battery?
I just got a replacement battery for my Motorola Droid and so far through 2 cycles it is barely lasting a few hours.

Few hours talk time or standby time?

You may need to recalibrate the device for the new battery, especially if you got a 3rd-party replacement:

Allow the phone to drain completely to the point where the device no longer powers on
Plug the device in and allow it to charge completely. Do not use your device during this time.
After the device charges completely, keep the device connected to the charger for an additional 2+ hours.
Repeat this process once more to ensure that the device is being charged to maximum capacity.

If this doesn't cure your battery problems, make sure you don't have apps running in the background wasting power. Culprits include zealous Twitter clients and apps that constantly use the GPS.

You don't need to "break-in" a typical cell phone (lithium-ion) battery. It doesn't help the battery at all.
Having said that, as Kyle mentioned, calibrating it may be necessary.

Is it a lithium polymer battery battery? Discharging it probably won't have any effect:

This used to be true for NiMH
  batteries, where discharging fully was
  thought to help extend both voltage
  depression effects (where cell voltage
  would start to drop more quickly when
  in use) and general capacity (the
  "memory effect").
Fully discharging cells cures voltage
  depression in NiMH cells, but if you
  fully discharge a whole NiMH battery
  pack then the stronger cells in the
  battery will "reverse" the weaker
  ones. The weaker ones go flat first,
  and then get charged backwards by the
  others. This is bad for the weaker
  cells, and will kill a NiMH battery
  pack more quickly. Model enthusiasts
  will use a proper electronic
  discharger that discharges the cells
  without damaging them.
There is no need at all to
  purposefully discharge a lithium
  polymer battery. The chemistry is
  totally different. Each cell in a lipo
  pack has a working voltage between
  4.2v (fully charged) and 3v (fully discharged). If you run any lipo
  battery based RC models then you'll
  know how carefull you have to be.. fly
  your lipo helicopter for a few minutes
  after the power has dropped each time
  and then youll have to chuck the
  battery away within a few charges as
  youve completely messed it up! A
  laptop will switch off when any of the
  cells in the pack reach 3v to protect
  the battery. Then when it is charging
  it will charge each cell individually
  and balance them all out. There is no
  memory effect though.
Model enthusiasts preserve your lipo
  batteries when not in use by keeping
  them in the fridge. Even better if
  they are discharged half way
  (apparently).
Totally impractical for a laptop
  battery, but a cold laptop might be
  nice on a warm day.

(Lifted from this discussion on laptop batteries, but pertinent anyway)

Discharging the battery is not about the battery,  it's to calibrate the phone to the batteries capacity. It needs to go from 0 to full a couple times to know what 0 and full are. Makes no difference what chemistry the battery is

You are ALL very WRONG!  Discharging ANY LiPo to 0V makes it puff up.  Do it every day and your battery will suffer the very first week I guarantee.  There is no "Battery Level Calibration".  That is an imagined myth.  The Battery % is a table of Voltage Vs. % Capacity, with some guard band to save your battery from total discharge, which will hurt it!

If you are going to claim everyone else is wrong, please provide links to references to support all your statements.  Although I agree with most of your statements, how you presented them is rather off-putting and they are also completely unsupported with helpful references.


text:
HTC HERO OTA update to Android version 2.1 firmware deleted the Calibrate Touch Screen feature from the menus. How do I get it back?
HTC directly updated over-the-air (OTA) from 1.5 android to 2.1 android firmware on my handset. Since that time, the touch-screen (which is miscalibrated) can no longer be recalibrated, because the menu item has disappeared.
I have, of course, requested support from HTC via email, but I doubt that they will find an answer here, and I suspect my phone is now junk, unless some enterprising Phone-savvy person can figure out how to restore this thing.   There is sadly no backup that I know of that I can use to restore this phone, and going back to Android 1.5 has a host of issues associated with it.
How can I get this working again?  I could use any technique that will let me recalibrate the touch screen, even if it isn't the built-in menu item, maybe there is a way to bring that up indirectly somehow, or through an add-on app?
Incidentally, HTC HERO's seem to be famous on internet cell-phone forums for glitchy capacitive touch screens.

Unfortunately I'm pretty sure this isn't possible. How long have you had your phone? If it's still under warranty/insured, you should be able to get it replaced and can make sure that the new one has a good screen. Sounds like a hardware problem to me.

You're right. I contacted HTC and they say that this kind of capacitive multi-touch screen is either auto-calibrated during a hard-reset or goes back to them for service. It was the latter.

Now I have doubts. I have already sent it to them, but in some forums, people are saying that it's a firmware glitch. So I've paid shipping so they can address this firmware glitch as a warranty repair, I think.

Saw this on SDX Developers forum.  You might want to try it out
===============================================================
http://forum.sdx-developers.com/android-1-5/htc-hero-virtual-keyboard-on-moment/
This is a quick guide on how to get the htc hero vk onto your moment.
(1) You will need to go onto the android market and download an app installer.  'appmanager' should work.
(2) Download the HTC virtual keyboard apk
(3) Connect phone to computer, mount the phone, then move file onto a folder on the sdcard.  unmount.
(4) open appmanager -> press 'menu' key -> select 'Install from SD'.  There you can install the .apk file. If the file is not visible, press menu again, and select 'Whole SD' so that you can see the file.
(5) Go to your home
-> go to 'Settings' -> 'Locale & text'.  Select 'Touch Input'.
(6) Go to someplace where you input text, such as messaging. Long-press on the text input field, and select 'Input Method'. Select 'Touch Input'.
If you would like to calibrate the htc vk, download this file: calibration apk
(1) follow steps 3 and 4 above.
(2) to calibrate: go to 'settings' -> 'Locale & Text' -> 'touch input' settings -> 'text input' -> select 'calibration tool'
Thanks to bjb_nyj101 for locating the htc vk; and hokansoc for locating the calibration tool.
Also note: the calibration tool isn't necessary for it to work, so you should be ok even if you can't get it to install.
=============================================================


text:
Which uses more power/drains more battery: HTC Evo 3G or 4G?
I've read mixed reports online about which radio uses more power -- 3G or 4G.  Has anyone done any semi-scientific tests that would answer this question?

When constantly downloading data over the same period of time, which uses more battery (battery drain per second of download)?
When downloading the same amount of data, which uses more battery (battery drain per KB)?
Do both radios sleep with the same consistency?  Do they use the same amount of power when sleeping or is one better than the other?

I don't think this is a simple question since the different frequencies might take different amounts of power to transmit/receive, since 4G is faster and may get to go back to sleep sooner, since the process of holding onto a signal may be different, etc.
My city won't have 4G until the end of the year but I'd really like to know.

So I can't give you a scientific (or even semi-scientific) answer, but I can give you an anecdotal one based on my experience over the past couple months..
We have 4G here in Atlanta, and while it works most everywhere I go during the day, I've found myself leaving it off most of the time because it has a noticeable impact on battery drain.
The way I understand it, the 4G radio is separate from the 3G radio, and I'm not sure the 4G radio turns "off" the 3G.  I say this because when you use 4G it's possible to receive data during a voice call, which you can't do otherwise.
That said, using the 4G widget it's really easy to flip it on when you need it, and leave it off when you don't.  It's not inconvenient, and will help your battery life..

It's been my experience that if you aren't using the 3G radio, it goes to sleep and the battery will last for days.  Hopefully with 4G on, the 3G will sleep until it needs to be used (but what exactly would it be used for?  Data will go through 4G and there's 1xrtt/2G for voice/SMS/MMS right?)  Hopefully the 4G radio has sleep capabilities on par with the 3G, you could maybe confirm this by downloading JuicePlotter.

That's a good idea.. I just pulled down juice plotter.. I'll let it run a day or so in various modes and let you know what I find out..

Ok, based on 3 days of testing w/Juice Plotter, my battery appears to drain about 30% faster with 4G turned on.  Even worse, much of the day I'm inside our office bldg which tends to block the 4G signal.  This tells me that the 4G radio doesn't do a good job of sleeping when it can't be used..

Hmm...  The 3G radio is also a power suck when it has weak or no signal.  However, when it has good signal, it will generally be off most of the time when the screen is off.  Does it look like the 4G does this too?  4G doesn't have as good of building penetration as 3G so I don't we're comparing apples to apples here.

I don't think the 3G radio can turn off, because 4G is only used for data. Voice service has to use 3G.

Anandtech did some testing with the Evo 4G and found the battery life to be the same when using 4G as when using 3G. http://www.anandtech.com/show/3791/the-sprint-htc-evo-4g-review/12 It is the only semi-scientific testing I've seen.
I find that in Portland, Oregon 4G coverage is spotty so if I leave 4G enabled the battery drains faster. My guess is that it takes more battery power to search for unavailable 4G networks.


text:
HTC Delivery Report
Is there a way to turn on the text message delivery report on the HTC Desire?
Does it even have a delivery report functionality?

Open the "Messages" app
press menu
choose settings
enable "Delivery reports" (4th option from the top)


text:
HTC Evo - Can Wi-Fi Radio Sleep?
I've noticed that when actively downloading a lot of data, the Wi-Fi radio uses much less power than the 3G radio.  However, when the phone is not being used much, the 3G radio will sleep but the Wi-Fi radio will not.  This actually means that if I leave Wi-Fi on, my battery will drain about 2.5 times faster than if I were using 3G.
Is there a way to get the best of both worlds?  When in range of a Wi-Fi signal I'd like it if I could leave Wi-Fi on and it would sleep in a similar manner to the 3G radio.  Is this possible?
Settings > Wireless & networks > Wi-Fi settings > Menu > Advanced > Wi-Fi sleep policy > After 15 min
doesn't appear to do what I want.  Basically, Wi-Fi will always be on and then if not used, will turn off after 15 minutes and turn on the 3G radio.  And then the 3G radio won't sleep at all!  Which is really horrible and not what I want at all.

Sigh... drive-by downvoting with no explanation.

Presuming that you normally only want your Wi-Fi switched on in certain locations (e.g. Home and Work), then an app like Locale that can change profiles and switch power-hungry components like Wi-Fi on and off based on your location might do the trick for you?
(note that this is not a free app)

I've looked into similar apps and all I read about is how they use more battery than they save (grabbing GPS info, improper use of wait locks, etc.)  Even if I had an app like this though, it would turn wifi on if I were in range and it would stay on even when not being used -- wasting a lot of battery in the process.  Ideally I'd want the wifi radio to sleep until an app requests data.


text:
Is there a DLNA enabled media player for Android?
Is there a DLNA compatible media player app available for Android?

Not quite a duplicate but see also http://android.stackexchange.com/questions/1660/can-i-get-dlna-on-my-droid

There are a lof of DLNA players for Android. You have to search for DLNA in play google.

UPnPlay is an Alpha release and apparently still a bit glitchy, but still some positive reviews.

try twonky https://market.android.com/details?id=com.pv.twonkyremote

Does it also work as a client?
I am interested in watching movies stored on my pc on my android device...

yes but your server needs to transcode certain files such as .mkv

This software is LOVELY!
I just need to find a good server on the pc side...
I saw that Windows Media Player works fine on Windows 7 side... I'd like to use Xbmc but I had no luck: Can't see the library of it from phone.

A similar question exists on stackoverflow https://stackoverflow.com/questions/3682430/android-developing-plugins-for-media-sharing (For which I gave the info I was aware of)

All Share is an app on samsung phones that plays & downloads DLNA media from a DLNA server.  All Share can also be used to play files of the phone onto a DLNA device, or stream files from a DLNA server via the phone then play back on a 3rd DLNA device.

I've looked into 2player and it seems to work well (not great thou).

You can use Skifta. It will play files from DLNA server in any player installed on your device. Also it can be a media server and controller. The description says the app is DLNA Certified.

I have been using MediaHouse, UPnP/ DLNA Browser with Plex Media Server (get the beta with DLNA) on my home computer and it works great!

Sure, you need an UPnP controller, like BubbleUPnP and an player (e.g. MX Player). That's all what's need to stream via UPnP. At least it works well for me with MediaTomb.

uPNP works perfectly for me for streaming. I use the stock video / Mobo video alongside that and have been able to stream anything I've put on my server.

For this purpose I've used Sklift and some other DLNA apps.But Now I'm using ArkMC because it let me to stream photos and 1080p videos Flawlessly.


text:
Is there a way to use PC browser bookmarklets with the Android Browser or Dolphin HD?
Can I make these work on Android or is there a google place to create or convert bookmarklets to make them Android Compatible?

see also: http://android.stackexchange.com/questions/1054/is-there-a-way-to-use-userscripts-greasemonkey-scripts-on-the-android-browser-o

Finally got it to work and it wasn't complicated at all.
Simply create a bookmark and paste the javascript into the URL field.  I've tried it on this bookmarklet that does a google definition search:
javascript: s = (window.getSelection ? window.getSelection() : document.getSelection ? document.getSelection() : document.selection.createRange().text); if (s == '') { l = parent.frames.length; if (l != 1) { for (i = 0; i < l; i++) { s = parent.frames[i].document.getSelection ? parent.frames[i].document.getSelection() : parent.frames[i].document.selection.createRange().text; if (s) { break; } } } } if (s == '') { void( s = prompt('Google Define:
Enter a term or mark some text.','') ); } if (s) { s = String(s); s = s.replace(/^s*|s*$/g,''); s = escape(s);void( bmw = open('http://www.google.com/search?num=100&start=0&q=define:'+s+'','GoogleDefineBM'+String(Math.round(Math.random()*1000))) );}
To get it saved as a bookmark I just saved the text in evernote then copied it on my phone an pasted it in the url field of "new bookmark."  To make it even easier to access I created a custom dolphin gesture that opens it as "Go To URL".  Now when I'm browsing and I want to lookup a word I hit the gesture button and draw a "d" and it brings up a popup that allows me to lookup the word.
I've only tried this on Dolphin Browser HD.

Unfortunately on Firefox and Chrome for Android it doesn't work.

But with Dolphin Browser it does work.

Works in Chrome mobile. Here's the recipe:
PREPARE
Create a bookmarklet = add a script to your bookmarks:

on Chrome PC¹, then sync (so your bookmarks show up in Chrome mobile on your phone)
or directly in Chrome mobile on your phone²

USE
Do not invoke/call the script (on phone) by looking it up in Chrome Bookmarks (menu [ ⋮ ] / Bookmarks) → that doesn't work. You have to tap the URL bar and start typing the bookmarklet's name. Select the bookmarklet from the list (it'll begin with javascript:blahblahblah…).

¹) on any webpage hit Chrome's button [ ⭐ ] on URL bar then [More] in the popup that appears, then enter the bookmarklet name, URL (=code beginning with javascript:blahblahblah…), optionally choose folder, then hit [Save]
²) on any webpage hit Chrome's button [ ⋮ ] then [ ⭐ ] then [Edit] on a bar that shows down the screen, then enter the bookmarklet name, URL (=code beginning with javascript:blahblahblah…), optionally choose folder, then hit [←] to save and go back

It isn't so much being "Android compatible" as being compatible with the specific browser.
That being said... I haven't gotten URL-based javascript to execute in Dolphin, but that proves nothing.

"Simply create a bookmark and paste the javascript into the URL field."
Bookmark a page that you have not bookmarked, then modify the bookmark, Name, Address, Folder (to something like "Bookmarklets"), and Assign a Gesture, then Add.
Suggest you create a gesture to create a bookmark and draw a five pointed star as that gesture. (or use the "+" at the left end of the address bar.)
For more information see http://dmcritchie.mvps.org/dolphin/dolphin_mygestures.htm

This does not work in Chrome.

Chrome to Phone and also...
Phone to Chrome,
Once the the linkys gets synchronized, then its merely a matter of bookmarking it.
The only onus, is that Chrome is installed on the PC Desktop, in that way, linkys can be shared.


text:
Is there a way to use Userscripts / Greasemonkey Scripts on the Android Browser or Dolphin HD?
I would like to be able to use userscripts in Android.  Is this even possible?  I read that it was a couple months back and tried a tutorial which I can no longer find but it didn't work.
This question may be related to this other one I submitted but I believe they may have totally different answers.

see also: http://android.stackexchange.com/questions/1053/is-there-a-way-to-use-pc-browser-bookmarklets-with-the-android-browser-or-dolphin

I just installed tampermonkey on FIREFOX NIGHTLY on android successfully , using this workaround https://www.youtube.com/watch?v=GXcg8r0c-Lk

Use OilCan - "Greasemonkey on steroids for Android".

Have you tried it?  I'm pretty sure this is the one I tried but couldn't get to work.  It was a while ago when I was still new to Android so I might have better luck now.

I haven't tried it yet. Looks cool though so I will give it a try soon and see what happens.

2019 Update:
My preferred way to get userscripts on Android would now be to use the Firefox browser, which has working, well-maintained Add-ons available for both Greasemonkey and Tampermonkey (search for them through the Add-ons menu in the Firefox app).
Pasting the javascript into the address bar still works (at least on Chrome), but note that Chrome now strips out the javascript: prefix when you paste in the code.  If you don't retype it, it will just do a web search.
The mobile versions of Chrome and Opera (also now based on Chromium) don't support userscript add-ons, but the Tampermonkey standalone app is still available from the Play Store.  It hasn't been updated since 2013 but still just about works.  However, given its age, it won't support many of the features of the current Greasemonkey/Tampermonkey API, or modern websites in general.  As a result, many userscripts won't work without modification.  It's also tricky to figure out how to install them in the first player (use the 'Textarea' utility hidden under the Advanced Settings).  There are also Tampermonkey extensions for the Dolphin and UC browsers available in the Play Store.  I haven't tried them, but they haven't been updated since 2016.
Original 2013 answer:
Solution 1. Use Tampermonkey. Tampermonkey is more popular as an extension for Chrome, but it is also available as a standalone Android app. It functions as a lightweight browser, and allows you to manage and automatically run user scripts. Unfortunately it doesn't have many of the features found on other popular browsers, but it does support the Greasemonkey API.
Solution 2. Use Opera Mobile, which has built-in support for userscripts, but no script management features, and doesn't support the Greasemonkey API. Navigate to the User Prefs section of opera:config, then tick "Always Load User JavaScript" and "User JavaScript". Enter the path to a folder (not a file) in the "User JavaScript File" field (I use /sdcard/userscripts/), then store the settings. Save your userscript in that folder with a .user.js extension.  NB this works in OM12, but the OM14 beta doesn't seem to support userscripts at present.
Solution 3. Launch your userscript manually via a bookmarklet or pasting this javascript directly into the browser address bar:
javascript:(function(){var a=document.createElement("script");a.src="http://path.to/myscript.user.js";document.head.appendChild(a);})();

This technique is tedious, but the principle should work in most browsers. You don't get Greasemonkey API support though. The code above should work without modification in the stock Android browser, and can be saved as a bookmarklet. In Chrome Mobile the space in the var a needs escaping, i.e. var%20a=, and bookmarklets don't seem to work, so you have to paste manually every time.

I guess you should advise the people who use the 3rd option. The userscript engine is more than append a js file to the current dom. Is not only the API, it's the sandbox features.

The current version of Opera for Android does not support user javascript.

Option 3 did not work for me, unfortunately.  It just google-searched the string until I realized that the javascript: portion at the front wasn't actually pasting into the URL bar (how annoying!)

Please note that a script won't load if you are on a https:// site but load s script from http:// and also, in newer browsers, you may have to fiddle around with about:config to enable loading of scripts from another domain on some sites who disable it in their <meta> tag in their <head> section

My Firefox android is not compatible with either tampermonkey or greasemonkey addons. Are you sure ?

This answer is out of date. Firefox for Android no longer supports these add-ons unless you use Firefox Nightly, which is not ideal for most users.

Use either the Habit Browser or Slepnir Browser apps. They both support Userscripts. I had to tweak my scripts slightly to get them working (they handle events differently) but they both work really well.

Do you have any instructions on how to install a userscript with either? I played around with Sleipnir for an hour and could not figure out how to do so.

There is a Greasemonkey-like add-on for Dolphin called Tampermonkey. There is also a stand-alone Tampermonkey app, but Dolphin is a more full-fledged browser than that thing.
There is also a similar add-on for Firefox for Android, called USI.

Dear lord, Tampermonkey's browser is awful. No cookies, no bookmarks, no passwords, no tabs.  It's the barest of barebones and not even worth using.

Firefox does support plugins on mobile, woot.

You can run userscripts on your phone by installing Violentmonkey on Kiwi Browser or Iceraven.


text:
How to drain the battery quickly?
The scenario I would want to have this is if I want to quickly drain the battery so I can charge it fully again.  Some say that this will help extend the battery life by fully draining/charging the battery.
How to drain the battery quickly?

This will only have adverse effects on the battery life. It may be needed for gauges of certain batteries but not recommended as it decreases battery life.

This question is along these same lines: What causes battery to drain faster than it can charge?
So there may or may not be an app designed to drain the battery but you probably just need to turn on an app that uses the GPS. This will help to fully drain your battery but I don't know that doing so before recharging will extend the battery life.

Enable your GPS and use navigator to some location you are not going to that is far away. Then watch a movie on your phone with brightness on max.
This will get the job done.

I wound up watching youtube, streaming pandora, leaving the flashlight on full power, and playing angry birds.

@npsken: does not youtube automatically stop when you minimize?

I believe it does. I just kept it open.

Do not do this. You are actually harming the lifespan of your battery when fully discharging it before a recharge. See this site for a discussion of how depth of discharge affects battery life.
The only reason you might want to fully discharge before a recharge is if you have a NiCad battery that is susceptible to the memory effect. Your smartphone most likely uses a Lithium-ion polymer battery, so there is no good reason for you to totally discharge your battery. The lifetime is longer if you have a shallow depth of discharge.

Below is cited from this question "Batteries with fuel gauge (laptops) should be calibrated by applying a deliberate full discharge once every 30 charges. Running the pack down in the equipment does this. If ignored, the fuel gauge will become increasingly less accurate and in some cases cut off the device prematurely."

Watch a movie with full brightness, download a large file, while enabling WiFi tethering (this is a great battery drain), GPS, Bluetooth, and WiFi at the same time.

I know that my phone -- HTC's Evo -- actually has a diagnostic tool thats sole purpose is to drain the battery as fast as possible.  Open up your dialer and enter:
*#*#3424#*#*

You don't need to press send or anything.  A recent update for the Evo blocked these tools so hopefully you can still access them.  You can also look up device specific codes if yours happens to be different.  Rooted users have found a way to get these tools back.
The utility turns up brightness all the way, prevents sleep, turns on the camera and flash, turns on the GPS and constantly polls it, etc.  Basically everything that can drain the battery but not damage the phone is done (ie it doesn't constantly vibrate because that would probably be bad).

If you know some basic programming, you can write an application that just do some random calculations (e.g. calculating primes, factorials, or even folding proteins), request CPU lock, prevent screen from turning off, turn on GPS, Bluetooth, Wifi, turn on vibrators, record videos, etc.

Activating WiFi network sharing should empty the battery in a couple of hours.
After the first couple of charge cycles, the battery should be at optimum performance. How this works, I don't really know. But after an initial couple of days, I had a little more use out of a fully charged battery.

Just play The Elements. A very CPU-intensive game. If you add a lot of stuff to make the simulation very slow, you are sure to use the CPU in full.
Meanwhile, you could use a GPS fix to constantly use your GPS. And you could leave your Bluetooth on. All this at the same time (especially with the Samsung Galaxy S2 & Cyanogenmod) you might end up using more power than your phone can recharge.

I found a combination that draws more than 2 Ampere on my phone without requiring any non-built-in app.

Flashlight

Brightness to the maximum. Obvious yet easily forgotten.

Disable adaptive brightness. Sleep after 30 minutes, or better: play a video.

Picture-in-picture video streaming (YouTube, Netflix,...). This keeps active:

The video decoder
The screen
WiFi (or cellular if you can afford it).

If you can't use the network, try Video Looper, no permissions required. There's also a "loop one" option buried in the options of MX player

GPU load like for instance https://jbouny.github.io/fft-ocean/ or https://webglsamples.org/aquarium/aquarium.html keeps the GPU active with just a web browser; no app needed.

GPS navigation

A fan to avoid thermal throttling

Some apps show the total battery drain.

Connect a USB device with a motor, like an external HDD or cooling fan (to the USB port using a USB OTG cable.)
Play HD videos at full brightness and sound (from an external HDD)
Turn on GPS, WiFi, 3G, Bluetooth, and do searching
Unlimited vibrator
Run a virus check

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


text:
Is it possible to use an Android phone in "disk mode"?
If I connect an iPhone to a PC it is not possible to copy files between the PC and the iPhone. I would like to be able to do this because it would be useful.
What happens if I connect an Android phone to a PC? Do I see it as a disk or is it similar to the iPhone?

Wait, hang on! Why are you asking about iPhone in not being able to copy files? Use iTunes for that!

Absolutely, and it's very easy.  This is the procedure for my Samsung Galaxy S; other phones may be different:

Plug in the USB cable and a USB icon
appears in the notification area at
the top of the screen.
Pull down the
notification and tap "USB
connected".
Tap "Mount" on the
dialog box that's displayed.
Two
removable drives show up on my PC;
one for the built-in flash memory,
and one for the expansion SD card.

great. It is what i hoped; soon or later i will try to get an Android phone :-) Thank you !!

Yeah, this varies by phone (or possibly carrier?) - on the Moto Droid, you only see the expansion SD card, not the built-in memory.

This works fine, but I've found that I get better data transfer rates if I remove the SD card and use a card reader.

power users can push things to sd card w/o mounting in in terminal type adb push  /sdcard/

Only one little thing, there are Android phones that have this function disabled, like for example the Samsung Galaxy S that requires to install a special app on your computer to copy files from/to the phone.

@doliveras: I have a Galaxy S and don't need any app (I presume you mean Kies?) to copy files.  If yours is set up that way (mine wasn't when I got the phone), you can change it in Settings > Applications > USB settings: you get a choice of Kies, Media player, Mass storage or Ask on connection.  Select one of the last two.

On my HTC Desire you choose "Disk drive" mode although you only see the SDCard not the internal memory.

Same thing for HTC Hero. I imagine all HTC phones can do this.


text:
Is there a way to create groups of contacts?
On my old Nokia phone I was able to create groups of contacts. I found this very useful and had groups such as Co-workers, Neighbors, Doctors, Friends, Family, etc.
Is there a way to do this on my Moto Droid? The only way I've found to group contacts so far is to mark them as Favorites, or create custom folders with direct contact shortcuts on my home screen.

Sunpech is correct about that. However, it doesn't quite work in the way you are envisioning it. Your groups in your Google contacts don't sort your contacts in your phone, instead you are simply able to specify to Android which of those groups you want synced. When you are in your contact list (in Android) you can hit Menu and go to "Display options" and choose your preferences there. The actual appearance of the "Display options" screen will vary depending on your version of Android, but ultimately, you will be able to choose which groups to include in your contacts, and even specify to only display those with phone numbers.
I hope this clears things up for you.

I don't know of any way to do that on the Android device directly.  But you can create groups within your contacts in Gmail, and it will sync down to your device.

I have my Gmail contacts organized into some groups, but I don't see them in my contacts list on my phone. Where do the groups show up?

Matt, Contacts GroupU is a free app that let's you create groups and sync w/ gmail groups. I stopped using it months ago because it turned out seperating my contacts wasn't that impoertant to me afterall. I do recall that it was a little quirky at first which caused some duplicate groups. Play around with it and figure out the difference between groupU groups and synced groups before you spend time getting things organized.

I was going to check this out, but there were enough negative comments from people having issues that were serious enough that I didn't think it would be worth the risk. Thanks for the suggestion though!


text:
HTC People Widget - Improve Touch Accuracy?
I have HTC's people widget on one of my home screens.  I like its functionality but sometimes when I touch a contact, another one gets selected. A completely different contact gets the green selection box and it starts to call them.  With my luck this usually results in calling my parents at some ungodly hour.
I've used touch visualizers to see if that area of my touch screen is having problems but all looks fine. The people widget is the only thing that seems to be affected.
I've also tried removing and re-adding the widget.  Is there a fix for this? Or a comparable replacement?

You could try Call Confirm, which gives a popup to confirm if you want to call said person.
I haven't tried it myself, but I've heard it is recommended for accidental touch screen issues.
QR Code for Call Confirm:

It's not that I accidentally touch the widget and call someone.  It's that I touch the widget to call person A but the software has a bug in that is selects person B to call.

I believe I observed a similar issue... I simply waited a few seconds and then pushed the screen side-to-side without leaving the screen. I saw the widget sort of refresh with the contacts back in order.

There probably isn't much you can do to fix HTC's widget. On the other hand you can purchase LauncherPro Plus which has its own People Widget which works perfectly fine for me.
LauncherPro QR Code:

Otherwise you can look around on the Market and I'm sure you'll find another People Widget somewhere.


text:
How to install from unknown sources on AT&T?
A friend of mine has an HTC Aria on AT&T.  On his application settings screen, he does not have the option to allow installation of apps from unknown sources.  Is there any way to change this option to allow him to install downloaded apps (*.apk files) without rooting the phone?

Unfortunately, it seems like the HTC Aria does have that ability, but AT&T has removed it.

You can install apps on the HTC Aria using the ADB client.
You'll need to install the android SDK on your PC, and then use ADB to install the .apk files.
To install the android SDK, follow the steps in the Android Developer's guide to setting up your phone for development.
If you're on Windows, you'll need to go to HTC to get the device drivers, as Google only provides drivers for their devices. For some reason HTC doesn't publicise the ADB driver well, but it is included in the HTC Sync software. You can grab the latest version from HTC's Aria downloads page.
Mac and Linux users do not need to install device drivers to use ADB.
Finally, connect your device to your PC, making sure that debugging mode is enabled on the device. You should see an entry in the system tray stating that the device is in debug mode. On your PC, run the following command:
adb install yourapp.apk

This will install the app on your phone, and you'll be good to go! Note that you'll either need to have the android-sdk/platform-tools directory in your path, or run the command from that directory.

The HTC download page is http://www.htc.com/us/support/aria-att/downloads/. I'd have added that but I can only post one link per article at the moment.

This works for the amazon web store downloads as well.  I just searched the contents of my phone (after mounting it as a disk drive) found the .apk files and installed them using adb.  Take THAT AT&T ;)

I know this is a really old (and probably no longer relevant) post, but as I have an HTC Aria and I shared the same issue, I thought it was worth posting another option.  I would suggest checking out a program called SuperOneClick.  With it, I was able to permanently enable my Aria to install non-market apps.  It will also allow for the installation of the Amazon market.  All of this without having to root your phone or do anything to void the warranty (at least to my knowledge).  It was very easy to use.

You could try the instructions in this XDA post. Be aware that doing this will disable your ability to send/receive MMS messages, and will require a hard reset to fix:

Go To Your "Settings"
Go To "Applications"
Go To "Manage applications"
Go To The "All" Tab (or any tab that will display all your apps)
Find The Applications "Customization Settings Provider"
Click On "Clear data"
Go Back To "All" Tab (or any tab that will display all your applications)
Find The Program "Settings"
Click On "Clear data"

Finished If You Go Back To "Applications" You Will Now Have The Option To Enable "Unknown Sources"

Please stop it with the formatting

Please link back to places where you find your content, both so that others can easily find it (rather than a vague "found on XDA" statement) and to give proper credit to the original author(s).


text:
Contact or application-specific vibration "tone" (pattern)

Possible Duplicate:
Is there a way to customize vibrate patterns?

I want a custom vibration "tone" (pattern) for different callers or applications.
Does Android have any facility for this? Can contacts hold custom information like this?
Thanks

Duplicate: http://android.stackexchange.com/questions/1217/is-there-a-way-to-customize-vibrate-patterns/1220#1220

Using the app, Locale, you can use the Contact condition to spot the caller and the Notification plugin action to use a vibration pattern.
There does not appear to be a contact-specific configuration built-in, even in Froyo.


text:
How can I send SMS messages from my Google Voice number without using the Voice app?
I would like to send text messages via Google Voice, as it is the number I give out for voice calls. However, I find sending SMS through the Voice app to be a bit cumbersome. The new widgets improve this somewhat, but it is still awkward.
I would prefer something with an interface more like Handcent or ChompSMS.
Are there any other apps that support sending SMS via Google Voice?

There is a similar question regarding using Google Voice # for some contacts and cell phone # for others. The OP is looking into this
answer which involves getting the Voice Choice app. It's not clear if the app works for SMS though.

As near as I can tell, Voice Choice doesn't do SMS.

Voice Choice 2.0 does SMS as well.  It works well for me.

This isn't the cleanest solution, but it's an option:
If you set up your google voice number so SMS messages are forwarded to your phone, every time somebody texts you, you will receive that text from a 406 area code phone number.  If you send  a message back to that number, it will reach your that person, and appear to them as if it came from your google voice number.  So you can save the 406 number for each contact as a secondary phone number, and set it as the default number to use for SMS.
(if you think the Google Voice app is cumbersome, you should try doing it from an iPhone ;) )

Yeah, I was hoping for something a little cleaner, but if that's the only way, I may settle on that.

If the sending phone number that the recipient sees is your top priority, then I think this is a pretty decent way. But if you also want to manage your text-message costs, then this isn't such a good way since each message sent or received will still count toward the limits set by your service provider; messages that go directly through GV get applied to your data plan instead.

You can get google voice to forwrd your texts as emails; then you just reply to them using the email client on the phone and that goes back to the originator as SMS.


text:
How can I customize the actions associated with my Moto Droid's hardware buttons?
I want to be able to redefine what the hardware buttons on my Motorola Droid do.  By buttons I mean the 4 capacitive buttons on the bottom: Back, Menu, Home & Search and the Camera button and Volume buttons on the side.  I have seen several apps that allow you to change what the Camera and Search buttons do but I want the ability to redefine them all.  Can this be done?  If so, how?

Possible motivation for re-mapping the hardware buttons is using the Android as something other than a personal phone. We use Androids as research devices, taking survey data. I don't even equip the field units with SIM cards. So, the phone is not really needed.
It would be great if I could map the green Phone/Send button to launch my survey application instead.

I am not sure those buttons would be configurable. They would be defined in the firmware so I would think the only real way would be to get custom firmware, but even then I doubt any one would change how these work.
What is the purpose of changing the buttons? Maybe what you are trying to achieve can be dealt in a different way

Got it, ButtonRemapper.

Button Shortcut will let you assign shortcuts to the camera and search buttons.
The home button could be replaced with another home launcher-like app that handles that intent.
However, I do not believe you will be able to re-map the menu and and back buttons without root access to the phone's system due to security reasons.  Although within an application you should be able to programatically take control over these buttons with listener events (but it is strongly discouraged to override the default behavior of the back button without valid reasons).

Looks like that app is no longer available.

Tasker looks like it allows you to remap at least some of the hardware buttons.
Note that the Android OS spec has some very specific requirements for Android devices. You may not be able to remap certain things.

I own a Droid (or rather, its brother Milestone, the GSM version of Droid) and I found its hardware keys not so durable: my power/lock key stopped functioning after a year and the volume down button is failing too. So you might wanna give it a second thought if the durability is ever a concern (I cannot lock/unlock my phone with a press of button anymore). In fact there are quite some apps out there trying to do the reverse, i.e. mapping hardware keys to on-screen touch buttons.


text:
Is a phone's ROM and Firmware the same thing?
I have heard of Custom ROMs and Custom Firmware, are they the same thing?  If not, whats the difference?

It's probably the same thing although ROM is supposed to be the area / location where stuff is only ever written once (during manufacture / initial flashing).

Here's a little more detail that I found: The ROM or Read Only Memory is the internal flash memory where the core operating system resides. The Firmware is a device specific part of the ROM that controls various hardware components.  So the firmware is contained in the ROM but in the context of Android the terms are often used interchangeably.


text:
Why does the default Email app download the same (POP3) message over and over again?
For the most part, I haven't had too many problems with the stock Email app on my Moto Droid.  I have both ActiveSync (Exchange) and POP3 accounts set up and never have trouble with ActiveSync.  But for some reason, with the POP3 account, sometimes the app gets into this endless loop and won't stop downloading the exact same message and showing it as unread.
I'll open the message, delete it, and then next time the app checks for new e-mail, the message is back again as if I'd never opened it in the first place.
Usually the problem seems to go away if I either (a) delete the message from the message list without opening it, or (b) delete it from within the message and then immediately hit "Load more messages".  But neither of these methods work all the time; sometimes the message still comes back!
I'm wondering if anyone else has experienced this and knows why it happens (I assume it's got to be some connectivity issue - I do know that the Email app flakes out a lot due to 3G/WiFi switching, but that's hardly a complete explanation), and if there's any foolproof way to either ensure the message is deleted "for good" or to prevent the problem from ever happening in the first place.
Unfortunately I've never been able to reliably reproduce the issue - it seems to be random or at least intermittent.
Any ideas?

My wife had the same problem accessing Hotmail through POP3 using the HTC Email app on the Desire. Tried everything and in the end I convinced her to get Gmail to pull her Hotmail email and use the Gmail app. Not exactly a solution but she is much happier now :)

Similar problems have happened with the stock email app on my Galaxy S. The app is super buggy and I recommend finding another app till it's improved.

I ABSOLUTELY HATE THIS ISSUE (sorry for caps but I have been dealing with it for a while). I don't have a fix but I do have work around: hit the show pictures button at the top of the message and let all images render before deleting. I wish I had a permanent fix for you. I wonder if this happens on other phones and not just the Moto Droid?

On my Motorola Droid, I was able to set up Hotmail as an Exchange Active Sync account. I followed the settings in http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/08/30/hotmail-now-supports-push-email-calendar-and-contacts-with-exchange-activesync.aspx and everything worked fine. Now that I access Hotmail through ActiveSync, my email sync works great and deletes work too.

I don't understand how this is relevant to the question?  I don't use Hotmail.

You didn't say who your POP3 provider was. I had the same symptoms when I used POP3 for hotmail. Switching to activesync fixed the POP3 hotmail problems I had. I was hoping this might help you. If it didn't, sorry.


text:
What's with the Donut/Froyo?

Possible Duplicate:
What are the names of the various versions of the Android OS, and how are these names chosen?

What the heck is Froyo?
Are android trying to be cool with the naming conventions?
.. oh wait, they.. they're alphabetical, right? Just like Linux?

They haven't publicized how they came up with why the version naming scheme they did.  There has been speculation about what future names would be and more speculation.  All of this could have something to do with obesity, but we may just never know.
After Froyo it looks like it's Gingerbread and then Honeycomb.  The original name for Froyo was apparently going to be Flan.  I think speculation about what the next names will be helps generate buzz and adds a playful element to the product.

I assume it has to do with the opposite of apple. Not healthy, fattening, and spreading like wildfire.

@Dmitriy Likhten: Yes, and intelligently designed, and a decent price/performance ratio, and secure, and OpenSource, and free, and Linux, and using Java (Python would have been better), and no politics in appstore, and no manufacturer lockin, unlike Apple. Sugar on steroids, so to say. One needed be really stupid to bite in a sour Apple when there's sugar on steroids nearby. Besides, the rumors of sugar being so unhealty are vastly exaggerated. Today it's sugar, tomorrow the 0815-flu, and the day after tomorrow potatoes.

The updates have been:

1.5 Cupcake
1.6 Donut
2.0/2.1 Eclair
2.2 Froyo (Frozen Yogurt)
2.3 Gingerbread
3.0 Honeycomb
4.0 Ice Cream Sandwich
4.1 Jelly Bean

Each codename has been a sweet treat.

That list looks like the ingredients for some kind of sickening recipe :)


text:
Do HTC widgets not work with ADWLauncher?
I've just installed ADW.launcher, which is a lot cleaner than the original HTC Sense homescreen, but I can't seem to get my Clock/Weather widget back. It's not appearing in the list of widgets.
Is it just me, or do none of the HTC widgets work with ADW Launcher, or is it that the HTC widgets will only work with the HTC home screen?
Alternatively, is there a decent clock app that displays digital time, and maybe weather too?

HTC Sense widgets do indeed only work with the Sense homescreen. There are knock-offs, but these are usually pulled off the market by HTC very quickly. Beautiful Widgets comes quite close though.

I've found a close second with Sense Analog Clock, but it's just not the same as the nice weather animations I used to get :(