How do I tell where Google Fit is getting step data? I have activity tracking disabled in Google Fit. I have three apps (HabitBull, MyFitnessPal, and Progression) connected to it and I don't believe they've recorded any step data. Google Fit shows 31 miscellaneous steps from yesterday and 639 from today. There isn't an indicator in the app showing where it came from, for example my weight is recorded in Google Fit and shows it came from MyFitnessPal.

It seems the steps shown come from activities. The only time I see Fit record steps (configured like yours) is from a specific activity. Check the 'activity' card/area and try to determine which app sent the data from there.


What vCard formats/versions and encodings are supported for import? I have tried to import vCard files using default Contacts app in Samsung Galaxy S6 (details here), but I am not sure about format required (vCard version supported) and Encoding to be used.

I have used Windows-1250 encoding and it worked but all the special characters were imported as ?.  When using UTF-8 it failed to import completely. What is the recommended character encoding and recommended vCard format/version?

Currently my vCard file looks like this with Windows-1250 encoding:

BEGIN:VCARD
VERSION:3.0
NAME:XXXX Günzel
N:Günzel;XXXXX;;;
TEL;CELL:+XXXXXXXXX
END:VCARD

That's not really an Android question, but assuming you were asking "how can I import this VCard file correctly into my Android address book": Some adjustments might be required to the VCard file. I found a specification summary in this Github issue comment:

  vCard 2.1 is US-ASCII by default. Individual properties can be overridden with the CHARSET= parameter.
  vCard 3.0 requires the mimetype to include a character set, e.g. Content-Type: text/vcard; charset=ISO-8859-1.
  vCard 4.0 is always UTF-8.

Giving an example for 1., taken from this article:

BEGIN:VCARD
FN;CHARSET=UTF-8:Mr. Dr. John Maurice Benjamin Doe Ph.D.\, J.D.
N;CHARSET=UTF-8:Doe;John;Maurice,Benjamin;Mr.,Dr.;Ph.D.,J.D.
END:VCARD

Further readings include RFC 6350 :)


When will my device get the Android 4.4 update (KitKat)? Android 4.4 (KitKat) was officially announced on October 31, 2013.

(You can review the high level changes in KitKat at the official Android Developer's site or the announcement on the official Android blog.)

Of course, not all devices will get this update right away and others won't get it at all. Each manufacturer and carrier often choose to add their custom modifications which tend to delay the official release.

When will each device get Android 4.4, either officially or unofficially, if ever?

See also:

When will my device get the Android 4.3 update (Jelly Bean)?
When will my device get the Android 5.0 update (Lollipop)?

This community wiki will list all of the known and rumored dates for devices. If you have an update make sure to follow the format that's been established, and the following guidelines:

Keep phones in alphabetical order listing the manufacturer and model
Specify if the date is confirmed or rumored and link to the source
If there is an unofficial release, link to the site where it can be downloaded

Phones

HTC

Droid DNA

"HTC says it plans to update the handset to KitKat by the end of Q1 2014, 'pending certification from your carrier.'" AndroidCentral

One

Google Play Edition: 2013-11-25 (+Android)
Unlocked and Developer models: 2013-11-29 (@HTCUSA)
North American models: "Within 90 Days" (AndroidCentral)

One Max / One Mini

"the update for both will arrive in the near future." DigitalTrends

One X and One X+: Never (source)

LG

G2: December, 2013 (confirmed)
Nexus 4: 2013-11-19 (AndroidCentral)

Factory Image available here and Proprietary Binary available here.

Motorola

Atrix HD (AT&T): "Will be upgraded" (upgrade status)
Droid Bionic: "Will remain on Android 4.1.2" (upgrade status)
Droid Mini/Maxx/Ultra: "Will be upgraded (upgrade status)
Droid Razr HD Developer Edition/Droid M Developer Edition: "Will be upgraded" (upgrade status)
Droid Razr M/Droid Razr HD/Droid Razr Maxx HD: "Will be upgraded" (upgrade status)
Electrify M (US Cellular): "Will be upgraded" (upgrade status)
Moto G: February 2014 (AndroidCentral)
Moto X: "Will be upgraded" (upgrade status)

Verizon: 2013-11-19 (confirmed)
T-Mobile: 2013-11-21 (confirmed)
AT&T: 2013-11-22 (confirmed)
Sprint: 2013-12-12 (AndroidCentral)

Samsung

Galaxy Nexus:

Official: Never (source)

Galaxy Note 2 and 3: no official announcement. Rumoured to be after the Galaxy S5 launch.
Galaxy S3: no official announcement. Rumoured to be after the Galaxy S5 launch.
Galaxy S4:

Google Play Edition: 2013-11-25 (+Android)
Sprint: 2014-2-13 (Engadget)
Others: no official announcement. Rumoured to be after the Galaxy S5 launch.

Sony

Xperia C: never (confirmed)
Xperia L: never (confirmed)
Xperia M: never (confirmed)
Xperia SP: never (confirmed)
Xperia Z: planned, no date given (confirmed)
Xperia Z Ultra: planned, no date given (confirmed)
Xperia Z1: planned, no date given (confirmed)
Xperia ZL: planned, no date given (confirmed)

Tablets

Asus

Nexus 7: 2013-11-13 (confirmed)

Nvidia

eVGA Tegra Note, Advent Vega Tegra Note, etc. : 2014-02-18 - released

Samsung

Nexus 10: 2013-11-13 (confirmed)

Sony

Xperia Tablet Z: planned, no date given (confirmed)


Transfering all photos via USB cable When I connect my OnePlus One by USB to Windows 7 or Windows 10 (I also tried Ubuntu), I first drag down the notification panel, and then select "File transfers" (I also tried "Photo Transfer (PTP)").

Under Windows I can then navigate to Computer\A0001\Internal storage\DCIM\Camera, and access 236 of my most recent photos and videos. However, I have more photos and videos than this on the phone. If I open the default camera application, and swipe left from the right edge, I can see many more photos - all the photos I've taken in fact. Why does Windows not show me these? Are they stored in another location? Ultimately, how can I tranfer them to my computer.

Option 1.
Look for any software that can help you import the photos from the phone instead of looking for the pictures in directories ##google has a lot of hits.

Option 2.
Click one those extra pictures, check the details and see the folder path of the file. You can then look for that folder when you connects the phone to the pc.


How to run an Android init service with superuser SELinux context? I want to run an Android init service. I have a device which has rooted shell (purchased from manufacture as rooted). This device doesn't have Magisk or other su manager but adb shell is rooted and it has userdebug ROM installed on it.

I have followed following steps to set up init service:

Created /etc/init/custom.rc file with following contents:

#/etc/init/custom.rc

# define service, use executable here if script not needed
service custom /system/bin/custom.sh

    # don't start unless explicitly asked to
    disabled

    # run with unrestricted SELinux context to avoid avc denials
    # can also use "u:r:su:s0" on userdebug / eng builds if no Magisk
    # it's required if SELinux is enforcing and service needs access
    # to some system resources not allowed by default sepolicy
    # seclabel u:r:magisk:s0
    seclabel u:r:su:s0

# start the service when boot is completed
on property:sys.boot_completed=1
    start custom

Created /system/bin/custom.sh with following contents:

#!/system/bin/sh

# execute the binary, should run in foreground, otherwise get in loop
echo "$(date): Starting program..."
exec /system/bin/executable

Placed my executable at /system/bin/executable.
Gave permissions to all files as following:

# Give rights to the executable
chown 0.0 /system/bin/executable
chmod 554 /system/bin/executable
chcon u:object_r:system_file:s0 /system/bin/executable

# Give rights to the custom.sh
chown 0.0 /system/bin/custom.sh
chmod 554 /system/bin/custom.sh
chcon u:object_r:system_file:s0 /system/bin/custom.sh

# Give rights to the custom.rc
chown 0.0 /etc/init/custom.rc
chmod 644 /etc/init/custom.rc
chcon u:object_r:system_file:s0 /etc/init/custom.rc

Reboot the system.

I got following error:

[   55.829099 / 06-09 23:51:09.279][0] init: cannot execve('/system/bin/custom.sh'): Permission denied
[   55.850172 / 06-09 23:51:09.309][6] init: Service 'custom' (pid 7729)
[   55.850224 / 06-09 23:51:09.309][6] init: Service 'custom' (pid 7729) exited with status 127
[   55.850243 / 06-09 23:51:09.309][6] init: Sending signal 9 to service 'custom' (pid 7729) process group...
[   60.830224 / 06-09 23:51:14.289][6] init: starting service 'custom'...
[   60.832073 / 06-09 23:51:14.289][1] init: cannot execve('/system/bin/custom.sh'): Permission denied
[   60.832153 / 06-09 23:51:14.289][3] audit: type=1400 audit(1560142274.289:131): avc:  denied  { transition } for  pid=8035 comm="init" path="/system/bin/custom.sh" dev="sda24" ino=8146 scontext=u:r:init:s0 tcontext=u:r:su:s0 tclass=process permissive=0

I have very little experience with SELinux Policies. Please guide me how can I fix this.

Here the error is:

audit: type=1400 audit(1560142274.289:131): avc: denied { transition } for pid=8035 comm="init" path="/system/bin/custom.sh" dev="sda24" ino=8146 scontext=u:r:init:s0 tcontext=u:r:su:s0 tclass=process permissive=0

In easy words it states that init is running with its context u:r:init:0, you want it to execute /system/bin/custom.sh with context u:r:su:s0, but it's not allowed in sepolicy.

Rooting a phone gets two things: UID 0 (which you have) and an unrestricted SELinux context (which you don't have). Magisk allows any other context to do anything with its own contexts (u:r:magisk:s0 and u:object_r:magisk:s0). And it can do anything to any other context. See details in this answer.

u:r:su:s0 is a limited context which doesn't allow init to make transition to itself. Only adb can do this on userdebug or eng builds of a ROM. See reference and this answer for details.

Possible solutions:

Run service in init's context if it doesn't need to access any resources which init isn't allowed to access. But in most cases it's highly unlikely.
Root your device with Magisk and run service with u:r:magisk:s0 context as explained in this answer.
Modify your SELinux policy to allow this transition. Inject the following statement to sepolicy using magiskpolicy or sepolicy-inject:

~# magiskpolicy --live 'allow init su process transition'
~# sepolicy-inject -s init -t su -c process -p transition -l

Also see dmesg for any other denials. As a reference, on my device init is allowed to do following operations to Magisk:

allow init magisk : process { fork transition sigchld sigkill sigstop signull signal ptrace getsched setsched getsession getpgid setpgid getcap setcap share getattr setexec setfscreate noatsecure siginh setrlimit rlimitinh dyntransition setcurrent execmem execstack execheap setkeycreate setsockcreate getrlimit }
allow init magisk : fifo_file { read write getattr open }
allow init magisk : fd use
allow init magisk : unix_stream_socket { getopt connectto }
allow init magisk : binder { impersonate call set_context_mgr transfer }

Then extract boot.img and ramdisk (only on non-system-as-root devices), replace /sepolicy with new policy file copied from /sys/fs/selinux/policy, repack boot.img and flash back.
Set SELinux permissive

From root adb shell do echo -n 0 >/sys/fs/selinux/enforce or setenforce 0. However this is not permanent and will be set to enforced on boot. init can't set it permissive. Also setting SELinux permissive is a security risk and hence never recommended.


Can't save anything to sd card I have an HTC desire 320. I just bought from a koodo stand and the lady talked me into getting a 16g sd card and I didn't even notice till my internal storage was full that it pretty much doesn't work so far I have a notepad app a messenger app and a photo app on it using less than one gig but other than that nothing will save to it even if my internal storage is full and sometimes it randomly unmounts it's self. I've tried everything I could but nothing seems to work.

Since Android 4.4.0 Kitkat, Google has disabled the write permission by default for security measures.

Since the HTC desire 320 is shipped with Android OS, v4.4.2 (KitKat), you can't write to the SD-card by default.

If you want to get the write permission back you must root your device and use an app such as SDFix. You also can manually edit the permission list when you are rooted, but it will be reset every power cycle.


Google Play Music and SD Card Trouble I have a Moto G3 with a measly 4GB of storage, so I bought a 32GB SD card. I installed it as internal storage. I have a subscription to Google Play Music and spend alot of time without an internet connection so I download alot of music. I set GPM's storage location to the SD card, but when I try to install apps it says I'm out of room even though there's plenty of space left on the SD card. I took a look at the storage and GPM is using practically all the internal storage. I guess apps can't install it you don't have internal storage free? I'm also confused because the SD card shows different amounts used in different menus. I need to either get GPM to store on the SD card like it should or get apps to install anyway.

I guess you are on Andorid Marshmallow (6.0.x).

When you put that SD card to your device it should have prompted how want you use the new SD card: as a portable device or internal storage.

So I think you have choosed the portable device option.

In this case to use your SD card as internal storage follow these steps:

Make sure you have made a backup from your SD card before the formating.
Go to Settings -> Storage
Select your SD Card -> tap the three-dot menu -> Settings
Select Format as internal -> Erase & Format
Your SD Card will be formatted as internal storage
Reboot the phone *

*: This is very important, otherwise you may end up frustrated with issues like MTP not showing SD card, some apps not working properly, etc.

P.S.: If you are on Android Lollipop (5.1.x) you have to root your decvice and use 3rd party apps to move app data from internal storage to external storage (SD card).


Android Tracking by vendor I am concerned about the type of tracking done by the vendor of my Android Phone.
Can they track my location when I connect my phone to internet or GPS?
Do they do this tracking once after device activation or repeatedly after some time interval?
And are they legally allowed to track me?

See How does Google know where I am? from SE security for good answers on this. Reproducing key extracts here:

When only your cellular data is on and Wi-Fi / GPS is disabled, Android uses Cell Phone Triangulation . See John Deter's answer

Each cell tower has a set of ID numbers that identifies them to the phones. It broadcasts its identity constantly so that phones can connect to it as they move around....If you're in a larger populated area, like a city, your phone will usually get signals from more than one cell tower....
So how does Google know any of where these cells, wedges, slices, and intersections are?
From the billion Android phones that have GPS turned on (including yours, when your GPS was on), constantly sending reports of their GPS location and what cell towers and signal strengths they see. Google has used this data to map out where each cell is located, and what the approximate signal strength is at each point. They have a giant database on their servers with this information; your phone queries that database by making a network request that lists all cell towers that are in range, and the Google servers respond with your estimated location.

From BSSID information from your WLAN Access point even if your GPS and Wi-Fi are turned off.
See INV3NT3D's answer

Google and others like Apple and Skyhook build a Database which links WLAN BSSIDs to a geographic location. A BSSID is like the MAC address of a access point that gets broadcasted by that access point. It is therefore "public viewable" if the BSSID broadcast is enabled, which is the default for most access points....So, essentially, when you ARE using WiFi and GPS, Google's database of BSSIDs is updated with a geographic location associated with that BSSID....So it's not that the ISP is giving Google the location of their routers, it's that your phone has already helped to build a database of the Access Points around you, and Google uses this data for geolocation.

So, you are pretty much tracked all the time and more accurately perhaps when your GPS is on and you are in a Wi-Fi dense environment (did you notice that your map location accuracy is much better while traversing a business or shopping area? )
Coming to other points in your question, tracking is periodic and I doubt if the frequency of updating would be available in public domain ( my assumption and open to correction )
Coming to the legality, this SE site doesn't deal with it but I am sure when you tick I agree on activating the device, you would have agreed to this ( Who reads them anyway? )


How to manage a screencast with two Android devices? I need to do an oral presentation which involves demoing an Android application that requires showing two devices at the same time. I know about the Android Screencast as a way to capture the Android screen to my computer output but don't know how to manage two devices.

Any idea?

If both devices are rooted, you can use AirDroid, which offers an...

  Realtime Android screen (experimental feature, root permission required)
  View your Android's screen, take a screenshot, or even record a screencast.

As you connect to the device using a web browser, you can just have two browser windows open - et voila, both devices should be shown simultaneously.

Alternativ solution: droid VNC server (and other VNC servers). Again, requires rooted device -- plus a VNC client on the computer.

There are several more solutions, but they mostly fall in either of the mentioned categories.


Persist Background Process Limit setting Is it possible to persist the Background Process Limit setting? It's lost upon reboot and reverts to Standard Limit.

Settings \ Developer Options \ Background process limit

Android 4.0.3

Do not think its meant for persisting... See Dianne Hackborn's comment

Also had a mosey around the ICS source code found in packages/apps/Settings/src/com/android/settings/DevelopmentSettings.java

Source code to the related screen, found on Android's github.

By looking for the variable that is associated with Settings > Developer Options > Background Process Limit (see line number 103)  and (See line number 215) called mAppProcessLimit.

With that in mind, keep looking further down in the source, the routine that is responsible for saving the settings for this particular screen called onPreferenceTreeClick.

That is, in programming parlance, called a "listener" that is monitoring the changes made on that screen and writes it out immediately to the backing store by Android. (See between line numbers 790 and 858)

Unfortunately, the "listener", in this case, does not have a reference to the persisting/saving of the value for that variable mAppProcessLimit; which is what the OP is experiencing, set it for the duration of when the handset is alive, then upon reboot, it gets lost.

In short, you cannot do anything about this as that is built straight from the oven, and bundled onto your handset, but with that in mind, you can roll-your-own-custom ROM variant of ICS with a modified version of the source to do that.


How does the automatic brightness settings work? Maybe a dumb question, but I couldn't find any official documentation to confirm.

Does it use the light sensor? Do most devices support it?

Yes, it uses the light sensor, and yes most of the smartphones support it.

As for how does it work;

Smartphones, generally, have a light sensor located in the bezel right next to the screen that measures the ambient light together with control software that appropriately raises or lowers the screen brightness based on the measured light level. If you are watching in the dark the screen should be appropriately dim. When the ambient light level is higher the screen needs to be made appropriately brighter for two reasons: because of glare from ambient light reflected off the screen, which washes out the image, and because the eye's light sensitivity decreases substantially as the ambient light level increases.


Reset Chrome website permissions How can I reset website permissions on Chrome for Android?

I have face detection software hosted on my home server (192.168.1.7:8020), and if I go to 192.168.1.7:8020/face-detection.html I used to get a notification about my tablet camera usage. Every time I clicked "allow" it would work.

But I missed "allow" button today and clicked "reject". Now I can't find where or how to reset media permissions for this particular page/site.

I'm on Nexus 10 with Android 4.2.2 (3.4.5-gaf9c307) using Chrome 26.0.1410.58 with WebRTC flag on.

Try this:

Menu - Settings - Content settings - Website settings

From there you can clear data for individual sites.

If that doesn't work, maybe look into Remote USB Debugging: https://developers.google.com/chrome-developer-tools/docs/remote-debugging


How to backup contacts when my touchscreen is cracked? My touchscreen on my Samsung Galaxy screen is cracked. I am unable to use the screen. It has a pattern lock. When I use Kies 3 it says that my phone is locked. How do I unlock it with the pattern password enabled?

Hi You can't unlock that even you slide your fingers on the screen, unless you will repair that with new ones.

 And if you want your password to be removed, then follow these steps
Note: Your phone's buttons (volumes, home and power) must be functional.

Reboot into recovery
Turn off your phone, After it's completely off
Hold and press power and volume up button together, this will bring you to your recovery.

Note: Different phone have different key configuration to access recovery mode, for now we'll be using the most common key combination. If it doesn't work for you, you must search on google on how you can access your recovery mode, be sure to include your phone model in your searches.
Once you are in the recovery mode, you see some kind of options and the one that we will be using is.

Wipe data/factory reset - is a feature that erases all device settings, user data, third-party applications, and associated application data from an Android device's internal flash storage to return the device to the condition it was in when shipped from the factory.
Backup User Data (optional) - this method backups the following:

Google Calendar settings
Wi-Fi networks & passwords
Home screen wallpapers
Gmail settings
Apps installed through Google Play (backed up on the Play Store app)
Display settings (Brightness & Sleep)
Language & Input settings
Date & Time
Third-party app settings & data (varies by app)

Restore User Data (optional) - It will restore the data through the backed up data

Choose Backup User Data if you want to restore your data anytime
Note: This may restore your screen lock (password, pattern or PIN)

To remove your password, select Wipe data/Factory reset, this will also remove everything in your phone, and restore to it's original state just like the first time you used it after buying


I accidentally reset my user data on my phone, can I get it back? I forgot my password to my phone and it reset all my data, is there any way possible to get back my lost data?

Thank You.

No, you will not be able to get your data back.  This is security, and is by design.  Some of your data will be backed up to the cloud (like your contacts are synced to GMail for instance).  Anything on your device (pictures, SMS history, etc) are lost forever.


How to troubleshoot OTG cable? Because android doesn't handle the broken screen problem very well (frankly, it doesn't handle it at all) I bought OTG cable in hope that I'll be able to connect my mouse to the device.

I connected it to the broken phone (Huawei U8500) and nothing happened. Well, I tried my new android phone Samsung GT-S7710 with Android 4.1.2. However, still no effect. I tried USB flash disk, but that didn't do anything at all.

How can I debug the USB OTG function? To find out what's actually wrong?

Maybe try OTG Troubleshooter first to check if your setup is working:

https://play.google.com/store/apps/details?id=com.homesoft.otgtroubshooter

It will check if your device supports 'usb host mode', if your OTG cable is working and if a mass storage device is found.


How can I put the Google Now widget on the lockscreen with Andoid L? I cannot figure out how to replace the clock with the Google Now widget.
I tried long tapping or pressing in any direction. Couldn't get to the widget selection.

Lock screen widgets were removed in Android L.

Citation: Exploring Android L: Lockscreen widgets also bite the dust


Unrooting Nvidia Shield Tablet I have rooted my Nvidia Shield Tablet successfully, using this guide.
It installs CWM recovery, and I have also installed Link2SD.

I am not planning on unrooting it now but if I wanted to then how would I do this, removing root and cwm recovery, without losing any data?

Also would I have to get rid of Link2SD as well, and how would I move all my apps back if so?

You can download the factory image from here. Open the file and extract the recovery.img file. Then connect the device to the computer with USB debugging turned on. Then open terminal/command prompt and navigate to where adb/fastboot is stored, then run

fastboot flash recovery recovery.img

As far as unrooting, the easiest option would to be, download SuperSu from the play store, which can be found here. Then in the settings for SuperSu, you will see Full Unroot. That will remove root for you.
As far link2sd card. From the FAQ. It says the apps will still work. http://www.link2sd.info/faq

Q.What happens to my linked apps if I uninstall the Link2SD app?
Will my linked apps will be automatically uninstalled or moved back to phone memory? And then if I install it back will they stay there?
Nothing happens. All linked apps remain intact and can be run even if you uninstall the Link2SD.
And if you install Link2SD back, you can see that they are there as linked.


Want to programe my phone so that when i plug an aux cord the music app will automaticly start I want to programe my phone so that as i plug in my headset(aux) a music app will start simultaneously.

you can try NRG Player.It has all the functions you need with headset.


Largest HTC Desire SD card? My phone keeps telling me that my storage is low and I barely have any apps on my phone because it tells me this at least three to four times a day. I downloaded this app and moved all my apps (which is a total of three- not including this one) to my SD card and it still keeps telling me that my storage is low. So I deleted some pictures and all my messages. But it keeps telling me the same thing. And I was wondering if I could get a bigger SD card. Mine is a 8 gig. I also was wondering if I can get a new SD card, what is the biggest SD card for my Desire? If I do get a new SD card, can I transfer all my stuff from my old SD card to the new one? Thanks for the help in advance! :)

Your phone (as most other Android phones) have two kinds of persistent storage -- internal and external. The internal storage is fixed into hardware, and is not intended to be user-serviceable. Your SD card is the external storage, and is very much replaceable -- it is very accessible and can be swapped for another one, including greater capacity ones (see this question for some additional information).

However, replacing the SD card won't help in your case -- your phone complains that its internal storage space is low. This is a problem that has plagued HTC Desire, which is otherwise a great device.

Some things you can do:

Move applications to the SD card
Remove unneeded applications (from your words, not quite possible)
Clear up some messages, drafts, application caches, and in some cases application data
Downgrade some of the preinstalled applications that you do not use. See this question for more details


Galaxy Tab 4 8.0 frozen after rooting with Kingoroot I rooted the tab successfully with Kingoroot and installed Droidproxy and everything was fine until I did a restart to see if that would send app traffic through proxy.

It powered down and came back up until the Verizon logo screen where it froze. After sitting there for several hours, I found the power + volume down trick to get it to do SOMETHING, but still can't get it to boot.

Have tried the factory reset boot option, and everything else I know to try, but still no luck. I'm new to Android, but familiar with IT from a Windows perspective, so any help from simple to complex would be appreciated!

This state is called a soft brick easily solvable by flashing stock firmware through a flasher: Odin for Windows systems and Heimdall for MAC OS.

You can find a complete guide + download links in this thread from XDA Developers site. There's a safe rooting process also described there. And you can learn interesting stuffs ;)

Side effects: Loss of personal data (Photos, musics, apps).

Good luck.


Why fastboot devices is empty on Linux? I'm using Ubuntu Yakkety Yak, 16.10.

According to Android SDK manager:
Android SDK Tools v 25.0.3
Android Build Tools v 25.0.2
Android SDK Tools v 25.2.5

My phone is a OnePlus 3t and I'm developing for it for a while, adb works normally, udev rules are configured. I enabled OEM boot, and manage to reboot in a way which looks like to me fastboot. After rebooting to "fastboot" the device's USB id is exactly the same as in normal boot. That's suspicious because I read in some forums that it might be different after fastboot boot (I checked if I have to adjust udev rules).

fastboot devices

doesn't show any devices. My suspicion is that I don't really boot into fastboot mode. Here is capture when I reboot, I press the power button:

If I don't press the power button, the up/down offers recovery mode. In recovery mode I can wipe all data or the cache and also install from internal storage or ADB. data decrypts successfully. Needless to say I cannot install SuperSU, TWRP img doesn't appear in that install menu.

(My goal is to unlock the bootloader, install TWRP and SuperSU so I can perform the xml file config mod for DayDream.)

Any help is appreciated.

I misunderstood what does it mean to boot to fastboot mode. By reading through tutorials I thought when I saw the screen on the screenshot, I still needed to boot (power button) into fastboot mode. Turns out that when I saw that screen above, I was already in fastboot mode and could issue the unlock or flash commands.

Looking at some more detailed Youtube videos made that clear. After tackling a typo I successfully flashed TWRP, installed SuperSU. The OP3 DayDream mod is not working yet though: DayDream apps still displayed as not compatible with my phone in the app store, even after the XML modification and reboot.

One extra advice: a simple adb backup -all won't backup everything, as I learned.

https://forum.xda-developers.com/oneplus-3t/help/oneplus-3t-fastboot-ubuntu-16-10-t3561732?goto=newpost

During 2017 summer I managed to get the DayDream hack working, I used SuperSU. I just transitioned to Magisk, so I can use Android Pay and hardware tokens. The DayDream hack does not work since the last couple of OS updates in the fall.


How do I turn off Messenger's default browser? About a month ago, Messenger implemented an in-app browser, similar to the one on the main Facebook app. It's terribly slow, and I'd love to load links in Chrome (or Tumblr, or Twitter, or whatever app is actually meant for the link). I've looked all over and cannot figure out how to disable it - all help I find is for Facebook's in-app browser, not Messenger's. I'm using a Oneplus 3 with the default Oxygen OS. Thanks!

Go to messenger, go to Photos & Media and switch on: "Open Links in Default Browser"

(Click to enlarge)


Stuck at Google screen, recovery mode just turns the screen black I have rooted my Nexus 5 and installed CyanogenMod (Android 6) a few months ago.
It has always been running fine, but today while scrolling a web page it froze, so I long-pressed the power button to reboot it.

The phone started rebooting, showing the Google logo and unlocked lockpad, then the CyanogenMod robot head, as usual.

It then rebooted by itself, once again the Google logo and robot head, and got stuck there.

After 5 minutes without visible progress I long-pressed the power button again.

Now it does not go further than the Google logo screen. I tried again rebooting it a few times, it is always stuck at that screen.

Starting in recovery mode just turns the screen black (the screen is active but only showing black pixels).

#> fastboot oem device-info
...
(bootloader)    Device tampered: true
(bootloader)    Device unlocked: true
(bootloader)    off-mode-charge: true
OKAY [  0.003s]

#> fastboot flash recovery twrp-3.0.2-0-hammerhead.img
target reported max download size of 1073741824 bytes
sending 'recovery' (14524 KB)...
OKAY [  0.665s]
writing 'recovery'...
FAILED (remote: flash write failure)
finished. total time: 44.721s

#> fastboot erase cache
******** Did you mean to fastboot format this partition?
erasing 'cache'...
FAILED (remote: failed to erase partition)

#> fastboot erase cache
target reported max download size of 1073741824 bytes
erasing 'cache'...  [stays like this forever]

Running fastboot boot twrp-3.0.2-0-hammerhead.img starts TWRP, which shows that Data and System are 0MB:

How to fix it?

FAILED (remote: flash write failure)

Indicates your hardware is dead, so replace the main board or the whole device.

It was designed with a built in limited lifetime of maybe 100,000 writes. LG had to cut some corners to make the Nexus 5 so cheap which is maybe why they die a bit sooner than a flagship device of more then 3 times the cost.

You could try heat annealing the memory but you would need some electrical engineering toys to recover from the resulting hard brick (the firmware would be wiped).


Android phone will only boot into recovery and boot loader My HTC one will only boot into the recovery or the bootloader. I am trying to flash a stock ROM to my phone from the terminal on my mac, but I am getting this error:

Mikes-MacBook-Air:HTCOneRoot Mike$ ./fastboot-mac flash zip ATT-3.17.502.3-Stock-Rooted-DEODEX.zip
sending 'zip' (1114992 KB)...
OKAY [ 37.597s]
writing 'zip'...
FAILED (remote: not allowed)
finished. total time: 37.618s

Mikes-MacBook-Air:HTCOneRoot Mike$

I don't know how you came up with that command line, but it appears to be incorrect. The format of the fastboot flash command is:

fastboot flash partition imagefile

I've never heard of a phone with a "zip" partition: they're usually called "boot", "recovery", "system", and "userdata".

My guess is that you need to unzip the zip file you've downloaded, which will give you files named something like "boot.img", "recovery.img" and "system.img". It may also include a script that already has the right fastboot commands to flash the whole system (but you'd need to rename fastboot-mac to fastboot to run it), and/or a readme file explaining the process. Read it carefully and follow the steps exactly. Guessing what arguments to give to fastboot will probably result in bricking your phone.


Google Chrome icon disappears from app tray after restarting? I have installed the Google Experience Launcher on my Nexus 7, and have a variety of applications in my app tray, including Google Chrome. However, each time I power off and power on the device, Google Chrome disappears from my app tray;

I can re-add it fine and it will stay present until the next time I power off the device. What is causing this problem and how can I resolve it?

That happens on Stock "Launcher" sometimes, and I don't think that there's anything you can do until Google, or the manufacturer releases an update. Until then you can use a different launcher if it really bothers you. Personally, I use Next Launcher 3D and nothing else. Izzy's response seems most feasible to me.


Is erasing the `misc` partition a solution to automatic/unnecessary boot into TWRP after having installed LineageOS 15? I'm sure this question has been asked before, but I'm unable to find a good answer that I can understand, so bear with me:

I've recently installed TWRP & LineageOS 15 on my Moto G5 (cedric), although I'm sure I messed the process up a bit, because I had almost-bricked my phone in the meantime and don't really understand how I solved it either. Now everything is working again, except for the fact that when I (re)start my phone, it automatically boots into TWRP instead of LineageOS. The way I boot into LineageOS anyway, is to tell TWRP to reboot into the bootloader (or go to the bootloader directly with the volume key trick), and then from the bootloader I use 'start'.

A possible solution that I've found on the internet involved changing / erasing the misc partition, as it would be responsible for directing a boot to either TWRP or LineageOS. However, other google results tell me that erasing misc could gravely upset your phone.

The main question is: Is it correct that zero-ing the misc partition is a solution to this boot issue, as the possible solution states? Or is it misleading and the boot issue is probably something else entirely?

Here's the hexdump of the current contents of my misc partition (the result of first copying it to my computer with dd if=/dev/block/bootdevice/by-name/misc of=/storage/FE84-1705/misc.img and adb pull ..., and then running hexdump -C misc.img):

hexdump -C misc.img
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000800  62 6f 6f 74 2d 72 65 63  6f 76 65 72 79 00 00 00  |boot-recovery...|
00000810  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000840  72 65 63 6f 76 65 72 79  0a 2d 2d 77 69 70 65 5f  |recovery.--wipe_|
00000850  64 61 74 61 0a 2d 2d 72  65 61 73 6f 6e 3d 77 69  |data.--reason=wi|
00000860  70 65 5f 64 61 74 61 5f  76 69 61 5f 72 65 63 6f  |pe_data_via_reco|
00000870  76 65 72 79 0a 00 00 00  00 00 00 00 00 00 00 00  |very............|
00000880  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001500  71 65 20 30 2f 30 00 00  00 00 00 00 00 00 00 00  |qe 0/0..........|
00001510  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00001520  31 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |1...............|
00001530  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00100000

And this is the result of running fdisk -l misc.img:

Disk misc.img: 1 MiB, 1048576 bytes, 2048 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Furthermore, I've installed TWRP 3.2.1-0-cedric and LineageOS 15.0-20171125_073252-UNOFFICIAL-cedric.

Some comments for those who need (save your time to google):
What is the misc partition?

MISC - also FOTA on older devices
It's a tiny partition used by recovery to communicate with bootloader store away some information about what it's doing in case the device is restarted while the OTA package is being applied.
It is a boot mode selector used to pass data among various stages of the boot chain (boot into recovery mode, fastboot etc.). e.g. if it is empty (all zero), system boots normally. If it contains recovery mode selector, system boots into recovery mode.
It may also carry some necessarily required information in the form of switches to control hardware or settings related tasks such as CID (Carrier or Region ID) information and USB configurations etc.

Source: [INFO] ANDROID DEVICE PARTITIONS and FILESYSTEMS | XDA Developers Forums
Locating misc/fota folder
From TWRP terminal (or via adb shell):
ls -d $(find /dev/block -name by-name)/*

Windows equivalent of hexdump
Windows doesn't provide an equivalent command for hexdump. However, in PowerShell 5.0+, there is one with format-hex. Still, in my opinion hexdump is better.
Don't forget to backup
To create backup:
adb pull /dev/block/platform/soc/7824900.sdhci/by-name/fota fota.img

To restore backup:
adb push fota.img /dev/block/platform/soc/7824900.sdhci/by-name/fota

In my case it didn't work, so I restore it because only the OEM knows what it means


How can I tweak the amount of RAM allocated to Chrome for Android? I have a Samsung S4 running Android version 4.4.2. I am using Chrome browser version 35.0.1916.141. I am constantly on the go and I utilize my phone's browser pretty heavily. I've noticed that with heavy use, it becomes sluggish. This is very frustrating when I  am trying swift through my open tabs while maintaining a fluid experience.

My question was How can I tweak the amount of RAM allocated to Chrome for Android?

I found a tweak that will allow me to manipulate the amount of RAM that is allocated to the Chrome browser on Android.

By default the Chrome browser for Android can only access up to 128MB of RAM. This can be tweaked by simply opening the application Chrome Browser and typing the following string in a new tab and tap Enter:

  chrome://flags/#max-tiles-for-interest-area

In the menu that pops up, change the value from Default to 256 or 512.

You will be prompted with a notification that will ask you to Relaunch Google Chrome in order for your changes to take effect. Click Relaunch Google Chrome and enjoy the added speed.


How do I get quick access to common text snippets? When filling out an online shopping form the other day via my browser, it sucked that I needed to manually type my email address, street address, postal code, etc.  Even credit card number (though I realize there are security implications there).

Is there a way to store commonly used snippets of text somewhere for quick and easy cut & paste?  Perhaps something integrated via a soft keyboard and key combos?

This relates a bit to Share (through share menu) directly to own email address, but I want my email address to be accessible from any application.

I would put it into the keyboard's user dictionary.

There are a few clipboard/snippet manager application, you might be interested if you need to store longer texts:

Clipper
Text Snippet Lite IME


How do I delete an email in Gmail from the notification screen? The latest Gmail app update (26 MAR 2013) introduced a feature for devices running Android 4.1 (Jellybean) and higher wherein a user could directly archive / reply to an email from within the notification pull down.

The "What's New" section on the Play Store however also lists the ability to delete an email.

  Android 4.1 (Jelly Bean) and up:
  • Reply, archive or delete from notifications - no need to open the app

I'm running CyanogenMod 10.1 (Android 4.2.2) on my Samsung S2 i9100 and the options for Archive and Reply show up when I pull down the individual email notification but nothing for Delete shows up, even while in Landscape mode. Any ideas on how this can be implemented or a setting that I've missed to enable this functionality?

Yes - there is a setting you need to change.

The Notification bar's actions are based on what you have GMail set up to do when swiping away an email within the app.

To change it from Archive:

Open Gmail and go to Settings there change the Swiping conversation list from Archive/unlabel/delete to Always delete

This changed my Notification bar action from Archive to Delete


How to use existing Whatsapp account on new mobile with new SIM? I could not use my existing whatsapp account because My mobile have been stolen. I bought new mobile and new SIM as well, now I want to configure my existing whatsapp account on new Mobile with another SIM number. Can anyone please help me?

You cannot use your old Whatsapp account with new sim when you don't have access to your old number.

All you can do is to contact your network provider and explain the situation, submit documents and request a new sim with the old number. Once you get your old number back, you can either choose to use whatsapp account with it or shift the account to new number.

Shifting Whatsapp account to new number maintains the old account's whatsapp groups, account info, settings. You still have to share your new number with your contacts so they know its you and update their address list.

To shift the WhatsApp account from old number to new number, login whatsapp with old number and open Settings >> Account >> Change number .


How to get why an app crashed? I regularly obtain the infamously unhelpful "unfortunately crappyApp has stopped working". How to figure out what actually went wrong? I guess there's a stack trace somewhere, though ideally I'd like to modify the unhelpful message itself if that is possible on a rooted device.

You can simply see the crash stack trace after any crash happens.
Use ADB command below,

adb logcat -b crash #default
adb -d logcat -b crash #show from device when multiple device
adb -s logcat -b crash #show from simulator when multiple device


All android processes crash when booting device Today I turned on my tablet (a Samsung Galaxy Tab A6). I was expecting to see the usual home screen, but as soon as the operating system loaded, I got a lot of process crash errors. Please note that I'm not opening any of these apps, the error messages are appearing by themselves.

All the error messages are overlapping.

Here are some of the processes that are crashing:

system
android.process.acore
android.process.media
External Storage
EmergencyProvider
LogsProvider
BadgeProvider
AutoPreconfig
Google One Time Init
Samsung Push Service
Bluetooth
Camera

These are just a few, the device suddenly reboots after a while (it doesn't always reboot automatically).

When I boot the tablet, it shows, behind the error messages, a welcome screen (the one that appears when you buy a device and boot it for the first time). This welcome screen is unusual, as I never formatted the tablet's memory.

Here's a photo, so I can explain better.

Without knowing how, I got to the main screen, requiring me to put the SIM Card code. As soon as I put the code, other process crash messages kept appearing, so it's impossible to go even to the Home Launcher.

I'm wondering if there's a solution to this big problem, and what it has been caused by (a virus, file corruption...).

Please, I need help. I don't know why I get these error messages, and I didn't find any solution to this problem on the Internet.

Thanks in advance.

I finally managed to solve this problem. I just booted into recovery mode, and I deleted all data.
After rebooting, the system started working as usual, even though I erased all my data, which I successfully recovered since I made a backup some time before.


Bypassing mobile detectability from the browser First of all I know that there is "request desktop site" in the android  browser but it doesn't solve my problem.

I have this site and they have an android app as well, because of that they want users to play videos from their app and not from the android browser. But "for reasons" I want to play it on the browser. Defining user agent as chrome/windows didn't help either.

Do you guys have any idea how to do it?

Alright so a file named chrome-command-line needs to be put in /data/local/chrome-command-line

Here is mine that I just tested and works: https://drive.google.com/file/d/0B48arFbBn-Pda2RkT2F5bUtMYnc/view?usp=sharing

I would download this onto your PC and then use

adb push chrome-command-line /data/local/chrome-command-line

If you get couldn't create file: Permission denied

Run adb root and then adb push chrome-command-line /data/local/chrome-command-line

Proof: http://imgur.com/a/PjK34

Edit: you can use my chrome-command-line or you can make your own

First make a file that contains: chrome --user-agent="<stuff>"

The stuff is here: http://www.whoishostingthis.com/tools/user-agent/

Example: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36


If I buy the cheapest possible Android smartphone today, how long can I keep it without having to buy a new one? I'm forced to get a "smartphone", even though I want nothing to do with them, simply to be able to use as a "digital identification" thing and similar things for companies that refuse to provide a website -- only an "app". So I'm trying to find the cheapest possible one.
There appears to be only two "kinds": iPhone (ridiculously expensive beyond words) and Android (less expensive, but infested with Google). Since I don't actually want to use them for their intended purpose, and will only power it on briefly when forced to, I'm going to have to pick an Android one.
The cheapest one I can find where I live is $189. A bit more than I expected. Could've sworn they sold sub-$100 ones not long ago. Either way, what I'm wondering is if they are going to make me keep buying new ones every few years, or if I can just perpetually update that one with new versions of the "Android" OS? Or do new versions eventually require newer phone hardware and refuse to install, leaving me with a rotting brick which eventually stops working?
I have a feeling that these things are made to become obsolete rather quickly. Is that feeling correct?

I have an old Sony Ericsson Xperia Arc S, its a phone from 2011. It still working, you can use the browser and make calls ets... The play store don't support it because the android version of this phone is 4... so I can't install new apps from the play store, but I still can download them from the internet. This phone is so weak and old that many apps just wont work on his system...
But you can still use your phone even after 10 years


Permit drawing over other apps grayed out When I open an app that needs permission to draw over other apps, this screen pops up. But for some reason it is grayed out and I can't allow the app. How can I allow the app to draw over other applications? Why is it grayed out?

My device is Galaxy s7 edge running android 6.0.1

Just had this with an app that wouldn't launch - beeshyams is right, the cause is one or more "enabled" apps that have permission are blocking it - probably not that the problem app needs permission.  Go to the list of apps with permission and disable them.


Why won't my S4 charge in the USB port I am trying to charge my Galaxy S4 in my laptop but no matter which USB port it is in it will not charge. It is completely dead now. I am abroad and the adapter doesn't charge it either. HELP!

At first glance I can see (at least) one of the following problems:

The phone's "charging system" is dead(worst case).
Cable/charger is broken
Battery is dead.

Of course I cannot deduct something more precise, because of the lack of information you provide, but what I would do is the following:

Ask someone to lend you a micro usb cable to try charge it(use both wall plugs along with adapter and a PC usb port).
If the above wont work, take it to a local electronics shop to test your battery.
If the above fails too, you are probably unlucky.


Building CyanogenMod 14.1 for Nexus 6 I am interested in using CyanogenMod 14.1 on my Nexus 6, but since it is not available even in the form of an official Nightly release just yet, I have to acquire it elsewhere. As always, there are third party developers who have compiled their own builds of it, but since they are not directly from the source, I do not trust them, and would rather build it myself. I started researching how to build CyanogenMod for the Nexus 6 on the CyanogenMod Wiki and I managed to get everything done until I ran into the proprietary blobs. According to the Wiki, I need to be already running a version of CyanogenMod containing containing the blobs that I need. How exactly can I do this, given that there is no official release of CyanogenMod 14.1, nor is there even an Android 7.0.1 release for me to use instead? Is it possible for me to use the Nexus 6 stock blobs from Android 7.0.0 build NBD90Z? If not, how can I go about making the blobs "work" with CM 14.1? Even after I get the blobs, I am not sure what I am supposed to do with them.

Edit: Apparently I have other problems as well. The Wiki states that I should cd into ~/android/system/device/moto/shamu, but that folder does not exist in my repository. Why is that?

You can't build that from the official repos yet, since the code is not ready.

There is a reason unofficial builds exist - the devs write their own codes and patches to make the code buildable, bootable and functional ahead of release, and put them in their own repos. Unless you're skilled enough to do the same, you do have to use their code or wait for official nightlies to drop (by then the official code will be ready too).

As for the trust issue... Devs don't usually interfere with CM common code; rather they create device, kernel and vendor repos which are device-specific. Again, if you still can't trust their knowledge about the device then it's up to you to research from the ground up.

Finally, since CM12.x, the blob extraction step is obsolete.

I build CM on my own PC too, but I sync from third-party repos when possible (e.g. if another dev posts his CM14 builds, I get the repo from his XDA thread) and trust them, because why not? CM is made up of individual maintainers; if you can trust one there's no reason you can't trust another.


Why are Nexus devices often described as perfect for developers? I often find statements on Android forums like, "Nexus devices are perfect for developers." or "A Nexus device is almost impossible to actually 'brick'" (Is this actually true?). What is it that makes the Nexus devices so special? Is it because they have the stock Android, and so tinkering with Android in its purest form is possible?

It's just that I own a Nexus 4, and I don't even know why developers love it this much!

There are several factors.

No carrier or manufacturer bloatware. If you want to test apps or OS changes and be sure you're not hitting some device-specific bug, a Nexus device makes it less likely that will happen.
They all use the same tool for flashing ROMs: fastboot. Not all third-party devices use it, and having to learn a new set of commands for every device you have is quite annoying.
Easy to unlock bootloader. Many third-party devices don't give you a means to unlock the bootloader (in order to flash your own ROM) without tricksy hacks. Sometimes the manufacturer does this; sometimes the carrier adds it to avoid you getting around their restrictions on tethering or something else. On Nexus devices, it's as easy as fastboot unlock-bootloader.
You can compile your own ROM for a Nexus device from the AOSP sources. If you want to hack on Android itself, or if you simply want a userdebug build in order to allow more debugging options for apps, it's as simple as downloading and compiling the source. Third-party ROMs don't usually have source available, so to build a custom ROM, you have to reverse-engineer the ROM and/or port AOSP to the device yourself (or wait for other modders to do it). This is why the T-shirts worn by engineers on Google's Nexus programme describe it as "pre-hacked Android".
Google puts a lot of work into keeping the logs (the ones you get from logcat) clean, to make development easier. They block code changes that add too much noise to the log, so that it stays useful for debugging. Other manufacturers aren't usually so careful: they don't see the log as something their customers will want, so they let it get noisier and noisier with driver debugging info nobody will want to look at. Clean logs make it much easier for app and OS developers to see and debug the behaviour of their code.
Nexus devices tend to get updates to new Android versions before third-party devices. If you're an app developer, and you want to make sure your app works with a new Android version as soon as possible, or you want to take advantage of new features and test on a real device (not an emulator), then you don't want to wait for a third-party manufacturer to get their finger out and port the new Android version to their hardware.


Impact of android version on phone performance I pondering whether I should upgrade my Android system, or stick to my current one. Is there any reference website that would list Android devices and see how different Android versions compare in terms of performances (which means some benchmark should be defined)?

I have seen some benchmark websites that compare different Android devices, but my goal is to compare different Android versions for a given device.

It depends from which version you are going to upgrade. For example, if you are going to update to 4.4.x then yes, you should do it.
Version 4.4.x is a big leap on any Device.

See Kitkat 4.4.x release notes.

Other versions don't always have a positive impact on performance, for example, the performance of Samsung's version of 4.3 was worse than their version of 4.2.2.

Hope it Helps.


Main app's icons overlays in Nova Prime's widgets I've been using Nova Prime for about 5 years, which includes doing at least 10-20 settings backup-and-restore on various devices.
Today I made one another (on my Motorola Moto Z2 Play / Android 8.0 Oreo) and to my extreme surprise I have noticed that all my (restored) contacts widgets have a nasty "main" app (i.e. Contacts) icon overlay over each my contact's photo.
Picture worth thousand words -- before (left) sending Z2 to repair and after getting it back (right):

Analysis so far:

the problem is only with Contacts; other widgets (Wikipedia and Fancy Widgets in my case) have no "main" app icon overlay,
happens on both widgets restored from Nova Prime's backup and freshly added,
happens on Motorola Moto Z2 only (i.e. does not happen on Motorola One),
happens on Motorola Moto Z2 only this time (starting from this backup restore), since I hadn't this problem for past half year, prior to sending this phone for a repair.

Questions:

does anyone else experiences similar problem?
what is its source: is it caused by recent change to Contacts or Nova Prime?
is there any workaround or a way to get rid of this nasty little thing?

I am adding a contact-shortcut widget by:

opening Contacts app (default app under 8.0 Oreo?),
finding given contact and tapping it to get to details,
tapping three-dot and selecting Create shortcut from menu.

The only difference that I noticed is that prior to this backup restore (prior to sending my Moto Z2 for a repair and getting it back) and on every other device I am getting shortcut created right after above (right after tapping Create shortcut). While this time and on this Moto Z2 I see some new, additional Add to Home screen window, where I have to tap Add.
I assume (given above) that the problem's source is Nova Prime, not Contacts app.
I am using Motorola Moto Z2 Play (XT-1710-09) with Nova Prime 6.0 on board Android 8.0 Oreo.

what is its source: is it caused by recent change to Contacts or Nova Prime?

Rahul in comments has pointed the reason (thanks Rahul). It is an OS feature introduced from Oreo (and the likely reason you didn't see it earlier- service folks must have upgraded it while under repair). For more see Android Developers : shortcuts overview

  is there any workaround or a way to get rid of this nasty little thing?

Long press on shortcut → edit → long press on photo →select theme  → Gallery apps → select photos and choose the contact photo, go back  → Done

A disadvantage is that you have a rectangular icon that won't match with other icon appearance . But that may be good too to differentiate contact shortcuts!

I don't know how to fix that, unless you use a photo editor app that gives you round shapes (OP has suggested - you can use this Ukrainian on-line tool or this Russian on-line tool or search for some alternative).

And it is not for contacts only. I have a mail app which shows the same for "compose" shortcut. This app is targeted for min sdk 28 (Oreo). From August this year, all apps have to target Oreo and you will see this behavior uniformly

Tested on the latest version of Nova on Pie.


Nexus 7 refuses to pair with in car audio? I have a Nexus 7 running Android 4.4 and an in car stereo unit (Alpine CDE-178BT). I have enabled bluetooth on both devices but they refuse to pair with each other.

If I attempt to initiate the pairing using the Nexus 7, it starts connecting, I am prompted to allow the device to pair on the Alpine unit, but upon allowing the pairing to take place on the Alpine unit, the device drops into the "paired" list on the Nexus 7 but doesn't connect. Subsequent attempts to connect by tapping on the car stereo in the bluetooth paired devices list on the Nexus 7 resumes in a momentary attempt to connect and then the entry resetting back to its "paired but not doing anything" state.

If I attempt to initiate the pairing using the Alpine CDE-178BT, after making the Nexus 7 temporarily visible and searching for bluetooth devices using the Alpine unit, I see an entry for the Nexus 7 but any attempt to pair with it just results in a generic "Failed" message on the car stereo.

The car stereo works fine for connecting to an iPhone/iPad/other iOS device and older (pre version 4) Android devices, it is just Android devices running a more recent version of Android that it experiences issues with.

What steps can I take to attempt to resolve this issue?

I dont know which nexus 7 Gen you are using, but IMO there must be an incompatibility between the tablet's and car's bluetooth technology.


Recovery of QuickMemo+ data via SD - LG LEON bad screen I have an LG LEON which has a damaged screen & digitizer. USB Debug is off. I can access somewhat via PC. I tried a USB OTG cable & mouse as well as various software to get some critical data from the QuickMemo+ app.
I have a new LG LEON, all updated & I noticed all the data for the QuickMemo+ app seems to be on the SD card.
Ive used various apps & the LG software to attempt to get at the data for the QuickMemo app off the old phone.
Under Internal Storage/data there seems to be a folder for QM+ but all it contains is images & screencaps not the .db I need.
Question: can I swap SD cards & have my old QM+ data? Or will that just over write the data I want?
Should I get a MicroSD to usb adapter & attempt a backup first?
Other options besides spend more than the phone is worth on a digitizer repair?
I will, sa the data is critical...
Also - I attempted to use the LG PC backup software to transfer the QM+ app to PC & restore to my new phone.
I just got an empty Qm+ with no memos. I hope that i didn't damage my memos on the old system.
Thoughts?

Going to try a microSD to USB adapter on the PC & make a backup, hope i didnt do any damage using the lg pc backup software, and look for my .db file in linux & windows


What version of Cyanogenmod did the `Developer Option->Root access` become available? I see many references online that describe this Root access option in the Developer options for cyanogenmod images like this screenshot from a CyanogenMod13 device
<img src="https://i.stack.imgur.com/Tn4Gel.png" alt="How to enable root access in CyanogenMod 13; Posted by Rajesh Pandey on Mar 12, 2016
" />
https://www.androidbeat.com/2016/03/how-to-enable-root-access-cyanogenmod-cm/
However I'm tinkering with this older device which may have predated that feature.
Cyanogen OS version
12.1-YOG4PAS2QL

Android version
5.1.1

A related question that could help find the answer is to figure out what would be the appropriate repo in the cyanogen github (https://github.com/CyanogenMod ) to search for the UI that renders this set of options to check when it was first introduced? Basically which repo does the Android GUI go by?

Found a direct UI hit at least with some resource strings in the last/mainline branch that checks out from the repo by default which is cm-14.1. It started by finding a repository that happened to have the words settings and app in its name was a very strong clue to start with. In the screenshot above you can see that the UI reads Root access and that is what we find verbatim in this resource file.
    <!-- Setting checkbox title for root access -->
    <string name="root_access">Root access</string>
    <string name="root_access_warning_title">Allow root access?</string>
    <string name="root_access_warning_message">Allowing apps to request root access is very dangerous and could compromise the security of your system!</string>
    <string name="root_access_none">Disabled</string>
    <string name="root_access_apps">Apps only</string>
    <string name="root_access_adb">ADB only</string>
    <string name="root_access_all">Apps and ADB</string>

https://github.com/CyanogenMod/android_packages_apps_Settings/blob/c585070fc70c88643ca6f568f8c4cab6d21144a8/res/values/cm_strings.xml#L31-L38
Running a blame on that block of text lead to this diff
https://github.com/CyanogenMod/android_packages_apps_Settings/commit/9c512949b5cf487703a75abc7a56d0d98df59e32
Going back to the branch that is installed on the device, or at least the closest stable matching variant, I do in fact find that root access resource string being present. I'm hoping there's something interfering that I can twiddle to bring that option to the forefront again because it's not showing up.
https://github.com/CyanogenMod/android_packages_apps_Settings/blob/55eb0ad11d3359dc17a846a789627eddb5a1322e/res/values/cm_strings.xml#L31-L38
Doing a blame on that version leads to this commit...

Root over ADB is now disabled by default on non-eng builds
Requires support in su binary and adbd
Root access can be configured to use ADB only, apps only, or all
https://github.com/CyanogenMod/android_packages_apps_Settings/commit/c39be56248000ac1c88909874b28a80f5370fb2a

Snooping around further in that diff, it looks like I may be out of luck, or apparently at the time it was decided that user builds do not get this feature, but engineering builds do.
    private boolean removeRootOptionsIfRequired() {
        // user builds don't get root, and eng always gets root

https://github.com/CyanogenMod/android_packages_apps_Settings/commit/c39be56248000ac1c88909874b28a80f5370fb2a#diff-946ea451d6a9ad72c2548d8212f10a0aa8ccff901c6cbedd874673404c0ccbbaR422
The logic is all predicated on the build of the OS
https://developer.android.com/reference/android/os/Build#IS_DEBUGGABLE
https://developer.android.com/reference/android/os/Build#TYPE
Might be completely out of luck here because that is not something that can be changed at runtime as far as I can tell. This is a compile-time/build-time baked in attribute :-(


LG G4 Showing Wrong 'Recovery Mode' Screen I have a LG G4 (International) and I'm trying to boot into recovery to install Lineage OS. The instructions are to hold down the power button and the volume down button, which I do, I then get booted into what apparently is recovery mode but there's no options to do an advanced wipe and clear the cache etc. I found a picture online as to what it boots into:

As you can see it's still some LG screen, not the actual recovery mode screen you'd expect to see. Am I missing something here?

You would need to choose and click the yes option in your screenshot twice:

If custom recovery is installed, you will boot into it
If you are on stock recovery , your device is wiped , i.e, factory reset (that's the only option )

See XDA source for more details, including installing custom recovery that gives you the option of advanced wipe and clean cache for flashing custom ROM. Without a custom recovery you can't flash custom ROM

Here are instructions for flashing custom recovery

Disclaimer: Never owned LG device, it's Google-fu


Why does my Galaxy S keep corrupting and resetting? My Samsung Galaxy S was working well, but about a month ago it turned itself off, and upon restarting went through the initial setup again (language, keyboard, etc.). At the same time, lots of apps started to fail, and were force closed and relaunched by the OS (Swiftkey, Agenda Widget, and others). All my other data was intact.

Eventually, I reset the phone (losing all the texts and my Angry Birds progress :o) and reinstalled the apps and set up my sync accounts again.

The phone repeated this process three times in a week, so I requested a return, but then as I was waiting for a returns envelope, everything seemed to be fine. I decided to see if it was a glitch and all was well until this afternoon, when it turned off again (I checked and the battery was pretty full) and has started doing the application force closes again.

Running Froyo from the official Samsung update via Kies.

Any theories?

Thanks.

If it keeps doing this even though you've done a factory reset, I would just go ahead and exchange for a new one.  You could, however, try flashing a ROM via Odin with re-partition, to completely start fresh.  Instructions (assuming you have the i9000 model) are below.

Go to this XDA thread and download the newest firmware for your region (caveat: if you're concerned about warranty, you don't want to use the 2.3 firmware since it wasn't officially released.  To be safest, flash the exact version you already have).  Download Odin for Windows (search for "Heimdall" if you are on Linux).  Then do the following:

Put your phone into Download mode

Remove the battery
Hold VolumeDown plus the Home key plus Power.  While holding,

Reinsert the battery.
Release the power button, still holding the others, about 1 second after the white "GT-I9000" text appears.
After a few seconds a yellow triangle with an android in it should appear, this is Download Mode.  If it doesn't, try this again while holding Power the whole time.

Start up Odin.
Attach the phone to your PC via USB so that Odin recognizes it.
Load the .zip file you downloaded (the ROM/firmware) into the PDA field of Odin.
Load the 512 .pit file into the PIT field of Odin.
Check "Re-partition".
Hit Start.  Odin will tell you when it's done; if it fails, reboot your phone and try again.  (This happens occasionally).

Note that if you need to back anything up, you should do that beforehand and save the backup to your PC, since everything (except probably the external SD card) will be wiped on the phone.  Also note that you do this at your own risk; Odin is very powerful and misusing it can damage your phone.  I've used it dozens of times myself safely.


How to copy text string from nfc tag I'm trying to copy a string of text from a nfc tag, but the only option I've been able to find is displaying the text with no ability to copy it (its a complex string with letters and numbers). Best case scenario would be to insert the string where the cursor is at the moment the tag is pressed, but I'm okay with somehow getting the string to the clipboard to paste.
If this isn't the right place to ask this question, if you could tell me where I could find the answer, I'd be very grateful.

NXP's NFC TagInfo app can copy the text from a text record on a scanned NFC tag to the clipboard. There are other apps with similar functionality. Copying text from text records on NFC tags is not something that's built into Android without installing and running an app.


How do I prevent apps from automatically closing during updates? I don't use my Android tablet very often, usually only once every week or two.  Therefore, when I do use it, it likes to pull down a bunch of updates each time.  That I don't mind.  What I do mind is that I'll be using apps and this updating is happening in the background, so all of a sudden my app goes away and I lose all my work.  Is there a way to tell the system, "hey, don't just blow away apps I have running to update them without me OKing it first"?

There is no way you could stop from an app from getting terminated when getting updated.

Because when app is getting updated the apk inside the /data/app/nameoftheapp/base.apk gets updated and a .dex file must be made of the new base.apk

So the current process of the app is terminated and then daemon is invoked and it does it job of installing the app


How can I bulk install apps with Play Store or App-Brain? I'm trying to restore a new device with apps from my old device, but neither Android Market nor AppBrain seems to automatically bulk install them? When I use the Execute method in AppBrain it seems to only send me to manual install of all apps, which probably would take a long time since I use a number of apps.

Is there some way to make AppBrain bulk install a list in a batch or is it possible to move the apps from my old device to the new one?

This might be a new feature of newer versions of Android (I'm using 4.4), but I can easily mass install apps from the Play Store.

How to mass-install apps with the Play Store:

Open the Play Store
Go to My Apps
Go to All
Keep your finger pressed on an app that has not been installed yet for a second or so.
Now the play store goes into selection mode, you can simply select all the apps you want and press the "Install" button at the top when you
re done.


Why would I need a disk to transfer music? Why does Windows XP say "please insert a disk into drive F" when trying to transfer music?

(Samsung Galaxy S Aviator)

A screen should appear after you plug the device into your PC, when the device's usb connection is in "mass storage mode". Make sure to enable USB-mass storage there. This options unmounts the storage from you device and exposes it to the host PC.


What is the best way to ensure adb access if a screen breaks? I just broke the screen on my OnePlus 6, which doesn't allow adb debugging until you change the USB Connection Type to 'MTP' (via the screen), and their repair service states they will wipe any device they are sent, no exceptions. I didn't unlock the bootloader, and so unlocking it to flash a different recovery will also wipe the device. It also removed adb over wifi, so it appears it is completely locked down.

On my next phone (Razer Phone 2), I want to ensure this never happens again. I am concerned that potential Android updates may also require screen interaction before it will allow adb over USB, or that adb over wifi may be removed.

What is the best way to ensure that I can maintain adb access without screen interaction in the case of a future breakage?

I plan on:

Unlocking the bootloader right away, so that worst case I could flash a custom recovery like twrp that would allow adb access
Enabling adb
Authorizing at least two computers
Setting the default USB mode to MTP (if possible)
Enabling adb over wifi, but ONLY if I can lock it down

Regarding adb over WiFi, I don't want this fully enabled on every network I join. Is there a way to whitelist only my home WiFi, or to only allow it from authorized computers?

I'm looking for ways to not lose access like this in the future - I have to order a replacement screen and repair it myself in order to try and retrieve the data. It's also important to me that I don't lose access via any system updates in the future, though this is difficult to ensure. Perhaps a nandroid backup of a system with everything ready that could be restored through the recovery?

In devices like the OnePlus 6, that have removed adb over WiFi and require touch input to adb over USB, what are the viable options?

This could be a problem with the installed drivers if you need to switch to a data transfer mode such as MTP to use adb. I use adb on charging only in data transfer mode, which is status-by-design, in OnePlus 6.

For the broken screen issue, I don't know if this would help. You could try with an OTG cable and a mouse to see if it works automatically. There is an OTG toggle in Settings app so it might be the cause if this approach doesn't work as plug-n-play.

As for your approach on your new phone, understand that adb over wifi is safe. Whether on wifi or on USB, your phone would show an authorisation approval dialog to approve a machine (PC) for USB Debugging, be it on USB or Wifi. So you need to careful more on what machine to allow for, instead of restricting the access over a specific Wifi.

However, it is possible to mistakenly authorize adb over wifi when unsuspecting that the dialog would show up suddenly, say when you were playing a game and so deeply engaged that you just nearly click anything as ok that shows up on screen, so for that you would want to restrict access to adb only on your personal wifi with trusted machines.

Now for that, you can use automation. I use Tasker app to automatically enable adb over wifi on boot. For your case, here are the instructions (tested with a rooted OnePlus running Android 8.1):

Profile: State → Net → Wifi Connected (requires Location permission and Location enabled at all times):

SSID: select your SSID/WiFi's name
Active: Yes
leave the rest untouched

Task: Code → Run Shell:

Command:

setprop service.adb.tcp.port 9999
stop adbd && start adbd

Tick Use Root

Long press the task next to profile and select Add Exit Task.
Exit Task: Code → Run Shell:

Command:

setprop service.adb.tcp.port ''
stop adbd && start adbd

Tick Use Root

Now, as long as location service remains enabled, Tasker would detect when the phone gets connected and disconnected to your SSID. When connected, adb would be listening over your WiFI on port 9999 (choose any port of your choice but above 1024). When the WiFi disconnects from that SSID, adb would not listen on a port.

If you plan to use TWRP than even if a system update messes up with your USB Debugging settings TWRP would always grant you access to debugging automatically as it works independently of Android system installed in the device. You don't need to change data transfer mode there either. If you need to do it, something is definitely not right. Furthermore, if you have TWRP installed than you have deeper access to your data that which adb can never have so you need not to worry about debugging in Android if TWRP is available and kicking.


adb shell error: device not found (Ubuntu) I am complete novice on adb. When it comes to Android I could be classified as "dumb user" - trying however to get one level up, hence playing with adb:

$ ./adb shell
error: device not found
$ ./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached

Looks like adb cannot see the connected device.

How to rectify the problem?

For your info:

the device is visible and I can copy files to/from it
I went through the steps suggested below and still no luck
I tried connecting the phone to different USB ports - my comp has 2 USB controllers - one USB 3.0 and one USB 2.0

Steps to enable USB debugging on my device with 7.0 Nougat Android:

Go to "Configuration"
Go to "About Telephone / Android 7.0"
Click several times "Build Number" until message "You're now developer" appears
Go back to "Configuration" - "{} Developer options" are now visible - go inside
A number of fabulous options appear - switch-on "USB Debugging"

I am using Linux and I would prefer to stay away from Windows.

Still no luck - device not found

Check adb devices. If no device shows up follow the steps below.

First, check to make sure USB Debugging is enabled. On most devices:

Go into 'About Phone', 'About Device', or 'About Tablet'
Find 'Build Number'. It's location varies from devices to device, but look for menus such as 'Software Information'
Tap 'Build Number' until you see a message saying 'You are now a developer'. If you see a message saying something along the lines of 'This option has been disabled by your administrator',  I'm sorry to say you will need to reset your device to use ADB. You could also talk to your administrator.
Go back to the main settings page. At the bottom, you should now see 'Developer Options'. Tap it.
A warning may display. Read it carefully, and decide at your own risk.
Scroll until you find 'USB Debugging'. Tap it. You will see another warning. Read. Decide.
Connect your device to your computer. Run adb shell. A dialog box will pop up asking if you trust your computer. Tap yes.

Congrats! It should now work.

If that doesn't work, try different cables, phones, computers, and try to find what is the problem. Google is, as always, your friend.


How to install working Play Store on a clean device (CWM13 ROM)? I did a factory reset recently, and when I installed the latest version of Play Store and Google Play Services on my Android 6.0.1 device from APKMirror, it keeps showing Unfortunately, Google Play Services has stopped. Well, I have CWM13 ROM installed on my device, the app settings doesn't have the "Clear Cache" option, so I can't fix it in the common way.

Any ideas guys? Thx in advance.

While in recovery, you need to flash the ROM and then without booting to that ROM, flash gapps. If you're using TWRP MultiROM you can still boot into other installed ROMs without bootlooping the one you just flashed. If you're using regular old TWRP, just flash the OS and gapps all in one go.


Cannot access /sdcard/ (internal storage) After I got my phone restored from an nandroid backup, I found almost all apps cannot gain access to /sdcard/ (internal storage), including ES file manager, Z archiver and so on.

When any of these apps access /sdcard/, or any other equivalent folders like /storage/emulated/0, /storage/emulated/legacy, /storage/sdcard0, they only shows a blank directory, and I cannot create any file or folder.

When I try with the stock file manager (My files), it does show the files, but i cannot rename, edit, or create anything.

Android File manager is able to copy most of my files out. But It stucks when I try to create a folder or send something.

I tried to re-flash the same ROM again (which worked perfectly before), the issue remains. I have backed up important data from /sdcard/.

In terminal emulator,
cd sdcard, ls gives opendir failed: permission denied.
Then I tried su, ls shows the correct directory.

How should I fix it?

Extra: I found a new folder called knox-emulated in /storage which is not there before. External SD card (/storage/extSdCard) works fine.

Device Information:
Samsung Galaxy Note 3, Android 4.4.2 Rooted, with a custom ROM modified based on the Stock ROM. Custom recovery installed.

Try moving your primary storage in settings.. go to apps scroll all the way down and change your storage from phone to sd storage and vice versa. And you should be able to access everything on sd card etc. ES file explorer is a great free app in case you couldn't get it by changing storage in setting


Android versions without DRM? Since smartphones have become "the thing", it has somehow been decided that locking your phone to a particular primary e-mail address and having DRM is "okay".  Android, despite being open-source, is somehow not the exception.

Since Android IS open-source however, it would seem that a developer would be able to customize it to remove the primary-email restriction on the phone and to unlock all purchased applications to be available to whomever is using the phone at the time, only requiring a sign-in to purchase new applications or when using certain applications.

I don't currently use Android, and bought a Windows 7 Phone only to find that it does the exact same thing as Android (and most other phone operating systems)  Are there any Android projects that are attempting to move Android towards a DRM-less environment?

Paid Apps are tied to an Google account. But this is because of the Google Framework and not because of Android. No one needs to "remove DRM from Android" because there is no DRM within Android. Only support for it. If you install free (as in beer) Apps, everyone can use them.

There is only one imitative that goes one step further then being DRM-less: Android FOSS Apps @ http://f-droid.org/


Deleted chat - can it still have a back up on google drive If I delete my chats on WhatsApp as soon as it is over(Within an hour). Will google drive still have it backed up?

If the option to backup is selected, WhatsApp does this at 2am (0200). You can see this in the Settings > Chat > Chat Backup menu. I would guess that chats that do not exists at that point are not backed up, i.e. if a chat exists in its entirety and is deleted before 2am, there is nothing to back up.


Can my contacts know if I'm on another call when they try to call me Will they know if I'm at another call even if it's not using the whats up app? On a regular cell call it would just keep ringing if the person is on another call. If you have call waiting you know they're calling you. I don't know if I explained myself.

It depends on your service provider.

In my country, all the networks will inform the caller that you are on another call via automated response; they will be asked to either hold on or call you back.

Hope this answers your question.


Why does my WIFI turn off randomly? I am using a government ZTE Qlink phone and the WIFI randomly turns itself off. I have too many contacts to perform a factory reset! I need help figuring it out!

Practically all mobile phones are using the Google Contacts app to manage your contacts. They create a backup of your contacts to the Google, and continuously synchronizing with it. This is why you can see the same contacts on all your Android devices (if you have multiple).

If not this is the case on your phone, you need only to install the Google Contacts app.

If you don't want to share your contacts with the Google, there are also many third-party apps to save them to other cloud services, or to your own machine. You can find them quickly with Google searches :-)

Having your contacts saved with an app, your contact list will survive a factory reset. Note, there is a high chance, that it won't fix your problem. In my experience, such sudden wifi disconnections root probably in the bad hardware/driver, or in some overloading of your device by the recently hugely grown apps. If you have no better option, it surely worths a try.


Getting "Authentication is required" when trying to access the Play Store Over the past week, whenever I try  to open the Play Store/Market app on my phone, the app thinks for a while and then displays this error message:

  Authentication is required. You need to sign into your Google Account.

But I am indeed signed into my Google account, as seen in other Google applications running on the phone, and as seen if I open the menu in the Market app and click the "Accounts" button.

I suspect this might be related to the fact that over the past few months I've had two different Google accounts synced to this device, and I have recently removed one of them from the phone. No other Google application has had any problems with removing one account.

Does anyone know how I can solve this issue? I can still install applications by using the market website (now "Google Play"), but this is still a big inconvenience. I also think I stopped getting updates.

This worked for me: System settings > Apps > "All" (tab at top) > Google Play Store

Then press buttons in order: "Force stop" and "Clear data"

Exit Settings. Start the Play Store. Press at the top left top open the menu options.. Verify you have the correct account selected.


Differences in battery information and phones printed labels I just run across this today:
The value for battery current capacity printed on the battery of some Samsung Android devices are different than the numbers printed on the label on the phone (underneath the battery).
I tested 4 models (Galaxy S3, Galaxy S4, Galaxy Note II and Galaxy Pocket); The only consistent one was S3 (Phone label was 2100mA and battery was 2100mAh)
On S4, battery is 2600mAh, but the printed label is like this:

  RATED : 3.8 V ... 1300 mA

What's the difference between these two numbers and why on some phones these two values are not equal? Thanks in advance

mA is not the same as mAh. The former is a current rating, and the latter is the capacity of the battery. 1000 mAh means the battery can supply a current of 1000 mA (at its rated voltage) for 1 hour, or equivalently, a current of 500 mA for 2 hours, etc. It tells you how much energy the battery can hold.

The number in mA printed on the phone tells you how much current the phone can draw. It's like a safety rating, though I suspect the numbers are somewhat made-up for phones: it would be very unusual for the phone to actually draw that much current, and most of the time the amount drawn will be much less.

There's no reason for those two numbers to be the same.


How to sync ONLY some specific Picasa albums in Gallery app? I have plenty of Picasa albums and I really don't want all of them to be downloaded into my Android phone.

So my question is how can we select to sync only some selected albums only?

I believe there is no such feature available. You can either enable the sync which will sync all your albums or to not to sync at all.


Staging of several android devices made simple I have to stage several android dongles to comply to my company’s need. I need to setup the WiFi, google account, download 3/4 apps, configure them, change background picture... i’v been Trying to find a script/macro that would do that for me. Apps such as MacroDroid requires that I setup the dongles anyway. I wonder if there would be an option to copy this macro to the dongle using the sd card and let it do the job. Ideas? Thanks

I've just stumbled upon a project at Github, and remembered your question here. It seems like inception should perfectly fit your needs (except for the Google account, maybe, where it's a bad idea anyway to use the same one for all your employees). Quoting from the project description:

  Inception is a set of tools for auto configuring android devices. You can do the following:

  Include any apps to be (pre)installed
  Remove any stock apps
  Root the device
  Install busybox
  Configure Wifi networks
  Generate all device settings
  Patch APKs
  Replace Kernel, and/or ramdisk data in both boot and recovery imgs
  Place your adb keys, configure USB debugging

Most of this you'd probably not even need (rooting, patching APKs, replacing the kernel, prepare ADB, installing Busybox). But what you wrote is covered.

Inception requires a Python installation on your computer. After initializing your "project" and adjusting the configuration to your needs (incl. placing the .apk files you want to install), it creates an update.zip you can flash via the device's recovery-mode (which usually will require a custom recovery). Optionally, it also can generate a cache partition img for your device, allowing you to deploy your update in bootloader/download mode.

I have not tried it, so I cannot tell how good it is – but it sounds like it's at least worth a look.


Laptop Camera works with Bluestacks but not with Nox So i really need the camera to function using Nox Player,
i have an MSI laptop with an integrated webcam.
I've read everywhere that camera is supposed to work out of the box with Nox.
However, it doesn't. i installed bluestacks to check and it worked with bluestacks.
on Nox whatever app i install it acts as if there is no camera.

please help

thanks

MEMU is suspect and is "not safe" to use in my experience...and my camera has sync issues with that emulator that messes up my apps and network settings.  My understanding is the latest NOX version uses android 7???  The webcam at this time is not supported....that's all the info I can find on this..and sadly, the Blue Stacks records me sideways...


Why deleting system files on a rooted Android says "device or resource is busy"? I have FX Explorer, I was trying to delete some stuff in /system/app (the stuff are just empty folders) but it keep saying The operation isn't permitted on a mounted filesystem. What should I do to fix this?

(This issue is new, I used to delete whatever I want without problems)

I tried with the terminal, it says device or resource is busy.

If you are using Magisk modules, you must be trying to delete a bind mounted (1) directory. Enable Core Only Mode (no modules) in Magisk app and reboot. Then delete the stuff you want to.


adb permission denied to push files to subdirectry Why would I get permission denied using adb to copy a directory to a subdirectory on my phone, when I could copy to its parent directory and both have the same permission?

I tried this from my PC to my Nexus 5 running 6.0.1 (Oct 5):

adb push Dir /sdcard/Dir/Subdir

It failed with

Permission denied

This has worked before, with no changes I'm aware of.

I launched adb shell and ran

ls -l

to get permissions for /sdcard (storage/emulated/0), /sdcard/Dir and /sdcard/Dir/Subdir:

drwxrwx--x root sdcard_rw

I then:

cd /sdcard/Dir/Subdir
mkdir XYZ

Got

mdkdir: XYZ: Permission Denied

Tried:

su
mkdir XYZ

Again, permission denied

I then tried another push

adb push XYZ /sdcard/Dir

This worked and copied all of the files.

Why would it work to /sdcard/Dir and not to /sdcard/Dir/Subdir, when both have the same permissions?  Why would permission be denied for root?

As it appears in this comment, the file permissions and access control to SubDir differs from what ideally should be.

The problem:

# ls -l on /data/media/0/Dir
dwrxrwxr-x root root

The user group should have been media_rw instead of root.

The solution is to change to appropriate group or make the directory writable by others.

chmod 777 /data/media/0/Dir/SubDir       # making SubDir writable by others
chgrp media_rw /data/media/0/Dir/SubDir  # Alternatively, changing group from root to media_rw

Note: you may need to install Busybox or Toybox to have and use chmod and/or chgrp.


Is there any known full device/disk encryption software for android 2.2? I have not found anything in the app store or other stores, Is there any known full device/disk encryption software for android 2.2, that you have test on your device? if so what is the device?

FYI:I know honeycomb supports this natively, but my device does not support HC.

Full device/disk encryption can only be done correct with OS privileges. That's why there is no such App. But newer Android versions and some ROMs provide this features. Have a look at "Are there any known rom(s) with full device encryption incorporated?"


Setting wallpaper - wrong orientation I'm trying to set the wallpaper on my Nexus7, and no matter what I try, the blue "crop" widget that lets you specify the area of the image that is the wallpaper is always in the wrong orientation. So when I make this widget as large as possible, it's only covering part of the image. The image size is 1280x800, so I should be able to use the whole image, but I can't because it seems to be always getting the orientation wrong. I've tried rotating it, this doesn't seem to make a difference. The resize widget is always the opposite of what I want it to be. It's almost as if it's detecting the image's aspect ratio and doing the opposite of what it should be doing. I've made sure the image doesn't contain any meta data which could be specifying another orientation. I'm sure there must be something I'm misunderstanding about how this widget works. It's driving me nuts though!

I've attached a screenshot to make it more clear what I mean:

It looks like what you're describing is actually the proper behavior, though it's not particularly obvious why that's the case.

Android, by default, scrolls your wallpaper to the left and right when you swipe around your home screen. This means that there's a sort of "virtual" desktop that represents the collection of your home screen pages, and it is (basically by definition) larger than the screen's resolution. The general rule is that the resolution of the virtual desktop will be 2x wider than the screen's physical resolution, but the height will be the same.

Therefore, when Android is cropping your image for your 1280x800 screen, it's actually attempting to create a wallpaper with an aspect ratio that lines up with your 1280x1600 virtual desktop. Thus, if the image you use is 1280x800 (like your screen), it will be cropped and scaled in the process.

If you'd like to make a wallpaper that fits the sizing of your virtual desktop without any cropping, What is the default resolution of a wallpaper that fits the homescreen exactly in an Android phone? contains some useful links and resources.


Osmand: Map font size I am visually impaired and have a hard time reading small fonts. In Osmand I can read the fonts when I zoom and the screen still has to be re-drawn. How can I change the default font size for street names to, say, 150%?

In OsmAnd+ 2.3.5:

tap the menu button -> Configure Map -> swipe up to reveal more options

and set the text size from there:


Recovering deleted files android 6.0.1 (internal storage) They were onenote's files, research notes. Had problems with sync and lost files.

How can I recover the files in the safest way? It happened today. I already stopped using the phone.

(asking for a friend)

I'd try photorec (testdisk package) in Linux. Or the Piraform file recovery program in Windows. Get it connected to a PC sooner rather than later as you don't want the area it was stored to be overwritten.

Was the Onenote not syncing with a Microsoft account?


Maintaining apps and setting of one device in sync with another Is there some way of passing on settings and apps from one device to another on a regular basis?

There is no way I know of to pass on settings to one device or another unless 1) They are the same model of phone and 2) Both phones are rooted. You can back up your current system settings using ClockworkMod backup if rooted, then flash that onto the other phone through ClockworkMod as well. This will share all your apps you had at the time of the backup.

As far as sharing apps, your google account will transfer your apps from phone to phone. Just sign in with your google account and re-install from the app store. You don't need root access to do this.

For either option, to use most paid apps you need to be signed in to your google account when you use them, otherwise they won't work.


Adding a new contact skips the phonebook, goes to viber My grandma has a new Huawei phone that has an odd configuration. Whenever she adds a new contact, it doesn't appear in the phonebook, but in Viber instead.
Naturally when she goes to her phonebook looking for her friends and doesn't find them, even though she had added them earlier, she gets very frustrated.

Since she's pretty old, I can't expect her to figure it out on her own. Is there a way to fix this? Viber hijacking your phonebook and not letting you add any contacts is pretty annoying.

There are 2 things to keep in mind:

Is your grandma actually going into her phone's contacts to add people, or is she going into the Viber app to add people?
When creating contacts, my phone asks me WHERE to store the contacts. In my case, I have 2 options: one the SIM card, or on my Google account. She may have a 3rd option (Viber). She should select one of the other 2. (I recommend Google account).

There is also a setting on Viber to let Viber sync with your phone contacts (so tyhat Viber contacts appear in your phone, and your phone contacts appear in Viber). This should be under General