text:
Why are there so many different Android kernels?
Isn't Android a common kernel that is used across all devices? For example, CentOS will install on Dell, HP, and a variety of other hardware. Sure there are different modules, but it's still CentOS nonetheless.
What is the reason why CyanogenMod is always "broken"? I always hear in forums they are working on porting this driver or that driver. If they used the same kernel, wouldn't the drivers just work with it? I also see a million different types of kernels for different devices.

Kernels vary from manufacturer to manufacturer. A lot of those kernels come from the pure stock kernel line of sources found on CAF, what these manufacturers do is take those stock sources, modify them to suit based on the board/chipset used, also, implement their own drivers.
Take a good look around you, there's variations of touchscreens, variations of wifi chipsets, not to mention, accelerometer, sensors, batteries, compass, sound, graphics.
Taking one kernel source from for example HTC will not work on a Samsung, and vice versa.
The manufacturers are free to cherry-pick or out-source various bits that get incorporated into the circuit board. There is no hard or fast rules involved. Hence the lot of hacking/modifications to get the kernel to work properly.
You must not ever, compare to desktop Linux distribution kernels in which it has PCI, PCI-Express, SATA, VGA, SVGA, USB, Ethernet as they are a totally different ball-park game. The major differences with CentOS and with Android's Linux Kernel is this - ALL drivers are compiled either as modules or built-in, hence any Linux distribution will simply "work out of the box". Again, with desktop Linux distributions - you have one architecture - x86 hence one Linux kernel from say a Dell PC, can work out of the box on a Lenovo provided that the bog-standard drivers are compiled.
Don't forget, in the Android world, there's variations of the kernel built for specific ARM chipsets, such as ARMv6, ARMv7, there's TEGRA, there's EXYNOS, and they are binary incompatible with one another. Hence if a kernel is compiled for TEGRA, forget it, it will not work on ARMv7!
The reason some kernels on Android appear to be "broken" is down to the manufacturer. Some (Zte is one very good example) release a butchered source that may compile from source but fails to boot due to a missing driver that is not covered by the GPLv2 or GPLv3 licence. That's the problem, hence some hackers have to go scouring around github looking for some clues; some manufacturers, if not all, do comply. The current incarnation of Zte's source is purportedly to be 2.6.35.7, but in reality its actually 2.6.32.9 source base with a lot of modifications thus does not represent the true kernel source for 2.6.35.7!
This is where the manufacturers have to release their respective sources, not just out of being compliant with GPLv2 or later, but rather, for the community to be able to mod it, such as adding overclocking capabilities.
Hence there's hacking involved behind the scenes and a lot of messing about with drivers trying to get it to work, and its not easy to debug either.. Some drivers may be cross-licensed, BUT cannot be distributed depending on the clause and conditions as negotiated.
Thankfully, that's all changed now with kernel 3.x.x. line of sources, as Android drivers are now integrated into the mainstream sources. But there's a gotcha!
Try porting a 3.x.x. kernel to an existing handset that is about 12-18 months old; Not a snowball's chance in hell would it work, that's because, of the differing factors, the 3.x.x sources is vastly different to the 2.6.x source and would take a lot of hacking to get it working - I should know, have tried porting 2.6.38.6 source for the Zte Blade and failed.
Likewise, the latest kernel release 3.0.1 - when working on the ics4blade project over on Modaco, have made numerous attempts to port it but that's down to the simple fact that Zte made a very bad mess of the source which rendered porting nigh on impossible.

From what you are saying the drivers are not all compiled as modules but integrated into the Kernel itself, so even if CM gets a working kernel on a device it can not simply "move the XXX modules" to the new build and have it work because there may not be XXX moduels.  The drivers must be hunted down, hacked (possibly), and recompile.

Correct, and also, drivers are different, so one driver for the touchscreen on one handset will not work on another handset that uses a different touchscreen. Also, another key point to note - some drivers are dependent on the kernel version - Zte brought out a  version of Atheros Wifi driver for the Blade, and the driver will not work unless the kernel is of version 2.6.35.7, any other version, wifi breaks - this is to demonstrate the dependency in a rather hackish and broken way of doing things like that.

The PC architecture is built around commodity parts because it started out as clones of a specific product, the IBM PC, that were specifically designed to be compatible with it, and therefore with each other.  Generally speaking, you could take a program or peripheral device from one PC-compatible and put it into another, and expect it to work.  That ability is useful enough that people have continued to demand it even as the technology evolved.  You can put a PCI Express card in any modern PC just like you could put an ISA card in any PC clone back then.
Smartphones have no such history.  They're designed as monolithic products, a complete system consisting of hardware and software that "just works" as-is.  There's no expectation that people will take parts out of one phone and put them into another, so engineers don't have to take interoperability into account when they design their products.
Even within the Linux kernel source tree, there's a lot of fragmentation in the drivers for ARM platforms.  Since phones are usually designed behind closed doors, engineering teams at different companies often end up doing duplicate work, designing basically the same hardware as their competitors and then writing their own drivers for their own design.  Once they're done and the product is released, they go straight to working on the next one; it's not worth their time to go back and refactor the drivers for past products or merge them with competitors' drivers.  The result is a plethora of one-off drivers for devices that are similar but not quite the same.
In addition, smartphones are usually based on SOCs that have specialized hardware integrated together with the processor.  For some of this, it can be more than a matter of whether to load or not load a certain driver; the kernel as a whole may need to be built with special configuration options for running on one SOC, which are incompatible with the special options needed to run on another SOC.

The reason is because Android's Linux kernel are generally not compiled on Android itself, instead it had to be cross compiled from another computer. This causes various issues, because the device configuration are not available on compile time, and it is not feasible to compile a generic kernel with all drivers due to space limitation (whereas most desktop distros simply had all drivers compiled into modules loaded from an initramfs). Therefore developers had to figure out which drivers to package for each particular device. Not only that, each drivers generally have a dozen or so of compile time options to toggle various driver features, and manufacturers usually do not release their official configuration (the worst offenders don't even open source their drivers, or didn't keep upstream's copy of the drivers up to date). Because manufacturer's don't release their configurations, often the slightly different configuration that the developer uses will expose subtle bugs that doesn't exist with manufacturer's configuration.
Driver programming is much more difficult than application programming, as there is no kernel that shield you from the fickle hardware that have a specific real-time timing requirements and the such, and this means even having a different performance characteristic may cause the driver to miss some hard real time events from the hardware; these misses may surface as either bugs or performance issues.
Another issue is binary incompatibility. There are two cause of binary incompatibility, first is CPU type, which has been covered by t0mm13b well, but the other issue which is more relevant to porting is the ABI incompatibility (application binary interface). If manufacturers don't open source their drivers, then developers had to use the compiled module from a stock ROM. This raises various ABI incompatibility issues, since the driver modules itself have specific expectations about, for example, struct layout and function calling parameters, and when the kernel is compiled, it does not have the header file to describe the ABI at the time the driver is compiled, so developers had to reverse engineer the driver to create a header file or the header files in the source tree might have been modified heavily since the driver is compiled and developers had to revert those modifications to make the kernel compatible again with the driver's ABI. Unlike compiling from source, compiling for binary driver will not trigger compilation error due to function parameter mismatch or struct incompatibility, it will simply just crash your device while it's running, and debugging these issues are very difficult. In the PC world, we're familiar with the mess that nVidia and ATi left us, due to their insistence on releasing binary only drivers, imagine having that mess for all drivers, imagine the "fun" it creates.
PC hardware are also generally better standardized than mobile hardware, most PCs don't need drivers for vibrators, accelerometer, gyroscope, 3G radio, proximity sensor, NFC, etc. Even on devices that have 3G, it usually connects to the hardware using standardized connections like PCMCIA or PCI-E.

Well.... drivers and the kernel are not exactly the same.
Drivers are what control the cell antenna, wifi, bluetooth, etc. These are proprietary drivers because the manufacturer has to create a way (the drivers) to talk to their hardware.
The kernel is an intermediary level between the OS/application and the actual drivers (or cpu or memory or any other hardware). It is what allows your OS/apps to interface with these hardware components.
All of the millions of kernels you see are really not that  much different from each other. Typically a programmer/modder will take the existing kernel and "tweak" it to try and get a difference performance out of it. You can essentially say that they are only adjusting (for the most part) the "configuration" of the kernel. In the Android world, these modders are primarily looking at: over or underclocking the CPU clock (important for either saving battery life or trying to run most process intensive applications such as video game emulators or video playback), or they are looking at under-volting (to save battery life by running your CPU outside of its original set parameters... which varies in effect person to person because no two CPUs are made 100% exactly the same).

What I mean is for example with CyanogenMod there are always complaints of my wifi, bluetooth, etc doesn't work.  Why do these drivers have to be "ported" to CyanogenMod.  Why can't they just take the stock drivers, copy them to the device, and run them with CyanogenMod

there is no such thing as a "stock" driver for the devices. Every device has different drivers for the hardware like camera, wifi chip, etc. And they are usually closed source so they have to "hack" their way through getting the drivers to work.

Yes but why the need to hack.  If they work with the OEM kernel, why can't you just move the driver files and associated libraries to the Cyanogen mod installation since the kernel is basically the same.

Phones and other embedded do not have a BIOS to provide abstraction between the hardware and OS as a result the OS is compiled for the hardware it is deployed to. Even devices using the same chip set can can be configured in different ways (using alternate comms buses etc.) \the result is that the kernel has to be compiled accordingly. As there is no expectation of changes in hardware there is no hardware detection performed. Kernel boots faster and is smaller as a result - this is a standard principle of an embedded OS

CentOS installs on different hardware, but,

It's all PCs which vary less than phones,
A Ubuntu kernel, Debian kernel, and Elementary kernel are all different kernel sources.

As for your second point, see the answer(s) posted earlier.


text:
How do I reinstall MediaScannerService?
I recently rooted my Samsung Exhibit II. and was going through and deleting some bloatware and accidentally fat fingered and deleted the MediaScannerService not realizing what I was deleting.  Does anyone no how to reinstall the service?  I have tried downloading applications but they are just accessing the service and restarting it.  Since the service has been deleted the applications essentially do nothing.

you will need to pull it out of a ROM for your device (might be able to use 'non-device specific' version but I would use the same to "be safe" then copy it on to the device. The other option is to reflash the stock ROM (if you have it available from somewhere). - Always Nandroid Backup before making changes, or use titanium backup and Freeze first to "test" for issues.

+1 for the Freeze recommendation! It's the first thing I always recommend in such cases, as its reversion is much easier than a re-install. Having a backup before removing stuff should be that obvious -- though many users seem to forget this most important step. First thing after rooting is installing a custom recovery and doing a Nandroid backup.

There are only two ways to get it back:

Flash a (new) ROM. This could be the same you are currently using, or any other one fitting for your device. To find a matching one, please see Where can I find stock or custom ROMs for my Android device?
Find the exact ROM you are currently using, and extract the corresponding files from it. Then copy the extracted files to your device.

For the future, keep in mind to always make a good backup before tampering with system files. A nandroid backup is a very good idea, as with that you are always able to get back to the state before you started with any changes.
See also the comments on your question for other details.

When copying file set the permission as 644 and it should be copied to system/app

source: Stack Exchange

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

sort: votes


text:
Do I need root to flash a ROM onto a Samsung device?
Just for my curiosity, do I need to have root on a Samsung device to flash a ROM onto it with Odin/Heimdall? My device is already rooted (by means of an exploit), but if this is true, one could root by flashing a custom ROM that is already rooted instead of using an exploit.

Now the reason I ask this question is that (I believe) HTC devices need S-OFF to flash a ROM (which is what a full root would include).

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


text:
Set up portrait video output from Galaxy Nexus
I know that I can hook up my Galaxy Nexus up to my TV, but I'm not able to change the orientation from landscape to portrait.
Is there a setting I'm missing? Or is there a way to do this if my phone is rooted?

Did you ever find a solution to this?

Try this application, it can force screen orientation globally.
https://play.google.com/store/apps/details?id=com.googlecode.eyesfree.setorientation&hl=en


text:
Cyanogen mod 7.2.0 keyboard backlight not working properly
I have recently rooted my phone (HTC Desire Z A.K.A. Vision) and installed Cyanogen 7.2.0. I have noticed that my keyboard and softkeys backlight no longer work properly.
What used to be the case: The backlight of the softkeys lit up when turning on the screen. The backlight of the keyboard lit up when "sliding" open my phone. After dimming both sets of buttons would come back to life at use.
What is the case now: The backlight of the softkeys only turns on when I manually adjust the brightness of the screen. The same applies for the keyboard backlight but only when the phone is "open".
Does anyone know a fix for this problem?

After quite some time a friend of mine goofed around and actually found the fix:
CyanogenMod Settings > Display > Automatic Blacklight
In here enable 'Use custom' and then look at the values in 'Edit other levels...'. The levels you want to edit are either the ones under 'Buttons' which are the values for the backlight of the soft keys (Home, menu, back and search) and the values under 'Keyboard' is for the  keyboard backlight. A value of 30 is standard for the 'Buttons' and the values for the 'Keyboard' are only 0 or higher than 0. (Even though you can choose values between 0 and 255, it doesn't seem to matter visibly.)


text:
What is the /config file in the android root directory used for?
In the / directory of an android device is a file called config what is this file used for?
I am assuming it is used for configuration files and other things but my Google searching has not been able to turn up anything useful.
When I look in the file (on rooted device), it is empty!
Are the files hidden? Or is there nothing there? thanks

Are you referring to default.prop?


text:
Renamed Google Apps User and Sync. How to reconfigure?
Since renaming his Google apps account, one of my employees Droid Razr can't sync. I'm sure it's still pointing to the old user name. He is running 4.0.4 on his Razr.
Can he reconfigure his device without wiping it? if so, how?

Is it a primary google account? - if it is, a factory reset would be needed, meaning a wipe unfortunately...

Maybe he could simply add a "secondary" account? I never played with that, but shouldn't it work as well?

Adding secondary should work as well. Add second account disable sync for first account.


text:
How to edit the home dock icons (shortcuts) on TouchWiz 4.0 ICS
I recently received the ICS update to my Galaxy Note and couldn't (or couldn't remember how to) change the shortcut icons at the bottom of each page. It seems they have removed one method for changing them.

Touch "Applications"
Touch Menu button
Touch "Grid View"
Touch Menu button
Touch "Edit"
Now you can drag and drop icons to/from shortcut bar


text:
How to set up Google Apps Gmail on an Android -phone?

Possible Duplicate:
Firm Gmail, i.e. Google Apps -email, with K9 -email program?

I have this kind of firm url, https://www.google.com/a/cpanel/firm.com. I want to have an IMAP -email account on Android. How can I do it?
I am using the app "My email" by which things do not work. If I use the native Gmail -app, things work out of the box. As for the "My email" -software (that gathers all emails, not just Gmails, under one mailbox), I selected
imap
Email: myName@firm.com

Incoming
Username: myName
Imap Server: imap.gmail.com
Port: 993
Security SSL

Outgoing
SMTP server: smtp.gmail.com
Port: 465
Security: SSL
Require sign-in: yes
Use the same settings as the incoming server: yes

Pressing Next fires "Username or password incorrect" with "s@gmail@firmA@g" while "Unable to open connection to server" with the latter. So how can set up the Google Apps Gmail on Android?

If it's Google Apps Gmail you shouldn't need to do anything special with the Gmail app. Add the account MyName@firm.com and give it your password. My company has a Google Apps setup and it works just fine for me.

Do you by any chance use two factor authentication?

[UPDATE] This solution should work here, haven't tested but I am pretty sure. I flagged for Closing due to duplicate.

For the incoming username, you need to use your complete email address ("myName@firm.com"), not just the account username ("myName").

Not working, the same err.

Then one of the following should be true: you're entering some of the information incorrectly, the app you're using is broken, or Google has locked your account for too many failed login attempts.

You need to enable IMAP on your account.
See Google Help Page here: http://support.google.com/mail/bin/answer.py?hl=en&answer=77695

...this is enabled and I still get the errs.


text:
J2ME emulator that works for ICS?
Is there any J2ME emulator like JBed for ICS? I've found a ton of tutorials like this but  as far as I know, all of them are exclusively for Gingerbread and below.
P.S. I already tried J2ME Runner but whenever I submit my JAR and JAD files for conversion on their site, it would hang up and send me a converted .APK with corrupted content so that cancels out that method too.

Think this should belong on StackOverflow

How so? This isn't programming-related. I believe it's an end-user question since I'm wanting to run old Java games from my Nokia phone on my Android phone.

Are you sure you get corrupted content? Do you have the J2ME Runner inside your phone?

With Android's Gingerbread builds, it was built using the Java 1.4 components, ICS and later are built using Java 1.5+.
Nokia uses Symbian specific Java midlets and JAR's written using Java 1.2 or 1.3 ME edition.
And from the tutorial linky, there is no mention of specifically running Nokia's apps on it.
Rather, the impression I get, is Java agnostic JAD/JARs/Midlets not tied to any platform.
In your case, Nokia apps are specifically for Nokia which I guess is why it failed.

I've also tried a Java game that ran quite well on a Samsung Corby 2 so I doubt that that's the case. I'm convinced that the problem I'm having is because of the lack of ICS support though. :(

There is a working one called phoneME. It was written for Android 2.1-2.2, so don't expect it to be stable. Here's download link:
http://davy.preuveneers.be/phoneme/?q=node/10
Also, emulator doesn't appear to like paths with spaces and to run JAR files directly, so you need to make a JAD file. Sorry for my bad English.


text:
why don't events added to Samsung Galaxy S3 get shown in my Google calendar?
When I try to add events to my phone it tells me that Google calendar cannot sync with Samsung Kies. Use My calendar to sync with Kies.
When I tick My Calendar, and create an event, it does not sync with Google calendar.How do I get my phone to sync with my Google calendar?
When I add events to Google calendar, they do get shown on my phone.

Not sure this if this exactly what you mean but if memory serves from when I ran the stock samsung rom on my SGS2 the Samsung calendar is separate.
When you create events you need to select the calendar you want to create them in.  Obviously, you should pick the google one rather than the 'my calendar' one.
I think you can also set the default calendar after you hit the menu button when you go into your calendar.
If it's strictly a sync problem rather than a problem with adding events you can try clearing the calendar data in your system settings > apps then re-sync your accounts.  Note: take care if you do this, google calendar events are stored in the cloud but if others are stored only locally on your phone you might lose them.
Hope that helps.


text:
Battery life cut in half recently - DrReadUsbStatus issue?
My regular uptime on Samsung Galaxy S2 was around 6 days. For the last couple of weeks it is down to less than 3 days. The change was instant, but I was hoping it would come back - it did not. Running ICS 4.0.3 from Samsung. No change of activity - I primarily use my phone to talk, no games, browsing etc. I installed System Tuner, looked in the system log and found this event happening every second or so: "DrReadUsbStatus returns false USB is offline"
Similar problem on the internet:

http://forum.vodafone.co.uk/t5/Samsung-Galaxy-S2/Galaxy-S2-and-ICS-problems/td-p/1074013/page/2

According to some sources, it could be causing battery life issues.
Samsung suggest a hard reset - trying to avoid that at all costs.

The error seems like something regular. A Google Search reveals many places it is mentioned (with a logcat), but almost nowhere it is commented on -- except for GALAXY W Constant Error in Logcat (XDA).
A shame they removed the wakelock stats from *#*#4636#*#* service menu (which would have offered you a quick way to check) with Gingerbread and up. You might want to look for some monitor app on the market (there's e.g. SystemPanel which might prove helpful) to figure out what keeps your device awake.
In case this app doesn't provide the required information (I already mentioned Wakelocks being the most probable cause), there's another useful app: BetterBatteryStats (also mentioned in the XDA-Link) seems to bring back Wake-Lock stats. As a short and eased-up explanation: An app might request the CPU not going to sleep, but still not actually use the CPU, though - the Android PowerManager API provides an interface for this). So BetterBatteryStats should help you find the responsible app:

For reference, here's the link to the BetterBatteryStats Thread on XDA, including the App (and its Changelog) as well as some closer explanation, especially on Wake-Locks.

It does not seem like any app is eating battery. I ran a recording in System Tuner, taking samples every 20 minutes for 24 hours; here is what it says: CPU utilization 19m 49s, Android System 8m 59s, Fancy Widgets 3m 49s, System Tuner Pro 1m 39s, System UI 1m 20s, Settings 55s, WidgetLocker 39s, everything else is less than that. Hard to explain, unless there is a hidden process, which it does not show. SystemPanel does not seem to add any useful information to that. Is there a way to repair Android installation somehow, so maybe it will fix this USB issue?

I don't think it's really CPU usage, rather some app keeping it alive by requesting "Wake-Locks". I will update my answer now with a few more informations.

Installed BetterBatteryStats - measuring "Other" since unplugged (since 7 h 10 m 22 s) - No Data Connection ratio 100%, no or unknown signal ratio 100%, wifi on 38.1%, wifi running 38%, everything else is less. Kernel wakelocks - no events catched. Partial wakelocks - ConnectivityService count:586, NetworkLocationLocator:89 - is it where the problem lies?

Update for partial wakelocks - ConnectivityService count:722, seems to be happening quite often.

The linked XDA article says wakelocks are the most important one when it comes to battery drain (you might want to follow the original post for closer details). Taking the max count of 586+89=675 and divide it by the time given (675/430~=1,5) this means about 1,5 partial wakelocks requested per minute. I'd say your phone hardly get's a chance to go to "green mode" (update: (722+89)/430~=1,9, which means about all 30s!). I'm no expert, but I'd say this is it.

This also matches with your initial suspection: USB is part of connectivity. Maybe a developer could tune in here and say if ConnectivityService and DrReadUsbStatus belong together? As you're running an official ROM supplied by Samsung, I'd confront the service with these details. They will probably want you to factory reset, so use that chance to tell them they should include Titanium Backup (or any equivalent solution if there is) with their official ROM next time, so you wouldn't lose any data...

I just added a screenshot of BetterBatteryStats to my answer above. The time frame is comparable with yours, but the number of Wakelocks significantly higher. As the screenshot shows, each entry also shows for how long Wakelocks have been hold -- you should check that as well.

Another update - ConnectivityService count:1461, I disabled wifi and left it like that overnight, estimated total runtime increased to 5d+ according to Battery Monitor Widget. DataRouter errors still present. So actually it may be unrelated to battery life issues.

Total runtime might simply reference time elapsed since it was started. As pointed out above, you should check with activity times reported by BetterBatteryStat.

By total runtime I meant time since last charged + remaining estimate. First is approx. 1d now, second shows as 5d+, so total 6d+ - not bad. Enabling wifi causes it to drop to 3-4 days after 1-2 hours (when estimate is adjusted). BTW, ConnectivityService locks never happened since wifi was disabled (according to BetterBatteryStats). So really it must be something about wifi now. Developer of Battery monitor widget suggested I should research CONNECTION permissions and disable/freeze/remove apps that use it, then re-enable wifi and see if is still eating battery. I'll post an update soon.

Good idea. Btw: Did you have mobile data enabled during that last test? I mean, if it's some app going havoc as soon as it sees a network would mean this should also happen with mobile data. If it doesn't happen with mobile data, that's another item off the list.

Mobile data is disabled at all times.

So what happens if you keep Wifi off, but enable mobile data? If this causes the same trouble, it's likely to be some app accessing the network. Runninc ICS, I'd recommend checking the related statistics which were introduced with ICS (still being on GB, I cannot cross-check), which should give you traffic stats down to the app level. Or maybe you remember any network related app installed recently.

Last time I paid 5$ for 30K of data (all of it was local, no roaming) - another reason to keep it disabled at all times. Regarding apps, I am planning to remove all of them that potentially can access the internet, and see if I still have a problem with wifi on, if it's gone, then re-install one-by-one and figure out. A bit of a hassle, but better than doing a hard reset. I think it could be one of the app's updates, cause I specifically removed all newer apps and there is still a problem. Wish they had these stats on wifi as well.

Ok, so I uninstalled all recently installed applications, but the issue still persisted. I disabled Wifi and the estimated uptime went as high as 7 days. Enabled Wifi - down to 3 days again. Disabled wifi and kept like that for 2 days. Enabled wifi again - 5 days. Now I am getting 5-6 days stable, same as before. Weird, but the issue has been resolved [by itself] for now. Thanks, Izzy.

Glad to read! Though, 3 days are pretty good for a smartphone in use. With my "productive phone" I lucky to reach the second evening -- but that's probably rather to bad radio reception at work (just staying home, it lasts noticably longer)...


text:
Connecting an Android device to a Windows network
Is it possible to connect my Android phone to my Vista network?
I want to add files in a shared folder which I can access over a wifi network on my phone.
I tried to add my phone to the network manually in the Network Center, but it didn't work.
A Google search didn't provide me anything useful.
Note:
When on the wifi network with my phone, I am on the same network as my Vista machine

Nice question I would be interested in the same. ES File Explorer looks like the app to do the trick.  Check this out...
http://www.techrepublic.com/blog/tablets/connect-android-to-windows-and-samba-shared-directories/1262

Support for SMB ("Windows Network") is not native to Android. You will need an app that supports the protocol. I can't recommend a specific Samba app as I've never tried it on Android.
I will say that I prefer FTP'ing to my Android using Filezilla and Software Data Cable. Software Data Cable is a little clunky, and I'm sure there's a better FTP app out there, but it's no big deal once FTP gets going. I don't really care for SMB, FTP has been much more robust in my personal experience.


text:
Set up an automated SMS server with Android (and a computer)?
I'm looking for a way to set up an SMS server (I don't know if there is better terminology for this, but probably).
What I want:

use the phone as an SMS gateway for an automated server
let the phone send and receive messages
use a computer to command the phone what to do

Specific example use case: The phone gets an SMS message [family] The party today will start at 2pm. Which the computer will interpret and will order the phone to send the message over to all the numbers the computer has in the family list. Or f.e. [add]family,0123456789 to let it add numbers to lists.
So what do I exactly need?
An app that can send all it's incoming messages to an HTTP server and can receive orders from that same server. Of course USB would be a better method than HTTP because it's safer.

Have a look at http://android.stackexchange.com/questions/14814/forward-sms-messages-to-http-interface and http://android.stackexchange.com/questions/1784/how-do-i-send-sms-from-pc-through-android-phone-or-to-android-phone

You might also get some ideas from Forwarding text messages from an android phone to a TCP port of a PC and How can I send a text message to a group that has more than 10 contacts in it?

My question wasn't related to sending messages to groups of people that were just examples. I could f.e. also use it to put events in a Calendar or to do domotics. None of the answers had solutions that worked in both ways. Except for one: the app SMS Gateway can port all SMS traffic to a SMTP/POP mail server in both ways. That can do the trick I think :)

I'm positive that this can be done via Tasker.

Can Tasker handle incoming HTTP requests? I never used the app but I know it's an extremely popular one...


text:
Can I turn off autocomplete/autocorrect for Google Maps?
When I want to type in a location to get directions, Google Maps brings up a list of suggestions under the textbox. That's fine, but then when there's only one suggestion left, Google Maps overrides what I was typing with that (invariably incorrect) suggestion. This makes it all but impossible to actually put what I want because even if I go back and edit, Google Maps will just clobber my text again. How do I make it stop? I don't see anything under Settings, either in the phone or the app.
I'm on a Samsung Galaxy S3. It would be ideal if I could keep the suggestions under the box without the automatic completion, but I'd settle for just turning it all off.

Ok, I found a workaround. I am calmer now.
Use Spiffy Search from the Market. You can use it to search, then have it set to maps. It doesn't use your internet connection.
Then,  edit maps settings so that the navigation icon appears whenever you find a location.
My deliveries just became a little easier!
Btw, I use a Droid X on Page Plus, which uses Verizon's network. For 30 dollars, I have vzw coverage, which is essential on my job, 1200 minutes and 3000 texts, but only 100 mb of data, which is why I am so obsessed with conserving it. Now with this work around, I can email, websurf with opera mini, and navigate without going over my limit. It is a brilliant way to milk the big V for all they are worth!


text:
Facebook non-official app for contact sync
I want to remove official Facebook app from system because its a piece of crap, but I am not doing it because it syncs my contact with Facebook. I add someone friend and I get her phone no. and email id in my smartphone (provided her privacy settings permit it). It also syncs photos and missing data with existing Google and local contacts.
I have tried FriendCaster's contact sync. It sucks because of Facebook's privacy policy. Facebook doesn't share phone nos. and email addresses of friends to any app.
So, all apps which login using oAuth have problems with contact sync (correct me if I am wrong). I don't have problem sharing fb password to an app if it can do pure Facebook contact sync. Is there an app?

I could tell you some FB sync apps -- but as I don't use Facebook myself, I cannot vouch whether they fit your needs. If you are interested nevertheless, I'll list them app with a few comments.

It's not because of oauth. The official app uses that too. All apps must use the official API, if they don't they're violating the TOS.

@Richard I know its not because of oAuth. The point is: With oAuth, you've no choice other than official API. With password, you can do whatever you want.

And, as I've seen official Facebook app brings new phone nos. and email addresses to my smartphone..

Have you tried HaxSync? I use it to sync high-res profile pictures to my contacts, but I also use the Facebook sync, so I don't know which one syncs the phone numbers and emails.

Sure you can remove the official Facebook app in fact I also uninstalled it by resetting to factory setting and wipe user data.
and then I link Facebook account to accounts and sync. It works perfect for me.


text:
Is there a device that will keep me from losing my Android phone?
Recently I lost my phone and have had to order a replacement. It seems that there should be some sort of device I could use that would sound an alarm when I separate more than, say three meters from my phone. Does anyone know of such a device?
I tried searching for a proximity sensor but got only irrelevant stuff about the sensor that detects when the phone is being held up to the ear. It seems that "proximity sensor" is the wrong search term.

First thing I can think off is some bluetooth device like e.g. the Ericsson LiveView (or some other BT-watch). Could be they have some alert built-in on connection loss.

There's no easy way to control the mentioned scenario, since you may get away from your phone, leaving behind the device used to alert you.
I've been playing around with an APP, that basically runs a task when a certain action occurs within your phone.
The test I performed, was having my phone playing a really loud sound if my phone gets disconnected from the bluetooth earpiece. It works, I go away from my phone and as soon as the bluetooth gets out of range, the phone starts to play the music. I hear the music and remind myself that my phone was left behind.
Of course that if you use Dragon V2 Bluetooth Headset, it will only get out of range after 100 meters, which is roughly 10 times more distance than a regular Bluetooth earpiece. :)

Tasker
Tasker by Crafty Apps available from Google Play Store (4,49€)
From their website you have a free 14-day trial download.

A worthy idea. I wonder, though, if it'd be possible to use some device other than a headset, as I don't want to wear one on my ear. I'd rather keep something in my pocket. I suppose I could buy a cheap headset and hope I get one with a range of only two meters or so, rather than the full Bluetooth range, but would the headset prevent me from using my phone normally?

@ScottSeverance I believe so, it all depends on the device, its range and connection method. Can you specify which phone you have?

I've ordered a Galaxy Nexus, but I haven't received it yet. As of now, I'm without a phone.

After reading about Tasker, it looks like an awesome app, whether it solves this specific problem or not. Thanks for the tip!


text:
Bricked Droid Razr while trying to flash a custom ROM, Safestrap gone
I'm so sorry for being one of these "help me, I don't know what to do!" noobs, but that's exactly my situation.  This is my first Android phone and my first time trying to do this.  I do come from a programming background, so I didn't anticipate it giving me any trouble.
I have a Droid Razr and I had Gingerbread 2.3.6 on it before I rooted it.  After the root, it started giving me notifications for the 6.1...something update, but since I rooted it, the update wouldn't take.
I tried to put Eclipse ICS ROM on it.  First, I backed up my apps, put Safestrap into safe mode, and created a backup.  I followed the directions here for flashing the ROM.  I waited about 5-10 minutes after rebooting - the Motorola logo came up on my phone, followed by the Safestrap boot options, then nothing.
I rebooted and got into the Safestrap menu and tried to restore my backup ROM.  The restore failed.  I tried formatting the device through Safestrap and it still didn't start up.
I followed the directions here up to step 7 to unroot/unbrick.  This uses Droid Razr Utility 1.42, and everything I tried came back with a "command failed" message.  I thought it was a little strange that the only option it was giving me was to restore version 6.12.173 while I had 2.3.6, but I figured I would at least try it, and I thought that was why I was getting the "command failed" message.  After googling, I downloaded Droid Razr Utility 1.8 and tried restoring it to 6.16.211 (official kernel) - again, the only option it gave me.
After that, I can no longer enter Safestrap.  The phone doesn't boot - it goes through the Motorola logo and then shows a small bar of static right at the bottom of the screen.  Fastboot recovery and restoring the phone to factory settings makes an error show up on the screen (the Android mascot and an exclamation point in a triangle).
I can still enter into Android recovery and I still have access to the contents of my SD card.  I can see the folder where my Safestrap backup should be, but there's nothing in there that the phone recognizes as bootable.  I can still also access the Eclipse.zip file.  I haven't tried flashing it again.
I don't know what's going on or what to do next.  Any help would be greatly appreciated.

I don't have a full answer for you. But since you can get in to the recovery, you might be able to find a custom ROM (for the RAZR) that can be loaded via the recovery.

I don't have a complete answer for you either, though I can say that the step you missed was installing the ICS OTA (6.16.211) prior to attempting a custom ICS ROM. This seems to be a quirk of the DROID RAZR.

Well, If you would have read the instructions for the installation of Eclipse ICS, you would have seen that you're not to install the ROM on top of Gingerbread.
That being said, have no fear.  Batman is here to save you.  Check out the trusty internets and get you a copy of this file.
DroidRAZRUtility1.6.zip
You will need to run this utility to restore back to factory ginger bread (option 1 I believe).
There are guides for this online.  I can't find the source right now.  Basically you put the phone into ap fastboot mode while Matt's utility flashes it back to factory.  then if you so desire, you can take the OTA ICS update.  Only then can you install safestrap and eclipse ics.
Hope this helps.

Could you point to that utility directly instead of hinting at google searching? Seems like you solved this already.

@ce4 a new user cant post links


text:
Would a full back up (from recovery) preserve all data including installed apps?
I wonder if I create a full back up from recovery, would it preserve all my data? Including installed apps (along with their configs) and my contacts?

If you are talking about a Nandroid backup: Yes, it would. It creates images from the devices file systems -- so all that's stored there gets copied to those image files. You can then even extract single items using e.g. Titanium Backup.


text:
How can I fix my lined screen on my Samsung Galaxy Tab 10.1?
I was reading my Kindle app when suddenly the screen on my Galaxy 10.1" tablet went blank. The battery was low, so I figured it had just died. I pressed the power button to double check and my screen showed up, except that 3/4 of the screen was black and the rest had streaked lines where the background would be. I can't even do my unlock code because I cannot see it. There has been no water damage to it and it has never been dropped. I have also never altered the coding. I tried charging the battery, powering down and restarting but the screen stays the same. Please, help. Could it be the video card? I have only had it since December.
Update: I attempted a hard reset, but I can't see enough of the screen to continue the prompts. Any suggestions would be helpful.

Update: I attempted a hard reset, but I can't see enough of the screen to continue the prompts. Any suggestions would be helpful.

Wait, there are onscreen prompts for a hard reset? That kinda defeats the purpose...

I have same issue :(

This is a common issue on this particular device. My friend had the same thing happen and was going to give the tablet to me but after doing some research I found that its more than just a software issue.
I'd recommend counting your losses and buying a new tablet. =(


text:
Installation error on android - out of storage

Possible Duplicate:
Why is “insufficient storage” wrongly reported when installing an .apk via adb?

I have a very weird problem. I am trying to install an apk from on my phone. I have tried directly of the sdcard, and with my computer with adb. None of them seem to work. It says that i have to free space and try again. And adb says error, insufficient storage. But when i install an apk from the market which is alot bigger. It goes fine. I have checked my storage in settings. And i have more that enough free storage on my external and internal sdcard. The apk i'm trying to install takes about 4-5 MB, and i have atleast 1GB free on my internal and external card. My phone is an LG Optimus 2X P990

Could you please check whether one of the Q&As (to the right in the "Linked" section) may apply and solve your problem? http://android.stackexchange.com/questions/9541/why-is-insufficient-storage-wrongly-reported-when-installing-an-apk-via-adb / http://android.stackexchange.com/questions/14731/htc-incredible-says-sms-storage-is-full-but-it-isnt


text:
Does Android have a 2.1GB file size limit?
I have tried many voice recording type applications and the best I have found only allows me to do a recording upto a maximum file size of 2.1GB.  I can do many of these 2.1GB recordings as I have a fairly large SD card.
On one of the applications I have tried, the developer has specifically said that his/her app has no recording length limit
So my question, does Android have a built in 2.1GB limit per file?

Short Answer: Yes
More Detailed Answer:
The file size limit is not something specific to Android, it is a limit of the File System.
It may "technically" be a bug in Android though, as FAT32, which is what the file system is for the sdcard, should have a file size limit of 4GB ((2^32)-1 = 4,294,967,295B) but it looks like the filesystem on Android is android is actually using a limit of ((2^31) - 1 = 2,147,483,647B). Which means they could be using signed integers, instead of unsigned integers for the addressing on the filesystem.

The yes only qualifies for devices with integrated SD cards, aka not Google's Nexus line (Nexus S, Galaxy Nexus, Nexus 7) amongst others. And most probably not for most Jelly Bean devices (/mnt/sdcard  is a symlink to /data/media which is not FAT)

Do you have some document or evidence about this limitation?


text:
What happens when I connect a 2 amp charger instead of the 0.7 amp charger provided?

Possible Duplicate:
Is my phone liable to explode if I charge it with a charger that came with a different phone?
What's the safe limit on charger output for a Galaxy Nexus

I have a phone with 0.7 amp charger. I also have a Galaxy Nexus with a 2 amp charger.  If I connect the 2 amp charger into my phone, will my phone blow up?

Usually I say "try it and see", but in this case...

@offby1 ... but in this case make sure you have a camera at hand :)

Related: Is my phone liable to explode if I charge it with a charger that came with a different phone?

Electric current is measured in Amperes, shortened to Amps or simply the letter A.
One well spread example is to think of electricity in terms of water, pressure being equivalent to voltage, and flow rate equivalent to amps. As long as you have the correct pressure, the flow rate isn't a problem, provided the necessary minimum is present.
Typically electronics will only draw the current they need, so extra amps is OK.
The important thing is having the correct voltage with sufficient amperage available. Extra amperage will be ignored by your device.


text:
Huawei IME and input language
I've encountered a problem using my Huawei U8350 Boulder powered by Android 2.2.2. The phone has physical keyboard and I would like to switch between different keyboard layouts (or input languages) while browsing. I have two input methods one is Huawei IME and Android keyboard. I checked forums and they suggests to find "Input languages" in "Android Keyboard" settings which is unavailable on my phone.
However Huawei IME is very handy and has a hotkey to switch between input languages, but it looks like it works for Chinese only, because when I switch it to, for example, Russian it still uses English letters.
Maybe someone encountered such problem and knows the answer?


text:
How do I determine which calendar entry is breaking my Android calendar sync?
First a bit of background for those who aren't familiar: Just a few weeks ago Samsung released their ICS build of TouchWiz, and my phone (a Samsung Galaxy SII) updated over the air. Ever since none of my calendars have synced. It turns out there's a bug wherein recurring events that were present before the update (I think it's only them?) can cause calendars to stop syncing. (I've searched in vain for a concise link to the problem to reference... )
I've tried factory resetting to no avail and I've tried deleting all my extraneous calendars and the recurring events I could find, but sync still doesn't want to work. Is there any way that I can track down which events are causing the trouble more precisely?

Where are you syncing them from/to?

As it turns out it doesn't matter the original source - Facebook, Exchange, and Google accounts all have the same problem. The to: is my phone.

You could have a look at the log (via aLogCat or 'adb logcat') and see what it tells

I used aLogcat and it made my head spin just a little. I can more-or-less read the individual lines but controlling what the hell it's showing me is a nightmare. I wish I could tell it to just look at one activity stack. I did manage to scrounge out the following message: "not retrying sync operation because error is a hard error" That means it's a database error, I think, but it's not terribly specific. :/

there are some filtering options, fyi. You could also post a saved logcat output on pastebin or so but please mind the privacy impact (logs have personal data sometimes).

I just nuked my entire Google calendar - cleaned it of ALL events - and it still doesn't want to sync. There's a much deeper error here. I think it's time to call Samsung.

Hmm, I guess Samsung will just tell you to wipe maybe. Is there another Android phone to cross-check? Maybe post the logcat output to pastebin and link here (maybe strip out private info first before you do so)

I know it's typically frowned upon to answer your own question, but I have. This was a total PEBKAC. I use a different calendar app than the default, so I disabled the pre-installed Samsung calendar in the Application settings in order to stop it appearing in my application list. This is fine and doesn't affect anything, but I apparently got a little trigger happy and also quite stupidly disabled the Calendar Storage process. Yeah, that'll mess up calendar sync something fierce.

Answering one's own question is OK here. You can accept it in 2 days and will earn a badge if you get 3+ votes on it. Thanks for letting us know the real reason, by the way!

No worries - hopefully it helps someone else avoid the same mistake!


text:
Accessing Tor on Android device via a virtual wifi network
I've hosted a wifi network using a virtual router, with which the local area connection is sharing it's internet with. My Android device can connect to this wifi network and can access my laptop's internet.
Now comes in Tor. On my laptop, Tor can be accessed on 127.0.0.1 via a Socks5 protocol. I'm trying to connect to this network from my Android device. I figured that all I need to do is acccess my laptops localhost from my device. Since my phone is connected to the laptop's wifi network, I should be able to access localhost by using my laptop's ip address (192.168.xx.x). Unfortunately this does not work. Any idea why?
Is there a better way I can access the Tor running on my laptop from my device via Wifi or USB tethering?
Windows 7 (Ubuntu 12.04 is available if a solution demands it), rooted Android on CM9.
Orbot is not an option since it's unable to connect via the wifi's proxy.

Local is a separate interface on your laptop, just like your ethernet adapter and Wi-Fi adapter.  Just because a program listens on 127.0.0.1:1080 (localhost SOCKS proxy) does not mean that it will listen on another interface. "Access the laptop's localhost from my device" is not possible.  Proxies, that are not intended for public use, normally listen only on localhost for security reasons.
If you MUST connect to the laptop's localhost SOCKS port, you need "TCP tunnel" software running on your laptop to listen on a reachable interface and redirect it to the local interface.  Realize that you are creating a security risk if you do, because the Tor client on your laptop won't be able to tell whether it's you connecting to the local socks proxy port.  It's been a decade since I last looked for "TCP tunnel" or "TCP proxy" software, so I don't know which to suggest -- you'll have to research it.

Thx for your reply Getch. The virtual router link you referred is correct. It basically just hosts a wifi connection with which another connection's internet can be shared. I'm not really sure how it does it, but it just needs another network with an internet connection. As for Orbot, the internet connection that I'm behind has a proxy and user auth. Orbot seems to be having problems getting connected behind this. Basically, with all this I'm just trying to bypass the proxy. On my desktop, Tor does that perfectly. I'm trying to get my phone to do the same, using Tor.

Can you tell me more about the proxy?  Does it intercept web pages and replace them with a page requesting authentication?  Tor on your PC will allow you to connect with the PC to the 'net without authenticating to the proxy?

If you open a new session in the web browser, the browser displays a pop-up asking for credentials. This happens since none of the browsers have proxy auth fields in their network settings. Tor does have the auth fields in its network settings, so no such popup is displayed.

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


text:
Samsung Galaxy S i897 not detected by PC
I have read every forum and every "help" site on Samsung's website and all over the internet. Nothing has worked. I bought an unlocked Galaxy S i897 on ebay, originally an AT&T phone but I'm using it on T-mobile. Is this potentially the problem? I've tried 2 different cords, only charges, never recognized in any Kies version and never recognized by PC like step 3 on this page says it should.
http://www.samsung.com/us/support/SupportOwnersFAQPopup.do?faq_id=FAQ00045584&fm_seq=46246
Extremely frustrated at this point. I don't think calling t-mobile can help because the phone was AT&T. Samsung probably wouldn't help either because I bought it on ebay. Unless you think they would, then let me know. I just want to add music and transfer files back and forth, backup contacts, etc., and most importantly update my firmware (currently has Froyo).

What OS version do you have?

Community bump prevention: this question was closed because the question seems to have been abandoned (the OP hasn't visited the site anymore after 10 years and no answers have been voted). If anyone can evaluate the existing answers, feel free to vote accordingly and reopen the question (or mod-flag the question requesting for reopening). For anyone else having the same issue, please post a new question and refer to this question as additional context.

Apart from potential issues from your current OS version, installed drivers, etc, you can look at this problem from your phone's side.
Assuming that the problem doesn't lie with Kies, Windows 7 or the drivers in use:

Before connecting your phone to the computer, open the keypad and dial *#7284#;
You will see a menu for UART and USB;
Under USB, select PDA. If PDA is already selected, select MODEM and then back to PDA;
Don't worry about USB debugging or anything, just connect your phone to the PC
Everything will work as it is intended to whether you use Kies, no Kies or just Mass storage.

This is a known problem with Samsung, the PDA mode for the USB connection needs to be active. And when active, sometimes we need to reset it by selecting something else and then PDA again.

Thank you for an answer that is finally not just another forum with the same "solution". But it didn't work. So what are some of the other factors that could be causing it that I can look into?

I have Windows 7 home premium version 6.1 SP1

@pferdesindgut Can you specify which part didn't work? You dial the code and the menu was presented and you've selected an option and after connecting the phone to your PC again, It wasn't recognized? Or the menu wasn't presented when the code was dialed?

I dialed the code, plugged into PC again, and it was still not recognized.

Please download and install the Samsung drivers - if you're using a 64 bit computer, use the 64 bit drivers, otherwise use the 32 bit version.

What type of OS do you use? On W10 Home it simply does not work, try on any W10 Pro. I had the same issue before, very annoying :(


text:
Shell script to kill custom apps, run another app then restart killed apps?
Is it possible to make a shell script that would run using Smanager, for example, to do the following:

Kill a list of custom apps loaded from a file
Run one custom app loaded from the same file
When that app is closed, restore killed apps

If that's not possible, then could it be split into two scripts, one that kills all the custom apps and launch one custom app, the other to restart the custom apps?
All of this is on a rooted phone.
Thanks.

This is all more than possible on a rooted phone, but before any of us begin writing the script, may I ask why you would want to do this?
I mean, why go through the trouble of re-loading the killed apps?
If you're eager to get started on this, Tasker would be the easiest way for you to do it, albeit it'll cost you $8 USD

Thanks for the comment. What I basically want is some sort of "Game Mode", activated before launching a game, desactivated after exiting it. For example, I have some apps bulletproofed (e.g. keyboard, whatsapp, viber, etc) and it would be nice to kill them before launching the game and launch them again  once I'm done.

That would not be a good idea IMHO - that would be a battery killer - since explicitly killing other apps and services that are not yours, those services and apps will end up getting restarted... and tbqh, killing other apps just for the sake of "Game Mode" is very bad idea and if that was published - there'd be uproar about it...

I wouldn't be killing system services, only user apps such as: viber, whatsapp, SwiftKey, etc.

Also, gaming isn't exactly battery friendly, and killing some user apps does pay off on lower end devices. In my case, it nullifies the lag while playing PES.

Gaming has never been battery friendly regardless. And killing apps regardless is not exactly a good way of dealing with it - might be easier to put it another way, switch into airplane mode and run the game, those that are relying on network traffic will quietly shut-up until finished playing the game, and switch off airplane mode, everyone happy!

Not quite. I'm not trying to avoid distractions, but to gain enough resources to run the game without lagging. Which worked fine for PES, the most demanding game I  play on my android. :)

GermainZ's idea is somewhat legitimate for older devices with less RAM, t0mm13b. However, t0mm13b is right in the sense that the apps would restart themselves as they need to.

You can use an Tasker to kill apps when you launch your game. And you are also able to do the opposite, when your game gets closed, Tasker can initialize other apps.
You may use the trial version to test this, but I believe that better results can only be achieved with root.

Tasker
Tasker by Crafty Apps available from Google Play Store (4,49€)
From their website you have a free 14-day trial download.

Are you affiliated with Tasker? Just curious as you've posted the near identical answer in another question... :)

@t0mm13b Nop :) I been playing around with it the past few days, and it solves a lot of headaches :D

@t0mm13b coincidentally, Tasker can be the solution for this past two questions :) But I'll be looking for unanswered questions to promote even more Tasker :D

yeah, its a dead handy tool alright :) Takes a bit of getting used to their logic which seems counter-intuitive...

I created a test task (vibrate for 500ms) and it doesn't seem to do anything when I run it (by pressing the play like button)... Not sure if it's a bug or if I got it wrong.

Didn't work for me, but I believe it's a bug on my side. Will redownload later. Since it does what I'm asking for, I'm accepting this answer.

Fast Reboot will get the job done for you.
Whenever you want to play your game, just launch Fast Reboot and then launch your game. It will free up some extra RAM without interfering with anything critical, and it is much easier than a script.
Don't worry about restarting the apps, because as t0mm said, they will almost immediately restart themselves. (You can launch Fast Reboot twice to see this)
This solution will solve your needs without having to pay for Tasker.
Although, I do recommend that app- it can do anything.

In order to start in game mode, I thing you can use the following commands
pm enable package_name

and
pm disable package_name

then you should restart some application services like whatsapp in order to restart checking automatically (Not sure if they will automatically restart services since package has been disabled) to do that you can use am command, but not sure what where will be the best arguments. You can use the logcat command, to debug what intents are being launched.
If you only kill the application it automatically will restart few seconds.
In SManager, at this moment it is not possible execute script after app has finished. But it could be a new feature.
You also should kill SManager in the las line of the script.
killall os.tools.scriptmanager


text:
How to get maps for off-line usage?
I spent almost entire day looking for decent apps for maps (decent = free, up to date, being open-source is a plus).
I ended up with TrekBuddy, GoPenS, RMaps, Maverick, OruxMaps (the emphasized ones look the best, in my opinion).
However, now I have another problem -- how to prepare maps for those apps (please help me with one, and hopefully I will manage the rest) for off-line usage?
I would like to go on a ride, pick up the phone somewhere in the forest and see on the map where I am. For now it works only with internet connection, but without it I have a huge-scale map and after zoom-in blank space or "loading" icon.
In short -- QUESTION -- how to feed phone/apps with maps, so I could zoom-in/out map freely when I am in the wild (offline)?
I would like avoid tricks like relying on caching -- so "solution" to scan interesting region with all possible scales and in such case acquire off-line version of the map is a no-go!
Clarification: I am not looking for another app (however thank you for the hints/links), I am looking for maps (data). I want to get map from on-line version (which are automatically downloaded) to off-line one.

Just to clarify: You want to use offline-maps, but you don't want to store them in advance? How shall this work?

@Izzy, I want to store them in advance, however by single action, not by manually scanning map on-line, cm by cm just to create cache in given app. Did I explain the difference clearly?

osmand maps (who was it that told me about it?!) Its Offline maps fwiw

@t0mm13b, osmand is an app, not a map. And I am looking for way to transfer on-line maps to off-line ones.

For what it's worth, TomTom is coming to Android in October.

@AlEverett, thanks but since asking this question I am totally sold to OSM maps, tracking and then editing maps (this is super fun part). OsmAnd and OsmTracker are almost perfect pair.

See my answer for this question about TrekBuddy. I use it with MOBAC as answered in this question.

OsmAnd (on Play store or F-droid.org (version is sometimes a little behind)) has those features:

Fully open source
Fully offline (w/ option for some online features)
Play Store: Limited to 16 downloads (free) or costs ~6EUR (for funding)
(build it yourself or use a nightly build if don't want to pay or use the free one)
Offline vector maps:

based on Openstreetmap data
create your own with OsmandMapCreator
many pre-built areas available with in-app downloading

Online tile-based maps (data-caching plugin for GMaps/Bing/Yahoo/ and 25? others)
OSM integration (bug report, GPX uploads, live editing)
Voice guided offline navigation
GPX tracking

The unlimited app (in Google Play) costs a small fee (around 3EUR) to fund the project. Please consider buying it once you tested the free version and like it and don't just leech the nightly if you don't just want to test the bleeding edge features. You can of course also build your own (its FOSS).

Thank you very much, I already played a little with OSM data, I downloaded the maps, they are truly offline ones, and today it saved my skin (because GM deleted "cache" on update). I hope I will manage to support this app as well.

While I bumped into this thread, nice addition to OsmAnd is OsmTracker -- IMHO it is way better than tracker plugin for OsmAnd. One can annotate the track on the fly and after finished riding/walking, directly upload the trace to the OSM for further editing for example.

OpenStreetMap has a good comparison wiki too.

great app indeed

Since Jun 27th 2012, Google Maps for Android is offline featured.
They provide a 10-mile radius of map cache, and since you can point to different locations and cache them, you can virtually cache the entire world.

Open Google Maps App;
After the map loads, press the menu button and select "Settings";
From the "Settings" panel, select "labs" and enable the "Precache Map Area" option.
Return to map view, navigate to the area you want to save for offline use;
Once loaded, click on it to open the detailed view and select the option "Precache map area".

Repeat this process as many times as you would like to cache all the desired areas.

Links
More Detailed step by step instructions at: How to Use Offline Feature of Google Maps in Android.
Official Google Support page for Offline maps here.

This is the perfect solution...

Great answer indeed, I will keep the question open for a while, because I really would like to use mentioned apps, and also I am afraid of the expiration of such maps. See here: http://android.stackexchange.com/questions/13641/pre-caching-limitations-and-reliability-in-google-maps

Not quite the perfect solution: keep in mind that even if you downloaded the maps, searching for a street address won't work. (Not to mention directions...)

My fear was valid -- GM either is in very alpha stage, or it treats offline maps as cache on purpose. Anyway, after update I found out (when I was already somewhere on the track) that my GM maps are blank and I am lost in void. Luckily I have also OsmAnd installed with truly off-line maps.

@macias Personally, I use Navfree for offline navigation, I've got the entire world on my phone and don't need any internet connection :)

I don't like gmap as it relay too much on internet ( for example to save POI ) ... OsmAnd has a lot of feature (all offline) and the size of app is smaller than gmap ..

Use vector maps instead of pre-downloading or caching rendered map tiles.
Vector Maps versus Bitmap, Pre-rendered, Tiled Maps
Here's the difference: Caching Google Maps or any other pre-rendered maps stores dozens to thousands tiles of (bitmap) images on your device. Even though these are compressed, they take up gigabytes of storage, especially if you're in to storing maps for a full country.
Also, bitmap images are just that: Images. Mapping, and especially navigation applications cannot interpret what's displayed on the image. So they don't know about the nearest gas station, bus stop, what river you're on paddling, etc.
A vector map is in some special data format. To be displayed it has to be rendered which means an image must be calculated out of the raw data first. So the biggest drawback is that applications using those might be more cpu intensive. However, depending on the quality and contained features of the vector map, and the quality and features of the application, you can query the map for navigation by car, by foot, by boot, by bike. You can get info about nearest restaurants, or the nearest letterbox.
Another main advantage of vector maps is its much smaller size compared to bitmap data. While a pre-rendered map tile image may contain some greenish and varying pixel data to represent a wooded area which is linear proportional to the covered area, the same vector map may just say "wooded area" and store the coordinates of the boundary.
Another advantage thus is that the application decides how to render said wooded area and thus the user has some influence on how she likes maps to look like. You might be able to tell your mapping application to switch to a red/blue/black color scheme during the night without having to download a second set of bitmap tiles. It's just recalculated on the fly upon changing some settings, and does not take up any additional memory.
The amount of storage, and the available feature set is restricted by the data contained in the vector map. So depending on your needs, and those of your applications, some may want to have the full open street map data, while some get by with just a basic set.
Also, with vector maps and their small amount of storage, and their ability to customize their rendering inside applications, there's no need to use any additional application on your desktop to prepare the maps. Download files, and off you go. While in theory, this works, in practice the original data files of the OpenStreetMap project have to be converted into a syntactically different format. See below.
Coming back to howtos and applications, I'm still a beginner on android. Here's what I use today.
Open Street Map is a project to provide full featured vector maps for free. Like Wikipedia, the map data can be improved by users, and this happens all the time.
Mapsforge Vector Maps
Pre assembled vector maps of open street map can be found courtesy of the mapsforge project, at http://download.mapsforge.org/maps/
Using original Open Street Map files
The above mapsforge files can be used as-is, and are thus the most convenient solution. However, if you'd like to start from the original Open Street Map files you can follow this guide to convert the original files from the PBF format to the map format using Osmosis. A typical command line example would be:
osmosis --read-pbf "hungary.osm.pbf" --mapfile-writer file="hungary.osm.map"

Locus
As a mapping application you can use Locus Free. Download and install.
Download any of the vector maps file and store it on your phone in the folder /mnt/sdcard/Locus/MapsVector/_themes/. Personally, I download the maps on my desktop pc, store them in a folder which I share via Samba on Linux, or share on a Windows machine. Then I use any android filemanager (Ghost Commander with Samba plugin, ES File Explorer File Manager) on my phone to copy the files from the shared location to the Android device's Locus mapping folder.
OruxMaps
You can also use the OruxMaps app. Unfortunately I have not yet found a way to use both applications without having to store the map data twice. (SD Cards do not support symbolic links. If you've got the data on internal memory you could use them, and store the maps only once). You can use again your preferred filemanager on android to copy the *.map files from the aforementioned Locus folder to the folder where OruxMaps stores its map files. By default this is /mnt/sdcard/oruxmaps/mapfiles
Switch to the new map:

Click the upper right hand "map" icon
Click "new map" in the pop up menu
Click "offline" in the upper right hand side
Choose any of the *.map map files

Note that in OruxMaps you can navigate through subfolders. So if you like you can use your filemanager to organize maps in subfolders. Hint: You could fully copy the mapsforge data into your OruxMaps map folder, and never worry anymore :-)
Note also that if you have the OruxMaps app open while you are copying new map files into it's data folder, then you may have to click on "reset map sources" in the "new map" dialogue to ensure it rereads the map folder for new files.
Here's a howto on those two applications for theming your maps maps. As mentioned before, depending on the app, you may influence the way the vector maps are rendered. This includes color settings as well as which data is to be included in the display and which is not.

Thanks to your clarification I assume it is OK when you can acquire the map data from within the app. In this case I'd suggest you take a look at Locus Maps, which is an excellent solution. It has already a lot of map sources built-in -- and if that's not enough for you, the Map Tweak Addon offers additional sources.
Additional ressources on Locus Maps include:

an English Howto
a blog on maps use in/with Locus Maps (including some map sources listing)
a manual/howto on how to convert your own KML/KMZ sources to be used with Locus completely offline

I could name even more ressources -- and will do, if you wish.

Thank you for that answer, all what you wrote is very valuable, but I am looking for way to transfer maps from on-line to off-line mode, not to use another map app -- I am looking for data, not a program.

Problem here is whether data are compatible with what program. Each app uses its own standard, more or less. So data suitable for one might not be fitting another -- though they might use the same sources, they may differ in how to store the material. Wonderful thing about Locus is you can create your own KMZ including images (e.g. for POIs etc), and a lot more. But AFAIK there are also some Websites or PC programs allowing you to prepare map data for either Locus or OruxMaps. For Locus, some of them are mentioned/described on its forum (last link in my answer goes there).

Many of them mention OpenStreetMap, but all I see in options is caching, not downloading them.

Which essentailly is the same (they get downloaded to the cache). Actually, in Locus it is called "downloading", and they are stored into special databases. You can even restrict Locus to only use this downloaded map data -- or let it check for updates for the area you're currently in.

Yes, HERE Maps is way easier to use for this purpose. Just download the app from the Play store and then you can download the offline maps for any state or country in the world.

Welcome to Android Enthusiasts. I noticed you mentioned HERE maps also in your other answer. Are you just a happy user or are you affiliated to this product? Please note that this site requires you to mention any affiliation.

no , its just that I happen to be answering the same type of questions :)

no, HERE maps does not have all the countries: Japan and both Koreas are missing.


text:
Displaying the lock-screen clock on the home screen
I'm having a problem opposite to How to display my calendar on the lock screen?.
I absolutely love the clock I see on the lock-screen (Xperia Arc S (LT18i), Android 2.3.4):

Very nice appearance, and displays day of week in full. I'm very used to it since my previous phone, Xperia X8.
I want this clock on my home page (as it used to be on Xperia X8).
But when I add it as a widget, I get that:

Much smaller font and no day of week. And I can't seem to find any settings for it.
Google Play tells me the clock is Digi Clock, and it confirms it's that clock that is installed on my X8. I can't install it ("already installed"), I can't remove it (system app) and I can't update it (no updates available).
So how do I make that clock appear in the same way on both the lock-screen and the home screen?

The clock shown on the lock screen is part of the lock screen itself. The clock on your home screen is a widget.
The only way to get the lock screen clock on your home screen is to find a widget that looks the same. There are plenty of widgets on the Google Play store, and if you can't find one you like you could always write one yourself!


text:
Remember wifi password but never automatically connect
I have both my wifi password and my friend's saved.  Since they live nearby sometimes it will automatically switch to theirs if the signal is stronger.  I don't ordinarily want to use their connection unless I'm over there or my internet is down.
Is here any way to make android only automatically connect to my wifi without forgetting the other's password? It is long and impossible to memorize so forgetting the network is a huge pain.
Running ICS, and have root if needed.

Does toggling "Avoid poor connections" in Settings > Wi-Fi > Advanced change this behavior?

Sounds promising but unable to find such an option.  The device is an asus transformer prime running android 4.0.3

Might not be available in the stock Asus ROM. Bummer.

Not exactly what you may have intended, but still a possible solution: Using an app like

Wifi QR Code Generator
WiFi QR Share

you can generate a QR Code of your friend's Wifi connection, print it, laminate it (for protection), and put it into your wallet. Now, whenever you want to use that Wifi network, take out the QR-Code, scan it with Barcode Scanner -- and get connected. For a "log-out" simply disconnect, and remove the network from your list (to keep your device from autoconnecting).
Not quite elegant -- but it saves you from typing the long password everytime. Side-Effect: Print out the QR multiple times, and give it to your friend's for other guests. Do the same for your own Wifi. Now you never have to tell your passwords: To permit your guests to connect, somply show them the QR-Code to scan (and have them delete the network from their devices when they leave, as Android stores Wifi-passwords unencrypted).

" have them delete the network from their devices"  Why would you do that?

Because "Android stores Wifi-passwords unencrypted"? It's just a security question. Maybe I should add "optionally". But as the OP doesn't want to automatically connect to the friend's network, maybe the visitors don't want that, either.

Definitely not as elegant as I would like...but I suppose it's a step above what I have now.

I was aware of that -- but I'm afraid the real elegant solution won't be available. At least I know of no setting to tell Android not to connect a specific network automatically, once you have it in your list of "known networks" (i.e. once you connected to it and did not remove it afterwards).

+1, although I find it a bit sad that in 2019, the best solution still seems to be carrying a booklet of printed QR codes around with your phone.

Hmm, as said before I am afraid that there is no such setting available. BUT there is a handy little app that lets you create widgets that let you switch your networks with a single tap. So when you realize you are connected to your friend's network, simply press the button on your homescreen and you will be connected to your own network again.
You can find the app here: Wifi Manager.

Have you tried going to your wpa_supplicant file and changing the priority on the networks?
The settings will be save in regular text and they'll easy to read and figure out.
If you have a Root explorer like ES file or any other you can find it by looking here → /data/misc/wifi/wpa_supplicant.conf
Note : Also there are some apps that let you do this if you don't want to try and find the file yourself


text:
Cannot play videos in any browser only in player
I use Opera for Android but the same problem exists in the stock browser as well as Mozilla.
Until about a week ago I could play videos from the web in the browser but now when I click on the video instead of starting to play I get the option to use the stock video player, SoapCast or the browser to open it and if I chose the browser it downloads it instead of playing it.
Does anyone have any idea what I am doing wrong?
Thank you.
I want to play videos in Opera again.
I have Android 2.3.4 running on an Xperia Ray.

same is true of dolphin HD and firefox

Are all of the affected videos of the same type -- e.g. Flash? Can't you play any videos? Did you install/uninstall any video related app around the time it stopped working? From your description I take it the browser is mentioned in the list of choices. In the screenshot provided with the answer of power-inside, you see a checkbox for a default action -- you could try to mark this, and then select the browser, so you would not be asked again (try befor without checking it if it then plays as expected).

@Izzy If I check the browser as the default action(and this is only possible for Opera because the stock browser or dolphin don't show up in the list) The browser downloads the .flv file instead of playing it like before. All .flv files have this problem except youtube because youtube videos open in the Youtube application this has always been so.

and you have no idea what you might have changed around that time? App (un)install, played with configs, whatever? Things like that usually don't happen "just like that".

@Izzy I remember installing SopCast and updating Flash(that pretty much happened on it's own I just oked it). I uninstalled SopCast. Don't know how to rollback Flash if that is even possbile. And I don't know if they are related.

There we go! SopCast must have done it, as Power-Inside described with his answer. I just wonder why the Flash player is not included in your "pop-up". Installing SopCast must have triggered a reset of the default app responsible for the .flv files. Not sure how those were handled before. Not sure if that works -- but you could try to walk your installed apps and see if you can find the flash player, and if, whether there's some "default handler" checkbox to set (at least this is how to reset the default handler, so it might work in reverse direction).

Well I kinda' fixed it. I changed the user agent setting in my Opera browser from Mobile to Desktop and every flv file now works.
As you might expect there are side effects(I'm getting dektop sites instead of mobile sites - they are bigger, harder to use and they take up more space so they load slower).
This will be a good work around at leas.

I think I actually had the user agent set to desktop and that is what really happened

This is because you have installed some other apps that are capable of opening the same media. Previously, only your stock video player was associated. Now I guess SoapCast can open it.
This is how android works normally, but if you want the old behavior at all times, select the checkbox that says "Use by default for this action" and then click on the stock video player or "Movies".

You don't understand I don't want to play them with the stock player this is what is happening now. Before I played them in the browser itself. This is how I wanted to be from now on as well. I don't like playing them in the stock player for a number of reasons. I want to play them in the browser. I did install SopCast at one point and SopCast was in the "Complete action using" list but I removed it since. Removing it did not fix the problem.

@Para Oh.. I've never been able to play/stream "inside" the browser. Maybe your stock browser has some plugins that did it? Tried resetting the data of Browser (restore factory settings for it?)

You could try to use Default App Manager to remove the association for flash video (.flv) files. This should tell the browser(s) to play the video without to open a new app.


text:
Jelly Bean OTA fails on Galaxy Nexus, how to fix?
The company I am working for has hundreds of Galaxy Nexus handsets which are used as the standard operating platform of a company specific app. The app is not important.
We have found that about 70% of the devices fail to install the standard OTA Jelly Beans update. We are running completely stock OS (4.0.4 ICS) and the devices are not rooted.
My questions are:

Why does the OTA fail for completely standard builds? Factory reset makes no difference.
How can I get some idea as to why the OTA fails?
Where does Google provide support for this situation?
Can I disable the OTA updates? We are getting very frustrated with the regular interruptions to normal service when the OTA notification pops up no matter what the user is doing.
Is there a Google web site that describes how to do the OS update manually? Perhaps we can manually handle the hundreds of handsets, costing us thousands of dollars in labour costs?

I have reported this to the code.google.com Android issues list, no response from that.
I tried to post a notice on Android Developers but the moderation process there seems to take four or more days, perhaps never.
This must be happening tothousands of non-developer users of the Galaxy Nexus, they can not be expected to hack their way around it. Where is the Google fix (or does Google simply not care?).

How does the update fail?

It starts the upgrade, showing the Android with the rotating dodechedron for about 10 seconds, then the Android lies down on its back with the stomach still open and an exclamation mark warning sign over the open door, and then the screen goes blank, the phone reboots and it still has the old 4.0.4 software.

I believe that there is log file created while the system is in recovery/update mode. But I am not sure where, maybe /data/cache/recovery/log, (would need root).

The only way I know of to disable the OTA updates requires root. It sounds like your phones are unrooted. If that's not the case, let me know and I can at least leave a partial answer with how to do that.

@Flow AFAIK, /cache would have been remounted under /data directory, some ROMs do that?

Try the old trick of doing this, from ICS, tap on Settings > Apps, tap on the tab called 'All', look for 'Google Services Framework', then tap on 'Clear Data', you may need to do this a few times and restart the handset.
This is known to work with the Galaxy Nexus line of handsets.

Thanks Tommie, still doesn't work. What happens to all the non-technical GN users out there? They must find the reminders and failures very irritating. I find the silence from Google very irritating.

I've been having this same problem, except I am running stock Jelly Bean 4.1.1 (which is rooted) and I'm trying to update to 4.1.2. Will clearing data for Google Services Framework affect any of my data?


text:
Transfer of files and apps from old sd card to new sdcard
I have got a new 8 GB SD card, but the catch is I have done the app2sd stuff. So what are the steps to be followed for the data and apps transfer without loss of anything.
Will a simple copy and paste including all hidden files be enough?

apps2sd? The default one or one where you save stuff to the ext partition?

If you just copy on Windows/Linux/MacOs, everything will be fine. I.e.there is a (on your phone) hidden .android_secure folder which contains the app2sd data (hidden on the phone) that you just can copy using anything different than your phone.

the default free app i downloaded

thanks ce4, just copied as you said and its working fine...thanks a lot.

Depends on how the copy is performed. The SD card contains a couple of hidden files/directories (especially with App2SD being used, there's the .android_secure folder to be considered).
Usually, when on a Linux workstation, a complete copy from sdcard#1 to sdcard#2 should do the job (cp -dpR <source> <target>). Same should apply to Mac OS. As I have no Windows, I cannot speak for that.

What about creating the second partition for app2sd? Doesn't app2sd make any difference to regular sd card clone?

I don't know how you create a second partition for App2SD. Usually, as far as I know, App2SD just creates encrypted containers on the sd card. Never heard a separate partition is automatically created or required -- though apps like Link2SD recommend this and make use of them, stock App2SD usually does not -- again, as far as I know. Not sure whether there are special implementations around. Is your original card partitioned?

It also works on windows, but you have to make all hidden files and folders visible.


text:
Download YouTube Videos from Mobile?
Is it possible to download YouTube Videos on my New Samsung Galaxy Y android phone and have it stored in my SD card?

For the record this is against YouTube's TOS.

Apparently, it will be something soon (or already) available in India (http://www.livemint.com/Consumer/fMBN3yFAzQ7ok1sHj8JQTI/Google-to-make-YouTube-videos-available-offline-soon-in-Indi.html)

I dont have enough rep to answer. Most flexible way is to use youtube-dl through termux.

Yes. You can take either of the following two approaches:

Use tubemate. With this app you can browse YouTube and download the video just like you would download from websites like keepvid.com.
The latest version of YouTube allows the videos that you opened or YouTube thinks you'll watch or have added to watch later queue to be downloaded in background so that you can watch it later. Read here. -> The preload option is no longer available in the official youtube app since version 5.6, see google support note here

For the first time, YouTube will start downloading videos it thinks you might want to watch, whenever you’re plugged in and on Wi-fi.
That’s great news for commuters, for example, who can now watch videos when outside their mobile coverage zone (or without paying for costly video downloads over 3G).
YouTube, careful to draw a distinction between this and total downloading of its vids (which breaks its terms of service), is careful to point out that you’ll still need to be online for the first second when you press play.

I used to use Tubemate. It has many options, one of which is the ability to  download the audio part alone so that you can also just listen to the video rather than watch it.
I later implemented a YouTube downloader script in my browser app. It has a flaw though - new videos loaded in the same page will not update the download link.
With the desktop browser disguise option and a Greasemonkey script, it might be possible to make it work in a mobile device as well.

you implemented Greasemonkey support in mobile browser?

It's 2020 and I use NewPipe (it can be downloaded here or here). You can use it to download Youtube videos and to:

Customize your download:

Set title
Choose between video or audio download
Download subtitles
Select the most suitable file format
Download the resolution you need

Disclaimer: I am just a user of the app.


text:
My Galaxy S has had a software upgrade and now it only types digits on the 3 x 4 keypad
I have tried a factory reset and messed with all the settings, no luck. I even tried an external keypad app. It just keeps texting numbers when I use the samsung 3 x 4 keypad even when its on the ABC setting. Please help!!!

Go into:

Settings
Language & Keyboard Settings
Samsung Keyboard
Keypad types, tap that

There is various styles , 3x4 keypad is probably selected, the one you need is Qwerty Keyboard.

Hail the Qwerty :)


text:
Android disk encryption - using as a removable device
I'm about to upgrade my Desire HD to ICS so that I can use the full disk encryption functionality.
Does anyone know if its possible to still use the device as a removable disk when plugged in via a USB cable?
If this is possible, am I right in assuming that the device will need to be unlocked with the PIN/password before being mounted (as this surely defeats the purpose of it, if you can access the SD card without unlocking)?

Are you talking about Android's built-in encryption or does HTC have their own? The vanilla encryption doesn't do anything to the SD card, so I'd imagine you can still use it; it only encrypts the internal partitions.

Yeah the built in one. I was under the impression it encrypted the SD card too - my bad.

In the official HTC ICS ROM for HTC Desire S, it is possible to encrypt the SD card in addition to the internal storage. It seems likely that the same would be true for the HTC Desire HD. I haven't been able to find details of how this encryption is done, yet.
With an encrypted SD card it is possible to mount the device as a removable disk when plugged in via a USB cable -- I do this myself for backups.
I assume that the SD encryption uses the same passphrase as the internal storage encryption as no other passphrases are required. It could conceivably be done using some internal passphrase invisible to the user, though I would be surprised.


text:
Can receive but not send emails
I can receive emails but not send them from my Android phone. I am using Yahoo mail and a Samsung Galaxy Ace.

Are you using the stock email client or another client? What are the settings that you are using (ex. Imap, POP, servers and ports)?

Outgoing: SMTP: mail.btinternet.com, Port:587, Security type:None.

You're using the Yahoo! Mail app, correct, and not the stock email app?

No i am using the pre-installed email app. My email is run by yahoo but my email is XXXX@btinternet.com and the server is mail@btinernet.com

@Bonzo: It would be a good idea to edit your question to include that information.

What are the BT Yahoo! Mail settings for outgoing and incoming mail servers?
Incoming Mail (POP3) Server: mail.btinternet.com with Port 110
Outgoing Mail (SMTP) Server: mail.btinternet.com with Port 25
Account Name/Login Name: Your email address
(including the "@btinternet.com" or "@btopenworld.com" part)
Password: Your BT Yahoo! password

step-by-step
Online step-by-step instructions to help with your email setup.

Note that SMTP Authentication needs to be enabled.

I have been experiencing the same problem with a Samsung Galaxy S2 and a BT yahoo account, namely can receive but not send email. After many unsuccessful variations on POP3/IMAP and port combinations the following finally seems to have worked:
incoming IMAP server: [imap.mail.yahoo.com]    [SSL port 993]
[User name is your whole bt email address. Use your normal account password.]
outgoing SMTP server: [smtp.mail.yahoo.com]  [SSL port 465]
(Finally - and crucially - select "require sign in" and use your email address (username) and account password as for the incoming.)
This may only be relevant to the Galaxy S2

I recently acquired an Alcatel PIXI UNITE smartphone from TracFone (April 2017). It uses Android 6.0. I use an att.net email address and when I let the regular email app add that email account I could receive email but never send it. My email would always end up either in the Outbox or in Drafts. And I could not send the mail from there either. There is currently some kind of craziness going on with Yahoo ATT mail. But the trouble seems to have been fixed (at least for now) by going into Settings (for the email account) and changing part of the default outgoing SMTP server settings. The default setting was: android.smtp.mail.yahoo.com. What I finally discovered after days of trial and error was simply to delete the "android." from the default and bingo!

Yahoos settings for android:
Yahoo Incoming Mail Server (IMAP): android.imap.mail.yahoo.com, SSL (port 993)
Yahoo Outgoing Mail Server (SMTP): android.smtp.mail.yahoo.com, SSL (port 365) use auth

I don't have the ability to set IMAP, I can only use POP3. I also tried setting outgowing mail server and I just get an error...

I had tried all combinations of security settings but crucially it was the 'request sign in' bit that was needed along with selecting port 465 (SS L certificates option).

I had changed my password online with Yahoo and that was the issue. As soon as I entered my new password, my outgoing messages worked just fine.

Sometimes your app preferences inhibit the default email app functions. This seems quite possible if you've disabled apps recently, or have in the past and there's been a recent update. Try resetting your app preferences.
To reset app preferences:

Open Settings app.
Tap Apps.
Tap More settings (three-dot) icon at the upper right.
Tap Reset app preferences.

This Droid Guy post gives more suggestions.