How Android's permissions mapping with UIDs/GIDs works? Reading the book: Android Security Internals I'm reading at Chapter 2 - Permission Management paragraph that permissions are assigned to application at install time by the package manager with a mapping like Apk's UID <-> Permissions.

Later in the book (Permission Assignment - Permissions and Process Attributes paragraph) I read that

  If additional permissions have been assigned to the application, they are mapped to GIDs and assigned as supplementary GIDs to the process.

And, since android.permission.INTERNET permission is associated with inet GID:

  any process for an app that has been granted the
  INTERNET permission is associated with the supplementary GID correspond-
  ing to the inet group

But I was asking me if this is always necessary.

Imagining a case where you install APK X declaring android.permission.INTERNET permission in AndroidManifest.xml, since mapping of permissions with UIDs is done at install time, PackageManager should be able to map the permission directly with the APK's UID instead of adding inet GID to your APK package. So I'm wondering why it has to be that:

  any process for an app that has been granted the INTERNET permission is associated with the supplementary GID correspond- ing to the inet group

Anyone can clarify me this?

Android's permission management can be divided majorly in two parts: Linux kernel and Android framework.

DISCRETIONARY ACCESS CONTROL:

Discretionary Access Control (DAC) based on users, groups and access mode predates back to early days of UNIX. Every file (including directories) and process has a user owner (UID) and a group owner (GID). So a process is allowed to Read Write and eXecute a resource depending on its access mode bits (RWX) for User, Group and Others (UGO). These permissions attributes are saved along with files on filesystem.
UID/GID 0 is special for Linux kernel; it's the super user (administrator) that is never denied from doing anything. All other users in range 1-65534 are non-privileged IDs which an OS can use in whatever way it wants to control access.

Android reserves UIDs in range 1000-9999 for system use unlike Linux distros where 1000 is usually the first UID assigned to human users. Android is designed for single human user but every Java app, whether preinstalled (as system or user app) or installed by user, is treated as a user. UID range 10000-19999 is reserved for these apps. At first boot (for preinstalled apps) or when installing a new app, a unique UID/GID is assigned to the app which is static unless the app is uninstalled. This app vs. UID mapping can be seen in file /data/system/packages.list or using command id (1) if the app provides a shell or can execute native binaries.

All of these UID's have hard-coded names on Android which are predefined, unlike Linux distros, where there are almost standardized naming conventions for users and groups which can be added / removed in /etc/passwd and /etc/group. Android shares only root user name with Linux. However these names are only for the ease of human users, for kernel only numbers (UID/GID) mean.

Access Control Lists (ACLs) can be used to extend DAC for more granular privileges but those are rarely used on Linux and (AFAIK) not used on Android.

LINUX CAPABILITIES:

Root user's authorities are further divided into subgroups called capabilities. Instead of using UID 0 whenever an elevated task is to be performed, a non-privileged UID can be granted only the required capability. File capabilities which are attached to files using Extended Attributes (XATTR), can also be used to elevate process capabilities whenever required. Android makes use of File Capabilities as well as Ambient Capabilities. See this thread for more details.

MANDATORY ACCESS CONTROL:

Mandatory Access Control (MAC) was introduced later to supplement DAC for better security. Android uses SELinux as part of its security implementations. SELinux also makes use of Extended Attributes to label files with a context while every process is also run with a SELinux context. Then a policy is defined which includes thousands of rules allowing one context access the other, denied otherwise by default. See this answer for more details on SELinux and an example how Android makes use of DAC, capabilities and MAC.

By making use of Linux kernel's DAC, MAC and capabilities, Android launches every app in a sandboxed virtual machine forked from zygote process, with its unique ID and with all capabilities dropped, so that forced to access only it's own files in /data/data/<app_pkg_name> or in external storage. See this answer for more details.

MANIFEST PERMISSIONS:

To have a further fine-grained control of system resources, in addition to Linux's access control mechanisms at kernel level, Android enforces it's own Manifest Permissions to installed apps within its core framework. These permissions are of three types: Normal, Dangerous and Signature.
All normal permission are granted to a requesting app without human interaction. For instance a user can't restrict an app from accessing internet if the app is requesting android.permission.INTERNET. Some of such permissions are controlled by using third party tools.
Dangerous permissions - such as READ_CONTACTS - aren't granted to an app without user's approval. Some of Signature permissions treated as Special permissions - such as REQUEST_INSTALL_PACKAGES - can also be controlled from Settings app > Apps & notifications > Advanced > Special app access menu on newer Android versions.
Additionally some of the permissions for which user doesn't have independent control such as GET_ACCOUNTS, or the operations which don't have corresponding permissions at all such as RUN_IN_BACKGROUND, can be controlled from a hidden permissions manager of Android: AppOps. But this is meant only for OS use and not for end users.

PERMISSION CHECKING AND ENFORCING:

Permission preferences are stored by Android Package Manager in different files such as /data/system/packages.list, /data/system/packages.xml, /data/system/users/0/runtime-permissions.xml at app install time or at runtime. These permission checks are then enforced on multiple events such as when accessing intents, starting an activity, sending/receiving broadcast, accessing a content provider, starting/binding to a service etc.

Though the whole permission checking and enforcing process happens under zygote in which ActivityManager and PackageManager - which are part of system_server - play major role, the core framework doesn't handle every permission check on its own. It again takes help from kernel to make permission checks more robust and efficient.
For instance READ/WRITE_EXTERNAL_STORAGE permissions are enforced through UIDs/GIDs by bind-mounting different views of Storage in a mount namespace for every app. See this answer for further details.

PERMISSION <--> GID MAPPING:

Another special case where Android relies on Linux kernel for permission check is android.permission.INTERNET. As stated earlier, only UID/GID 0 is special for standard Linux kernel. However Android applied a special patch PARANOID_NETWORKING to Linux kernel which maps certain capabilities to certain group IDs in range 3000-3999 making them special. One of those is INET (3003) group which allows its members to access internet (create PACKET sockets) which isn't possible without capability NET_RAW otherwise. All permission <-> GID mappings can be found in file /system/etc/permissions/platform.xml.

Coming to your question:

  since mapping of permissions with UIDs is done at install time, PackageManager should be able to map the permission directly with the APK's UID instead of adding inet GID to your APK package

So the answer is, PackageManager doesn't handle android.permission.INTERNET on its own. It just adds the app to INET group and saves the configuration. Let's take example of Termux:

~# grep termux /data/system/packages.list
com.termux 10142 0 /data/user/0/com.termux default:targetSdkVersion=28 3003

Next time the app is launched with 3003 in its supplementary groups so that kernel doesn't restrict the app from accessing internet when enforcing DAC:

~# ps -p $(pgrep com.termux) -o cmd,uid,gid,supgrp
CMD                           UID   GID SUPGRP
com.termux                  10142 10142 3003,9997,20142,50142

SOURCES:

Dissecting Android Permissions
Android Application Launch explained
Configuring DAC on Android


What settings does Sprint Gingerbread (2.3) update reset? After installing the Gingerbread upgrade on my EVO, I noticed that my alarms have been reset.  Now I'm wondering what, if any, other settings were reset or changed.

I have not been able an official list anywhere.

Which settings get changed or reset with the Sprint Gingerbread update?

As far as I'm aware, there really shouldn't be any other settings which are affected by the OTA. In fact, Android Central has a thread where people are compiling a list of new features and apps along with reported issues and bugs. They've put this (losing your alarms) in their list of bugs. It looks like it also broke Netflix and Wireless-N support, for what it's worth.


Changing default phone for Google login device So the following annoying thing happened to me. I wanted to print some documents at my local printer shop from my Google Drive.

However, Google decided I can't log in because it doesn't recognize my device. It wanted me to go to my phone and get a security code.

However, I didn't have the phone Google thought to be my default phone (Android device) and didn't allow me to choose my other phone, which I actually use (an iPhone).

Just like that, I was locked out of my own account, unable to print anything. So my question is:

Where can I change my default phone so it sends a push confirmation to my iPhone when I log in from an unknown device instead of the Android?

Go to myaccount.google.com, sign in and click on Sign in and Security.

Scroll down and go to Account Recovery Options and click on Recovery Phone

Add/remove the phone numbers according to your preferences.

Then go back, scroll down and click on Recently Used devices and remove all the devices that are not in use. If your Iphone is not displayed here then make sure that you've signed in in your IPhone with Google Account.


Proximity sensor always 0 or 9cm. Could this be a hardware or software problem? The proximity sensor on my phone always gives a distance value of 0 or 9cm (using both Z Device Test and CPU-Z). In sunlight, the sensor gives a reading of 9cm. Anywhere else (in shade, indoors, etc) the reading alternates between 0 and 9cm, and rather quickly. In intervals of about 2 seconds. If I cover the sensor with my thumb then reading is 0 as it should be. Soon as I remove my thumb the screen begins to flash.

I have tried using Resound Proximity Sensor to calibrate but failed. Could this be a software problem that I could fix myself?

This depends on the device. There are devices that have more accurate sensors, which can display the distance in cm correctly, but some sensors only report the distance as "near" or "far". If your device only gives the two states, Android uses the sensor's maximum detectable distance as the "far" state (in this case, 9cm) and 0 as the "near" state (which translates to 0cm).

Source: Position Sensors | Android Developers


Final Fantasy VI Timed out, crashes on start I get the following errors when trying to start Final Fantasy VI on my Galaxy S5. Running stock rooted rom. I have cleared the cache, I have uninstalled/cleaned all traces from my phone, then installed again, I have flashed other roms. I have not tried on another device, as I do not have access to another S5. My Note 2 runs it without issue. Logcat for this package is located below. I have tested by disabling samsung smart face as you see it does have its onReceive in the middle (trying to eliminate variables.)

Thank you in advance!

I found a few things that helped. I was able to get it to work by flashing stock with oden, reflashing my rom, then downloading the game. I was able to reproduce the issue when I backed up FF VI via titanium backup then recovered it. This seemed to cause this issue until the system was cleared. I will do some more testing to see what in the system needed to be cleared before it would work.


Stop Android GMail from receiving GTalk offline messages notifications? I've been trying to find a way to stop getting notifications on my phone when I receive offline messages to my GTalk account. It's highly annoying to be falling asleep and suddenly receive an email notification on my phone and once I open it, it's someone saying good night or some such.

Anyone know of a possible solution?

If you still want them to show up in your inbox, things get complicated.  You would have to create filters to label every kind of message you do want notifications for, and then in the Gmail app you would turn off notifications for the inbox, followed by syncing and turning on notifications for the label you just created.

If you don't care if they show in your inbox, do the following from the web GMail:

Go to Mail Settings -> Filters -> Create new filter
Put youraddress@gmail.com in the To field
Put Chat with in the Subject field
Hit Next
Check Skip the inbox
Hit Create Filter

Alternatively you could turn off the saving of chat history, which disables offline messages, but that has its own downsides.


Choppy Droid X2 720p Video Recording When recording video through the Camera app to my external microSD card, the video starts to become laggy and choppy, which results in the file becoming corrupt. This only seems to happen when I'm recording to the external SD card and when I'm recording in 720p. I'm using the stock card that came with the device.

Does anyone know what the possible problems could be?

It seems that that the card write speed is unable to keep pace with HD Video writes on the card. Try using a SD Card with a faster write speed. Also try to use use the same stock SD card in any other mobile with the same HD Video Recording (same bit rate, same resolution) to see if it works there properly. If it fails there too then surely it's a problem with the card only.


How can I teach my phone not to capitalise "It's" every time? I'm using the standard full QWERTY on-screen keyboard on my HTC Desire S, and when typing in to any app it seems that I cannot type it's without manually inserting the ', which is relatively slow and cumbersome, especially considering many other abbreviations work fine (eg, c, a, n, t -> can't).

If I type i, t, s then the default word that is presented is its, but in the word selection list I am presented with It's as a second choice; always capitalised. it's is not presented as a choice anywhere in the list of suggestions.

The phone seems to only capitalise anything else following a full stop or new line, and gets many other abbreviations correct, so why the misbehaviour for it's? And how do I fix it?

I've already tried adding it's to the dictionary (and checked that It's isn't there), but that didn't work.

It seems that asking this question has encouraged me actually make a proper effort to poke around the phone's settings enough to find a workable solution, which is to enable Spell correction for the QWERTY keyboard word suggestions / predictions.

The option is enabled in the location:

Settings
Language & Keyboard
Touch Input

Text Input

QWERTY section

Spell correction

Now, typing i,t,s mid sentence will produce the suggested words its, Its, it's, which is pretty much acceptable for me. it's might be third, but it's listed and that's what counts!

I don't know if this is a common problem or if the default setting for Spell correction is on or off, so I don't know what the cause of the problem was, but at least it's sort of fixed.


Can't launch Android Auto, keeps asking to enable drawing over other apps Within the past couple of weeks or so, I've started having an issue with Android Auto not launching when I connect to my car's Bluetooth.  Whenever I try launching Auto, it shows a dialog instructing me to enable drawing over other apps.  I hit the continue button, it takes me the setting, and it's already enabled.  Returning to Auto, it's still asking for this permission.  If I hit the "No Thanks" button, the app just exits, meaning I can't even use it in a diminished capacity.

I've tried a number of things already, from disabling the setting and re-enabling it, to uninstalling and reinstalling Android Auto.  None of it has worked.  I don't remember getting a system update in this period of time, but it's entirely possible (even likely) that Android Auto received an update that somehow broke it.

What do I need to do in order to get Android Auto working again?

Check all the other permissions that Android Auto might need.  For me, the notification access permission was disabled for some reason, but Android Auto never took me to that setting until after I rebooted.  There are instances where apps need some permissions toggled off then on again in order to work properly after an update.  For instances, after updating LightFlow, the app gets me to toggle notification access off and on.


What does "Ignore messages like this" do? How do I see what I've ignored? When I tap and hold on a notification in the notifications list, I get an option to "Ignore messages like this." I can't find any explanation, though, of what this means. Does it really mean, ignore all notifications from this app? Or does it mean, only ignore messages like this one from this app? (i.e. can one app have multiple "channels" or types of notifications?)

And the other side of this - where can I see what messages I have chosen to ignore, and possibly undo it, if I once again want certain messages?

UPDATE: In CM settings there's a "Notification Filter" screen that lists all notifications that I've chosen to ignore. (Settings > Privacy > Filter Notifications in CM11.) I still don't know what the filter does, though - it hasn't seemed to keep me from seeing any notifications.

(I suspect that this feature only blocks you from seeing notifications whose source and content exactly matches a past notification, but I can't confirm that so I don't want to post it as an answer. Can anyone confirm or deny?)

After some testing, this feature seems to hide future notifications when the same app shows a notification with exactly the same text again in the future. This means you can't filter messages like [filename] download completed from the download manager, [app name] installed from the app store, or Level up! You are now level [number] from Google Play Games, since they have changing content.

As such, its usefulness seems pretty limited. There's no good way to choose which notifications you get from most apps, unless the app has those options built-in.


Calendar app gone after flashing I have installed an ICS leak from my carrier (rom created by Motorola signed by my carrier but not released) and the calendar app has gone, I reinstalled the ROM from 2 different download sites and nothing, no one complains about this issue at all, some others just compalin some events don't appear but they have the app o.0

What can I do?

The Official Calendar app, just like Google Maps, YouTube, etc., has been an independent app from the Android Stock ROM and published on Google Play.

Which means you can just download it via Google Play


Top draw stopped working. 'No notifications'. Gear icon for settings also is gone I have an HTC One M8 running Marshmallow 6.0, kernel 3.4.0-perf-gd7aafa47 and build MRA58K.H15, unlocked bootloader but non-rooted device. The device is a tab over 2 years old now, and the system has been shutting down on its own when the battery charge gets closer to 10%.  Yesterday, after charging up and powering on, I've noticed no more notifications are shown.  The sounds are played, but no icons are displayed at the top left. Further, when I try to draw down to see more information, nothing other than 'No notifications' message displays.  Also noticed that the gear icon on the top right has disappeared, I actually have to go the long route to access settings now.  Another thing I've noticed is that the 'developer options', which were always enabled, now display '...not available for this user'.  I've tried wiping the cache partition, but that made not difference.

Any ideas?

If you are not getting notifications from the apps you locked,check in that app lock settings whether you ENABLED notifications from apps under lock .


ADB Sideload without custom recovery Is it possible to use ADB Sideload without custom recovery? For this case on Samsung Devices SM-T211?

I've read in many article to access ADB Sideload we need go through recovery mode and activated sideload mode using either CWM or TWRP.

Thanks

Most recoveries will let you use adb sideload but OEM provided recoveries will fail if not fed with signature approved files.


Amazon App Store - Location of the downloaded APK Where does this app store save the downloaded APK file? I have a problem where certain apps will only install when the sdcard is unmounted. The Amazon App store needs sdcard to be mounted

This is based on my EVO, but they appear to download into the Appstore's "private" external storage directory, which is /sdcard/Android/data/com.amazon.venezia/cache/. From what I've seen they appear to then get deleted after being installed, but anything which has been downloaded and not installed looks to be there.


Accidently wiped out all data. Now I can't restore it. I accidently wiped out all data on the device (no backup). Now I'm in TWRP and when I select "Restore", there is no package to choose.

Well, I haven't had this issue, and I'm not experienced much.

If you plugged it into your computer, opened KFU (not sure if it'd detect it), you can download the latest stock ROM. Then maybe all you'd have to do is push it onto the SDcard through ADB? and then reload TWRP (or something to refresh the list) and it'd appear, and then you could flash it?

Not sure if that'd work. Again, not an experienced person with this, but maybe you can figure something out with my idea. :P


Where does Facebook save videos saved from Messenger? Someone sent a video to me via Messenger. I click Save to Facebook. Where did it go? I cannot find where it saved it.
Where does Facebook store videos it saves from messenger?

On my android device, videos from Facebook Messenger are saved in:

Device Storage/emulated/0/Movies/Messenger

Hope that helps.


Run connectbot as root? I'd like to do reverse ssh tunneling with my phone. Anyone know how I can run connectbot as root so that it can bind to port 22 ?

You can't run apps that don't request root permissions as root.  This is excluding native apps that you can run from a terminal.


Paste number into Dialer Is it possible to paste a number into the dialer? (or get another dialer that has this feature). I have Android 2.2 (HTC Desire HD)

Sure can.

Assuming you have already copied the phone number you're looking to dial, just long press on the area of the dialer where the number appears and choose "Paste".

(Tested on a stock Motorola Droid with Android 2.2.1)


Force RTL layout not working Even though I checked the box of Force RTL layout it seems it don't work properly and due to this many other problems are occurring in my HTC Desire 826 dual SIM, like , my screen is 1080 but YouTube is not showing option for 1080p quality

These are some screenshots of Instagram and my bank's app.

Your screen is RTL enabled. The settings app is still LTR but check the status bar and the navigation bar it is RTL and that shouldn't affect the video quality please check any other videos in YouTube.


Use phone as USB modem by adb I want to use the phone as backup line for my Linux server. Can I do this by using the adb? I mean forward everything to a socket and route the traffic there. I also need some port forwarding, would be great if it could be transparent. Or do I have to use the tether option on the phone and configure a interface?
Cheers

First you need to make sure that your phone has a public IP so that it's accessible from internet (which is usually not the case). Otherwise port forwarding doesn't make sense. See How to connect to Android over 3G/4G public IP?

Using Android phone as a USB modem+router is rather simple. That's what we do by turning on WiFi hotspot or USB tethering. On rooted phones Port forwarding works by adding DNAT firewall rules. On non-rooted phones you can use adb or netcat or apps like Fwd (ports under 1024 cannot be forwarded though). For details see How to port-forward internet using android Hotspot to PC?

However transparently forwarding all traffic (and not specific ports) to Linux server - using Android as USB modem only - is complex (it won't work without root access). It works by manipulating network routing (tables and RPDB) on Android and optionally on connected host. See How to assign Mobile Data's public IP to host connected on hotspot?


Full backup of only firmware and ROM from non-rooted Android devices (namely Samsung devices) So, I've been looking around the Web, but haven't found anything conclusive. The closest things I could find were either options after rooting or an XDA post regarding near-full backups via ADB, but nothing regarding ROM/Firmware backup only without root. My question is: "How to back up ROM/Firmware onto a PC from a non-rooted Android device (Galaxy S4 to be exact)?".
Thank you kindly in advance!

So, after the discussion in the comments you can backup the phone using the command adb backup [-f <file>] -all to backup all of your data, where file is you should put a recognizable name for the back up to track it easier when you will need it. Store it somewhere safe.

If you will ever need that you can use the command adb restore *name of the backup* after the flashing of the stock firmware and all will be as you wanted it.

There is more: in the case you don't want to backup ALL data, you can leave the -all option and use specific selections:

-obb/-noobb: you can save the OBB data of every application

-apk/-noapk: you can save the application themselves

-shared/-noshared: you can do a backup of the SDCARD contents

-system/-nosystem: backup of system apps (stock ones)


How to check if my battery is OK? I use my phone mainly for wifi use and I know it is a battery hog. However, what I would like to know is how much time it takes for the battery to charge. I guess it is supposed to take like 4 mins to charge 1%.

I plugged in my phone at 11% battery at 1.00 am and at 7.00 am it was still charging at 65%. What seems to be the issue here ?

Update 1:
Going by a comment on the post here, it is because of the sequence in which I connect the phone to the charger. The comment goes as follows:

  Hi I think I found the problem as to why mine was charging slow.  Make
  sure the USB end is unplugged from the charger BEFORE plugging the
  phone end. After plugging into the phone, plug the USB to the charger
  while the charger is into the wall. Not sure why but the sequence is
  Important and affects charging rate big time.

  Alex

This is in the manual, too. Unsure as to what the internal mechanics of the charging are.

I think what matters most is the amperage of your charger. If you are plugging your phone into a computer then it is limited to 500mA. A charger for the S3 will typically provide 1A to 2A I believe.

One more thing which may be going wrong is battery hogging applications. If you switch your phone off and then charge, by how much does your charging time lessen down?


Android Versions Size Vs Features This occurred to me while updating Windows laptop. Each version of Windows gets bigger, much bigger in size compared to the extra benefits to "average Joe (or Jane)".

Question: What is the size of pure Android version starting from 1.0 to current 6.0 (less the skin added by OEM) and key benefits or improvements (for the average user) added in each Android version ?

For versions above 2.3.6, you could check the Google Developers page for the stock images for the nexus phones. They could provide a context for the sizes of pure Android.

There is another site i had seen comparing all the features of all the versions of Android. I can't seem to remember the name though

Edit: Found the site here.


Games unable to connect to the internet I have a Samsung galaxy Ace, rooted.

I installed Final Fantasy Dimensions and Sandbox (both are games). They require intial net connection for registration, but I get an unable to connect to network every time.

I am using Wi-Fi. Downloading and browsing via browser works. So, why is the internet not working for the games?

The port the games are using might be blocked at the router level.
Here are your options:

Try using 3G or 4G
or make sure that you are allowing traffic (TCP/UDP) on the correct unprivileged ports (1025 and up) through your router.


Connecting a HDE keyboard to a Kindle Fire I brought a HDE keyboard:

  Connects to your 7" tablet via USB 2.0 A-Type Male Adapter. Please make sure your tablet has a USB Type A Female to accept this plug type. Also, your device must have a USB host in order for the keyboard to function. Please consult the manufacturer of your tablet for those details.

for my Kindle Fire 1st Generation. I got the adapter to connect the A female to USB micro on the Kindle.  Of course I didn't read all the through on this one, because I now need to have a host USB connection in order for the keyboard to work with the Kindle.

Any advice or do I have to ditch the keyboard and mark it as a bad deal?

The USB port is not powered on the Kindle Fire, and thus cannot host USB devices.  So, a wired external keyboard connected directly to your kindle is pretty much out of the question.

What if you were to power the keyboard some other way?

Well... that seemed to be the question this one gentleman asked himself.  He decided that connecting a powered USB 2.0 hub to the kindle, and then connecting the devices to the hub would be the way to go.  He found he needed a USB OTG cable to start the process.  He hooked up the hub, plugged in the mouse, and saw a mouse cursor.  He connected a keyboard, and could type.

So.. that's my advice.  Get yourself a powered USB hub.  Of course, unless you then got creative with supplying power to the hub via a battery pack, you are limited to using the keyboard to wherever you can plug the hub in... but that's still a step in the right direction.


Cant move a single app to SD card on Samsung A21s I got an A21s yesterday and a new SD card but when I try to move apps over to it, it shows no option to change storage. This is for every single app, even ones I know should be able to move over. Had Samsung phones for years so know how to do it, it just won't let me. In which case the phone is useless if I can only use my SD card for photos.
I've formatted it, unmounted it, formatted it, turned phone off, turned phone on, looked at every single setting, even downloaded apps2sd, still impossible

Samsung A21s does not allow ANY app to be installed on the SD card..


Android "google play music app". How force it play ONLY local songs on my phone How to force "google play music app" play ONLY songs I paid for and downloaded to my phone.
In other words how to restrict it from contacting the web and using my data allocation.
thank you

Press the hamburger button (top left) and enable "Downloaded Only".


link 2sd working but apps not move to sd card I created second partition on sd card. But when I mood apps to sd it's showing insufficient storage available on sd card. But my sd card total blank

link2sd will not move apps to sdcard but it will link  2nd partition with system

1)Format your 2nd partition of sdcard  and try it


Galaxy SIII SCH-I535, Android 4.4.2 - High Battery Drain I am not quite sure where else to turn with this issue. It's been happening for about a week now. When looking at the stock battery section in Settings, I see that "Android System" is always using 35%+. It's up to 45% right now. Whereas I usually would not need to charge my phone for a few days, now, even though I still haven't changed my phone usage habits, i need to charge almost every day.

I do not have my phone rooted, or anything really special on the phone. But I am wondering why this would be so high, and how I might be able to figure out what's going on. I can provide any information that is needed.

When I first received my SCH-I535, it performed an OTA update. I was shocked at how much battery this brand new Samsung was using. After lots of research, I reinstalled the update through my PC. You need to attach with a USB cable, let it install software from the phone onto the PC and perform a phone system update through the installed software. Basically, something got messed up with the OTA update. Reinstalling the update through the PC fixed the battery drain.

Also be aware, though, that if you're coming from a phone that didn't have an AMOLED, like an HTC, you're used to seeing the display hogging all the battery. On a Samsung, you're more likely to see the OS using more power than the display.

Hope this helps!


Removing Gmail app for guest device in my home I recently picked up an HTC One V phone for practically free. I want to use it as a "media device" in my home. I have it hooked up to a dock and would like to have Netflix/Pandora/Play Music (linked to my personal Google account) installed. Since I frequently have guests in my home, I do not want ANY access to my personal things. (GMail and Play Store).  What is the safest way to remove access to Gmail and the Play Store (or to force password entry every time), while allowing full access to my Play Music without a password?

You could use a so called "App Locker" like e.g. App Lock, which allow you to protect selected apps with a pattern lock. A more restrictive way would be to turn your tab into a "Kiosk device" (details can be found following the kiosk-mode tag; just 6 questions, so it should be easy to browse).


Installed app got replaced with the Andy Android icon and doesn't start Backstory: I went to pick up my phone to play Clash of Clans. The icon was the Android. When I tapped on it, it said, "app not installed". I went to the app menu and it disappeared.

What causes this issue?

Other info: I took out the SD card, could this have contributed?

Yes, the most likely cause here is that you removed the SD card and the app was installed there. Some apps can install themselves, or a portion of themselves, to the SD card even if it is external storage.

When an application is removed incorrectly, such as removing an SD card that the application is installed on, what you are experiencing is a typical behavior... The icon on the home screen is replaced with Andy, the app is removed from the app drawer or replaced with "Andy", and when attempting to start it the exact message you stated is displayed.

After manually deleting the icons,I would recommend clearing your cache then reinstalling the app without the SD card installed (if you wish to continue to have the app).


How can I factory reset a European Huawei phone in China without access to Google? Well, as you can see in the title......I am having a hard time in China. :)
My phone is from Spain and I had to factory reset it (it got soft-bricked...just on its own. Weirdest thing ever). It is a Huawei P8 Lite 2017 with literally no support. Whatever is on the internet (PC suite) can't be used because it says it is not a supported phone.

Is there a way to continue the factory reset without the Google service? It is blocked here.

This is the screen where I am stuck atm:

To reach Google and proceed with the next steps, you need to set up a PC that's capable of penetrating through that wall (e.g. with VPN), and make it a proxy server on the local network for your phone to use. Here's the way I do it:

On your PC, install Privoxy and let it through your firewall (if exists)
Go to its installation directory and open config.txt. You might need to open it with administrator privilege to be able to save it later.
Search for "listen-address" and you should get something like this:

  listen-address  127.0.0.1:8118

It should be right above the chapter "4.2 toggle" and not have a "#" before it. Edit it to:

  listen-address  0.0.0.0:8118

Now save the file.
Determine the LAN IP of your PC, usually by running ipconfig in the Command Prompt. Suppose it's 192.168.0.1.
Fire up Privoxy and connect to the VPN you use. Now your PC is ready; move on to the phone.
While in Setup Wizard, connect your phone to the same network as your PC. If you have already connected to the network, make the phone forget it and set it up from scratch. When entering setup details, check Advanced Options, then choose "Manual" for Proxy. Enter the IP and port you got previously. It should look like this:

Proceed to connect.

Your phone should now use your PC as a proxy, and therefore should be able to reach Google. Follow the on-screen guidance afterwards.


Benchmark application for Android? There is any application to measure and publish benchmark results from Android devices?

Quadrant and Linpack are the two I use.  Linpack is purely for measuring CPU performance, whereas Quadrant also takes into account I/O speeds, graphics performance, and the like.


Just bought Galaxy Note 8 but When I got the phone for the first time and started it up, it showed the recovery mode and I selected reboot system. The phone had 0 battery.
I've seen lots of unboxings and the phone starts up normally.
Is there any explanation?

My guess - it's a refurbished device

OEM's typically ship devices at about 40% charge or little more as that is the ideal charge level for storage (from the OEM to your hands it can take months ). After refurbishment, this was not done and the already low charge dropped to near zero
During refurbishment, previous owners data is wiped out (factory reset) and possibly in your case it was done through the recovery options and carelessly not booted back to normal

To confirm , try using Phone Info -Samsung which has an option to check whether your device is refurbished (I haven't owned any Samsung device for a while, so I don't know if it works on your model or not)


How to disable a specific calendars notification? How can I disable the notifications for a specific calendar only?

Example:
I have the calendar of my girlfriend synced to my phone to know the times she is at home, working, etc. Now I get all the notifications about the events from her calendar. I want to get notifications for my calendar only, but not for hers.

Maybe this is important too:
I am using a Davical server and sync my calendars over caldav sync.

You could use e.g. Calendar Event Reminder, and disable notifications in the default/stock calendar. With CER, you can setup reminders for each calendar separately, and even deactivate alerts for calendars you don't want to be alerted for (in your case, the "work" calendar).

The added plus is you will never miss an alert anymore, as you can configure CER to annoy you until you shut the alert of manually. I've bought the app when it was still payed, and it never let me down.

Unfortunately, I don't know of any way to do that with the native calendar -- but at least this is a free solution, though it takes an extra app :)


Syncing between Windows 7 and Android Jellybean with Winamp I want to sync my Samsung Galaxy S3 4G to my Windows 7 PC with Winamp so I can easily sync playlists to and from my phone and computer. So I followed the instructions in Winamp's official blog: http://blog.winamp.com/2010/11/30/wirelessly-sync-music-to-your-android-phone/

It didn't work. When I click on the Discover button, nothing happens. When I right-click Devices and click Start Discovery... you guessed it - nothing happens! I am connected to a windows domain and connected via an Ethernet cable. Could that be preventing me from accessing the same WiFi network I have my Galaxy on?

I've done some research on this issue and it is a common problem. If anyone has found a solution to it, I'll be very glad to hear it! I love using Winamp and don't want to use any other media player.

I know this is an old thread and you may have already found an answer, but I had the same problem after installing Winamp 5 pro on an Android device. I had previously had no problems with Winamp standard on both Android & PC

I upgraded the PC version to Winamp Pro and now it all works as expected again. So I suspect you need the same version of Winamp on both platforms ie. either standard or Pro


Not finding location on LG Optimus U Hey everyone. I'm a complete Android newb but computer poweruser, so I found this site based on experience with StackOverflow, ServerFault, etc. Go easy on me please. :)

I just got an LG Optimus U with US Cellular. In the pull-down menu I have GPS enabled (the satellite-looking thing with the beams), but when I open Google Maps and click the compass button, it says "Waiting for location" for a while and then says my location is temporarily unavailable.

Can anyone give me some recommendations on other things to check?

Check your settings in Settings -> Location and security. If you have a data plan, I'd suggest enabling Use wireless networks, Use GPS satellites and Use sensor aiding for the fastest possible location fix. If you don't want GPS to use your mobile data, deselect Use wireless networks.

Also, you could see what goes on with the GPS with GPS Test (https://market.android.com/details?id=com.chartcross.gpstest).

Does the GPS icon start blinking in the notification bar when some program attempts to use the GPS?


Why do everytime I move a picture to a certain album, it always appears on top of the photos on an app like Instagram or LINE? For example, I move a picture that I downloaded some times ago, from the "Download" album to "References" album, so it's not the latest photo I have. Then when I open Instagram to upload a picture, the picture I mentioned before is on the top of all photos, meanwhile usually the ones which are on the top should be the recent photos, right? My phone is Vivo V9. How should I fix that? Thank you.

When you move files from one folder to other it changes date and time of a file when it was moved and I think there is no way to fix this


Why I can't see all images in the gallery? My Phone is SYMPHONY Xplorer W35. Android version JellyBean 4.1.1 Recently I'm facing a problem. Sometimes I download images from my PC to my mobile phone. But unfortunately these images are not in the gallery apps. For this when I need to upload an image from messenger I can't upload them because they are not in the gallery. But after few times the images are automatically shown in the gallery. (My messenger doesn't support uploading file from file manager)

This very much depends on how you upload the images to the device. In order for the gallery app to pick them up, they must be added to the "media library", which is the job of the media-scanner. So that one needs to run after you've uploaded the image(s).

There are quite a few events triggering the media scanner to do its job – but e.g. uploading a file via FTP, or copying it with a file manager do not belong to that category. Things you can do to trigger it include:

rebooting the device (media-scanner always runs at BOOT_COMPLETED)
unmount and mount your SD card (it also runs whenever a new medium is attached)
trigger a media scan via the the command line
use a media scanner trigger app to trigger a scan manually

Pick your choice depending on how often you need to do that. If it happens once a year, a reboot probably is the easiest approach. If you need it daily, one of those apps will be the better solution ;)


Can I run CyanogenMod without mobile service? I am wondering if I can run CyanogenMod on a phone without service? I have an HTC Incredible and am thinking of upgrading to a new phone and wonder if I can give my old phone to my daughter to use like an iTouch works where you only have internet access via a wireless connection and cannot make cell phone calls but can use applications.

Yes, even plain Android will do this.  I've heard of some unlicensed phones that didn't properly finish setup unless you had a SIM card but it shouldn't be an issue with CM.


Change lockscreen time and date font? Starting from Android 6.0, Google altered how their lockscreen looks in AOSP, presumably to increase readability:

Digital clock is smaller
Digital clock uses a bolder font, presumably Roboto Medium
Date text is ALL CAPS
Date text has a noticeable character spacing

A comparison can be seen in the pic below.

It seems that this is Google's design vision going forward, as Android 7.x only kept or reinforced upon those points, and the recently released Fuchsia OS preview is in the same style.

However, as good as Google's intention might be, I'm not a fan of all these points above, and now that I see Google is determined to push it (Fuchsia), I'm determined to revert it back to what it was in Android 5.x. I'm rooted, have a custom recovery, and know how to decompile and recompile APKs, so I should be ready for whatever's needed.

Ideas?

After some more searching, I finally came across an XDA-Developers thread explaining how to do it - or rather, how to do the reverse action of what I want to achieve (credits to the original author there). I'll post an excerpt of the core part and reverse the action yet again to make it fit my purpose.

  Install apktool.
  Install your framework-res.apk by executing apktool if /path/to/framework-res.apk.
  Decompile your SystemUI.apk by executing apktool d /path/to/SystemUI.apk
  Go to the decompiled SystemUI folder and open res/values/styles.xml.
  Search for big_thin and replace sans-serif-light behind <item name="android:fontFamily"> with sans-serif-thin.
  Open res/values/dimens.xml.
  Search for widget_label_font_size and replace 14.0sp behind it with 16.0sp.
  Open res/layout/keyguard_status_area.xml.
  In the two lines starting with TextClock and TextView, remove android:textAllCaps="true" and android:letterSpacing="0.15".
  Rebuild SystemUI (preserve its signature) by executing apktool b -c SystemUI.
  Push the finished SystemUI.apk back to where it was using a method of your choice, set correct permissions, then reboot.

The end result is pictured below. Font size might still use some tweaks, but generally favorable result.

P.S.1: For the record, and for ROM makers who are interested: you can also modify the same files prior to building the ROM - find the files above in *build-folder*/frameworks/base/packages/Keyguard/.

P.S.2: Interestingly, while searching for "reverting the font on 6.0+ back to what it was in 5.x" didn't return anything, searching for "changing the font on 5.x so it looks like 6.0+" (the opposite) did return more favorable results, as there were quite a number of Marshmallow wannabes back then. I guess that's a lesson learned in Google-fu...


Where can I run a .sh script on Android without root? Lately I've been playing around with .sh scripting in Android. At first I used BusyBox and it's integrated scripting utility, though I quickly realised that coding on the phone isn't the best, so I switched over to my desktop and started using ADB to push my scripts to my device. It all worked well for about two weeks, until recently the exact same scripts that used to work perfectly, tell me some : not found[0]: syntax error: '{ Error. I've copied the exact same code from my script and used BusyBox to create it for me, and that way it works just fine. So the code is fine.

After some digging, I think it's either because of permissions, because of encoding possibly, or also because of the location of the scripts. I've tried many different locations (because I want to be able to run the scripts without root), and ended up choosing /storage/emulated/0. If I understood correctly, this is a symlink to the internal storage, which is read/write-able without root. But maybe sometimes executable and sometimes not? I don't know.

So my question is as following: What is the best location on an Android Device to run scripts without root from? Preferably a path that works on any android device.

Info:

Rooted Samsung S7 SM-G930F
Android 8.0.0
I'm using #!/system/bin/sh inside the .sh files
I'm running the scripts with sh script.sh
When trying to run it as an executable ./script.sh, I get a Permission denied error. With or without root.

PS: And if anyone has a clue to why the exact same scripts stopped working out of nowhere, I'd be happy to know!

UPDATE: Thanks to @IrfanLatif, I've managed to fix the : not found[0]: syntax error: '{ Error! I was using Visual Studio Code as my editor for the scripts, which was saving them with the End of Line Sequence CRLF, which Android doesn't like. For an easy fix, just change your Line Endings to LF, problem solved. Check the comments out for more info.

/storage/emulated/0 is usually mounted in a way that prevents execution of programs from this location.

Therefore even with a set executable bit for your script you won't be able to execute it directly. Of course you can still execute it via sh:

/system/bin/sh /storage/emulated/0/test.sh

Alternatively there is the directory /data/local/tmp which is writable without root (e.g. via adb). There you can place a script and execute it directly.

Note: Listing the content of /data and /data/local is denied for non-root users, but in /data/local/tmp you have permissions again.


LG Stylo 3 Wi-Fi randomly disconnecting I got an LG Stylo 3 on Cricket last month, and already I seem to have a problem. Randomly, it will disconnect from Wi-Fi. When I go into the settings, it'll say that the network is disabled. Any idea what could cause this?

1.go to settings
2.click on wi-fi
3.click on wi-fi  manager
4. Click on box if check mark on
I had same problems did all advise giving but , this
One thing I did helped now connects and stays connected. At home and everywhere else.


Arabic text is detached I have these two issues. The text is detached in tweetcaster. Along with being detached, in the browser, the reading order is wrong.

I hope upgrading the current pre installed browser or installing a separate one would solve browser trouble. But how about tweetcaster? What is the fix for that? If there is no fix except wait for upgrade, could you please suggest a Twitter client that displays Arabic text properly?

I have HTC desire running android 2.1.

You can try the browsers that don't use the internal WebKit rendering engine, i.e. Opera Mobile, Firefox, Opera Mini or SkyFire. For Android 2.2 there's also Persian Browser which uses WebKit and connects the letters after loading the page.


Sync is currently experiencing problems. It will be back shortly Android S4 my "Calendar" under "Sync settings" in my Google account disappeared. Under the Google accounts at the bottom it reads "Sync is currently experiencing problems.  It will be back shortly"  How do I fix?

We had the same problem, and to make a long story short, tried all the answers we found online (clear cache, clear data, reinstall Calendar, delete, then create Google account, but no factory reset).

The problem for this phone (Samsung Galaxy S3) was that we had restricted background data on Google Play Services. Once that was enabled, the calendar synced right away.

Home> Settings> Connections> Data Usage> Scroll down to Google Play Services, and make sure to uncheck "restrict background data".


Grant an app write access to external storage that does not request it? I would like to grant the Syncthing app write access to external storage in Marshmallow.  The app does not request it explicitly (unlike other apps that seem to use the Storage Access Framework to do so).

In the app permissions screen, there is no permission listed for external storage, only for 'storage' (which seems to mean internal storage).  So there does not seem to be any direct way to grant this permission.

My phone is rooted and I could just run Syncthing as root - but this option creates many problems and sometimes results in the app hanging indefinitely.

Is there any other way around this problem?

You could manually add the related permission to write on external storage to AndroidManifest.xml but it won't work.

I found myself in a situation similar to yours, and I also tried to decompile the app, add the WRITE_EXTERNAL_STORAGE permission request to the AndroidManifest.xml and recompile the package, but it didn't work.

Since Lollipop, Android's new policy concerning the external SD requires any app which needs access to the above-mentioned to use the DocumentProvider interface. Unless you prefer to work in Smali, there's no way to implement it without the Java source code. Just editing the Manifest is not enough.

So, no. There's no way to manually add a working WRITE_EXTERNAL_STORAGE permission, neither in Lollipop or in Marshmallow. Your only choice is to ask the dev to implement it.


Remove 160 char limit on S5 Is there a way to remove the 160 char limit when replying to a text through the 'toast' method on the galaxy s5 without root

If anyone else is wondering about this particular problem

There is as far as I know no way to do this however there is an app called 'QKSMS' that has a quick reply mode which is similar to the stock version which does not have a character limit


Custom ring tone for callers who block their caller ID? How can I set a custom ringtone for callers who block their caller ID? I don't want the same ringtone for callers who don't block caller ID but are also not one of my contacts (otherwise, I could set a custom ringtone for all of my contacts and change the default ringtone).

Device: Moto X (2nd Generation) with Android 5.1, security patch level 2016-03-01

Automation is the preferred option. Many apps are available. I prefer using MacroDroid , since it is free (upto 5 macros) and easy to learn. To understand how MacroDroid works and required settings,  my answer here

Edit:   I overlooked a correct set of actions, my fault.  The earlier option of set ringtone  reacts at the point where the phone rings, at which point the phone has already started ringing - deleted that option. Sorry for that

What you could do is reduce the ringer volume to zero, increase the music volume and use the play sound action on the music stream for unknown callers with the incoming call trigger.

And add a corresponding macro to reverse the ringer volume for any caller other than unknown

Your macros would look like this

Unknown caller macro (name of macro )

Trigger: Call incoming → Select contact →Unknown Caller

Actions:

Volume Change →

Select Ringer (check the box) and set Volume to zero using the sliding scale
Select Music (check the box) and set Volume to say 80 using the sliding scale ( can be adjusted to comfortable level later )
Click OK

Play Stop/Sound →

Choose Sound - The problem with choosing a sound option from the app choices is that it plays only for a short time and you may miss it (optionally you could repeat this action multiple times, having a wait X seconds between these actions-without wait, they would all play nearly at same time)

(OR)
Choose File - You can save a  sound clipping of your choice  and length on your phone, say in your internal memory and navigate to it by /storage /sdcard0 /soundfile_saved location.
Click OK

Constraints: None

Reverse for other callers macro ( for reverting to existing setup for other callers, meaning those who haven't blocked caller ID)

Trigger: Call incoming → Select contact →Any number ( By specifying this, it is applicable to contacts and non-contacts who haven't barred their caller ID )

Only one action in this macro is that of Volume Change as above but with opposite settings of muting music and reverting ringer to original

Constraints: None

Note

For reverting the changes made in the first macro, we have two options:

a)  Reverting after a time period of choice

b)  Reverting based on caller identity

Second option is chosen and implemented since time based option can produce unwanted results like successive caller ID barred calls, with the second  one ( if ) outside the time limit would be wrongly treated

Since I cannot verify with blocked ID calls (not being allowed in my country ), I set the first macro for known mobile contact (and predefined sound instead of saved clip ) and second macro for known landline and it worked. Do let me know if any clarifications or problems arise
Edit: I am running KitKat and you are on Lollipop. There is a difference in how  sounds are treated (example below)

Google Voice Recognition functionality that creates the "ding" sound when activated was streamed as notification stream  in KitKat. In Lollipop this is switched to music  stream.

Source: https://stackoverflow.com/questions/21701432/continues-speech-recognition-beep-sound-after-google-search-update

I am not aware if Ringer sounds also changed, though unlikely. If the macros don't work because of such a change, you may need to change system sounds option similar to music in both macro actions


Does a "one key" voice recording application exist? I am looking for a voice recording application that could be used in the same way as a dictaphone, by pressing one key (for example "volume up" during a few seconds) without having to unlock the screen and find and click the shortcut to the application. Such an application could easily be used while driving.

Does such an application exist ? Is it even possible for applications to use key triggers while the screen is locked ?

Something like that would have to be done in a custom rom, there's no way in the api to do that.  I'd suggest looking at something like widget locker to put a slider on your lock screen that takes you straight to your voice recorder app.


How to tell when Google Play Store credit will expire? For Google Play Store credit that does expire, how does one see when it expires?

For credits that do not expire, see this QA.

If you go to Google Wallet payment methods you can see your Google Play credit, how much has an expiry date and when it expires.


Will a Factory Reset lock my phone (Samsung Galaxy S2) if it is unlocked, but factory locked? I know that formatting the SD card will not lock my phone again.

But if I Factory Reset my phone, will it re-lock the phone or not?

A factory reset will not change the status of the phone with regards to "device lock" (Can I connect to other networks?) or to "bootloader lock" (Can I use custom ROMs?).


Accidentally turned on talkback I accidentally turned on talkback in the Accessibility menu. When I turned it on I got some kind of walk through on how to use it. I couldn't cancel it. So I turned off my phone.

When I turned it back on again it took me 15 minutes to unlock my phone. Apparently I had to touch a button to give it focus and then double tap it to click it.

Now my question is: how do I turn this off? I can't reach the settings because I have don't know how to access a drop down and I can't scroll through all my apps.

I had this problem with LG Android also - accidentally turned ON talkback. Here's how i got it turned off.

You can swipe by using two fingers
Tap once on settings
Then double tap on settings to activate
Repeat process on the following..
General/Accessability/Vision
In Vision you should see Talkback where you can turn it off (again by using the same single, then double tapping process)


NOTE 10.1 (2012) HDMI not displaying correctly I have an official HDMI adapter for my Note 10.1 and it displays the android desktop perfectly fine, there are side bars but I assume these are due to the resolution of my device not being 1080p. However any circular icons are perfectly circular on the tv so it looks absolutely fine. The issue is that as soon as I play video the aspect ratio is completely screwed! Some films display almost correctly but look a bit stretched vertically, there are never any verticle bars like there are on the device (obviously to display widescreen films) so on the tv the film is displayed full height but not full width..... To make it worse if I use a third party video player like BSPlayer the aspect ratios are even worse! The films are practically playing 4:3.

What is strange is that although on the desktop the output is an exact mirror of the display, when playing video it is a separate output (ie the display on the TV does not match what I see on the device. For instance the overlayed play, pause controls and progress bar never appear on the screen.....

What is going on?

Update

Found something else strange.... If I play a film through google play movies which I have bought from google play the aspect ratio is perfect! However if I play a personal film from my sd card through google play movies it is the same aspect issue as the other apps....

How can it play one film correctly and one completely screwed up? (are they purposefully crippling the video output for personal videos?)

I have fiddled around and found that altering the decode mode from HW to SW or System player in BSPlayer fixes the issue! This also works for MXPlayer too.

This results in the correct video ratio although it is not full width on a 1080p tv (just like my desktop) it is at least not stretched. I still don't get why Google Play Movies can play its native videos full width on my tv.


Should I be cautious about Huawei-modifications for popular apps? What's the difference between Booking app on Huawei app store and the version on Google play store. Why Huawei always wants to update Google Play version to their Huawei app store version. As soon as Google Play publish new version. Immediatly Huawei release a newer version than the one on Google play. For example the Google Play version is 12.0.0  Huawei will update it  to be like 12.0.0.0.1

Should I cautious of these modified versions of the same app from Huawei? I choose Booking as an example but there are some other apps like CamScanner ect.

Should I cautious of these modified versions of the same app from Huawei?

We don't know if they are modified versions; and if they were, we don't if Huawei or the legitimate developers modified them. I have not seen any articles accusing Huawei of modifying apps. Even when using only Google Play Store, there may be a difference in the version of an app depending on the device. See below for Booking.com's additional information on Google Play Store

In Huawei's AppGallery Review Guidelines, the following is stated about what developers should do for their apps to be compliant and pass the review on the App content section:

  4.5 Your app must not be a cracked version of another copyrighted app.

On the user privacy section, it is stated:

  7. User Privacy

  You must handle user data with caution and ensure your app complies with the laws and regulations of the countries or regions where your app is to be released. The following requirements must be met:

  7.1 Your app must not collect, transfer, or use users' privacy data, such as location and contacts, without the user’s consent or other legal basis in applicable law.

  7.2 Your app must provide anti-virus or security protection functions and privacy notices, and the privacy notices should include the following information: What user data will be collected or transferred, what such data is used for, and with whom such data is shared, and any other information as required by applicable law.

  7.3 If your app transfers users' personal data, users must be informed how and where such data is going to be used.

  7.4 Your app must encrypt users' personal information, such as identifiers and authentication, when collecting, storing, and transferring such information to ensure confidentiality and completeness.

  7.5 During transactions using third-party payment services, your app must not record users' transaction authentication information or disclose users' personal information irrelevant to the corresponding transactions to any third-party.

  7.6 If your app is used to handle financial, payment, or identity information, it must not disclose any of the user's personal data.

  7.7 Your app must not use permissions or data that are irrelevant to the apps' functions.

  7.8 Your app must not modify users' personal data within itself or other apps.

In App Audit FAQ, there is the following quesion:

  Q11 Is security inspection the same for overseas and China apps?

    A
    The security inspection on an overseas app features high industry standard, and is therefore more stringent than domestic ones in terms of data acquisition and permission requirements.

If Huawei is modifying apps without their owners' consent, then it will be liable for infringing not just their own guidelines but more importantly other nations' laws.

You should worry about any apps unless you have seen and reviewed their codes. However, none of us has the possibility of doing that with most apps being closed source. Google might be modifying apps from other developers. We are left only with giving or not our trust due to past experience(s) using an app or what we have heard about an app, developers or companies.


Hangouts Error on Android Phone: Cannot connect to the server I'm getting a "cannot connect to the server" error when I try to use Hangouts on my phone. Every other Google app works. SMS works but not Hangouts messages. All my other devices work with Hangouts messages.

It turns out that this issue is due to the restricted background data setting.

Navigate to Settings -> Data Usage

Find the following apps and make sure "Restrict Background Data" is switched off:

Hangouts app
Google Services
Google Play Store


Configuring USB tethering manually with root I've exhausted the documented methods of programmatically enabling USB tethering:

The service method doesn't work on my phone (Samsung Note 4). It seems to be some sort of protected API, and poking it from adb has no effect.
The shell input method is not applicable, as it requires that the device is unlocked, and there doesn't seem to be a way to programmatically and non-destructively unlock a device locked with a fingerprint.

So, I'm looking into achieving this goal "the hard way", i.e. do everything that the Android userspace does when you tap the USB tether checkbox.

As far as I can tell, this involves the following steps (most of which would be similar to how you'd do it on a Linux machine):

Establish an IP connection to the host computer through USB. This involves putting USB in rndis mode, setting up routes, assigning an IP, etc.

I've already figured out how to achieve this and posted the answer here.
Launch a dnsmasq instance, to assign an IP to the connected PC via DHCP, and forward DNS requests.

This step shouldn't be necessary if you don't need DNS server detection and assign static IPs on the USB interfaces yourself.
Enable IP forwarding (/proc/sys/net/ipv4/ip_forward).
Set up iptables to enable forwarding/masquerading.
Update routing tables for traffic accounting.

I managed to write a bunch of scripts which replicate exactly the visible effects (described above) as performed by the Android OS when enabling USB tethering through its UI. To create the scripts, I recorded the system state (iptables -S, ip route show table all) with and without tethering, then converted the differences into shell commands to apply the changes to the system. However, my replicas are still not enough; some part of the system remains unconfigured which prevents traffic from going through.

Does anyone have a clue as to what I might be missing, or how I can narrow down / debug the problem?

A buddy let me know that there is more than one sysctl setting for forwarding (a global one and one per interface, then more for IPv6).

On my phone, the relevant settings are:

vars=(
    net.ipv4.conf.all.accept_redirects=0
    net.ipv4.conf.all.forwarding=1
    net.ipv4.conf.default.forwarding=1
    net.ipv4.conf.ip6tnl0.forwarding=1
    net.ipv4.conf.lo.forwarding=1
    net.ipv4.conf.p2p0.forwarding=1
    net.ipv4.conf.rmnet0.forwarding=1
    net.ipv4.conf.rmnet1.forwarding=1
    net.ipv4.conf.rmnet2.forwarding=1
    net.ipv4.conf.rmnet3.forwarding=1
    net.ipv4.conf.rmnet4.forwarding=1
    net.ipv4.conf.rndis0.forwarding=1
    net.ipv4.conf.sit0.forwarding=1
    net.ipv4.conf.wlan0.forwarding=1
    net.ipv4.ip_forward=1
    net.ipv6.conf.all.forwarding=2
    net.ipv6.conf.all.proxy_ndp=2
    net.ipv6.conf.default.forwarding=2
    net.ipv6.conf.ip6tnl0.forwarding=2
    net.ipv6.conf.lo.forwarding=2
    net.ipv6.conf.p2p0.forwarding=2
    net.ipv6.conf.rmnet0.forwarding=2
    net.ipv6.conf.rmnet1.forwarding=2
    net.ipv6.conf.rmnet2.forwarding=2
    net.ipv6.conf.rmnet3.forwarding=2
    net.ipv6.conf.rmnet4.forwarding=2
    net.ipv6.conf.rndis0.forwarding=2
    net.ipv6.conf.sit0.forwarding=2
    net.ipv6.conf.wlan0.forwarding=2
) ; sysctl "${vars[@]}"

With these and the other ones, forwarding and tethering works!


Can I flash a custom boot.img to Nexus 5 when "Secure Boot" is enabled? I have compiled the Android Linux kernel for Nexus 5 with some modifications.

My phone is LG Nexus 5, whose bootloader has been unlocked, but the "Secure Boot" is still enabled.

As I understand, if secure boot is enabled, the bootloader will verify the boot.img when booting.

Obviously, my custom kernel cannot pass the verification.

In such a case, how to correctly flash my own boot.img?

my custom kernel cannot pass the verification.

This doesn't imply that you cannot boot into the Android with your custom kernel. When the verification would fail, your device would warn you about that and you would be given the choice to continue the boot process or not.

Google mentioned about this here

  RED, indicating the device has failed verification. The bootloader must display a warning to the user before allowing the boot process to continue.

So now, you can flash the kernel in the same manner those having secure boot disabled would do.


How to fix can't install app error 505 on a rooted device? I am on dirty unicorns 10.6 marshmallow rom. First I installed Gboard - Google keyboard app as system app through Lucky Patcher app. After restarting device I tried to open it through Lucky Patcher apps (There was no icon of Gboard app in my launcher) Launch App option but it didn't opened! So I uninstalled Gboard through Lucky Patcher. Then again I tried to install it normally through Play Store but I get this error 505 can't install app !!
So there must be Gboard apps leftover files conflicting the apps installation now right ?
So how can I fix this ? How can I install Gboard app now ?
Note: I can install other apps without any problem !!!

That is because hide icon has been selected. Go to language and input tap the settings icon beside g board. From there go to advanced setting and tick show icon


Galaxy S6 won't charge after drain to 0-1%, cannot boot After letting my Galaxy S6 drain more than usual, I connected it to the fast charger a bit after it hit 1%, and left it for the night while still powered on.

Next morning the phone was off. Powering it on, the phone shuts down before completing boot.

I plugged it in to an Anker charger, also supporting Quick Charging, and left it all day. Same problem. Once it managed to finish booting, allowing me to catch a glimpse of the 0% battery indicator in the status bar.

I tried booting into recovery mode (holding Vol. Up and Home while pressing Power) and left it to charge for about an hour before rebooting. Same problem.

Any suggestions, please? :-)

I got the chance to attempt to charge the phone via a wireless Qi-charger which, to my surprise, worked. So it didn't seem to simply be a dead battery, or a weird software loop, but something specifically concerning the USB/charging port.

I decided to bite the bullet and had the phone repaired. They replaced the "Charging Port Flex Cable", a part that can be bought online for 14$ or less, in case you feel like replacing the part yourself.


How can I quickly delete ALL texts on an unrooted phone? On a rooted phone, I merely delete /data/data/com.android.providers.telephony/databases/mmssms.db and then reboot.

Is there anything similarly quick that can be done on an unrooted phone?

I have a phone that has upwards of 50k texts and every app is hanging when trying to delete a single conversation.

(Android 6.0.1)

Not near as quick, but SMS Backup & Restore app and other SMS management apps can do this, also many SMS messenger apps can do this as well, but without root you cannot do it manually.


How to display touch points on screen My Galaxy Note with stock ROM had an option via Settings > Developer > Show touch points (or something like that). Now, I updated to CyanogenMod, based on Android 4.3 but I can't find an option similar to that anywhere.

My screen was damaged once. Since then, I needed to see the detected touch points on screen at all times, so I can see when the touchscreen gets stuck.

Is there an option (or even an app) for that? I Googled around and looked at the Play Store, but only found multi-touch tester apps. I need something that shows the touch points at all times and in all apps.

Looking a bit further I discovered that I have to click 7 times on Build number on phone details to enable the Developer settings.


Can .nomedia be a folder? If a file called .nomedia gets put into a directory, the Media Scanner skips that directory, e.g. sprite images.

Does that also work if .nomedia is a folder?

Yes. If a folder contains another folder that is named .nomedia, the parent folder will be ignored.

The relevant code is here (note to the confused: File doesn't necessarily be a regular file - in Linux directories are just special files).

One of my favorite IME app also creates folders of this name (instead of files) in its asset folders - the assets are ignored by MediaScanner.

Trivia: If you managed to put other special files like symbolic links or named pipes (FIFOs) with the name .nomedia, it will also work. (Spoiler: indeed you can, but you need root).

An alternative way, as suggested by beeshyams, is to rename the parent folder and make it start with a dot. This has the same effect as having a .nomedia inside it, as both ways make the code return true (should be ignored).


Are there any switchboard applications? I'm looking for an application that converts my Android phone in a switchboard. The goal is to have the ability to redirect the incoming calls to another telephone number. But if this is not possible (I don't know if any Android terminal is able to redirect calls in real time), perhaps there is an intermediate solution: the mobile pick up the telephone, launches a recorded message ("Please, say what is the purpose of your call"), waits until the user say something and then put a music loop until somebody pick up the telephone.

I don't know if I explained :) But the final goal is to substitute an expensive internal switchboard by an unexpensive cell phone network driven by an Android app. Is there something similar?

I was looking for something similar and it is hard to find one that would work for android.

However it is not so expensive to have a really good phone switchboard, you may use a very old computer with phone modem and utilized the land line, for example you can get an almost-for-free, an old PC computer from garage sales or bank or company that is in the process of updating their IT systems, (like a Pentium II or III).

Then install either Windows XP or Linux along-side with a PBX server which you can download for free for both systems. Sure it will take a little bit of time and patience to configure, the end result will be worth it, if done properly.

A switch-board that will change a PC at your office to a desk phone. Even, you can also have a intercom facility as well (where users can call each other without using land line just over your LAN - just PC to PC), even you can join remote branches or offices into one phone system.

Then you can have internal numbers like 1214 or of your own preference and choice, and share the one line over many users, and the most beautiful part is that there's no need to make new wires and getting phone sets!

Search google for 3cx (for windows) or Asterix for Linux.


Retrieve private mode pictures from Samsung device after factory reset I got a Galaxy S6 recently and none of my private mode pictures were transferred from my Galaxy S5 when Sprint transferred everything to my new phone. My normal pictures appeared when I entered my gallery, however upon entering private mode, it was empty.

I still have my Galaxy S5, but it have been factory reset. Is there any way I could retrieve them?

I once had my device reset (not exactly the factory reset though, my device got rebooted by itself and it got reset). As it's a kind of reset, all of mobile settings had been reset to default. Just for the sake of trying, I have enabled (reconfigured it, as if it's the first time) the private mode and provided the same pin, I have set earlier. Surprisingly all of my older files have appeared under the private section.

I'm not sure if this method works for a factory reset. But sure, it's worth a try.


Is it possible to update my cherry mobile flare lite 2 from kitkat to Lollipop? I have cherry mobile flare lite 2 and I want to experience lollipop but I don't know, I can't find update for my phone

When you cannot find an update in your phone's updater or on its official website, the android version you are looking for is probably not supported by your phone. If you want to install Lollipop on your phone anyway, you might want to try a Custom-Rom.

But be aware: some of the options presented to you can void your warranty or damage your phone. I also cannot guarantee you will find something that works for you at all. More information on this can be found in the post I linked you.


Can't remove app icons from the desktop I installed AdwLauncher. In the beginning it worked well.

But now, I can't delete the app icons from the desktop.

The situation is that when I longpress the desktop, the list doesn't show up so that I can't add shortcuts, apps or widget to the desktop.

Also, when I longpress the app icon on the desktop, list doesn't show up so that I can't remove, delete or edit the icon.

My cellular is HTC Desire. Is this a bug problem or I just set up in a wrong way?

Restarting the phone didn't help.

I used "home switch" to change the launcher back to HTC sense, then changed back to ADW but it still remains the same.

Have you accidentally locked the Desktop?  The option to "Unlock Desktop" should be on the Menu (possibly under the "More" option).


How to force google reader app to download mp3s When I subscribe to podcast RSS feeds with the google reader app then click the link to the mp3 Google reader starts streaming it with the selected media player rather than downloading the mp3 file to the sdcard like the webbrowser does.

Is there anyway to force it to download the actual mp3 file?

For listening to podcasts, Google has a separate application, called Google Listen, which will sync feeds under the Listen Subscriptions category. Unfortunately, new features are not being actively added, but does provide enough functionality to be useful.


BBM Android chat lost after Android crash I've recently been experiencing Android crashes (5.0), and the BBM app seems to be particularly volatile and could be the cause of the crashes.

I had a single contact and chat history with that contact, and both the contact and chat history have disappeared.  If I check the dedicated BBM folder on the device storage, the photos and documents from the chat are still there.

My question is: in BBM, if you delete a contact, will the opposing phone have both the contact and the chat deleted?  Or is this likely to be caused by a data-loss during the Android crash, and if so, where would I usually find chat history in order to investigate?

The problem was caused by the other user having an accident with their phone and losing their BBM contacts, which in turn deletes the chat.  I'm not entirely sure of the process, but they had to re-add me as a contact, and the chat remained lost.


SimpleSSHD - create reusable user/password? I have downloaded SimpleSSHD (aka Dropbear) to access my Android via SSH.

I am able to do so with the one-time password, but I'm trying to write a Python script that can access the phone.

Is there a way to add a "username/password" to SimpleSSHD so I can put that in to my Python program?

Edit: (I'm really new to this) - it looks like I need to create authorized_keys on my RPi somehow, but am not sure how.  Following this didn't seem to do it.

I am new myself, but this is how I managed to do it

Generate SSH keys on your client (RPi in this case) system
A. Use the command ssh-keygen -t rsa -b 4096 -C "optional_identifying_comment" to generate the key pair
B. When the shell prompts Enter file in which to save the key it is asking for a file name. Provide your own, or press Enter to accept the default 'id_rsa'
C. The shell will prompt for a password, provide one (it will have to be used each time you use the key) or press Enter to leave it empty.
D. Confirm your password
E. You should now have a pair of keys, a private key (ie. id_rsa) and a public key (ie. id_rsa.pub), usually stored in /home/user/.ssh. The private key is for the client computer (RPi in this case) and the public key is for the server (Android in this case)

Transfer the public key to your Android
A. Figure out the target address for your Android. You can do so by opening SimpleSSHD, clicking the three dots in the top-right corner and selecting Copy App-private path
B. Add the public key to the SimpleSSHD authorized_keys file. One option is to use cat:
cat ~/.ssh/id_rsa.pub | ssh user@host:2222 "cat >> /data/data/org.galexander.sshd/files/authorized_keys"

Adjust the above to your environment.


How can I ensure reliable updates for an Android phone/device? My Android phone has been abandoned by the manufacturer and carrier. It's stuck on 2.2, and doesn't seem likely to get any updates in the future, nor can I find updated ROMs for it.

I'd be willing to purchase a new phone, but how can I ensure that it will be supported? Does Google, or any carrier, or any manufacturer, make any guarantees about providing timely updates for their phones?

The only devices that you can be confident about getting timely updates for are Nexus devices. These tend to get updates for at least 18 months and they receive them as soon as Google releases them (they're essentially Google devices made by other manufacturers).

All other manufacturers take a while to release an update once it is released by Google, typical 3+ months. They also have less incentive to release updates as they want you to buy their latest-and-greatest new phone.


Samsung Galaxy Note N7000 bootloop even after flashing rom I have a Samsung Galaxy Note GT N7000 India. It rebooted automatically the day before yesterday and then it got stuck at the Logo screen.

I have downloaded and flashed it with N7000DDLSC_N7000ODDLSC_N7000DDLS6_HOME.tar.md5 using Odin and also using the recovery mode from external card.

But on restarting the phone doesn't go further than the logo screen.

I even wiped the cache.

I dont have a backup of contacts, most of the contacts are in phone memory not in my Google account.

Is there a way to read the files using the download mode which we use for uploading the firmware using Odin?

It might be issue with the ROM you flashed. Try downloading factory image from samsung, then flash it using odin. If everything goes well, you can see factory new phone OS in your hands :p I am also concerned wether it is bricked or not. Coz Galaxy note has many variants, I bricked mine long back, then I got Sansumg gig to get back my recovery. If your contacts are in memory, do not fully wipe the phone. Just re-install OS via odin.


Why can't I link contacts? (Moto G Stylus) I just started to use a Moto G Stylus. I copied my contacts over, and several contacts are linked (like Gmail, Signal, WhatsApp, Exchange, etc.). This is how I had it on my previous phone and is as it should be.
However, I can't create new links -- neither completely new links, nor adding contacts to already linked contacts. The only things I can do is display the links of already linked contacts and unlink them.
Does anybody know what I could do to be able to link contacts? Is this a limitation of this specific dialer?
The odd thing is that the Verizon help for this phone mentions the "Link" feature (https://www.verizon.com/support/knowledge-base-230168/), but the Motorola help page for the Contact app doesn't (https://support.motorola.com/us/en/solution/MS149789). I got my phone through Google Fi, FWIW.
(Note that I'm not talking about merging contacts. Merging only works within a given account; linking contacts is provided specifically to be able to link contacts from different accounts into a single entry in the contact list.)

In the meantime, I have found out that the dialer of this phone really can't link contacts. What a bummer... I thought this was a basic functionality of all but the most basic phones. (Well, maybe it is, and this phone is just one of the most basic ones.)
In any case, be prepared to add a 3rd party dialer to the bill if you're thinking of buying this phone from anywhere but Verizon.
From Motorola:

The :Link" feature that you've mentioned is only available for Verizon specific phones, so a Moto G Stylus that is purchased from Verizon would work with that feature.


How do I access the new Oculus Browser in the Samsung Gear VR? I've come across a lot of news articles, like this one and this one, which say that the newly updated "Oculus Home" interface for the Samsung Gear VR headset comes with a built-in new web browser that's superior to the "Samsung Internet" browser which was the default way to browse the web in Gear VR until now.

My question is, how do you access this built-in web browser?  I have noticed other changes in the updated Oculus Home interface, like the ability to create Avatars and the "Hey Oculus" voice control feature.  But I don't see a built-in Oculus web-browser anywhere.  There's just the old "Samsung Internet" app.  Is the Oculus browser something you need to install separately?

EDIT: Here is what Oculus itself says:

  Navigate the Web in VR with the Oculus Browser
  The Oculus Browser launches today on Gear VR. A fully native app that renders incredibly sharp video, images, and text in Gear VR, the new browser lets you search the web directly from Home.

  Using the keyboard, navigate to your favorite sites like Facebook, Instagram, and YouTube just like you would on a desktop. The browser brings 2D and most 360 video content right into Oculus Home, with all the benefits of our newly built experience.

But I'm not sure where this "Oculus Browser" and "keyboard" are located.

Indeed, the new Oculus Browser is out, however no clear documentation has been given from Samsung support website, fortunately a few workarounds are available:

Possible fixes for launching Oculus Browser:

1. Uninstalling and re installing the software.

Users have suggested to use the following order when uninstalling: (Gear VR service, Updates Gear setup, Gear VR video, Oculus, Oculus home and Oculus system activities)

After that reinstalling the software to make sure all latest updates are received.

Some instructions have been described here: Samsung Internet

Search and install Samsung Internet browser from the Oculus Gear VR Store
launch the Samsung internet browser from your GearVR Library
Navigate to a WebVR-compatible site
Accept the option to enable WebVR.

2. 3rd party apps

You can try third party apps like Launch Oculus browser 1.01 developed by muchenmusik.
The authour claims it is capable of launching the new Oculus Browser on GearVR compatible phones

3. Tweaking the hardware setup

Some users described here: How to fix Gear VR not launching when phone is plugged in? have complained of related issues with the browser especially when plugging in,
and a simple fix was to remove the connector on the GearVR and then putting it back. Check if it works.

Hope this helps

References (some included in text)

SOLVED - VR application closes "unexpectedly" whenever I put the headset on.


Does nexus 4 work with indian network I had bought a nexus 4 from US & right now.. i am trying to use it in india, with Vodafone SIM. I am facing problem, as the phone doesnt detect any SIM. Please guide whether Nexus 4 can be used with Vodafone network

Yes. My two friends using Nexus 4(16GB&8GB) in India. They didn't get any issues.
You can use Micro Sim bought from carrier or a manual cut version of ordinary SIM.


Can I delete the log files on my device? I'm currently developing on an Android 2.3.4 device. I've got root access to the file system, and I'm looking for the location of the system log files (like /var/log) so that I can delete them, but could not find these files on Android.

Does someone know where these files are located?

LogCat messages are not stored in files, but rather in circular memory buffers. You may clear these buffers using the following command:

adb logcat -c

Source: Using LogCat


Screenshot of Notifications on Lollipop There is a notification in Chinese showing on my Android Lollipop screen. I'd like to get a translation but have no access to a Chinese speaker at the moment, so I attempted to take a screenshot of it but the notifications list closes the moment I press the power button to access the screenshot command.

How do I get around this so I can take a screenshot of the notifications list?

Long press the volume down and power buttons at same time to capture a screenshot anywhere instead of using power menu selection. Android collapses the status bar as soon as you open power menu, so that will not work.

And use Google Goggles for Chinese translation.


The loud speaker on my Samsung Captivate stopped working! Is my phone broken or can I fix it myself? The speaker at the back of my phone, used for ringing and playing sound without headphones, is completely silent. Do I need to have it repaired?

The Samsung Captivate's speaker can work its way loose, usually after the phone takes a hard knock (like being dropped). In most cases you can fix it yourself by opening the back and pressing HARD on the speaker with your thumb. You should probably power the phone off to do this.


How can I merge my social network contacts with regular contacts in android Suppose, that I have a contact Ann Fisher in my phone (it's syncing with my google account). And suppose that this Ann Fisher has google plus account Annie Fisher.

How can I tell my phone, that this is the same person?

Right now I see, that it would only 'knew' it if both names (in G+ and my phone contact) are exactly the same.

Open up http://www.google.com/contacts and perform a search for the person you want to merge.

Tick both contacts, click "Add to my Contacts" and the Google+ contact will have a copy of itself made from "Other Contacts" to "My Contacts", then click More -> Merge


Controlling cameras via WiFi only I am interested in how to make video feeds from non-activated smartphones via WIFI (no 3/4G connection) accessible to a Windows workstation on that same local WIFI network.

I have a need to produce multiple video inputs (similar but not exactly same as multiple home security cameras) and am thinking that using older (cheaper) model smartphones might be able to be tied together via WIFI only. I know there are plenty of remote access access apps out there but i'm needing something to use with WIFI only - the phones will not have a cell carrier plan for 3/4G connectivity.

Ideally there's an app that gives basic control - zoom, start/stop, video/single frame - but it would be enough to just have a way for my network to pull whatever video feeds are present at a given time.

There are many apps on the play store that will do what you’re asking. I know for sure that “IP Webcam” will because I’ve used it myself. Here’s the link:

IP Webcam


How do I link the "My Info" Android local profile back to my Google+ account? My issue is similar to having a ME profile (it is in a section called ME), but not the same. None of the answers to this question worked for me. I believe the principle difference is that I cannot delete the "My Info" profile. This profile originally did not have my name or email address anywhere in it. It had my phone number listed twice, both with the "Mobile" category, and both 11 digits long (with the leading 1).

My other problem is that the answers say that I should reinput the "faulty data", but I have no faulty data. The data is correct, just listed twice. Is it possible to merge this account or get it recognized as the Google+ profile?

Answer originally from here: How to edit the "ME" contact?

Open Google+ on your phone.
Go into Settings / Your Name youremail@google.com / Contacts.
Check "Keep contacts up to date".
Go into Settings / Sync / Google.
Disable Contacts Sync. Wait a few seconds, re-enable it.
Wait a few more seconds, and the My Info entry should now have a Google+ connection.


How can I reformat internal storage on Android? I'd like some assistance with formatting the internal storage of my phone.
I've managed to unbrick it and to flash TWRP recovery but I can see that capacity of the internal storage is only 33 MB which is clearly wrong. Before I started doing all this it had GB of capacity not MB. So clearly I need to fix this. I tried to use Windows's disk manager
but the manager isn't detecting the phone or the storage.

Can I have some guidance here ? It's Meizu 5 pro. Any helpful input much appreciated.

cat /proc/partitions gives me:

major   minor  #blocks  name
   8       0   61071360  sda
   8       1   1024      sda1
   8       2   256       sda2
   8       3   256       sda3
 259       0   4096      sda21
 259       1   8192      sda22
 259       2   2048      sda23
 259       3   4096      sda24
 259       4   4096      sda25
 259       5   24576     sda26
 259       6   32768     sda27
 259       7   32768     sda28
 259       8   20480     sda29
 259       9   20480     sda30
 259      10   20480     sda31
 259      11   20480     sda32
 259      12   20480     sda33
 259      13   2621440   sda41
 259      14   524288    sda42
 259      15   57663468  sda43
 259      16   38912     sda44
   8      16   4096      sdb
   8      32   4096      sdc
 179      0    30253056  mmcblk0
 179      1    30252032  mmcblk0p1

ls -ld /dev/block/bootdevice/by-name/* gives me "No such file or directory"

Note:

The phone hasn't got any OS running at the moment.

I managed to use ADB and fdisk to get a list of locations (fdisk /dev/block/sda) in the phone. Then I pressed "p" for a print out.
I marked locations or partitions in question. Cache takes up all the storage whereas "userdata" gets only 38MB. In advanced mode where I get to make changes when I press "p" again I get different output. I don't understand this.

Update:

I modified the partition table to make it look like the way I need:

The problem I'm dealing with right now is that the phone doesn't want to mount the devices. Can't get it to mount system, cache, userdata.
I made sure "userdata" is still vfat and cache is ext4. Order number of partitions have changed though. Does that matter ?

latest update:

Looks like I was right for once. When I ran mount -a to mount all devices I got error because devices are assigned to different partition number.

check your file system type is ext4 or f2fs with mount

in TWRP you can format from command line (beware this is factory reset /data and /sdcard is lost)

adb shell
umount /sdcard /data
mount -r /system
mount -r /vendor
export PATH=/system/bin:/sbin
export LD_LIBRARY_PATH=/system/lib64:/system/vendor/lib64:/vendor/lib64:/system/lib:/system/vendor/lib:/vendor/lib
/system/bin/sh
mke2fs -t ext4 /dev/block/sda44 [fs-size]
or
mkfs.f2fs /dev/block/sda44 [fs-size]

Note: fs-size is optional. depending on encryption method you may reserve last -16384 bytes for encryption footer. in this case calculate sectors


Re-Installing an unpublished purchased app? Can i install a purchased app from playstore even if its unpublished from store?
I know it will be displayed on my apps list, but i think we can delete apps from that list too.In that case how I can find the app and reinstall it..

You'll have to just Google it and find a copy elsewhere on the internet.  If it's unpublished from the Play Store, you can't install it from there anymore.


How to switch from camera mode to media device? Device: Samsung Galaxy S4
Android: 4.4.2 (KitKat)

I can't switch from camera mode to media device when plugging the phone to my computer. How do I do this?

These steps can be follow in android: kitkat version to switch from media Device to Camera or vice versa...

Connect your Device with the computer.
It will automatically detect the USB connection. There are two ways to redirect to settings of Media device/Camera. In case of no usb Connection detect please check the cable or driver for device.
From Notification . There is notification at notification  screen.
Connected as Camera/media Device . it will redirect to USB computer connection.
Or in another Settings--> Storage-->navigation right button -->USB computer connection > Media device (MTP)/ Camera PTP.

Hopes it will help you.


Menu Button for Android 5.0 / Lollipop I recently upgraded from an Android 4.4/KitKat Samsung S4 to an Android 5.0/Lollipop Asus Zenfone 2. On my Android 4.4 device, there was a menu button on the bottom left. On my new Zenfone there is no menu button on the bottom of the phone or anywhere else on the device. ON the Zenfone, the return button is now on the bottom left and the Previous selections are on the bottom right.  There is a menu function on the Operating system of my phone to the upper right with 3 dots, but that is on the OS of the phone..  My question is where do I find the menu function to use within an app.  Many apps use a menu to do certain tasks. Please advise - thank you.

I just moved to the ZenFone2 from a moto razr as well. Not having a menu button is NOT going to happen. A bit of digging, and found the option to set the recent apps button to menu, on long press. :settings/device/asus customized settings/