Flashing factory image - all data still present I've just flashed my Nexus5 with Android 5.1 factory image using this how to:

http://www.droid-life.com/2013/11/05/how-to-flash-nexus-5-factory-images/

I've made a complete backup off all my data since I was sure I'll loose it.
Also the how to states:

  "*Flashing factory images wipes your phone completely clean, leaving
  it at a factory, out-of-the-box state."

This also happened after flashing my Note 4 with Android 5 withe the rom downloaded from sammobile.com. (flashed via Odin)

So - why is all my data (photos, apps, calendar/contacts) still present after flashing the new rom?

The apps and user data (everything that gets erased by factory reset) are contained within the /data partition (in fact, "factory reset" simply formats the /data partition). This partition is independent of other partitions. Android system is located on the /system partition. That means that, as long you don't wipe your /data partition, your apps and data will stay in the phone even when you change your Android version.

It is, however, recommended to wipe your /data partition when moving from one Android version to another, due to incompatibility issues.


How to spawn "sign-in to network" page for a captive portal? How do I execute captive portal?

On a Z828 from ZTE, Android version 5.1.1, I'm trying to get something like:

While Starbucks generally works for me, all too often, other networks, when using public Wi-Fi, simply give a notice along the lines of:

See also:

Can I get a notification of failed WiFi connection for secured network?

Notify when connected to working Wi-Fi point

Only connect to certain Wi-Fi networks

Nearby wifi networks causing notification

How to disable the "sign in to wifi network" page?

Although nothing is quite on point, leaving me at:

  Still can't connect?

  If you still can't connect, please contact your Internet Service
  Provider, router manufacturer, or network administrator.

Which, simply isn't an option for most public Wi-Fi hotspots.  Perhaps, there's simply no solution.

Incidentally, my Kindle connects to the Wi-Fi hotspot, then, of its own volition, brings me to the captive portal through datavalet.  Seems specific to Android that I must first try to browse to a random website, which, sometimes, will then bring me to a captive portal.  Maybe.

It depends upon the firewalls vendor and how they implement it. If you're using a Cisco, such as one of the Meraki devices- the captive portal spawns best under Firefox versus Chrome/ium or Opera. And also another way to catch it, is to

Disconnect from the access point
Clear any saved credentials
Re-log in

Take care to notice the notifications you're likely to get a prompt. Follow the prompts. If your AP is as I have mine set up, it is likely a click through walled garden, these pages include a check box radio form entry field, You need to fill the check, then click 'continue' .

Also, iOS has to always be the Marsha Brady of the tech bunch, be sure that in the firewall settings of the AP, you have the correct ports available for iOS to get through otherwise if you're on and iPhone or pad, you won't get the chance to sign in, it will just auto-deny your request without much time to stop it.


Install Google Chrome for old tablet / phone I have recently recovered my old tablet (Motorola Xoom Wifi). I am now on Android 4.1.2. The only important thing I am missing after recovery is Google Chrome.

I can see the application on the Google Play Store as Chrome Browser - Google, however the store indicates me "Your device isn't compatible with this version". I remember having some Google Chrome on the Xoom before recovery and I remember seeing the same message when I was offered to update Chrome recently (last few months). Is there some archive I could download older Chrome versions from?

What are my other options? Would rooting the tablet and installing Android 4.4.2 allow me to install the recent Chrome?

Is there some way to check what exactly does the new Chrome require my tablet does not have?

The only browser I have available now is the "Browser", and while it works, I would definitely prefer using Chrome.

Google play store shows many apps as incompatible although they might work just fine. If you are okay with downloading third party applications, you can download the .apk file for Google chrome from http://www.androidapksfree.com/apk/chrome-browser-apk-latest-version-download/

Inform me if you are unable to install the application after downloading it.


Moving/copying an Appliction from one Tab 4 to another Tab 4 How do I copy/move an application installed on one Samsung Galaxy Tab 4 to another Samsung Galaxy Tab 4.  The application is no longer available on Google Play Store.

Multiple ways, depending on whether you only want to copy the app – or the data along:

you can use adb backup from your PC to backup the app from the original device and restore it to the other. For details, see:

Is there a minimal installation of ADB? (you will need that on your PC)
Full Backup of non-rooted devices (for ADB Backup itself)
How do you extract an App's data from a full backup made through “adb backup”?
our backup tag-wiki

without a PC being involved, the very same can be achieved using Helium - App Sync and Backup on both devices
there are several apps to extract the .apk files of installed apps. These can be used then for side-loading the app to the other device. Several suitable candidates can be found in this list.
You also can check on alternative markets whether the app is available there.


Memory settings menu inconsistently shows internal storage half-empty and completely full at the same time I own a sony xperia tipo that has around 2 gigabytes of internal storage.

Today, I got a warning that my phone's internal storage is full, while using google currents, so I went to the storage menu in the settings, to take a look, and I saw that the calculated amount of used memory in the internal storage section was a tiny bit over 1gb. This didn't sit well with the fact that  the reported free space was only 2mb instead of one giga and a half, as I thought it ought to be.

Trying to update apps that reside in the internal storage fails with an "insufficient memory" error.

I have no idea about what the problem might be and how to solve it, but I would like to try and avoid a factory reset, if that is possible.

Any help is greatly appreciated and thank you in advance for it.

EDIT: Here are two screenshots where you can clearly see that the total used space and available space do not add up to 2.15GB as they should but are only around 1gigabyte.

I have no idea what could be responsible for this phantom gigabyte, but one would think that the amount of memory the OS uses would have been subtracted from the "total space" and from the "phone memory" entry (not shown here) instead of the internal storage.

(I removed some apps to free up a few megabytes of memory)

Devices with internal SD cards / memory (for instance, my Galaxy S3 has 16GB), are split into many partitions.

4GB goes for OS/bootloader/recovery/system/etc

12GB is partitioned into /dev/mmcblk0p15 and mounted on /data

/data contains 4 main folders:

/data/app
/data/data
/data/dalvik-cache
/data/media

/sdcard (aka your user-available storage) is not a real partition, its actually a 'symlink' of sorts to /data/media

So the settings->storage (and a lot of apps, eg; ES File Manager), will report 12GB as your "total" partition size for /sdcard, even though your "sdcard" actually has 12GB - app - data - cache = 10.5GB (in my case) space available to it.

You need to be rooted, and use an app called "DiskUsage" from google play.. It will show you where your used space is going. Hope that helps!


Google Maps now shows addresses for some of my contacts I realized I can see all the addresses of people whose phone number I have on Google Maps. I doubt these people intentionally made their addresses available publicly.

How does the Google Maps app populate the places found under the My Places tab?  Where did Google get these from?

As mentioned on Izzy's comment, Google Maps can read the addresses from your Google Contacts. The feature was added on April 27, 2016 (v9.25.1). From AndroidPolice,

Contacts Appear in Your Places and Maps
One of the biggest complaints about using Google Maps for navigation to a friend's house is that the address had to be manually saved or searched; otherwise, the only way to pull it up was through a contacts app. Forget those days because all of your friends' addresses are now listed under the LABELED page on the Your places screen.
Previously, this list contained standard entries for Home and Work, plus any locations with manually added labels. Those items are now followed by a list of addresses pulled from the contacts database. There doesn't appear to be any fast way to sift through them, so there are probably going to be a few more changes to this screen in future releases.
Each entry has an overflow menu with the option to hide the contact from Maps so it won't show up in this list or anywhere else in Maps, and another to remove the address from the contact entirely.
The contacts will also appear as landmarks while looking at maps. You'll have to be zoomed in reasonably close to see them, but they appear like any small business.

One important thing is, Google doesn't publicly show your address to everyone (exception: Google+). It's only taken from the contact info (whether it's right or wrong address), and only shown to you.


Note 3, Android 4.4.2, forgets wifi password since an update 5 months ago my note 3 occasionally forgets my wifi passwords. Sjnce I have it set to jump to 4G cell data, I am accidentally using up my mobile data allowance.

This happens only every 2-3 weeks and I cannot find any logic to it.

Is there a way to see what has occured?

Any advice greatly appreciated.

PS. It is an Australian Telstra branded unrooted phone.

As always, there are several things that could cause this. I'm just trying to guess some:

Prior to Android 4.3 Wifi passwords were stored in a plain text file (no hash) on the device. In the beginning shell access was enough to get the passwords. Later on, they made it read only by system users.
Starting with Android 4.3 Samsung added this file to the Knox secure storage partition. If you have an (access) issue with knox or it's partition, the wifi password was lost. Even if you were never using Knox. It's also the only thing not working if you remove knox.
As fare as I know, google did something about the wifi passwords too in newer Android versions.
Perhaps you were changing a knox setting or password?
chances are high it's just a bug in the wpa_supplicant binary of your firmware, the csc or Samsung binaries.
Try to get latest updates.
do you loose all wifis stored? Or just one? Could it be your router?


I'm having trouble making a custom ringtone I have an LG-LS855. I don't seem to have any way to plug it in to my computer. I've made a ringtone I want to use. It's an mp3 file. I've uploaded it onto Google Drive. The only thing I seem to be able to do from my phone is play it.

I've downloaded three apps for custom ringtones. The only one that came close to helping was Tone Picker. It lets me use an mp3 from Google Drive as a ringtone. Or at least, it appears to. The phone still uses its default ringtone.

I've also figured out how to use any of the music on my phone as ringtones, but I can't figure out how to download the mp3 as music either.

answer taken from the question:

  The Dropbox app actually lets you download stuff onto your phone. Once
  I did that, the phone's ringtone manager let me use it fine.


Android massive background data usage 38 GB month I have Mediatek Smartphone with stock Android 7.0 and suddenly it increases data usage. Tracked it down to /data/data/com.android.email/cache which is occupying 1.6 GB. I have cleared cache many times which maybe explains the massive data usage 38 GB this month. The question is why it happens just now and not the months before?

How can i prevent increasing cache?

Edit: I use the stock email app for about 1 year without problems. I have 2x IMAP accounts connected. Recently I updated security patches to latest available Dec 2018 _V22. But after firmware update the battery drain increases too fast, so I decided to revert back to May 2018 CUBOT_KING_KONG_7081C_V16_20180517 (both still 7.0, no updates 7.1.2 available).

The phone is rooted so I can see that it downloades many files body1009174325.tmp in cache folder each with size 44,76 KB. I have inspected this file and it turns out it is a corrupt PDF which is downloaded a million times again and again. I found the responsible email and the App says attachment download has failed. After I pressed "save" the attachment was successful downloaded. After I cleared cache, the tmp files are gone. Now it starts repeating with next message (different tmp files, all the same). This time it is not a PDF and its hard to find the related email.

How can I avoid this behavior?

Netguard can be an amazing choice in this situation. You can block apps from taking up unnecessary data, and can also allow apps of your choice to use data. I would most probably uninstall that email app since it's not secure. Give Netguard a try. (:


wi-fi + bluetooth + usb failed for no reason (no system update) on xiaomi redmi note 4 Some time ago I suddenly noted that wi-fi switch does not turn on wi-fi and I could not start wi-fi hotspot on xiaomi redmi note 4. I did not do any system update before that happened.
As I've read on that problem on internet reset do not help, and neither it helped me later on. (installing some pdanet app did not help either).

In addition to wi-fi, also bluetooth starts (icon shows it's on, not like wi-fi always off), but does not find any devices.

I wanted to debug from PC, but neither Windows nor Linux see the phone connected as device, only charging worked. I was surprised to find out that OTG works, that points to software root cause IMHO.

The phone has non-removable battery, I cannot easily try what I've read as second advice (for samsung with wifi issue) - take out battery.

What could be the issue and what else do you advice me to try apart from selling for spare parts?

This seems like a technical issue. There could be these possible reasons:

It can happen if you manually change radio settings of the device (but will auto reset to default when you boot the device).
It can happen if you are running your device with an outdated version of custom UI that is not installing OTA updates.

OTA Definition:

  OTA Updates - Android devices gets OTA updates via developer provided directly to your phone under name 'software update' or 'system update' or in some devices directly through app named 'Updater'.

Solution is:

Try factory reset to your device.

Factory resetting to your device makes the device completely clean and settings will revert to the manufacturer default settings.
Try manually updating the ROM.

OTA update is an automatic process for keeping your mobile up-to-date while manually updating a ROM takes time and a little knowledge of android devices.

Benefit is - By manual updating you can get a custom ROM installed faster than others who are waiting for official OTA update that takes time.

Caution -Manual update can be a risky process for your device. Please search it well before trying manual process.


Wi-Fi hotspot timeout setting gone in Nougat 7.0 , 7.1, but timeout has not Just got a new Android 7.0 Nougat phone , and only major gripe so far is
disappearance of the Wi-Fi-hotspot timeout setting .

This is probably the same issue as
 :
https://android.stackexchange.com/questions/168549/hotspot-timeout-setting-gone-in-7-1-nougat
, but it did start with 7.0, not 7.1 , and since no-one has answered that
question, I thought I might as well try.

The Hotspot seems to time out after 1-2 mins of inactivity, I think
corresponding to the device going to sleep, requiring me to restart
ISC dhclient & wpa_supplicant manually to re-connect.

The Hotspot goes to sleap due to inactivity much sooner than the DHCP lease
it has given out expires.

I have WiFi Settings → Advanced 'On during sleep ( ALWAYS )' enabled.
But I do not need to enable WiFi to enable the WiFi-Hotspot (IP Tethering over WiFi, acting as an Access Point for my laptop), so
I do not see many WiFi settings, and do not know if any WiFi setting
would take effect if WiFi is disabled. I thought one enables WiFi only
to connect as terminal of another Access Point, not when providing an AP?

It does work, and used to work reliably & long-term in Android 4.2.2 with
appropriate timeout settings,  but now with no timeout setting it is highly unreliable and I have to keep waking up the device to use the internet via
Hotspot - or disable sleep mode entirely and drain the battery very quickly.
Another reason to try and root the phone, which is also made much harder by 7.0.

It could be something to do with :

/etc/hostapd/hostapd_default.conf :

    # Station inactivity limit
    #
    # If a station does not send anything in ap_max_inactivity seconds, an
    # empty data frame is sent to it in order to verify whether it is
    # still in range. If this frame is not ACKed, the station will be
    # disassociated and then deauthenticated. This feature is used to
    # clear station table of old entries when the STAs move out of the
    # range.
    #
    # The station can associate again with the AP if it is still in range;
    # this inactivity poll is just used as a nicer way of verifying
    # inactivity; i.e., client will not report broken connection because
    # disassociation frame is not sent immediately without first polling
    # the STA with a data frame.
    # default: 300 (i.e., 5 minutes)
    #ap_max_inactivity=300

So I need to root the phone to change this default value.
Has anyone found any workarounds ?

Yes, it is because of inactivity timeouts. But without rooting the device I cannot determine for sure if it is that specific hostapd ap_max_inactivity=300 default, but I believe it is. I'm not sure if it is
the case that my Linux 4.10 x86_64 iwlwifi driver (recently restructured) is not acting appropriately when it receives the empty data frame.

But, I think it is really not in for Android to decide to prevent users from setting this parameter anymore, when it used to let them in previous versions.

The fix is, of course, to start a 'ping monitor daemon', like this shell script on the AP client host (Linux in my case):

#!/usr/bin/bash
declare -i wpm_should_exit=0;
function wpm_exit()
{ wpm_should_exit=1;
}
function wlan_ping_monitor()
{ trap 'wpm_exit' HUP INT QUIT TERM;
  local the_IF="$1";
  declare -i ok=1 i=0;
  def_router=$(ip route show default  2>/dev/null |\
  sed -rn \
      '/^default[[:space:]]via/{s/^.*via[[:space:]]+'\
      '//;s/[[:space:]].*$//;p}'); # join above lines!
  if [ x == x"$def_router" ]; then
     echo "$FUNCNAME: default router is not set. Nothing to do." >&2;
     return 1;
  fi
  kernel_org=$(host www.kernel.org | sed -rn \
     '/has[[:space:]]+address/{s/^.*address' \
     '[[:space:]]'//;p}'); # join above lines!
  if [ x = x"$kernel_org" ]; then
     echo "$FUNCNAME: Unable to resolve kernel.org -"\
          " must be able to ping an internet host." >&2;
     return 1;
  fi
  logger -p user.info "$FUNCNAME : started.";
  sleep 60;
  while ((0 == wpm_should_exit)); do
      ((ok=0));
        for (( i=0; i < 3 ; i+=1 )); do
        if /usr/bin/ping -n -q -c 2 -W 8 $kernel_org >/dev/null 2>&1 || \
           /usr/bin/ping -n -q -c 2 -W 4 $def_router >/dev/null 2>&1; \
        then ((ok=1)); break 1 ; fi
        logger -p daemon.error \
             "$FUNCNAME: ping $def_router or $kernel_org failed.";
        sleep 1;
     done
     if (( ok == 0 )); then
        logger -p daemon.error \
            "$FUNCNAME"': interface '"$the_IF"\
            ' is down. Could not ping '$def_router' or '$kernel_org\
            '. Restarting Network...' ;
        /etc/init.d/network restart || break;
        ((ok=1));
        sleep 60;
    else
        sleep 8;
    fi
 done
 logger -p daemon.error "$FUNCNAME: restarting network failed.";
 rm -vf $PID_FILE;
}
declare -i status=0;
case "$0" in
  (\*${BASH_SOURCE})
      wlan_ping_monitor ;
      status=$?;
  ;;
esac
((status==0));

For completeness, here is daemon.sh, with which the above script
is invoked by '/etc/init.d/network start':

PID_FILE=/run/wlan_ping_monitor.pid \
   daemon /etc/init.d/wlan_ping_monitor.sh

Missing is only the 'setpgid' and 'noctty' bash built-ins, which does:

setpgid( pid = getpid(), pid );

and

ioctl(0, TIOCSCTTY , 0 );

But, they are not strictly necessary to test - just remove / comment out -
these built-ins are easy to write & available on request. They must be
built-ins, not programs, because they must effect the current process.

One weird thing about the ping script is that it must send a packet
out to the WAN internet to reset the inactivity timer - it is not
enough to simply ping the phone , which can fail to respond to ICMP
packets within 4 seconds while still passing through pings to the WAN.

#!/usr/bin/bash
. /usr/lib64/bash-${BASH_VERSION}_loadables/load.sh
if [ ! -v N_DAEMONS ]; then
   declare -xi N_DAEMONS=0;
fi
if [ ! -v TMPDIR ]; then
   declare -x TMPDIR=/tmp;
fi
if [ ! -v USER ]; then
   declare -x USER=$(whoami);
fi
declare -i daemon_status=0;
function daemon()
{   export \
      PID_FILE=${PID_FILE:-${TMPDIR}/${USER}- daemon-${N_DAEMONS}.pid};
    declare -xi N_DAEMONS=0;
    if [[ "$PID_FILE" =~ ^(.*)[\.][pP][iI][dD]$ ]]; then
       export PID_FILE="${BASH_REMATCH[1]}";
    fi
    while [ -f "$PID_FILE".pid ]; do
       ((N_DAEMONS+=1));
       export PID_FILE="${PID_FILE%-\*}-${N_DAEMONS}";
    done
    export PID_FILE="${PID_FILE}.pid" LOG_FILE="${PID_FILE}.log";
    echo "daemon: PID_FILE: $PID_FILE LOG_FILE: $LOG_FILE" >&2;
    declare -i checkjobs_enabled=0;
    if shopt -q checkjobs; then
       ((checkjobs_enabled=1));
       shopt -u checkjobs;
    fi
    trap "" CHLD HUP TERM QUIT EXIT ERR;
    { tty=$(ps -o 'tty=' -p $BASHPID 2>/dev/null);
      { trap "-" CHLD HUP TERM QUIT EXIT ERR;
        if [ x != x$tty ] && [ -e /dev/$tty ]; then
           noctty < /dev/$tty || :; # another built-in -just comment out
        fi
        setpgid;
        echo "$BASHPID" > "$PID_FILE";
        declare -a ps=($(cat /proc/${BASHPID}/stat));
        if [ x != x"${ps[3]}" ] && [ "${ps[3]}" != 1 ] && \
           [ -d /proc/${ps[3]} ] ; then
           echo 'DAEMON: '${ps[3]}' : '$(readlink  \
              /proc/${ps[3]}/exe) >&2;
        fi
        exec "$@" </dev/null  >${LOG_FILE} 2>&1 ;
      } &
      exit $?; # our child becomes child of init
    }&
    declare -i ok=$?;
    trap "-" CHLD HUP TERM QUIT EXIT ERR;
    if ((checkjobs_enabled)); then
       shopt -s checkjobs;
    fi
    return $ok;
 }
 case "$0" in
   (\*/${BASH_SOURCE}) ;&
   (${BASH_SOURCE})
      daemon "$@";
      ((daemon_status=$?));
   ;;
 esac
 ((daemon_status==0));

This daemon is also killed by /etc/init.d/network stop (which is invoked
by 'network restart').

It is a shame that it is necessary, when simply moving from using an Android 4.2.2 phone Access Point / router to using an Android 7.0 AP, that such methods must be used by clients to maintain an 'always on' WAN internet connection through the AP.


Get offline maps in new Google Maps Google Maps was updated last night (9-July-2013 v7.0.0). While there's a lot they added, one thing they removed was the ability to cache maps offline.

I relied on that functionality in poor-coverage areas. Is there anything I can do?

Open Google Maps and search for the area you want to cache (or just zoom in on it).

Tap the search bar.
Type "Okay Maps" (some people report success with just "OK Maps") in the search bar.
Tap the search icon

You'll be dropped back at the maps view, and you'll see a notification that the area was copied to your clipboard or otherwise cached. Now, even offline you'll still be able to zoom down to the same level you were at on that map area.


Xperia SP boot loop into flash mode I have an Xperia SP, and it's stuck in a boot loop after some faulty manipulation. I only see Sony's logo, and plugging the phone to my laptop sets it to flash mode automatically for around 20 seconds, before restarting to connect again straight into flash mode.

How can I fix my phone?

To solve this boot loop issue, start by flashing this kernel via FlashTool, switching your phone into fastboot mode. The best is to follow the original guide I guess.

Then, you can follow this tutorial to install a custom .zip file ROM again, allowing your phone to boot again. You might need to upload the .zip file directly onto your SD card.

I hope this helps.


Charging/PC connection issues I have tab 2 7.0 that will only charge when switched off and even then that's only sometimes, other times I get the battery boot loop.

When device is on it says not charging in battery settings and has a red x through battery icon. It also does the same when connected to a PC but windows does not detect any connection.

I have two of these, both my sons and both do the same. It's an original cable and wall charger. So I'm guessing it could be the cable as I factory reset one of them and still the same problem. It seems obvious but I'm just looking for any advise before I go buying another cable.

Thanks.

Try cleaning the battery and case contacts with a tooth brush.


after rooting phone, can I remove all traces of original phone carrier? Forgive my mobile ignorance.  I have a Galaxy S4 from Verizon (sch-i545), and I do not use it as a phone anymore.  What I want to do is turn it into basically a very simple media device for kids' use on wifi at home.  Almost a tablet.  I want a very clean version of Android, and I will install a very few number apps, just a few carefully-selected things that my children can use.

If I root the phone and then install a custom ROM (I haven't done this yet but see plenty of tutorials online), will I be able to achieve what I want, or will my phone keep complaining about not having a SIM card?  And will it still think it is associated with Verizon (custom splash screen and who-knows-what-else)?

Certainly, I could just factory reset it and disable the dozens of bloatware apps, but I'd feel especially content to do a little more than that and have the knowledge that it's just a little computer running  the custom android version I want without any Verizon fingerprints upon it.

As its hardware is still altered by Verizon, you'll likely not be able to perfectly swap out the OS, since the bootloader of your device is still locked down by Verizon, and that makes sure you don't touch anything related to boot (it won't boot up if you do), so it is also impossible to replace the splash screen that shows up first when you boot the device up.

That being said, it still shouldn't complain about anything Verizon wants the device to complain about. Everything you see after the device ends the boot animation and displays the lock screen are controlled by the custom ROM. So if the custom ROM developer doesn't want the ROM to complain about anything (and that is kind of the point of a custom ROM!) you should be fine. Also Verizon would not be able to interfere with your device functions remotely.


force stopping of a preloaded app on kyocera rise Can i press force stop on preloaded app on device by pressing on force stop? Would it free internal memory by doing so? i realize that the preloaded device apps cannot b uninstalled however If i wanted to release memory on my internal drive would i be able to stop the app n its programs from running on a permanent basis if i press "force stop" on the preloaded apps which i hv absolutely no use for?

No, Force stop doesn't stop the app running again. It just interrupts it if it's running right now. It doesn't free up any internal storage. It doesn't make any difference to RAM usage: Android will already kill background processes to free up RAM when it needs to, without you pressing Force stop.

As Izzy suggests, try pressing Disable if you're running a recent enough Android version to have that button: it's on the App info screen, right next to Force stop. (You might first have to Uninstall updates.) This will remove the system app from the app drawer, stop it running completely, and stop it being updated. If you're on an older Android version, you can uninstall the app completely only if you root the device and use a third-party app to do so.


IMAP forwarding show IP address to Google servers? I use K-9 Mail app on my phone, and sync my gmail via IMAP.

My question is: Do google servers see my IP address when checking/sending mail?

I am pretty sure that if I used the gmail app they would see all my IP address at each sync request. Using a 3rd party app like this, do I avoid that?

No, if you tell K9 to fetch your mail from Google's imap servers, then whenever K9 goes to fetch your mail, it has to contact Google at which point Google will know at which IP they can reach you (to reply to the fetch request).  They may not get to know your "internal IP", tho (e.g. if you're behind a NAT router, they'll see the external IP address of the router, rather than the specific intenral IP address of your Android device).


Failed OTA update Nexus 7 (2012) A while back when the OTA update came out for Lollipop 5.0, the tablet became exceedingly slow, practically unusable. So, I followed the instructions in https://developers.google.com/android/nexus/images and reinstalled the 4.4.4 ROM.
The system continued to offer the upgrade but I ignored it. Today, I tried to install it. It is offering 5.0.2. It says that it has already been downloaded (~300Mb) but when I tap on Restart and Install, it says "rebooting in x seconds" until it says "rebooting now" but never does. The it says "downloaded and verified" again and the button changes back to "Restart and install" from "cancel install"

I tried doing this operation in safe mode but to no avail.

A few weeks ago, I cleared the cache partition a couple of times, if this has any importance.

Is there a way to redownload Lollipop OTA without sideloading?

Your easiest option is to sideload the update.zip file.

Better option would be to download and flash the system image if you havent done it since 4.4

Sideload: Download the proper image file and adb drivers for your OS from google and install drivers. Now boot to fastboot by pressing Power + Volume down. Now check if you have connected by typing fastboot devices in terminal/prompt. If your device is listed, continue to flash by running the script file from the downloaded image zip.

This method may work on other non nexus devices but you require proper image files from manufacturer or third party and you may require to go through extra steps before you can use fastboot.

This requires you to have unlocked bootloader. Use fastboot oem unlock to unlock your bootloader.


S3 mini Teamwin boot loop I was running Novafusion's LineageOS 14.1 on my Samsung SIII mini but it was slow, so I decided to go back to Android 6.0.1.

I booted into recovery, formatted the cache partition to ext4, but left the data partition in f2fs, flashed Resurrection Remix 6.0.1.

When it booted I got an error "Encryption interrupted… you have to factory reset your phone" and I accepted. But I never enabled encryption on my phone.

Now it is stuck at teamwin logo screen flashing every 5 seconds or so. I can access download mode so:

I tried:

Flashing TWRP recovery using heimdall
Flashing LOS 14.1 using heimdall
Flashing Param.lfs using heimdall (reference https://android.stackexchange.com/a/130061/25234)

Now if I try to boot normally, it gets stuck on the Samsung Galaxy SIIImini logo. If I try booting to recovery I get the same boot loop as before.

Please help.

I'm posting an answer for the benefit of others that might end up in a similar situation.
Download Stock firmware
This was the first hurdle. There are many sites and many versions. Finally I used the firmware from sammobile.com for the gt-I8190 for Italy.
Boot in Download mode
Next step was to boot in download mode by pressing Vol-, HOME and Power until it vibrates. Then release the buttons and connect the USB cable to the PC.
Flash stock firmware
I'm using Linux so I installed heimdall, opened the heimdall GUI and flashed: Kernel (boot.img), Kernel2 (recovery.img), System and Cache. (Windows users would have to install Samsung drivers and ODIN from what I read but never actually used.)
First boot
The first boot informed me of the same problem that the custom ROM had found about encryption of the Data partition and asked for a reset. This time the reset worked perfectly and on the second boot I was presented with the initial setup screen.


Is there a way to find the IMEI on a Pixel with a completely damaged screen? A couple weeks ago my Pixel XL 2 (or Pixel XL, not sure) started to have black blotches all over the screen. They grow, enlarge and eventually engulf the entire screen. Now except for a sliver on the upper right corner, the screen is pitch black regardless if it is on or off. What kind of damage is this? There had been no physical damage to the phone. As far as I can remember, the phone has never been dropped or otherwise subjected to excessive physical forces.

I am trying to find the phone's IMEI, but I am not sure how to go about doing it without being able to see anything on the screen.

Also when it is plugged in to my laptop via a USB-C cord, my Windows 10 recognizes the phone, but I don't see an additional drive. How should I access the files on there? Is there a way to reset the phone and clear the data?

Yes you can find IMEI of your damaged Pixel Device or any Android device if you have or had your google account logged in .

Check Google My Devices
or alternatively logon to Google Find my devices @ https://www.google.com/android/find

on your device list click the ( i ) information icon, you can see your device IMEI.

Hope this helps.


Unable to update Chrome, even after setting SD card as default installation path I have an Alcatel Fierce 2 phone with Kit Kat. Even though I have an 8 GB SD card, when I try to update Chrome I keep getting "not enough memory check storage". I have the box checked to use my SD card as default, but no luck. Any resolution?

Unfortunately the only real solution is to clear up some space on the system 'drive' - uninstall things you don't need, media files and so on.

I typically plug my phone into a computer, move as much stuff out as possible, and try again.


Z axis nexus 4 incorrect. Software or hardware? I noticed that before I upgraded to Lollipop my z axis of the lge accelerometer of the nexus 4 used to be 10.2 m/s^2 (which was wrong but closer to accurate). After I upgraded it is now 10.6. Is this a problem with nexus 4's in general? Can any other nexus 4 owners confirm as well?

Look at my values. Mine reports slightly lower numbers (9.2).
I believe LGE Accelerometer Sensor field shows raw data from the sensor. It's normal that it's not super accurate. More importantly look at Gravity and Linear Acceleration fields in both mine and your screenshot. These fields show expected values. This means software compensates for sensor inaccuracy well.


How can I change my name on Google Play Games? I opened up Google Play Games and clicked my way through it and it has changed my name to 'HighLemon4719'. Previously it was 'crazymaster' with my icon for Google+.

Every time I start a game on my phone it comes up as the name 'HighLemon4719'. How can I change it as I not like this name?

Open up Play Games and click on your avatar in the header.
Click the Pencil icon in the top right hand corner of the app.
You should then be able to enter a new 'Gamer ID' to replace 'HighLemon4719'. You can also change the avatar image that is displayed too.
Click Save


Encryt a single user, not the whole device My android is multi-user. It is crazy to encrypt the entire device. How do I encrypt just a single user's account?

More specifically, the only thing I am trying to protect is my gmail account.

I know it should be possible, as I have such a feature on my Debian Gnu/Linux laptop. It would however require integration with the login manager.

Afraid not. We're talking about "device encryption" here, which – as the name suggests – encrypts the "device" (in this context, the "storage device"). All users have their data on the same storage device – so either you encrypt it or not.

While it's not possible to "encrypt a single user", there are possibilities to encrypt selected files and directories, which might be an acceptable alternative for you.


SGH-T989 (UVLDH firmware) Goes into Recovery mode, but not Download I'm trying to get my SGH-T989 into Download mode so I can flash TWRP with heimdal. It's been awhile since I've done this and from what I recall (and have researched a bit) I need to:

unplug cable
power off
hold Vol_Down + Vol_UP
plug in cable

This isn't working though. All I get is recovery mode and what I want is Download mode.

Not sure if the device/cable/PC is bad. Using Linux. Tried a 14.04 box and a 16.04. What have I missed?. Been googling, but lots of mixed info. Anyone help?
Thanks

----- update ----------

Older Samsung devices might require a special USB dongle/jig like this one to trigger Odin mode - just plug it in when the device is powered off. It's essentially a resistor between USB pins so you can also make one yourself if you're up for it.


Rotate screen on HyperV I have Android installed on a HyperV virtual machine, which defaults to a vertically aligned phone/screen.

The standard solution does not work, so how do I turn the screen of my device?

First you need to make sure you install and configure Hyper-V accurately.
1. How to install Hyper-V?
2. How to configure Hyper-V?

After checking that you need to follow these steps.
3.I also encountered this issue here what i did on 1366 x 768 display.  This made it hard to use Hyper-V virtual machines, Hyper-V default is 1024 x 768 and its only allow you to configure 4 x 3 resolutions.

Luckily, it is actually possible to setup a Hyper-V virtual machine with a widescreen resolution.  Though the process is not that intuitive.  What you need to do is:

Right click on the desktop of the virtual machine and select Screen Resolution
Select Advanced Settings
Click List All Modes
Choose the screen resolution that you want and click OK.
You can also use this method to set the virtual machine resolution to 800 x 600 or 640 x 480 – which is usually not allowed on recent versions of Windows.


Turn off Incredible Bottom Lights Droid Incredible has 4 buttons below the screen that are very bright at night. I'd like to turn these off when I'm reading from the screen. Is there any way to do this without rooting the phone?

From what I've read, this is not possible without a rooted phone.  Other than that, you can you only control the lights' on/off state by how much ambient light is hitting the sensor.


On Nexus 4, system still "up to date" with Kit-Kat I would like to install Lollipop over the air on my Nexus 4. I know that there is a factory image available, but I'd rather avoid install that if I can.

I have a Nexus 4 that has been turned off from mid-September of this year to mid-December. It had a bad charger port.

I had it fixed, charged it, and updated everything. Android updated to version 4.4.4. And that was it. Now, every time I look at System Update it says "Your system is up to date". If I manually check updates, it doesn't change anything.

Did I miss some sort of window for Lollipop? How can I get the over-the-air Lollipop install for my Nexus 4? Or will I need to do a whole system update from a computer and reinstall everything?

Also maybe worthy of note: this phone is not currently connected to a phone carrier. It's just used as a wifi. I do intend to connect it to a phone carrier very soon, though.

Okay, Android finally updated. It found the update the instant I tried to connect through my phone service, as opposed to connecting via wifi. The strange thing is that I could not in fact connect via the phone. But apparently, turning on the mobile data switch prompted the message that an update to Lollipop was available, even if there was no mobile data to be used there.


Do frozen/disabled apps get triggered by broadcast receivers? If an app is frozen/disabled, does it still get executed if triggered by a broadcast receiver?

If the application is truly disabled, it won't get executed even if it receives broadcasts intents.

I have a disabled application, which if it was enabled, is woken up by various intents such as;

android.provider.Telephony.WAP_PUSH_RECEIVED
 android.intent.action.BOOT_COMPLETED
 android.net.conn.CONNECTIVITY_CHANGE

Even though if it receives these intents it is still disabled, until I manually enable it.

However there are some applications which can filter intents of a partially disabled application.

For example Greenify, it can disable an application such that other broadcast intents are ignored, except for a few e.g GCM receiver or Telephony intents. So in this case it is woken up only by specific broadcast intents


Setting up Email Notifications based on time & location I'd ideally like to only receive notifications from an email app (can be the outlook app or the generic android mail app - not gmail or inbox) at certain times of the day or when I'm not connected to our office wifi. This is an exchange account, so using the gmail app isn't an option.

I know this is possible, most likely with Tasker, but I really can't figure it out, to be honest; and have done some searching here and elsewhere on how to do it. If someone could even lightly walk me through it, that would be excellent!

There is an app called IFTTT (IfThisThenThat) which I have used before to schedule emails and SMS messages.


How do you securely delete android 6 phone? Settings states that phone data is encrypted already, so do I just do a factory reset and that's it? Is this the same as a hard reset?

Yes, a factory reset of an encrypted device will wipe your device and delete the encryption key; it's a secure wipe (you can see some of the requirements here).  If your SD card is not encrypted you might need to handle that separately — a full (non-quick) zeroing format from a PC should be sufficient if you don't want to reuse or destroy it.

A "hard reset" can either refer to a hard power off and reboot, or to a factory reset; obviously in this context it would be the latter.


Where is the gesture button? Today I can't find the gesture button. I had it placed bottom right, showing faint on every page; now I have to go to menu /dolphin to bring it up. When I look at gesture settings all I can do is add extra gestures, but no menu list or other way to restore the 'always there' button. Has quick access been removed? I'm using dolphin version 8.0.0 on galaxy note. Thanks for any help

When you are in the Gesture Settings you need to click on the tab that says "Dolphin Sonar Settings" in the bottom right hand corner.  There you'll have the option to "Enable bottom left button."  This puts the new "dual purpose" Gesture & Sonar button in the bottom left hand corner.

FWIW, I think the whole Sonar thing is annoying and I don't understand why they reduced the customization options.  I prefer my gesture button on the right!


Can I make a flashable ZIP containing one or more APKs Is it possible to make a ZIP that can be flashed onto a device to add a bundle of applications (.apk files) to the /system/app directory such that it can be flashed after the OS (e.g. CyanogenMod) in a similar way to other bundles such as OpenGApps ?

I've seen things like the ZipMe app but I'd really like to do this on Linux where I have the desired apk files in a directory. I'd like to do this by hand if possible to that I can understand the ZIP's contents.

This simplified example is inspired by this xda-developers thread.

It is handy to use adb but you don't need to.

Get a Java signing tool and keys

Your packaged ZIP needs to be signed. If you have a Java signing tool, great. If not, then you can consult the Google sources for signapk or download a ready-made signapk.jar from here, or here.

The latter also contains sample signing keys that you can use but you can make your own with OpenSSL:

$ openssl genrsa -out key.pem 1024
$ openssl req -new -key key.pem -out request.pem
$ openssl x509 -req -days 9999 -in request.pem -signkey key.pem -out certificate.pem
$ openssl pkcs8 -topk8 -outform DER -in key.pem -inform PEM -out key.pk8 -nocrypt

The following discussion assumes that you have a signapk directory containing signapk.jar, private key key.pk8 and certificate  certificate.pem(which contains the corresponding public key).

Prepare the ZIP contents

Create a working directory (the name is irrelevant):

$ mkdir apkzip
$ cd apkzip

Create the required structure

$ mkdir -p META-INF/com/google/android system/app

The next step is to create a file called updater-script that contains a script written in something called edify. A simple script that serves the requirement is shown below:

# META-INF/com/google/android/updater-script
mount("MTD", "system", "/dev/block/platform/mtk-msdc.0/by-name/system", "/system");
package_extract_dir("system", "/system");
unmount("/system");

The third parameter to mount is the block device path for the system partition. You can (optionally) verify this with:

$ adb shell grep system /proc/mounts
/dev/block/platform/mtk-msdc.0/by-name/system /system ext4 ...

You can embellish the updater-script with comments and progress bars, as illistrated by may examples on the web but it isn't necessary.

You also need to provide the interpreter for the script which is a file called update-binary that you can obtain from whatever rom you're using, such as CyanogenMod or ResurrectionRemix. Find it in the ROM's Zip file at the location META-INF/com/google/android/update-binary and copy it into the working directory tree at a similar location and alongside the updater-script created in the previous step.

Finally copy in the .apk files that you want in your ZIP. They need to go in individual directories like system/app/<app-name>/<apk-file> where <appName> is a directory named after the app (I don't think the name is relevant) and <apk-file> is the .apk file. There should be one .apk file per directory.

Your file hierarchy should now look similar to this:

./META-INF/com/google/android/updater-script
./META-INF/com/google/android/update-binary
./system/app/SomeApp/com.some.app.apk
./system/app/SomeOtherApp/com.some.other.app.apk

Create and sign the ZIP

Now create the signed ZIP (the -r recurses subdirectories):

$ zip -r /tmp/apps.zip *
$ cd ../signapk
$ java -jar signapk.jar certificate.pem key.pk8 /tmp/apps.zip apps.zip

Apply the ZIP to your device

Push the signed ZIP (the apps.zip created in the current (signapk) directory) to the device, choose a location that your recovery can see:

$ adb push apps.zip /mnt/media_rw/sdcard1/

(You don't have to use adb - you can use another method such as placing the SD card in your computer, etc).

Now reboot to recovery and flash or, in the case of a locked bootloader, use FlashFire or whatever method is prefferred for your device.

Other notes

You can read more about Edify:

http://forum.xda-developers.com/wiki/Edify_script_language
http://forum.xda-developers.com/showthread.php?t=994940

It may be possible to replace update-binary with a shell script. An example of this can be seen in the OpenGApps ZIP files but I have not tried this.

The above works provided that the apps have no native libraries in them. If they do, then they must be be manually extracted from the .apk package (which is itself a ZIP file) /lib directory and placed under /system/vendor/lib in addition to placing the package in /system/app/....

As commented by @DeathMaskSalesman, signing is not required by TWRP, CWM or FlashFire so you can skip the signing steps if you prefer.

I have produced a utility that works on Linux or Android. Get apkzip here.


Is there a way to check the default web browser that is set up on my smartphone? I want to use "Chrome Custom Tab."

However, to use "Chrome Custom Tab," the default Web browser must be set to "Chrome".

Is there a way to determine which default web browser is being used on your device?

you can check standard browser from app settings. this is for android 7 (german translation)

Settings -> Apps -> Chrome (App info, scroll down) -> Browser App -> Browser App (again)


Getting rid of "Tethering Detected" popup on Android ICS 4.0? I just got a Samsung Galaxy S3 that runs Android ICS 4.0.8. When I connect the Galaxy S3 to my Mac laptop and use PDAnet to tether, I often get this popup on the Galaxy S3 screen:

Tethering via PDAnet works great, but the popup can get annoying. I can close the popup, but it comes back a few seconds later.
How can I get rid of this popup permanently?

This to me looks like something your provider has added in to stop you getting free tethering on your data plan.

If you are rooted (which I assume you are as you are using a tethering app), then you can attempt to freeze the app that is responsible for this, using an app freezer such as App Quarantine ROOT.

If it isn't an app, then it may be part of the ROM directly, in which case you would have to install a custom ROM such as CyanogenMod. You should look at forums such as XDA-Developers to find a ROM for your device.

Using a custom ROM will definitely remove the message.


Is there an app where you can control your phone w only hardware buttons My phones touch screen is broken, it only responds for like 2 secs everytime i turn on with power button.
Need somethin like double press vol key equals swipe left, and other key is right. Hold for swipe down up.
Thankss

I don't think so.

Use bluetooth to connect something like gamepad or keyboard to control your phone, but I should have changed screen or bought a new phone.


How can I view webpages locally? Is there an app available on the Play Store that allows us to view websites/webpages that have been transferred to the SD Card?

I've tried several android browsers and none of them allow me to open a *.html file and actually view it as a webpage - they only show the code of the page.

I've tried using numerous File Manager apps and using the Open with... command to open them in various apps but no luck.

I did come across this page: How can I open an HTML file I have copied from PC to SD Card of Phone? which suggests it can be done by manually typing in the entire path of the file, but I'd really prefer it if there was an app for this. Either on the Play Store or even an APK that somebody's made available online somewhere. I've yet to find one though.

SD Card Offline HTML Browser will show those saved files locally.

Android Open In Browser states the issues, but does say Opera Bowser will work on some Samsung devices.


Can't download due to no storage. I have enough storage I keep getting a error saying cannot download not enough space. But according to my phone I have 429MB and the file I want downloaded is only 40.08MB. I don't want to use my SD card because the file will be deleted later but, it's needed now. What should I do?

Do you have your permissions set for the app in which you are downloading from?! Sometimes you can't even save your settings if they can not write to the drive/device.


Game requiring gamepad instead of tilt controls When i start a game it starts with gamepad controls as default, i can't play the game .
How to change settings in Mobile to change input from controller to default tilt.

That's not a global setting, it's specific to the game. You'll need to look in the settings inside the game and see if it has tilt controls. If it doesn't support tilt controls you're out of luck.


Alcatel Onetouch Idol 3 won't work with bluetooth I have an Alcatel Onetouch Idol 3 that I purchased in January.  It has static, breaks up and sounds muffled when I have my bluetooth on and wifi is on.  If I turn my wifi off it works ok. I have tried 4 bluetooth and returned the Alcatel once. Has anyone else had this problem or does anyone have a solution?  I am ready to cut my losses and purchase another phone.

Wi-Fi and Bluetooth both operate in the 2.4 GHz frequency band.  As such, interference is to be expected; it's not your particular phone.  Here is an interesting paper on it.

You could see if your home Wi-Fi router supports the 5.0 GHz band, and switch to using that exclusively.  You could also try changing the Wi-Fi channel.


unknown error code -24 I have Android 4.1.2 on Samsung galaxy S2

I install an app and get this error:

unknown error during appliaction install -24

googling this line should clearing Google play cache might help

but it didn't work for me. Any other solution?

I've just checked that again: "Error -24" in most cases is caused by a failed install/update. To solve it, uninstall the app from your device. After that, you should be able to install it again.


WhatsApp chats disappeared after Android Operating System Update I am having a Moto E XT-1022 (1st generation) 2014 model. In order to update its OS from 4.4.4 to 5.1, I had to make 500MB space available so I deleted all WhatsApp database backup files without copying them elsewhere as I knew from my own experience that WhatsApp had nothing to do with Android OS upgradation process since I had already upgraded the same android from OS 4.4 to 4.4.4 and my old Samsung even before that without losing any of my WhatsApp messages but unfortunately, this time all my chats are gone after OS update.

As I thought, WhatsApp tried to take the backup automatically on 3 AM like any other day, but it's not working either. Now I'm left with a possibly corrupt file msgstore.db.cypt8 (size: 103.62 MB). I read somewhere in here that there is a possibility of mending the corrupt backup and regenerating it afresh if the key can be extracted somehow. So is there any ray of hope for me?

PS: Mine is a non-rooted device.

The only one that can help for this kind of issue is WhatsApp. You may want to contact support@whatsapp.com (Source: https://www.whatsapp.com/contact/) and see what they can help you with.

  I just can't afford to lose my three years' important data.

This is the root of your problem. Any important data that you can't afford to lose shouldn't be stored as instant messages, you should have copied over any important data elsewhere.


Android 10 based LineageOS not rendering Indic languages I have tried going through many reference links for my below issue, but all of them are at least the pre-Marshmallow age so couldn't find a proper solution.
I have a Redmi 2 Prime mobile (2014 model) and I have flashed it with LineageOS 17.1 version (Android 10) (exact version is lineage-17.1-20200711-nightly-wt88047-signed.zip) along with OpenGApps pico version (open_gapps-arm-10.0-pico-20200725.zip).
The device came up fine, most other things which I have checked also is working fine, except for Indic language support. I am specifically looking for Malayalam (South Indian language).
When I try to add it in languages section, it shows the name of language itself as garbage (see item 2 in screenshot).
I tried adding GBoard and Google Indic keyboard, but when I select Malayalam->English, it says 'Your device does not support this language' (can be seen above the space bar of keyboard).
When I add Malayalam language (by typing in English and selecting the only option that comes), Google Play services is shown to check for some language support online but quickly stops and nothing happens.
I checked accessing a web page in this language in Google Chrome and it rendered nicely. But when I checked Malayalam version of Wikipedia, it is the same junk (both in Wikipedia and the Google search results for it)
Could someone help me with what I should try to get this fixed

At last I was able to add support for the language[Answering for the sake of others who might face this issue]. It seems there was some issue with the font I tried earlier( though it was looking fine in PC and was known to be working in other models of mobiles ). Steps followed

Downloaded relevant ttf and otf fonts to SD card
Rebooted to TWRP
Mount->Select System & External SD->Uncheck 'Mount read-only'->Select 'Internal Storage' for mount location
Press Home( not Back ). Clieck ADvanced->Terminal
In terminal, copy the fonts to /system/fonts/ using cp command ( The copy in Advanced->File Manager also might work, but I havent tried )
Mount->UnSelect System & External SD->Uncheck 'Mount read-only'->Select 'Internal Storage' for mount location
Reboot to system
Verify if font support is available by going to Settings->Language ( or browsing to a webpage with that language )

Many thanks for the support and the initial hint that this might be a font problem @Andrew


If your phone is rooted, can it still do normal factory reset? Like you wouldn't notice if it's rooted or not?

Yes, but unrooting will require more than a simple factory reset. The process will depend on your phone model. Search your model and 'unroot' for instructions. Be sure the instructions are for your specific model and are from a trustworthy source, such as XDA. But if you were able to root your device, I assume you already know that.


Apps and Interface looks different Why is Android on mobiles made by different companies different, and why do apps like Facebook also differ likewise?

The operating system on your phone isn't put there by Google: it's put there by the manufacturer of the phone (the OEM). Google gives OEMs the source code to Android, and the OEM has to integrate its drivers into the phone. The OEM can also make any changes to Android, as long as it still passes the compatibility tests (so that apps will run on it).

The OEMs like to use this facility to make changes, first to add their own branding, and second to add features they regard as "value add". OEMs want to differentiate their phones from their competitors this way. They don't want to become like PC manufacturers, who don't have as much ability to customize, because PC manufacturing has much lower margins.


bluetooth headphone can't pair I have LG e975 , android 4.1.2 and a bluetooth stereo headphone Pyle PHBT5  which supports A2DP.

The problem is that bluetooth can't find the device.

Is there something I can try?

You need to put the headset into a pairing mode. According to the manual, the procedure is as follows:

Turn the headset off
Press and hold the MFB (Multi-Function Button) for 6 seconds until the LED flashes red and blue alternatively and you hear a beep
Search for Bluetooth devices on your phone and select the PHBT5
Enter 0000 as the PIN if asked
When the pairing is successful and active the LED will flash only blue regularly


Does the Automatic away-status in Google Talk not function as it's supposed to? Using Google Talk on Android 2.2 on a Motorola Droid. Under settings I have the box for Automatic away-status checked. My assumption is that this would set my status to away when the screen is off as it states: Set status to away when the screen is turned off

However, this isn't the case. I've confirmed by walking over to a co-workers desk and it still shows me as available. I have Gmail closed on my desktop and it stays as available for ever, it doesn't just take some time to update.

Any ideas if this is a bug or is there a workaround? At the moment I'm just signing myself out when I remember to.

Although some have reported it as a bug, apparently the away status only appears after 10 minutes of idle time (defined as no use and the screen shutting off).


How do websites know if the device being used is an Android phone? I was browsing a website on Chrome on my Android 4.3 phone. The website immediately showed me a popup telling me to download its Android app. So my question is how does the website know what device the user is using? And is there a way to hide the identity of my device?

Generally, a browser will have what's called a User Agent which will tell the web site what browser is currently accessing the site.
These user agents will generally tell the website whether they are a mobile device or not.

A website can then serve up different pages or make pop ups show up when the browser that is accessing the website identifies itself as a mobile device.

Depending on the browser, you can tell the browser to present itself as a Desktop browser rather than a Mobile browser. On Chrome for Android, this can be done by tapping the menu button and ticking "Request Desktop Site"

Check out the this wiki article for some more indepth information - http://en.wikipedia.org/wiki/User_agent


Does the EVO 3d's 3.5mm head phone also support a microphone? My old Nokia had a 2.5mm headphone/microphone port. I've recently had that phone stolen and moved to a EVO 3D. It has a 3.5mm port: however, is this a compact headphone/microphone or just stereo headphone?

It is a headset (as opposed to merely headphone) port, tested using TRRS (tip ring ring sleeve) Klipsch Image S4i headset. Also, because of the peculiarities of the way HTC soldered the fm radio on the 3D, it apparently (I didn't test this, don't have any TRS headsets/don't care about FM) only works correctly with a TRRS cable.

You'll note on android, when you plugin a TRRS headset, the icon in the notification area is subtly different (it has a Mic boom under the headphones). If the notification area icon only has the 'phones and no mic, you probably don't have the headset plugged in all the way (happened to me with a case skin on my DInc) and music will sound kind of funny.

The pertinent HTC EVO 3d Forum entry


WebGL support - which browsers? Which browsers (and which versions) support WebGL?

In particular I am interested in checking Three.js examples, but I do not want to limit this question about a particular WebGL framework or a page.

General information

The website Mobile HTML seems to contain some information. It lists WebGL as supported by following platforms + browsers:

Android 4+ and Chrome 30+, with following comment:

  On Chrome 27-29 available enabling an experimental flag. On Chrome 30 it's enabled but on most devices you need to enable the flag 'Override software rendering list'

Opera Mobile 12+
Firefox (no version information)

There is no information about how complete the support is, the website claims:

  HTML5 compatibility on mobile and tablet browsers with testing on real devices

Other page where one can check support for HTML5 features is Can I use, which lists following for Android Browsers:

Opera Mini: not supported
Chrome 55: partial support
Firefox 50: partial support
Android Browser- Android 5-6.x WebView Chromium 53: partial support
Opera for Android 37: supported

Chrome support

As for Chrome, the WebGL was probably enabled by default in some later version. I am now testing on a Xoom with Chrome 49 and I can run even WebGL specific three.js demos like geometry / convex. When going to chrome://flags, the WebGL option described does not exist, there are only flags for enable draft and 2.0 experimental extensions. When going to chrome://gpu, I can see WebGL: Hardware accelerated.

Testing results on Motorola Xoom + Chrome 49

The support is really "partial", some three.js WebGL examples work (geometry / convex), some don't (geometry colors), some work, but run very slow (like 1 FPS in camera / logarithmicdepthbuffer).

When checking chrome://gpu, I can see many error messages logged starting with Shader translator allowed/produced an invalid shader unless the driver is buggy.


Icon issues in Google Play Store 4.8.20 I'm running Android 4.2.1 and recently the Play Store app updated to version 4.8.20 and since then I'm facing icon issues within the store.

Click for larger version

As you can see, there's a weird black background for every app icon, this is the case for every page within play store, all the icons have this kind of background. I once tried un-installing Play Store updates and fell back to pre-installed version 4.1 of Play Store, which solved the icon issues (but left me with older version of Play Store). And obviously, the Play Store again updated itself to latest version and I again have same issue.

Note that there isn't any such problem on my different Android phone (which is running Android 4.2.2 but has same Play Store version, 4.8.20).

I've tried clearing Play Store cache, App Data, and as said earlier, uninstalling updates (which momentarily solves the problem), but nothing seems to solve the problem with this version of Play Store, only option I haven't tried is hard resetting my phone, which I want to avoid.

Is this a known bug with this version of Play Store? what are the options I have to fix this?

Try uninstall updates from google playstore at your phone settings.Clear data and open it.Uncheck box"keep me up to date"...I know this is an older version but u can wait for the next update..


How to use "Automate" Android App to have newly taken photo is saved into DCIM/whatever folder not DCIM/Camera folder? I've installed "Automate" Android App which I thought that I can use it easily.
But it turned out I don't understand at all on how to use it.
I've read a simple tutorial on how to create "Hello World" with this app, but I can't find any where else a tutorial on how to do the things I want with this app.
I've read the "Automate" documentation, but I still don't understand at all.
My Android Camera phone will directly put the taken photo into DCIM/Camera folder.  So what I want is :

A. Either "automate" the newly taken photo into DCIM/whatever folder
B. Or "automate" to move the newly taken photo from DCIM/Camera folder into DCIM/whatever folder.

I've read in this site a question which is similar to mine :
How can I save taken photos and recorded videos out of DCIM folder?
But the question is about external-sd card and the answer is using Tasker App.
So if it's possible to do it with Automate App, I wonder how do I do it.
Any kind of respond would be greatly appreciated.
Thank you in advanced.

Both the Camera and Take picture blocks has a Destination path input argument field, click it and choose directory and filename where the picture will be saved.


How do I refresh/rescan the SD memory in Android 4.4 KitKat I received the official OTA KitKat update for my Nexus 4 last week and since then I have been unable to rescan the SD card.  I have tried a number of different apps for this task but all of them crash when being opened.  A bit of research shows a handful of users with the same issue.

These are the apps I've tried:

Rescan Media (Aditya Talpade)
Rescan SD Card! (sTOOPIDfiG)
Rescan SD Media Card (RADEFFFACTORY)
SDrescan (Benjamin Rosseaux) my old standby on Jelly Bean

Each app crashes when launched.  Is anyone able to refresh their SD memory on KitKat?

It won't work to detect deleted files, but I just put an app up on the Play Store that will work on new and updated files: https://play.google.com/store/apps/details?id=com.gmail.jerickson314.sdscanner

It uses a workaround inspired by Dan Hulme's answer: by using the API that is only for a specific file, but manually generating a recursive list of files on the card.  This requires only the read permission on the SD card, not root, and has the nice side effect of allowing a reliable progress indicator.


Where is android boot animation saved? When you start an Android device there is an animation showed, usually android, but sometimes the manufacturers logo. Where is this animation stored ? I have looked in the boot.img, but can't see it there.

The boot animation is normally located in /system/media under the name bootanimation.zip. This is a zip file containing one or more directories named part0, part1, part2 and so on, and a text file named desc.txt. The directories each contain a number of still images, jpeg or png, sequentially numbered, for example 0001.png, 0002.png, 0003.png and so on. The text file is a simple description of the properties, such as how many times to loop each directory, the pixel size of the images and the framerate. Like this:

width height framerate
p loop pause directory

For example
1080 1920 20
p 1 0 part0
p 0 0 part1

0 for loop means that it loops until the boot process is complete, and the pause is specified in number of frames, so with a framerate of 20 a pause of 1 would mean 0.05 seconds pause before moving on to the next loop or the next part.

Some manufacturers may use a proprietary file format, which may or may not have a different name than bootanimation.zip, so make sure that your current file uses the above format before replacing it with a custom one. If the boot animation is corrupted, the phone may boot loop or simply ignore the animation.

The file should be owned by root:root and have permissions set to 644 (rw-r--r--). It must not be compressed.


How to switch between viewing of two different pages of one PDF file easily For example, the pdf file could be a research paper or a book and it has a complicated diagram on page 10, and text in page 11, 12, 13 refers to this diagram constantly. Or page 100 has a complicated example and text in page 200 refers to the example in page 100. The example or the diagram is complicated in the sense that I cannot recall its details easily without looking at it. If I were reading this pdf on a desktop computer with a large monitor, I would open two windows side by side, one window displaying page 100, another window displaying page 200, and if the monitor was small, I would have two maximized windows and I would be Alt+Tab-ing between the two.

If I were reading this pdf on my Android smartphone while I was on a bus, what can I do to easily switch between viewing of page 100 and page 200?

A workaround I use for now is to take a snapshot image of page 100, and then switch between an image viewer (for viewing page 100) and pdf reader (for viewing page 200), and I wonder if there are better ways.

The Xodo PDF Reader can do this and I am sure other readers can as well. You can add any number of bookmarks and switch between them easily.

You can download it from here and you can find its website from here.


Two language on android I'm french, my system is in french.
I would like to be able to type english words without being bothered by the autocorrection.

How can i proceed ?

Edit: Free solutions please

If I remember well:

In the language and input settings click the settings icon next Google Keyboard.

You can then change the input languages settings and select multiple languages.

Finally go the advanced settings there should be a way to enable a key that allows you to easily switch your input method when typing (from memory it was by holding the space bar)

Bon courage!


Does Adobe Reader on Android support search-by-whole-word? I have an Acer Iconia Tab.

I would like to search some PDFs (RPG reference documents) for "whole words", as normal search doesn't properly find short words.

Is it possible with the Adobe Reader on Android? If so, how?

(Note: I just updated it a few days ago, and I can't seem to find any such option.)

Adobe Reader does not seem to have that feature.

Why not try ezPDF Reader? It supports whole word searches.


How do I flash to a newer Android version when TWRP has trashed recovery image and boot? Hi to all Android Enthusiasts!

I have done something stupid :D

Some website claimed that Cyanogenmod would not work unless twrp was installed. (ChristianTroy)

I had already rooted my device (Denver Tablet TAQ-80053 ARMv7 with Android 4.1.1) so I thought why not flash to TWRP with the file: "CWM-based-Recovery-v6.0.3.3-signed.zip"?
BAD idea :( I admit, this is a bit confusing since CWM and TWRP are not the same thing AFAIK. Could be another file .....

Now "Recovery Mode" is only the "TeamWin Logo" then BLACK SCREEN and nothingness ??

Everything else is working somewhat normal:
1) I can boot normally into the start screen of Android 4.1.1 and run applets etc.
2) I can connect to Windows 7 (x64) and get file access to everything.

But: Any flashing tool for windows (with ADB) cannot "see" my device, and I very much doubt it that the driver is the problem since I get full access to drives and files on the tablet (USB-connected to Windows 7 x64). Do you have any thoughts about that? To me it seems most logical that a working windows-driver would also work with ADB or am I wrong about that?

I also tried the ADB (Windows) installation with SDK etc. Everything installs fluently with no errors but when I do the "adb devices" command no devices are listed at all ?? The command "ADB Shell" returns an error.

Since I know about the settings needed on the tablet I have: set USB Debug Mode to ON and everytime I plug it in I select "Mass Storage Mode" to get file access from Windows; and it works fine.

As stated above, everything works except "boot into recovery mode" and ADB being able to "see" my device. Not even CWM Rom Manager can boot into recovery mode ??

I want to be able to flash a new OS but recovery mode seems to be the only way apart from the USB to Windows. I cannott accept the notion that the device is "almost bricked" just from installing the wrong recovery image and now I cannot go back .....
(backup got lost in the process).

I have discovered that I am not the only one with this problem but I cannot find any solution (that actually works) anywhere.

Last "development" is this: I UN-rooted my device trying to get back OTA. I think that made things worse :\

Q: Is there a way to "wipe and re-install" without ADB or Recovery Mode /Fastboot ??

/Pete

Update #1: I have tested ADB and FastBoot (Windows prompt) with two other devices, both Samsung Smartphones, and everything works like a charm. This tells us that it is definitely the tablet that's got a problem or two ;)

Upd #2: I found a log file in the cache folder on the tablet called "last_log" and one line got my attention: "TW_NO_REBOOT_BOOTLOADER := true" Isn't that a bit odd ??

Upd #3: Seems like internal sd is write protected. cwm boot manager and tw(e)rp manager cannot update files needed. bootanimation app works fine with root. that is so weird :-\

First off, make sure you have the proper ADB drivers. Use the PDANet ADB Installer. It should install the right version of ADB.

Next, you're going to want to enable Developer Mode. To do this, open up your settings app. At the bottom of the screen (you may need to scroll), there should be a Developer Options button. Open that up.

  If you do not see Developer Options, go into your About Tablet and follow these steps:

  Find the "Build Number" value.
  Tap the "Build Number" five to ten times. You should eventually see a toast saying "You are now a Developer!" or something similar.
  Exit out and go to the Developer Options menu.

In Developer Options, find the toggle for "Android  Debugging." You want this to be on. It will ask you for confirmation. Go ahead and give it.

Now, go back to your computer and run adb devices. You should see the device there. Download whatever ROM you want to flash, and place it on your device's SD card. If you need Gapps, place it there as well.

  If you still don't see your device, make sure your USB storage mode is set to PTP. Go to Storage in your Settings app and tap the menu button. Select USB Computer Connection and set to PTP.

After this, you're going to want to run adb reboot bootloader. This will place you into Fastboot mode, so that you can flash a clean TWRP.

Once you have downloaded a clean TWRP and gotten into fastboot mode, run this command from the folder that the TWRP image is in (it may be helpful to move TWRP to the folder fastboot.exe is in):

fastboot flash recovery your_recovery_image_name.img

Give it a couple minutes, and your recovery should be installed. Reboot into TWRP using the Bootloader.

  If the bootloader has no such option, let the system boot into full Android and run adb reboot recovery.

When you're in TWRP, you're going to want to install your custom ROM. Consult the ROM creator for instuctions on how to do this.


How to boot Ubuntu persistent live USB on Android? I'm discovering the possibilities offered by persistent live USB using Ubuntu 19.10 and I was wondering if it would be possible to boot with Ubuntu on Android (i.e. using your computer capabilities through your smartphone) using those multi-plug USB sticks which have both USB3 and micro-USB2.

In other way: can I get some kind of a boot menu on an Android device in order to boot with a persistent live USB in order to access my Linux computer tools and setup from a wider range of devices?

Near duplicate: Is it possible to boot an Android phone from a USB drive?

You question has two parts:

1. How to boot from USB on Android device?

On most of the recent Android devices you can't boot even Android from USB, rather Ubuntu or some other OS.

PCs:

PC world has a standardization. BIOS / UEFI, ACPI and discoverable buses make every PC almost identical to the OS, so we can boot any OS. BIOS lets you select boot device, loads bootsecotor / MBR and bootloader which loads OS kernel. UEFI Boot Manager is even more sophisticated, it can read filesystems and load one of multiple BLs or even Linux kernel directly from EFI System Partitions (ESP).

Multiboot compliant BLs can load multiple OSes. Windows BOOTMGR and Linux GRUB can also chain load each other. Latter can act as 1st stage BL (MBR/VBR) as well as 2nd stage (GUI boot manager which reads configuration from filesystem). See Boot Process: Android vs. Linux

Phones:

Phone's world has a lot of fragmentation. They are based on SoC design, so every vendor implements its own closed-source firmware. Non-enumeration-capable buses depend on Device Tree, which is stored on flash storage as blob (DTB), and loaded by final BL (like U-Boot, LittleKernel / Aboot) and Linux kernel. So SoC firmware has to bootstrap the device to BL stage so that it's able to identify hardware.

Image source: Exploiting Qualcomm EDL Programmers

SoC firmware cannot boot from a generic MBR/VBR or filesystem, instead it has hard-coded paths to partitions containing BLs. Also the strict Chain of Trust in boot process loads only signed binaries, unlocked BL can break this chain. See Rooting Android phone without unlocking BL, VB and AVB.

However final BL allows somewhat interaction with user to boot fastboot, or Linux kernel from boot or recovery partition. Both partitions don't have filesystems, but a standard raw format as per Android specifications.

Conclusion:

So due to small size, non-standardization, closed-source / signed nature of firmware and minimal functionality, SoC firmware + DT + Aboot setup is no way comparable to BIOS / UEFI + ACPI + GRUB setup. Functionalities like USB communication and graphical selection menus would make the BL kernel bigger than the by-design acceptable size limit. Note that "on embedded ARM platforms the core of LK is typically 15-20 KB."

However SoCs can boot from USB, particularly those used with development boards or single board PCs. See Difference between BootRom and BootLoader.

EFIDroid is a 2nd stage BL based on UEFI (EDK-II). Currently it replaces kernel in boot partition (like other multi-boot hacks), not the original BL.

But we may see (SoC firmware and/or) some (or all) BLs being replaced with UEFI and Device Tree with ACPI (particularly on ARM as it's not very unlikely). It'll make booting from USB devices on mobile phones more probable. For instance Qualcomm's Sanpdaragon 835 already has its SBL replaced with UEFI-based XBL (which also supports ACPI on Windows) and Aboot with ABL. See UEFI on ARM-V8  based Linux Embedded System.

2. How to boot Ubuntu on Android device?

On Android devices it's not possible to boot Ubuntu even from SD card or internal flash memory, rather USB.

Hardware Discovery:

Generic OSes like Ubuntu are not modified for a specific hardware environment. On an ACPI compliant system, after power on, OS may immediately start querying buses: "what hardware is attached to you?", which is not the case with DT based devices. See The case of UEFI for Windows on ARM.

Similarly on PCs Power Management is looked after by ACPI while on phones PMIC is usually a part of SoC - again hardware specific.

Kernel:

Ubuntu userspace is not compatible with Android kernel as latter is largely modified e.g. Paranoid Networking, qtaguid, USB gadgets etc. It's theoretically possible to boot Ubuntu kernel from boot.img e.g. using fastboot, or load it by Android kernel using kexec. However even bigger problem is vendor's incomplete implementations of hardware drivers in kernel, which are not part of upstream kernel source (the one used by Ubuntu). Running console login and traditional X server etc. might not be easy to achieve, see Android vs. Linux.

Binary Blobs:

Android is not strictly based on UNIX's "Everything is a file" theory. Mainly due to license issues, a lot of hardware work is managed by (again) closed-source vendor specific HALs which act as bridge between Android's native/Java framework and kernel e.g. sound, graphics, RIL, fingerprint, camera, sensors and so on. Since Android 8, HIDL (based on Binder IPC) specifically separates vendor-specific binary blobs from AOSP as well as Linux kernel.

Hardware Abstraction:

In addition to binary blobs, AOSP userspace daemons like surfaceflinger, audioserver and gatekeeperd also interface Java stack (which runs apps) on one end, and kernel or HALs on other (which interface hardware). So every hardware component is not simply a file in /dev with well documented kernel interface, instead there are layers of Android-specific IPCs and APIs between apps and hardware.

This model enables AOSP Java framework to be agnostic about lower-level driver implementations, and restricts apps direct access to hardware resources. Apps need manifest permissions to pass through protected APIs in order to access a system resource including storage, network, camera, mic, sound etc.

Partitions:

AOSP depends on a few partitions like /system and /data but HALs need more. On Qualcomm devices vendor daemons like sensors.qti, qseecomd, rmt_storage and wcnss_service read and write to raw block devices (e.g. ssd, rpmb, fsg) and filesystems (e.g. modem, persist and dsp). So camera, sensors, TEE, Wi-Fi, bluetooth, fingerprint, aDSP etc. won't work without extra partitions. SoC, processors, modem, TZ, RPM and BLs also use other partitions for boot process, OTAs, recovery, secure boot, encryption, boot/charging logo and so on. Read more about Android Partitions and Filesystems.

So it's not possible to boot an OS entirely from a single partition. PCs can be started if there is no storage device, but Android devices won't turn on if eMMC / UFS is damaged. Hardware-specific partitions are required at pre-kernel as well as post-kernel stages. That's why Android devices are more vulnerable to be permanently bricked.

Conclusion:

On Android phones there is no generic Android OS, instead we have ROMs which are tightly bound to a specific hardware. So booting Ubuntu on Android device requires integrating all hardware-related vendor code in Ubuntu kernel and/or userspace.

LINKS:

Why don't Android hardware manufacturers build to a common BIOS specification?
Device Tree: What It Is?
Engaging Device Trees.pdf
U-Boot on Arm32, AArch64 and beyond
Nvidia Tegra Boot Flow
LK BL Overview.pdf
Booting Android (Slides)
Comparison of bootloaders
Android HAL and Device driver architecture


Do battery saver apps really work? Is it possible to save battery programmatically? There are numerous apps in the Google Play store claiming to double or triple the battery life. Is it just a myth? Or can they really?

If they really do save some power, why doesn't Android do it by default?

Those battery saver apps probably work by killing tasks, lowering brightness, disabling data or internet connection, and several other things. Those little things will definitely save battery one way or another.

Why doesn't Android do it by default? I don't know; you'd have to ask the Android developers that. If Android did what battery saver apps do, they'd be limiting Android. Who wants their screens to always be in low brightness? Or their internet connection off when not in use? Those things are probably better off for people to decide, and battery apps (and other relatated apps or utilities) will help them do that.

See also this post on improving battery life: What can I do to increase battery life on my Android device?


How to restore an encrypted SD card backup after factory reset? I did a factory reset and then realized that I didn't decrypt my SD Card. I know that the data is probably lost, but I did make a complete copy of the Internal Storage.

Is there a way to copy back to the phone, the encryption key? I also know the password I used to generate the encryption. Where is the encryption key file located?

Edit: I made a copy of Internal Storage folder connecting the Samsung J5 mobile to a PC, but I can't find /data/misc/vold. What am I doing wrong?

The encryption key should be located in /data/misc/vold. If you backed up that directory, you should see a .key file with a long name inside. Open that file with a hex editor, and copy the 16-bit key. You can decrypt your storage using this command in a Linux distribution:

dmsetup create crypt1 --table "0 `blockdev --getsize <your device ID, ex:/dev/sdb>` crypt \aes-cbc-essiv:<key you copied> 0 <your device ID again> 0"

Source of the command


Power consumption of audio over OTG cable I recently found that if I connect a USB pair of speaker/microphone using OTG cable to a phone, it becomes the audio device by default, and I can actually play audio over that. It happens that the USB headset has much better quality than the earplug ones that I connect over audio connector.

My question is, if I use this OTG-USB-Headset trick, will it drains the battery faster than just having my earplugs connected on the audio connector?

What you have tried now is known for long as you can see from Google search - connecting usb headset to usb on the go

USB on the go wiki (see Protocols section) talks of ADP and SRP protocols relevant to your usage, to conserve on the mobile battery power - translated what it means is that power is drawn from the mobile battery and not from the USB headset, even if it has battery source

  .... will I drain my battery faster than just having my earplugs connected on the audio connector ?

Depends on the power rating of your USB headset- if it is more than the earplugs provided by the phone (common case), then yes it will drain faster

Additional Information

See avs forum for more insight for audio use case
Maxim integrated application notes for electrical details


Disable all in-app browsing while keeping Chrome as default browser In previous versions of Android, in-app browsing was facilitated using WebView (1). Disabling in-app browsing system-wide could be achieved by uninstalling the WebView app (2).

Recently, an in-app version of Chrome, called Custom Tabs, took over the WebView app (3, 4). This meant the previous trick no longer worked.

How to disable in-app browsing has already been discussed previously (5). However, the answers included uninstalling Chrome and, thereby, uninstalling Custom Tabs.

Is there a way to keep Chrome as the default browser, while also disabling in-app browsing? Clicking on links in certain apps would, then, result in the full Chrome app opening and rendering the webpage.

You need to know this before disabling all in-app browsing,
In-app browsing is a required component by built-in requirements in order for web functions to render properly, as described by Google:
Android WebView is a system component powered by Chrome that allows Android apps to display web content. This component is pre-installed on your device and should be kept up to date to ensure you have the latest security updates and other bug fixes.
So there may be a chance that if you disabled in-app browsing and the Android System WebView, while Chrome as the default web browser, some web components may start failing to function properly.


Multi window is disabled after upgrading from 4.1.2 to 4.2.2 Multi-window icon is disabled after upgrading samsung galaxy tab from 4.1.2 to 4.2.2.

Screenshots (click images for larger variants)

Anybody fixed this problem ?
Any idea how to fix this without doing a factory reset ?

A factory reset seems to work for some people. You might want to back-up your files / data before doing this.

Source: Problems with Jelly Bean 4.2.2 update


How to send an encrypted s/mime e‑mail? Simple question, but I couldn’t find the answer anywhere…

I need to send encrypted e‑mails through using s/mime (talking about security, even most of metadata should be unknown). The problem is I’m not part of Google app organization (and I don’t need it since it’s not free).

How do I configure Gmail or the Samsung e-mail app to use the CA trusted certificate (which only contains public key) I installed on the device for sending enciphered e‑mails through s/mime ?

I also need to manually select the certificate which will be used for encryption (The company generate the paid certificate for me so it match my e-mail address and not company one).

For the Samsung email app (on my Galaxy Tab A anyway) you need the following
▪An exchange activesync account - for some reason s/mime is not enabled for any other email type
▪Your public and private keys for your exchange account as a PKCS#12 cert uploaded to your tablet already or in your download directory ( root/sdcard/Download directory ) ready for import.

Go to the email settings > exchange account > security options screen and select the encryption certificate option then import. It should show you the PKCS#12 file and let you select it, enter any needed password and import it to your keystore with a friendly name of your choice. Repeat for the signing key - typicallly this is the same PKCS#12 file.
Set it to sign all outgoing mail if you wish - that'll help distribute your public key and maybe raises peoples awareness of s/mime.
It's probably not worth encrypting all outgoing messages by default as you'll get a warning for each recipient that you don't have their public key.

Send yourself test signed and then encrypted emails to prove this is working - preferably using a second device to test thoroughly. The three-dot menu on the send email will let you pick security options to sign and encrypt for individual messges.

The next stage is to try to exchange signed email with other real contacts - if you've defaulted to sign all this should just happen and they should be able to validate the signature.

The last stage is to send them an encrypted email, for that you need their public key / cert. If you've been exchanging signed email you should have it - hopefully you're also using exchange contacts and their record has their key else you'll need to add it from a received email.

Slightly concerning that you say the  recipient has a copy of your private key - this should never happen as your private key should always remain private to you. Officially you should revoke you key and get a new one. The practical upshot is things will get very confusing as to what's going on if you've got keys mixed up between public and private and sender and recipient. Good luck.

I don't think Samsung mail lets you easily swap your certs either - you can go into settings and change them but unless youre doing something interesting you should only have one email address on your exchange account.If you're trying to use encrypted group email I don't think Samsung email is going to help, and I don't know of any other mail client that can either.


Dialer from lockscreen What is needed to access a phone dialer from the lock screen, without unlocking?

Resultant dialer app wouldn't show Contacts, just be able to dial phone numbers directly.

I love being able to sync calendars and play games and all that, but really this thing is (supposed to be) a phone first. Unlocking, opening a dialer, searching contacts, and then making a call is such a pain compared to my old "dumb" flip phone.

Non-root method preferred, but if that's the only way to go it'll have to do.

There is "Simple Dialer Widget" on the Play Store. By description and some popular blog posts it fits the bill perfectly, up to KitKat.

After install Simple Dialer can be configured to all or a portion of:

Dial number pad
Favourite Contacts, Contacts with numbers, or All Contacts
Call history (log)

...on a home screen widget.

From Android v4.2 to v4.4 KitKat the widget can be added to the lock screen as well, but in v5 Google did away with lock screen widgets altogether.

Caveats: Simple Dialer was acquired by My Color Screen and there hasn't been an update posted since 2013. Some reviews in 2014 report excessive CPU use and battery drain; perhaps an interaction bug with newer android versions.


Does Android's "Data Usage" also count uploads? As per my question above... does the data usage that came into existence in ICS count uploads as well as downloads?

Yes, there's an API for that (the class is android.net.TrafficStats). It was added with API level 8 (Android 2.2).

As you can see below, it offers both Rx and Tx bytes in total, only accounting mobile or per app (added in API level 14, note that with an equal UID count as one). This is an excerpt, see the link below for all methods.

  static long getMobileRxBytes()
  static long getMobileTxBytes()
  static long getTotalRxBytes()
  static long getTotalTxBytes()
  static long getUidRxBytes(int uid)
  static long getUidTxBytes(int uid)
  ...

API-Source: http://developer.android.com/reference/android/net/TrafficStats.html

Implementation for the "data usage" view: here

final long foregroundBytes = entry.rxBytes + entry.txBytes;

PS: The carriers also count UDP traffic that just leaves their end but never arrives, such as rtp streams where the phone loses the carrier but the whole video gets streamed anyway.


Can't I change the sound volume with the screen locked? When I'm listening to my podcasts, with the screen locked and turned off, isn't there a way to enable change the sound volume (with the physical volume buttons)?

--update

I'm on a Motorola Razr D3.

That most likely depends on what phone and interface you have. On, say, a Galaxy S3 with the stock TouchWiz UI, when music is playing in the Samsung player or in Google Play Music, the volume control is enabled at the lock screen. On some other devices, it may not be possible. May I suggest editing your post to include which phone model you have?


Disable screen lock on samsung galaxy pocket gt s5300 i have forgotten the screen lock on my galaxy pocket. Right now my phone its unlock, but i want to disable or change screen lock pin and i cant remember the pin a.set before. Please help how to remove it complete it, I have setted up the screen display up to 30 minutes so the screen doesnt lock.

Simple way to remove the screenlock : No Lock

If you have forgotten your screenlock, there is an option on the loack screen for it where youc an verify your google ID that was used to setup the phone and your google id password! It will take you to reset from there. Just remember you need internet for this.

UPDATE: I realised it doesnt answer your question on how to disable it!
To disable it you would need to enter current pattern!


Enable Wi-Fi tethering via Bluetooth? Bluetooth uses low power, and hence I keep it enabled indefinitely for whenever I want to tether with my laptop.

Wi-Fi is much faster and thus I prefer it over Bluetooth, but I can't keep the access point enabled indefinitely as it drains my battery too quickly.

Is there some way for me to enable & disable the Wi-Fi access point via its permanent Bluetooth connection to my laptop so that I can get faster tethering without having to keep the Wi-Fi access point enabled (and without having to touch my phone to enable/disable it)?

Performing actions whenever a certain Blutooth device is in reach and paired (and reverting them when it gets out of reach) can be done e.g. with tasker (see the tasker tag-wiki for details on the app):

Condition: BT Connected (parameter: name or address of the device)
Task: WiFi (parameter: On)
Exit-Task: (optional; Tasker should revert automatically to the previous state when the condition is no longer met) WiFi (parameter: Off)

This would similarly work with NFC when using the NFC plugin. More features are also offered by other plugins. Also see my Collection of Tasker Ressources for tutorials and available plugins.


Ext4 partition clockworkmod recovery backup Successfully installed CM7 on ZTE Blade and simple2ext (S2E) made me excited.
I've partitioned my SD in CWM recovery and I guess it was Ext3 partition.
But one thing was mistake. I have checked in S2E checkbox says mount sd-ext partition as Ext4 and everything was okay until I wanted to make backup from recovery.
All part passed succesfully but /sd-ext and I've googled this thread says:

  "clockworkmod doesn't support ext4 on the blade. ext3 works."

Unticking that checkbox makes all unworkable.

What can I do now to make ext-partition to ext3 back and backup it succesfully by recovery?

At this moment I want to make wipe or hard or factory reset to check something with clean android installation and then go back to my phone's current state.
Maybe it's no need to make partition from ext4 to be ext3?

ROM: CyanogenMod-7.2.0-RC1-blade-KANG (2.3.7 by BurgerZ)
Kernel: 2.6.35.7-perf+

Most secure way:

Backup all apps with their data with TitaniumBackup. Backup all data from sdcard.
Delete some apps to free space on device's memory.
Check if all transfer-checkboxes in s2e are available now. If not - free up some more space.
Transfer ALL apps, data etc back to device's memory in s2e.
Format sdcard again with setting sd-ext partition size bigger or equal than current.
Restore all data to sdcard.
Reconfigure s2e WITHOUT ticking "mount as ext4" option!
Restore all apps in TitaniumBackup.

Please, be very careful. I'm not responding for any damage or data loss.

Please, correct me if something missed or excess here.