# Question
Title: Sent WhatsApp Images do not appear in gallery
For uploading Instagram posts, the images need to be on my phone, so I tried sending the image on WhatsApp Desktop so that I have it on my phone, but this doesn't save it in the gallery. What can I do to automatically store these images and videos in my gallery?

If this is not possible, is there an app or something that automatically sends a WhatsApp message back to me, so I can send my images to that number and it sends it to me so they appear in my gallery?

# Answer
> 1 votes
There's no way to automatically download and save sent media from WhatsApp web to mobile, but there's a workaround.

You need two mobile numbers and the ability to run two WhatsApp accounts either using a built-in dual account feature if available or using a third-party dual app provider to achieve this (for a second mobile number, there are several apps like TextNow which gives you an American temporary number for free and you can make WhatsApp accounts with it and even get those numbers permanent for dirt cheap prices)

Once you someway managed two WhatsApp accounts, the rest is rather simple - turn auto download media on the number your phone has and send a pic from the desktop using WhatsApp web from another number.

# Answer
> 0 votes
Sounds like your main problem is getting pics from a PC to show up in your smartphone gallery, presumably an Android.

To get this job done, there isn't a need to hold on to WhatsApp at all and create 2 accounts (although that's an option - the gallery won't catch the pictures from 2nd clone account easily, especially if it's running in some kind of virtual environment). So here are your options.

* **Wired Xfer** from Phone to PC. Connect the phone to the USB port and it'll ask how you want that connection to behave - charging only, file or player. Choose files (or storage). Navigate to the gallery folder which would be `{internal storage}/DCIM/100Andro` (or `Camera` instead of `100Andro`) and copy if there. It will then def. be in your gallery.
* Wireless Transfer. There are a lot of apps like Airdroid that can do this. (Many times the device manufacturer throws in their homemade tool). Follow these guides *here* & *here (video guide*) to get Wireless transfer working.
* `adb connect`. Refer to this XDA guide

In either case, for pics to show up in your gallery without hassle, they need to be copied to `{internal storage}/DCIM/100Andro` (or `Camera` instead of `100Andro`). You can use a non-stock powerful 3rd-party gallery app like F-stop that can scan all places on your phone for pictures instead of just a few limited paths.

---
Tags: whatsapp-messenger, images, gallery
---


# Question
Title: Why do I get an 'insufficient storage' error when trying to install apps when I have sufficient storage?
When I try to install anything through the Play store, I get a pop-up saying I have 'insufficient storage', with a button which takes me to view my current used storage. According to that program, I have 449mb free on my internal storage. Infuriatingly, I am not told how much each app actually requires, but 449mb should be enough to install anything, since the hungriest app I currently have installed only uses ~250mb.

I managed to get enough space to install the 1.5mb 'Move to SD card' app I wanted. Now that app reports that I have 'no reason to move to SD card, since it shares the same disk with the OS'. In that case I do not just have 449mb free; I also have the 16gb free on my SD card which it should be able to use to install new apps.

Why then does it still complain that it does not have enough space?

# Answer
> 0 votes
25 MB free internal storage is minimum requirement (source: TechniPages, AndroidCentral). If free space falls below that, the "insufficient storage" error is triggered. for more information see

Why does my phone keep telling me it has low storage?
Not enough storage on android device

# Answer
> 0 votes
According to the accepted answer of a related question on StackOverflow that Izzy found:

> As long as the device maker doesn't change the default settings, the intent will be broadcast when the free memory reaches 10% of the internal device memory.

In other words, Android will start complaining when less than 10% of memory is available.

As Izzy also noted in the comments, this is a poorly designed requirement, as a device with 32GB of internal storage will still have a 10% requirement (3.2GB).

That answer was written and accepted many years ago, and no new answer has been posted. I added a comment to the answer to ask if anything has changed since the answer was posted.

I posted this as an answer since the only answer currently posted was incorrect.

---
Tags: insufficient-memory, storage
---


# Question
Title: Is it possible to manage Wireguard from the pull-down menu?
I connect to my Wireguard endpoint with the official wireguard app. Everything works fine but in order to stop the VPN connection, I must find and restart the app.

Since the VPN activity is visible in the taskbar

... I was hoping for a way to quickly manage it from there.

Is this possible?

# Answer
App description of Wireguard shows a quick tile setting, which can be readily used!
> 1 votes

---
Tags: notification-bar, vpn
---


# Question
Title: One wifi hotspot client uses all the bandwidth, causing problems for others. Is this configurable in a smarter way?
I use my Pixel 2 as a wifi hotspot daily. I usually works great even with 2-3 connected clients, but I had a problem recently where two computers were connected, one playing a game and the other watching a streamed video.

The game started getting disconnects and network problems and it became clear that the other client, streaming video, must have been consuming the maximum bandwidth available, leaving almost nothing to the gaming client. Once the video stream was stopped, the gaming client worked fine again.

This surprised me but I don't know how these things work in detail. I would hope for a setting that could create some fairness, for example "allow max 80/20 bandwidth consumption between two clients" or 50/50 for simplicity. I know that video streaming has different ways to adapt to the available bandwidth so I'm sure the video client would be fine with less, but the game needs some minimum to work.

# Answer
On the computer which is streaming videos, check (toggle) the Pixel2 hotspot as a metered connection which would help a bit
> 0 votes

---
Tags: wifi-hotspot
---


# Question
Title: Why wi-fi calling turned off on reconnection of wi fi?
I am not getting any no cellular network at my home and I have broadband connection. When I go in cellular network area turn on mobile data and came back to home my wi fi calling works perfectly, however if I go away from wi fi network for few minutes and came back or wi fi restarts due to power failure then wi fi calling is automatically off. I need to connect cellular network again in order to re-enable wi fi calling.

# Answer
> 1 votes
Wifi calling isn't something which enables free calls over wifi. Your SIM ISP operator needs to make sure you're on an active pack with voice facility available before allowing wifi calling. That's why you need to be on mobile network each time you connect to wifi calling service; and it stays toggled on on wifi calling mode before wifi drops for some reason according to the same logic.

---
Tags: wi-fi, calls, redmi
---


title: Removing Gmail from phone

text:
# Question
Title: Removing Gmail from phone
I understand that my Android 'phone needs Google to operate but why must I have a Gmail account? I don't use my email linked to Gmail but get a lot of mail; I choose to use AOL for all mail as I have done for 20+ years. Can I close my email on Google without affecting the operation of the 'phone? Details

# Answer
If you don't want your GMail account you can simply ignore it.

On Android you can uninstall/disable the GMail app so you won't get any notifications. As GMail is a system app on Google Android devices you can't uninstall, just disable it.

It may happen that GMail is re-enabled again if you install a system update/upgrade. Then you have to disable it again.
> 1 votes

---
Tags: inbox-by-gmail
---


# Question
Title: Where does Android store disabled packages list?
So I was playing with `adb pm uninstall` and now my phone doesn't boot. So I'm actually curious, how really `pm uninstall` works, where does it store the list of uninstalled packages (if it does) and if there is a way to revert the changes I made via `adb shell` with root.

# Answer
To answer your question. No there's no way to get back an uninstalled app on Android like in Windows where you can restore back to a point in time - that feature unfortunately isn't that well developed in Linux ( Android is a far off modification of Linux ). if you had uninstalled using this ( below ) command instead of `pm uninstall` ( which just hides the app as against throw it out )

```
adb shell pm uninstall -k --user 0 <package>

```

you could re-install using

```
adb shell cmd package install-existing <package>

```

sounds like you don't quite fit in the above. In that case your other options are

-hunt around the internet for the same `package` name and see if you can re-install it ( chances are fat to find the same exact version and esp if its system app it may not install correctly or if it used `crypto keys` )
-Backup existing data. If you have an older `/system` backup then restore that after a full wipe.
-Resintall new `ROM`from scratch and restore data from `backup`
> 1 votes

---
Tags: adb, root-access, services
---


# Question
Title: Add standard Romanian keyboard with diacritics to Gboard
Is it somehow possible to install a Gboard keyboard layout for Romanian that has the diacritics  `ă â î ș ț` as separate keys? Other keyboard apps have it,

but not Gboard.

The ones that are called Romanian and can be added in settings are exactly the same as the English ones, where those diacritics can be typed as special characters under `a i s t`.

The layouts that are available for Romania in Gboard are generic, e.g.QUERTY, while other keyboard apps that do have the layout I ask for here are displaying it as a specific sub-type, for example in Flesky keyboard app it's caled "QWERTY (Romanian)".

In Multiling O Keyboard it is called "Romanian standard", like in Linux.

# Answer
> -1 votes
There's something called "Vlax Romani (Romania)" for Gboard that looks mostly like the screenshot example you have. I guess that's a specific dialect of Romanian (according to Google, at least -- I know next to nothing about the language), but it looks like it could work for your purposes... unless the auto-correct and spell-check are so different that they drive you nuts.

---
Tags: keyboard, languages, gboard
---


# Question
Title: Stop the keyboard from suggesting words from all downloaded languages
I recently installed 4 languages on Samsung Galaxy S10+. To my surprise, regardless of the language I choose to write in (= scroll to), it seems to suggest words in *all 4 of them* simultaneously.

It seems like the system has got all 4 mixed up or together.

Any ideas on why and how to fix this?

# Answer
> 0 votes
You don't specify that you're using the native Samsung keyboard, but it looks as though you are from the screenshot. If you go into the keyboard settings, under "More typing options," there should be a setting for "Multilanguage text prediction," which you can disable.

---
Tags: samsung, keyboard, languages, dictionary
---


# Question
Title: How to stop showing "online toast message" of mine to other gbwhatsapp users
This is very annoying that gbwhatsapp users are able to get toast notification when I come online from official `WhatsApp` App account(I am not using gbWhatsApp)

I am talking about getting instant notification/toast message of online in gbWhatsapp NOT showing "online" inside my window/profile. Also I am not asking about lastseen.

How can I stop this notification to them by using official WhatsApp app ?

Can someone comment if I can achieve this by using gbWhatsApp ?

# Answer
> 1 votes
You can't. Not if you use the official WhatsApp app.
You can if you use modded WhatsApp (like GBwhatsapp, Aerowhatsapp, etc.) and you can freeze your last seen for everybody.

I personally don't recommend using modded apps since there could be a huge privacy threat.

---

**Edit:**
Since the last time I answered this question, WhatsApp has introduced a new feature of hiding even the online status.

---
Tags: applications, whatsapp-messenger, privacy
---


# Question
Title: How to change Bing Search to my default search engine in Firefox?
After installing Microsoft's Outlook app I noticed that when going to search for something on the Internet by selecting text and searching, I am forced to use Bing instead of my default search engine (Google).

(Screenshot from Firefox)

I have just found out that this is a known issue mentioned by Android Police in 2020.

I use Firefox 90.1.3 (Build #2015824995) on a Samsung Galaxy S10 and Google is always set as my default. I even removed Bing from the options, yet it is still there when trying the selection search.

I noticed that when using Samsung's Internet Browser, there is the extra option of 'Web search' as well as 'Bing Search' and using 'Web search' goes to my default search engine. That is not on Firefox.

Is there a known way to stop this intrusion into my right to choose which search engine I use when using Firefox?

@Robert indirectly made a good point on settings within Outlook within comments so I had a look.

I am forced not to use my default browser as I cannot set it in Outlook (see below)

Tapping on the slider does nothing

# Answer
I think this menu isn't created by Firefox, but either a system-wide function created by the Outlook app. There are many apps that createsuch links in so to say right-click menus on Android. I don't however know how to remove this, sorry.

But I can suggest a different mail app to you, which is more privacy-friendly in comparison to Outlook or Gmail. It's named FairEmail an available at email.faircode.eu. I know this isn't the solution you are searching for, but I just wanted to spread this great app.
> 1 votes

# Answer
The fact that the toggle to enable "Use default browser" is unresponsive is apparently some kind of bug. Depending on your version/email setup, you're meant to either have the "Use default browser" option or not. It shouldn't be greyed out like that -- though it's that way on mine as well, and I've seen MS forum posts from others to that effect so this may be some weird, hopefully temporary, regression.

In many third-party apps, selecting text will trigger an android *webview* rather than a full-fledged browser. Contextual Text Selection was released in Android 6.0, allowing developers to capture text you select in their app and send it to another process. The developer can decide what options to include on that little pop-up menu, so adding "Bing search" is Microsoft taking advantage of a captive audience. It's strange that you don't have "Web search" in your pop-up menu as well, though -- it shows in mine. That context menu is somewhat dependent on other apps installed, so this might sound obvious or odd, but do you have the Google app installed (the lightweight search that comes pre-installed on a lot of androids)?

It looks like this:

I think this may be the source of the "web search" option. Until they fix the default browser toggle, adding the web search possibility will at least give you something of a workaround.
> 0 votes

---
Tags: firefox-for-android, search, outlook, google-search
---


# Question
Title: Note 10+ not showing up in Device Manager while in fastboot
I'm trying to unlock my bootloader so that I can root my Samsung Galaxy Note 10 plus.

The problem is that `fastboot devices` doesn't show any devices, so I found out that I need to install new fastboot drivers.

The first step is to locate your phone in Device Manager while it is in fastboot, but my phone is not showing up in in Device Manager at all while in fastboot.

Usually when I plug in my phone (or any device) into my PC the Device Manager refreshes and I hear the sound Windows makes when a new device is detected, but none of those thing happen if I connect my phone that is in fastboot.

I know that the USB port and cable are working because `adb devices` and Device Manager work fine and actually show my phone when it's not in fastboot.

So how do I install new fastboot drivers without the Device Manager?

OR

How do I make the Device Manager detect my phone while it's in fastboot?

# Answer
So, it turns out that Samsung phones have a different way to unlock the bootloader.

You need to power off your device, then hold both the volume up and down buttons and plug in your phone while doing that (I'm not sure if you have to plug it into a PC or if a charger is good enough). That will boot your phone to the Download mode splash screen where you can choose to unlock the bootloader if you have "OEM unlocking" enabled in developer options.
> 1 votes

---
Tags: samsung, rooting, fastboot, bootloader, usb-drivers
---


# Question
Title: Opt-out for Google Analytics on Android/Chrome mobile browser
Google has an opt-out for Google Analytics

> To provide website visitors with the ability to prevent their data from being used by Google Analytics, we have developed the Google Analytics opt out browser add-on

Normally you would expect an opt-in for these kind of services, but an opt-out is something. Analytics is a program they run on my device without asking or without consent, taking CPU, battery and bandwidth and probably privacy.

But how do I opt-out on my mobile Android browser?

# Answer
> 1 votes
Use TrackerControl app on Fdroid store. Blocks all trackers across all your apps.

I started using Fdroid and loved it's privacy friendly no bloatware apps. You should try too

---
Tags: browser, privacy, google-analytics
---


# Question
Title: Get the size of the navigation bar using ADB
I want to know what is the size of the navigation bar in pixel using ADB.

Using `adb shell wm size` gives the complete screen size instead of only the navigation bar.

Is there any way to get it?

# Answer
> 2 votes
Enter this one-liner:

```
adb shell dumpsys window windows| sed -n '/Window .*NavigationBar.*:/,/Window .*:/p'| grep 'Requested'

```

Alternatively, if you don't have Linux/Mac, try this:

```
adb shell
dumpsys window windows | toybox sed -n '/Window .*NavigationBar.*:/,/Window .*:/p'| grep 'Requested'

```

What's happening in that one liner is this:

1. we use *dumpsys* to output all the details of all the windows displayed on the screen (irrespective of the screen on or off)
2. we filter the content using *sed* to show only those lines which have information about Navigation Bar
3. we *grep* the information we need.

You can alternatively try grepping for `grep mSystemDecorRect`. I don't know which one is more reliable in all circumstances.

Expected output example:

```
Requested **w=1080 h=126** mLayoutSeq=10835

# if 'mSystemDecorRect' was grepped, then:

mSystemDecorRect=[0,0][1080,126] mLastClipRect=[0,0][1080,126]

```

**w**: width, **h**: height, of your navigation bar respectively.

**Note:** for some reason if the one-liner fails to work or gives unexpected output, filter it like this. Get the dump using that first dumpsys command, then find the entry for your NavigationBar, and within that, look for the size.

Tested on OnePlus 6 running Android 10.

Credits: Fiximan of Unix & Linux for sed command.

# Answer
> 0 votes
On OnePlus 3 running Android 9, replace `NavigationBar` with `StatusBar` instead.

```
adb shell dumpsys window windows| sed -n '/Window .*StatusBar.*:/,/Window .*:/p'| grep 'Requested'

```

It will return this

```
Requested w=1080 h=63 mLayoutSeq=3640

```

---
Tags: adb, navigation-bar
---


# Question
Title: Analyzing boot loop Root cause from console-ramoops-0 ( & logcat)
**Summary - Update 2:**
I am not deleting the question content, to preserve history ( but an admin may if appropriate delete that content) but things have change since. A day after I can into the below mentioned `TWRP createTarFork() error 255` issue I could manage the data restore `/data` from `TWRP Nandroid backup`. **The issue is for 2nd install of the same `stock ROM` \- I run into a `bootloop`.** The `TWRP backup` itself was from an `Encrypted partition` being restored to another `partition` ( `Encrypted` or otherwise regardless ). Trying to get to the RC of the `bootloop` & some way I an restore my `/data` I've attached logs of bad & normal boot below.
this is older history. *May go directly to update 1 below ,* skipping it :
`Boot-looped` and got stuck in powered by android logo. `Logcat` hasnt been much useful. Wanna know what's causing the stuck. All I have is this from `/sys/fs/pstore/console-ramoops-0`

```
'android.frameworks.sensorservice@1.0::ISensorManager/default': No such file or directory

```

I am attaching Entire /sys/fs/pstore/console-ramoops-0

what seems the issue ?
I have TWRP backups of `vendor system boot` that i tinkered restores with. No Luck. This is stock `MIUI ROM` with `TWRP as recovery base` so after flashing dm-verify-no encrypt.zip ( cant recall the exact name ) + certification.zi & permssiver I get past `MIUI` logo but now looping at powered by `android` logo

`fsck` outcomes

```
    olivelite:/ # e2fsck /dev/block/mmcblk0p60
e2fsck 1.43.3 (04-Sep-2016)
/dev/block/mmcblk0p60: clean, 4614/65536 files, 184349/262144 blocks
olivelite:/ # fsck /dev/block/mmcblk0p60
/sbin/sh: fsck: not found
127|olivelite:/ # e2fsck -v /dev/block/mmcblk0p60
e2fsck 1.43.3 (04-Sep-2016)
/dev/block/mmcblk0p60: clean, 4614/65536 files, 184349/262144 blocks
olivelite:/ # e2fsck -v /dev/block/mmcblk0p59
e2fsck 1.43.3 (04-Sep-2016)
/dev/block/mmcblk0p59: clean, 4547/262144 files, 680379/1048576 blocks
olivelite:/ # e2fsck -v /dev/block/mmcblk0p62
e2fsck 1.43.3 (04-Sep-2016)
data: clean, 62826/1389536 files, 3383723/5667584 blocks
olivelite:/ # e2fsck -v /dev/block/mmcblk0p57
e2fsck 1.43.3 (04-Sep-2016)
/dev/block/mmcblk0p57: clean, 33/98304 files, 22707/98304 blocksenter

```

`fsck` sounds clean for all `partitions`
Here is the `**logcat**` & here's `**dmesg**` from `logcat` it could be a `decryption` issue. But that's only for `boot` `twrp`asks for pattern and decrypts just fine. Why cant it happen during `boot`\- that's my hunch on the prob. Not trying to lure in that direction. Like *Mikko* said pretty much everything screams so its difficult to nab the culprit
Gonna try `/data` backup `wipe` and `restore` lets see...
. **Update**
as I suspected it appears to be `encryption` related. the previous successful install had a `pattern lock` ( at the time that install was built, I `flashed - permissiver.zip, certificate.zip & dm-verity-force-encryption w default ops to disable verity & disable forced encryption` ) - but`TWRP nandroid backup` itself is never `encrypted`. When tried to restore it - I always ended up with `TWRP createTarFork() error 255` which is a very generic error - with multiple RC's. In my case it happens immediately ( previous data was `wiped & formatted all relevant partitions` . Only way I could successfully restore was use `flashtool` ( that runs `fastboot` commands underneath ) to install `stock` -\>  `fastboot twrp & patched magisk boot install` and then restore `/data` ( after running `magisk` & `dm verity` attempt `twrp` restore ) - in that case restore was successful. So with above steps I could successfully restore `/data` but that restored `/data` will get stuck in `bootloop` ( if `twrp` backups arent `encrypted` , why then does a simple `wipe & format` not allow `TWRP restore` ? only `flashtool` de-novo `stock` install will permit restore ? . I read a bug in `twrp` will not let backup from `encrypted partition` be restored onto un-encrypted ..ok so I also `encrypted` de-novo `stock` install with same pattern & after successfully restoring `/data` got stuck in the same `bootloop` again ) .
while I am using this de-novo `stock` install right now with 'bare minimal survival kit' apps. I could pull up logs of what a `successful boot` looked like to compare with `boot loop after /data restored` I uploaded earlier ( as suggested by *Mikko* \- need bad boot and normal boot logs to compare ) .
**So the big Question**
is how in the world can I get back `/data` to restore from my `Nandroid backup` without `boot looping`
Uploaded these :
Normal boot `pmsg-ramoops` , `dmesg`, `ramoops` ( last 2 are pretty much the same - if you read ramoops- good enough ), `logcat` Needless to say restore's being attempted on the same stock ROM

# Answer
**Issues & solutions much as I could reach**
Cant restore `TWRP /data backup`
Can't figure out why `TWRP` backup itself being un-`encrypted` ( albeit from an encrypted phone ) cant be restored to any phone with the same ROM. This is with `TWRP 3.5.x`. Work around was flash ROM de-novo ( `wipe / format` in TWRP did not work ) & then attempt restore. But I ran into `bootloop`. There is another solution that targets `Luks Header` , but did not bother going further down the rabbit hole.
I really appreciate Mikko's dig into those logs , which is understandably is boring and frustrating .much as I'd have like to accept his answer - it's way off. This is abs nothing to do with `SeLinux`( `permissive 1` as the `log` shouts everywhere ) neither it was a corrupted fs ( `e2fsck` issue)

`Bootloop` after `/data restore`
Something to do with my older install being `encrypted` but I cant figure out presicely. I took my TWRP files and attempted manual restore :

```
$r --selinux --xattrs -vxpPf data.ext4.win003 /data/data/com.whatsapp

```

where r is `/data/tmp/tar-arm` as suggested here . My `whatsapp` data ( primary target of recovery besides other apps ) was straddled across 03 an 04 volumes and I ran into issues `invalid tar format` or some. The issue was not with backup but `/data/tmp/tar-arm`wasn't capable . I pulled it into `Linux` and ran regular tar similarly and restored. Lesson : if `tar` utils says backup is bad - dont take it for-granted. It might be a bad `tar`
> 0 votes

# Answer
If you run stock firmware and it's bootlooping, there's really not much that you can do because you don't have source code to the firmware you're running.

Your boot log seems to have a couple of interesting parts. I think this might suggest some kind of permission problem. Have you touched SELinux stuff (e.g. changed ACLs)?

```
[    0.629174] ------------[ cut here ]------------
[    0.629189] WARNING: CPU: 0 PID: 1 at /home/work/olivelite-p-stable-build/kernel/msm-4.9/drivers/base/core.c:600 device_create_file+0x7c/0xac
[    0.629193] Attribute otg_status: write permission without 'store'
[    0.629197] Modules linked in:
[    0.629205] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.9.112-perf-gd9f74a7 #1
[    0.629209] Hardware name: Qualcomm Technologies, Inc. SDM439 (Flattened Device Tree)
[    0.629226] [<c0113194>] (unwind_backtrace) from [<c010dbc0>] (show_stack+0x20/0x24)
[    0.629235] [<c010dbc0>] (show_stack) from [<c04e791c>] (dump_stack+0x94/0xa8)
[    0.629245] [<c04e791c>] (dump_stack) from [<c012f760>] (__warn+0xf8/0x110)
[    0.629253] [<c012f760>] (__warn) from [<c012f7d0>] (warn_slowpath_fmt+0x58/0x74)
[    0.629260] [<c012f7d0>] (warn_slowpath_fmt) from [<c0761e24>] (device_create_file+0x7c/0xac)
[    0.629271] [<c0761e24>] (device_create_file) from [<c087ebc8>] (msm_otg_probe+0x1668/0x1c28)
[    0.629281] [<c087ebc8>] (msm_otg_probe) from [<c0769a10>] (platform_drv_probe+0x48/0xac)
[    0.629289] [<c0769a10>] (platform_drv_probe) from [<c0767860>] (driver_probe_device+0x244/0x2f0)
[    0.629297] [<c0767860>] (driver_probe_device) from [<c07679d4>] (__driver_attach+0xc8/0xcc)
[    0.629303] [<c07679d4>] (__driver_attach) from [<c07652dc>] (bus_for_each_dev+0x8c/0xd0)
[    0.629311] [<c07652dc>] (bus_for_each_dev) from [<c07670e0>] (driver_attach+0x2c/0x30)
[    0.629317] [<c07670e0>] (driver_attach) from [<c0766c70>] (bus_add_driver+0x1ac/0x224)
[    0.629324] [<c0766c70>] (bus_add_driver) from [<c0768768>] (driver_register+0x9c/0x120)
[    0.629331] [<c0768768>] (driver_register) from [<c0769974>] (__platform_driver_register+0x50/0x58)
[    0.629341] [<c0769974>] (__platform_driver_register) from [<c16473dc>] (msm_otg_driver_init+0x1c/0x20)
[    0.629350] [<c16473dc>] (msm_otg_driver_init) from [<c0101ccc>] (do_one_initcall+0x60/0x1a4)
[    0.629359] [<c0101ccc>] (do_one_initcall) from [<c1601070>] (kernel_init_freeable+0x1f4/0x2b0)
[    0.629369] [<c1601070>] (kernel_init_freeable) from [<c0f7fd4c>] (kernel_init+0x18/0x158)
[    0.629378] [<c0f7fd4c>] (kernel_init) from [<c0108a10>] (ret_from_fork+0x14/0x24)
[    0.629384] ---[ end trace 09e0ec112fb2ab2d ]---
...
[    3.606115] init: Couldn't load property file '/odm/default.prop': open() failed: Nk such file or directory: No such file or directory
[    3.606592] selinux: avc:  denied  { set } for  scontext=u:r:vendor_init:s0 tcontext=u:object_r:exported_secure_prop:s0 tclass=property_service permissive=1
...
[    5.976174] e2fsck: e2fsck 1.43.3 (04-Sep-2016)
[    5.976174]
[    5.976210] e2fsck: /dev/block/bootdevice/by-name/persist is mounted.
[    5.976210]
[    5.976222] e2fsck: e2fsck: Cannot continue, aborting.
...
[    7.388219] type=1400 audit(54437781.749:20): avc: denied { setattr } for pid=404 comm="init" name="shared" dev="mmcblk0p62" ino=1157358 scontext=u:r:vendor_init:s0 tcontext=u:object_r:system_data_file:s0 tclass=dir permissive=1
[    7.399091] type=1400 audit(54437781.749:20): avc: denied { setattr } for pid=404 comm="init" name="shared" dev="mmcblk0p62" ino=1157358 scontext=u:r:vendor_init:s0 tcontext=u:object_r:system_data_file:s0 tclass=dir permissive=1
[    7.399114] type=1400 audit(54437781.759:21): avc: denied { setattr } for pid=404 comm="init" name="tombstones" dev="mmcblk0p62" ino=514055 scontext=u:r:vendor_init:s0 tcontext=u:object_r:tombstone_data_file:s0 tclass=dir permissive=1
[    7.402174] type=1400 audit(54437781.759:21): avc: denied { setattr } for pid=404 comm="init" name="tombstones" dev="mmcblk0p62" ino=514055 scontext=u:r:vendor_init:s0 tcontext=u:object_r:tombstone_data_file8s0 tclass=dir permissive=1
[    7.402193] type=1400 audit(54437781.769:22): avc: denied { write } for pid=404 comm="init" name="misc" dev="mmcblk0p62" ino=385537 scontext=u:r:vendor_init:s0 tcontext=u:object_r:system_data_file:s0 tclass=dir permissive=1
[    7.402323] type=1400 audit(54437781.769:22): avc: denied { write } for pid=404 comm="init" name="misc" dev="mmcblk0p62" ino=385537 scontext=u:r:vendor_init:s0 tcontext=u:object_r:system_data_file:s0 tclass=dir permissive=1
[    7.402339] type=1400 audit(54437781.769:23): avc: denied { add_name } for pid=404 comm="init" name="dts" scontext=u:r:vendor_init:s0 tcontext=u:object_r:system_data_file:s0 tclass=dir permissive=1

```

Also note the `e2fsck` aborting in the middle of the process.

**I would guess SELinux config being messed up or a filesystem corruption.**

You'd really need a log from *correctly booting* phone with the *identical firmware version* to compare to know for sure. In many cases official vendor firmware is a piece of crap that may emit all the above errors on every boot so you really cannot know if you're looking at red herring.

Usually the only good way to debug issues like this is to take full boot log from known working phone and compare it to full boot log from a phone that doesn't boot. (Obviously you need a comparision tool that can ignore the timestamps at the start of the lines. I'd use `meld` with filters.)

**Usually the problem is caused by the first error in the log.** However, as I mentioned, **vendor firmware often have lots of errors on every boot** so you cannot know which are fatal if you don't have known good boot log to compare. The line you mentioned in the question (`ISensorManager/default`) is way after all the above mentioned errors. I would assume that the `ISensorManager` failure is just a result of the other stuff going wrong.
> 2 votes

---
Tags: root-access, recovery-mode, twrp, boot-loop, logging
---


# Question
Title: MK7 VW GTI (2015) unable to receive metadata over bluetooth
When using Bluetooth audio in my mark7 VW GTI with my Pixel 3 on Android 11 the GTI can no longer receive any metadata other than the track positon. On-screen and steering-wheel controls that used to work to skip, pause, play, etc. all are unresponsive. This started at some point a year ago probably after an Android system update. Unfortunately the car does not have built-in android auto integration. My wife's LGthinq 7 has no issues.

Multiple attempts at resetting the Bluetooth settings on my phone and the car and repairing have not fixed the issue.

# Answer
> 2 votes
Enabling Developer Mode and setting the AVRCP version down to 1.3 (was at 1.5) corrected the issue. After doing so and resetting my phone the metadata displayed properly and I was able to use the car controller to control my playlist again.

> To enable developer options on the pixel 4a pull down notification shade and click on the gear to get to settings. Scroll down and choose About phone Scroll down to the bottom and click on Build number 7 or 8 times quickly until you see a message that says you are now a developer.
>
> To change AVRCP settings go back to settings and choose System. Scroll down to the bottom and choose Advanced then Developer Options Scroll about 1/2 way down in developer options and find Bluetooth AVRCP Version and change it to 1.3 then exit settings and reboot phone\] Source

This worked for me and was such a pain to find I wanted to get it on SE for better visibility for anyone else googling the issue.

---
Tags: bluetooth, bluetooth-pairing, android-auto
---


# Question
Title: Spellchecker not working with dual language with SwiftKey on a OnePlus Nord 2
I've just got a Nord 2.

I've installed MS Swiftkey and setup both English and Italian.

While the input itself works with both languages, all Italian works are underlined in red.

This doesn't happen with GBoard.

Also this doesn't happen in another phone of mine, same configuration.

Does anyone has any idea?

# Answer
> It doesn't happen with Gboard or the default keyboard because they're integrated with the Android system, and they have the access to the settings like "personal dictionary" in Android system; meanwhile SwiftKey is a 3rd party app, it does not have the system level access. That's why it cannot identify the languages other than system default language. In other words, Google Spell Checker works with Gboard but not SwiftKey.
>
> The solution is to disable spell checker.

Another potential solution could be adding Italian Language in settings. Go to:

```
Settings --> More/Additional Settings --> Language & Region

```

Here add Italian along with English.

Source

Hope this helps!
> 1 votes

# Answer
You mentioned on another phone - it works ( aka `Swiftkey` Italian isnt underlined by spellchecker ) Also try putting `swiftkey` as default keyboard and there's a language selection ,where you put in *Italian as your 1st language and Eng as second* ( do that my removing all languages and then add Italian 1st then Eng )
> 0 votes

---
Tags: swiftkey, spell-check, oneplus
---


# Question
Title: A seemingly random selection of apps keep crashing
Starting from today, some apps on my phone just kept crashing. At first it was mostly Google-related apps, and since I've had issues with Google Play services crashing before, I took the usual route of deleting app data and uninstalling updates. However, the issues persisted, and spread to other apps. Google kept crashing, the stock e-mail app kept crashing,my third party SMS app kept crashing... Some apps crash when I open them, some don't. For some the problem is solved by uninstalling and reinstalling them, for some it isn't. Google-based apps like YouTube and Play Store work fine, but others like Chrome don't. I can't seem to find a single "triggering" event that could have started this, apart from maybe some background update. I am running Android 8.1.0 on a Samsung Galaxy J7(2016).

Is there any way to solve this ?

EDIT : I found the common factor between all those apps : they all store data on my SD card, which is still accessible but awfully slow. I'm guessing this is the root of the issue. However, I didn't specifically chose for those apps to be stored on the SD card, it seems Android automatically offloaded data there, and I don't know how to reverse it.

# Answer
Turns out **uninstalling and reinstalling Google Chrome**, specifically, solved everything. As in, it stopped other apps from crashing as well. No idea why. I initially tried transferring everything from my old SD card to a new one, but it didn't solve the problem. This did. Go figure.
> 0 votes

---
Tags: applications, google-play-store, samsung, crashes
---


# Question
Title: How to configure BlueStacks App Player to use Proxy settings when connecting to Network?
Bluestacks allows running of Android apps on Windows by emulating the Android OS image.

I recently installed BlueStacks\_HD\_AppPlayerPro (0.7.0.725) on Windows XP but was not able to download/install any apps because my network requires a proxy. It shows the following error:

I tried using ProxyCaps like freecap, but it did not work for me. How can I configure BlueStacks to use my proxy settings?

# Answer
> 9 votes
*The other answers are way out of date.*

**BlueStacks installations now includes a command-line utility** `HD-ConfigHttpProxy.exe` to setup a proxy connection. I can't find documentation for this utility anywhere but it's pretty basic:

---

# Using BlueStacks with a Proxy Server

1. Open **BlueStacks**. (It has to be open before running the utiity)
2. Open a Windows **command prompt**.
    * (eg. hit +`R` → type `cmd` → hit `Enter` )
3. Change to the **BlueStacks program folder**.
    * (eg. `cd C:\Program Files\BlueStacks` )
4. **Run `HD-ConfigHttpProxy.exe`** :

> **Usage**:
>
> ```
>      HD-ConfigHttpProxy.exe set <host> <port>      connect to specified proxy
>      HD-ConfigHttpProxy.exe reset                  reset/stop using proxy
>
> ```
>
> For example: `HD-ConfigHttpProxy.exe set 123.45.67.890 4444`

5. When prompted, **close and re-open** BlueStacks.

Alternatively, you can specify other proxy protocols by including it in the `<host>` in standard syntax. For example, I used `socks://localhost` and my custom port number. It took a couple tries but it worked eventually.

---

## To disconnect / reset BlueStacks proxy settings :

1. Make sure BlueStacks is **running**
2. Open a **command prompt**
3. Run command: **`C:\Program Files\BlueStacks\HD-ConfigHttpProxy.exe reset`**
4. **Close and re-open** BlueStacks.

# Answer
> 5 votes
According to Bluestack employee Deepika Sharma:

> Currently, we do not support proxy settings in BlueStacks App Player but will definitely consider it in our future release.

This information came from their help forum thread: No network access behind a proxy.

---

Alex Guerrieri answered stating that it was able to work around this issue using the application you've mentioned. I'm posting a solution here, as I don't know what you have tried:

> I found a solution. I used proxycap to redirect Bluestacks through proxy (even with LDAP). You have to download and install the application, set your proxy and create a new rule for HD-Network.exe (found under Bluestack directory in %Program\_Files%). It worked for me.

# Answer
> 1 votes
I have being able to use BlueStacks on my network using cntlm + Proxifier. I use cntlm to authenticate on my proxy and Proxifier as a replacement for Proxycaps/WideCap. Proxifier lets you tunnel your socks connections through the cntlm proxy (http://proxifier.com/)

# Answer
> 1 votes
Use a VPN android app that supports proxy (e.g. AgoVPN) then connect to the VPN and you will access the internet in BlueStacks. I tested it in Bluestack 5 in Windows 10.

---
Tags: proxy, bluestacks
---


title: Physical-keyboard driven app launcher?

text:
# Question
Title: Physical-keyboard driven app launcher?
On most operating systems, there's a keyboard shortcut to trigger a keyboard-driven app-launcher.

For example:

* On Windows: `Super` and start typing.
* On OSX: `Super`+`Space` and start typing.
* Linux: it varies, but same as OSX on Elementary OS.

Is there an equivalent launcher available for Android where I can push a key combo and start typing to find the app I'd like to launch?

# Answer
On the stock Google launcher, if you simply start typing, it'll search for the thing you typed for, both online and in local apps. You can cycle through the matches with the arrow keys, and launch one with `Enter`.
> 1 votes

# Answer
I found that "alt-d" from the home screen when to the application launcher (though I needed to press some keys to get to the search box).

This was documented in the key-list that you could pop up with windows-/.
> 0 votes

---
Tags: keyboard
---


# Question
Title: Turn off email notifications (not Gmail)
I have been getting email notifications from Gmail and the default email app on my Samsung Galaxy Exhibit. I only want to use Gmail but, when I go to uncheck "show notifications" for the default email app, I am unable to do so (it is grayed out). Why is this? I really don't need double notifications.

# Answer
> 1 votes
Options:

1. Disable the default email app - Settings\>Apps\>Email\> "Disable"
2. Remove the email account - Settings\>Accounts\> "Remove the email account"

I'll add any other ways that I think of if I figure out other possible options to handle the problem.

# Answer
> 1 votes
1. Open phone settings
2. Go to "Accounts/Account sync
3. Find your phone's email icon/widget.
4. Tap it, then tap the on "Remove Account."

# Answer
> 0 votes
In the default E-mail App click settings, click on the account turn/slide Notifications off for new E-mails. Android 7.0 Software H87110p AT&T Carrier Phone LG-H871

# Answer
> 0 votes
Go to Gmail app

* Settings\>Notifications\>"Turn Off"

Or

Restart your device and try to turn off via Settings\>Apps Info\>Gmail and uncheck notifications.

---
Tags: notifications, email
---


# Question
Title: Does uninstalling system apps using ADB commands increase internal storage?
I just wanted to know if uninstalling system apps or bloatware using adb commands frees up storage space. I know that uninstalling system apps using adb doesn't actually removes the app from your device, just disable it and hides it from user 0.

But will this disabling reduce the space the app consumes.

I tried disabled Facebook from app settings and the size reduced significantly.

Will adb uninstall do the same ?

# Answer
> 4 votes
Yes and no - that depends if the app has created user data at run-time and if it has installed an update e.g. via Google Play Store (system updates are irrelevant here).

### No Update via Play Store installed

System apps are installed on the system partition, and the system partition is of fixed size. So they don't require any space on the user data partition.

If you uninstall a system app (or better disable a system app as uninstalling would require root permissions) no space is freed. But this only applies to system apps that have not received an update via e.g. via Google Play Store.

If the app has been run and has created user data this user data is deleted when you disable/uninstall the app. So depending how much space you can regain by disabling such an app depends on how many user data it had created.

### Update via Play Store installed

But system apps are not static, they also get updates via Google Play Store or via a manufacture specific store (e.g. Galaxy Store for Samsung). As system apps reside on the system partition and this partition is read-only the update has to be installed on the user data partition. So effectively you have the app installed twice, one time the old version on the system partition and a second time the recent version on the user data partition.

If you now disable or uninstall the system app the recent version installed on your user data partition is deleted. Deleting something from the user data partition frees up space and thus your internal storage increase.

In your case it is the Facebook app this means:

Disabling it has deleted the installed updates and the user data of Facebook app. As the Facebook app is pretty large you have gained some megabyte back by disabling it.

---
Tags: adb, internal-storage, uninstallation, system-apps, bloatware
---


# Question
Title: Macrodroid: I want a repeating alert when battery is less than/over than x%
I want a repeating alert when battery is less than/over than x%.

I have a pair of alerts (Using MacroDroid) that are triggered by a battery level change. One of less than 35%, and one of more than 85%.

It nicely runs a media sound file to alert me. (Ding!)

I want them to *repeatedly* alert me while they are above/below the limit. Currently it only seems to do it once: at the moment that the percentage level drops or increases past each limit. How could I make it sound every (say 5 minutes) when it is above or below the limits?

I'm becoming obsessed with battery levels ever since I replaced my battery and I found it to be swollen like a rotten grapefruit! :)

Edit: I've found some info that accessing the root (whatever that means) can give you access to the sys folder that can actuate the ability of the phone to either charge or not do so. I have done similar things with windows and the registry and feel confident doing these things with the Win OS in the Registry, but not with Android OS. If I access the sys folder and try to save changes it won't let me.

# Answer
> 2 votes
Use the trigger Regular interval only. Do not use with any other Trigger. Setup your action, the media tone that is, and use the constraint battery level. You may have to use a logic constraint here, such as AND constraint in MacroDroid specific category.

# Answer
> 0 votes
Try this

```
If (battery level [>/<]X%)
-Do/while
--media file

```

---
Tags: battery, charging, macrodroid
---


# Question
Title: Taking a full backup for LG Velvet 5G (TMO) - does root/su matter?
I've got a stock LG Velvet 5G from T-Mobile that I'm turning in for an insurance claim (I was sent an LG V60 in exchange). I'm trying to take a full backup and then wiping it before I mail it out to them.

I've not been keeping up with current events in the tech industry, but upon loading up ADB I'm seeing a deprecation warning, which I've just caught back up about moments ago. I'm aware ADB backup doesn't necessarily take a full backup (exclusions from manifest, xml paths, etc)., but I'm unsure what other method would be considered more all-inclusive at this point. Furthermore, upon glancing at the XDA forum for this device (here), it seems that although a method to obtain root is available, the OP declares "backups are broken" and does not further specify any details. I'm unsure if this means that the best I can do is take the ADB backup and hope it gets everything (and manually backup what I can think of — off the top of my head — that doesn't get captured, like 2FA tokens, etc), but will obtaining root/su actually help or not in my specific situation?

# Answer
A rooted device allows to backup data of apps that simply deny backups in their Android manifest.xml.

Root has no effect on Apps that make use of the `AndroidKeystore`. This is a system service that allows to generate and import cryptographic keys (on recent Android devices symmetric and asymmetric keys). Those keys are stored protected by the CPU in TEE so that apps can make use of the keys but they can't export them. This limitation also applies to backups using root. The keys are bound to the CPU and can't be exported, thus all apps that use such a key to encrypt their app data will fail after restoring their app data as the necessary key is missing.
> 4 votes

---
Tags: root-access, backup
---


# Question
Title: Is it possible to run an X Server and a window manager in TermUX
I am running the TermUX application on an Android 10 smartphone, and can type in it with my Logitech K480 keyboard. I want to run a window manager like fvwm (see fvwm.org).

I have found an article on the internet which seems to mention i can run VNC server and client or XSDL although the latter is unstable, but as far as I understand I can only do this if i have a separate computer running the server, and then my Android smartphone can run the client window manager from TermUX after changing the DISPLAY environment variable

Is this correct?

How can I run an X Server in TermUX and then simply run the window manager with the startx command like in Linux?

Thanks.

# Answer
You can run either an x-server or a vnc-client on the same Android device you have installed termux on. You don't have to use another device for that.

Instructions are available here https://wiki.termux.com/wiki/Graphical\_Environment

I suggest you use VNC instead of an x-server.
> 1 votes

---
Tags: linux, termux
---


title: Customize Google Assistant button

text:
# Question
Title: Customize Google Assistant button
I am using a Motorola phone which has a dedicated Google Assistant button, but I don't use the assistant much.

Is it possible to customize the button and use it for some other activity?

# Answer
> 0 votes
Fortunately there is a way..

Download this Button Mapper , grant the accessibility permission then click on add a button then press the button to record it and then set the function you want! Simple as that.

Remember to turn off battery optimization for Button Mapper app because if the app is paused by the battery optimization then no hardware buttons will work (touch screen will work). You'll have to go to settings and kill the Button Mapper app to get hardware buttons working again.

This is the only way to change the button function without root.

# Answer
> 0 votes
If you only want to customize the Google Assistant button, then Assistant Shortcuts is a good solution.

By setting it as the device's "assistant", you have a single button press to perform any function you specify. I'm currently using it to take screenshots.

---
Tags: buttons, motorola, google-assistant
---


# Question
Title: Why does my app restart, even though it is already running and should just switch focus?
When I open a special company-internal app I need for work through my gesture-controlled overlay menu, it sometimes completely restarts, even though it's already open in the background. What's the reason for this and how can I stop it?

# Answer
After days of fiddling and googling I finally noticed that it depends on where the app is **initially** started from (meaning the first start from when it has been closed before).

* If I initially start it from the overlay, I can switch to it via overlay without it restarting, but it restarts when using the normal home screen button.
* If I initially start it from the home screen, it's the other way around (works from home screen, restarts from overlay).
> 0 votes

---
Tags: applications
---


# Question
Title: How to take a screenshot from a video capture?
I recorded a screen capture of catching a shiny Pokemon in Pokemon Go and it about 25 seconds long, with the stars sparkling at about 0:00:11 of the video.

So how do I capture the moment and make it into a photo?

---

Details: the Play button is there if I pause it, so it is obstructing the video moment if I take a screenshot at the moment. I tried all the options or functions available in the Gallery app and then there seems to be no way.

# Answer
> 1 votes
This web service will help you create a screenshot from a video capture:

https://ezgif.com/video-to-jpg

---
Tags: screenshots
---


# Question
Title: Password protect zip file with 7-zip that works between Android and Windows
Is there a way to password protect a zip file with 7-zip on a pc, then unzip the file on android (while requiring the password), and essentially use it on either pc or android?

I tried with es explorer, as well as fz explorer, and I'm not seeing any of the needed functionality. Any help/suggestions much appreciated.

# Answer
Try MixPlorer. I think it got what you need.
> -1 votes

---
Tags: applications, password, zip
---


title: Unbricking Lenovo Tab M10 (X606F)

text:
# Question
Title: Unbricking Lenovo Tab M10 (X606F)
For the purpose of flashing custom ROM I flashed Lenovo Tab M10 FHD Plus (X606F) with Android 9 ROM. I used SP Flash Tool. Now the tablet won't power on. Pressing buttons does nothing. Can't invoke fastboot nor recovery mode.

Red LED indicating charging is the only thing the tablet is giving me now. I've tried to restore the device using official Lenovo's Rescue Tool. Process of restoring gets stuck on 40% and won't go on.

Hard reset (pressing and holding volume buttons + power button for few secs) isn't doing anything.

What else I can try ?

I've followed the steps outlined and I got to the point where Windows doesn't recognize the tablet:

# Answer
> 0 votes
Okay what I'm gonna write require a lot of patience and common sense to achieve.

**Plus You do this at your own risk**

You require a windows machine to do all this

Assuming this is your device, download bypass tool on your computer first.

Now install Python 3 on it ( 3.9 or anything recent recommended) ( dont forget to add python to PATH while installing )

then pip install this module via CMD

`pip install pyusb pyserial json5`

Launch bypass tool named mtk\_bypass\_rev3.exe (turn off real time protection if it's getting detected as Virus)

Hold both volume buttons and connect your device to pc with a usb cable

proceed forward if output looks like this

Now follow this guide

---
Tags: recovery-mode, unbricking, lenovo
---


# Question
Title: How to sync Garmin Connect with Google Fit?
I have Garmin Swim 2.

On my Pixel 3A XL installed Garmin Connect, it works fine.

But I want also see data on Google Fit.

Unfortunately Garmin Swim 2 doesn't connect with Google Fit and I need to install third party app do this.

I installed Health Sync.

Look like it's working:

But I don't see any activities in Google Fit where I didn't have my phone with me, for example swimming, sleep and so on.

On Garmin Forum I found the following:

> in Settings of Google Fit, under Tracking Preferences, Turn off " Track your activities" Use Phone sensors to automatically track metrics like steps and distance.

Okay, I did this, but it didn't help.

What I should do to sync Garmin Connect with Google Fit?

# Answer
Thanks to Health Sync support, problem was solved.

Actually I have two google accounts and Goggle Fit used another account.

When I switched to correct account, everything started to work.
> 0 votes

# Answer
if there is a problem with Health Sync, you can use the 'Report another problem' option in the Help Center, and you will get support to solve the problem.
> 1 votes

---
Tags: smartwatch, google-fit, google-pixel-3a-xl
---


# Question
Title: Can any Google Pixel smartphones take 12MP or better photos in 16:9 aspect ratio?
I have been considering buying a Google Pixel 3 or 3 XL Android smartphone to use primarily for photography and phone calls. Google advertises that these phones have 12MP main cameras. That's fewer megapixels than I would like in a camera, but I was still considering those devices as possibilities.

While performing research, I saw a short video clip that showed Google's UI. From what I could tell, 12MP is only available in 4:3 aspect ratio. In 16:9 aspect ratio, the resolution drops all the way down to a paltry 8MP. That's *much* less resolution that what I what in a camera.

Is the resolution of the main camera in the Google Pixel 3 and 3XL only ~8MP in 16:9 mode? If so, is this limitation true for their entire line of Pixel smartphones?

# Answer
> 0 votes
Well, it looks like the Google Pixel 6 Plus (or Pro, or whatever they decide to call it) will finally have a camera sensor that isn't limited by technology that's a decade old.

That phone is supposed to come out sometime around the end of 2021. Of course, it will cost more than most computers, so it won't be practical for most people to own.

For all practical purposes, the answer is that Google does not currently have any smartphones that can take 16:9 photographs with greater than 8MP. In a few months, this might finally be possible, but the device will cost more than a mirrorless DSLR camera with a professional sensor that has much better characteristics.

---
Tags: camera, photos, google-pixel-3-xl, google-camera, google-pixel-3
---


# Question
Title: How to auto-answer video calls for telepresence/baby monitor/pet cam?
I would like to leave a tablet on my shelf and be able to video call into it while away and talk/hear/see my home without anyone necessarily being there, just to be able to check in. I have looked for auto-answer settings in Skype and Hangouts.

The situation is that I have a baby I'm going to leave in my home with her grandmother, and other sitters and relatives, and I don't want to have to teach them except to say that I'll check in via video sometimes. This way I shouldn't ever disturb the peace with phone ringtone sounds, nor have to wait for someone to pick up, nor have to wonder why they didn't pick up.

Skype has auto-answer, but it doesn't turn on video from the receiver. What else can I try? I haven't installed *everything* in the Play store…

# Answer
> 1 votes
# Cloud camera solution

## TL;DR *Use **SeeCiTV** to use a second device as a remote camera.*

*Assuming your device is always going to be plugged in and connected to the Internet...*

You can use the app **SeeCiTV on the Play Store** in order to always be able to check on the camera on your device. There are several apps which accomplish this, but I recommend this app as its interface seems easy to use (unlike the IP Webcam solution posted below).

This method is secured using your Google account which should already be set up with your phones, with the addition of being able to add Trusted Users if you want to give other accounts access to that camera.

One potential downside to this is that you can only access your new "home camera" on another phone or tablet, as there is currently no way to view it from a PC (unless you have a mobile device emulator). While SeeCiTV is great in terms of security and efficiency (the device screen and camera is turned off until you want to monitor it), let's say you need to be able to access it from any device on the Internet, then you'd need a different app like the next solution...

# TeamViewer solution

## TL;DR *Use TeamViewer QuickSupport* to answer VoIP calls.

This is another handy solution because you will not need to keep your remote screen on at all times (unlike the next few solutions). This supports most devices, but you can check the supported manufacturers list to make sure your device will be supported.

Download and install **TeamViewer QuickSupport** on the Play Store and set up a TeamViewer account from the app. Now download the TeamViewer control app on the Play Store on both the remote device (the device you will control) and the host device (the device from which you will he controlling your remote device).

Now you will need to install a manufacturer-specific add-in for QuickSupport, which the app should prompt you to install when you first open it. After you install the add-in, sign into your TeamViewer account on both devices. Then, add your remote device's ID (given by the QuickSupport app) to your list of account devices. Then, you'll be able to connect to that device any time and answer any incoming calls that you need (or you could start the call from the remote device).

# IP Webcam solution

## TL;DR *Please use the Cloud camera solution unless you know what you're doing here.*

If you *need* to have access to this device from a PC, and you can't use a mobile device or desktop emulator, then you can use an app like **IP Webcam on the Play Store** in order to constantly stream the camera data to the Internet.

You'd have to set up your remote network's ports and other settings to work with IP Webcam. The steps are walked through in the app, but

*Why do I recommend the **Cloud camera solution** instead of this one?*

For starters, it's potentially much less secure. SeeCiTV uses a Google account for authentication, but IP Webcam has its own form of authentication. Since you'd be connecting to your own remote IP, it's possible that your credentials, when you log in, will be transferred insecurely over the network. While IP Webcam may encrypt this information before transferring, you can avoid exchanging your camera stream and passwords over a non-SSL-secured connection if you use the Cloud camera solution instead. Even if you use a different password for this, it is much easier for attackers be able to gain access to your remote camera. *And, yes, they could watch your baby for you, but maybe you should leave that task to yourself and your family.*

It's also far less convenient to set up and to access the IP Webcam. IP Webcam will require your screen and camera to be active at all times (which will affect device life).

# Skype solution

## TL;DR *If you need 2-way comms, use Skype*

If it's necessary to have two-way communication between your device and the remote device, you could set up a Skype group between 3 devices: the remote tablet, a PC or another old device, and the device you want to use to video call. First, you'll need to install Skype on all of the devices. You can use these installers: Skype for Android or Skype for desktop. Start a Skype group between the devices, using a different Skype account for each device. Start a group call, and you will need to answer on the tablet and PC/device, then start the video on the remote tablet. Now you can connect to the group call whenever you want, from a third device. You can even share your own video feed from your third device. Just make sure your Internet is stable and that the call remains on at least 2 devices at all times.

# Answer
> 0 votes
Here is my proven/tested solution for the same/similar situation.

1. You need to have two devices - a) yr smart phone b) any standard tab
2. Have Skype setup in BOTH the devices.
3. Specifically setup "auto call receiving - ON" for the Skype on the tab.

Now you call whenever you want, the Skype on the tab (at your home with baby + Gramma) will *automatically* wake up and receive the call *without* any touch from anyone, after a few rings!

I used this method to connect (or rather self-appear) in front of my 88 year father who is battling with 2-3rd stage of dementia. The tab got to be on power ON mode (connected to a socket) 24 x 7. That is one little but important thing you got to keep it mind. And avoid longer video chats to keep the tab from over heating. Just a word of caution.

---
Tags: applications, video-calling, telephony
---


# Question
Title: FB Messenger - How to get around the extreme photo/video compression resulting in poor quality?
I often send photos/videos to my friends on Messenger. The problem is that FB's algorythm compresses them so badly it really affects their enjoyability. I send HD videos, and they get something like it was 2000. I send high quality photos of a document and they can barely read it.

* Is there a way to turn off image and video compression in Facebook Messenger?
* If not, is there any app/extension for sharing original quality images and videos that is convenient to use both for me and the receiver?

# Answer
> 1 votes
*This is not really a solution, more so a workaround, but as I got no answers for 3 years, I decided to post it.*

While I think messenger got better lately, it still compresses every media. It's no surprise - they have to store them on their own server after all. But there are a lot of messaging apps that store all media on the recipient's phone instead. Most of these send all media uncompressed, or at most compressed in a barely noticeable way, and they have the additional benefits of generally being much more private and secure than Messenger. Some I used for a longer time are:

* WhatsApp \- it's very widely used everywhere in the world. Used to be renowned for its privacy, but recently there have been issues regarding that as Facebook made modifications. It sends all media without any compression.
* Signal \- it's a new one, but already gained widespread usage comparable to WhatsApp. Most of the users changed from WhatsApp as Facebook made those privacy-violating steps. (In fact, the week that happened, they had so many new users they temporarily had to shut down the service as the servers couldn't keep up.) It is by far the most private one, as the whole service including the app and the server is completely open-source. Especially used in areas where privacy is more of a concern, like the USA, troubled areas like Hong Kong, or non-democratic countries, but it is gaining popularity everywhere.
* LINE \- I used it on a daily basis, and among all these, it feels the most "premium". I like the interface, and the stickers and themes are, while paid, are of exceptional quality. Out of all, it's the closest to Messenger in terms of features. Mostly widespread in the Eastern-Asia region, especially in Japan. It also has an interesting backstory: originally it was created by the LINE corp. for internal usage after the Fukushima accident, to let the employees spread and gain information quickly. Then it proved useful and more and more outside people requested to join, so eventually it became public.
* Telegram \- I haven't used this too much, but it is roughly on the same level as Whatsapp used to be before the disputed steps of Facebook.
* KakaoTalk \- I barely know its existence, but I list it for completeness. Just as LINE, it's mostly used in Eastern Asia.

---
Tags: video, images, facebook-messenger, file-sharing
---


title: Display glitches in certain apps

text:
# Question
Title: Display glitches in certain apps
Device specs

I have so far only noticed this problem in Quora app, and Chrome (some pages). But these are the apps I almost always browse the net with. I did not notice any such issue offline. It has been around three days.

These are just a few examples of the types of glitches that occur.

I have tried: -uninstalling Google's WebView after hearing of a recent update causing trouble -forcing GPU rendering. -Reinstalling Chrome and Quora.

Just in case this helps: I had observed text glitches on Chrome for quite some time before this started. Usually, one or a few words would be disfigured. Changing zoom would correct it. Also, today many files of mine have disappeared. They aren't hidden, just nowhere to be seen.

Oh yeah and

# Answer
> 0 votes
The only thing that worked for me was disabling "GPU rasterization" in chrome://flags

---
Tags: xiaomi, bugs
---


# Question
Title: adb shell svc power stayon multiple device
When there is multiple Android-devices connected with Linux computer (using Linux Mint 20.2 Cinnamon, which is based on appropriate Ubuntu 20.04 LTS version) and scrcpy v1.12 then how to keep multiple devices awake? When one device connected, then I used:

```
adb shell svc power stayon true

```

... and it worked.

When multiple devices, then there will be an error message:

```
error: more than one device/emulator

```

Tried find a solution, but no luck so far. Tried to connect devices one at a time and then run, but it didn't work. Having one device using OxygenOS 9.0.6, which is based on Android appropriate version. Second device has LineageOS 18.1, which is based on Android 11.

Using following commands to connect with multiple devices:

```
scrcpy -s <ID1> -m 1024 -S&
scrcpy -s <ID2> -S&

```

The -S will turn of device screen, once it is connected. I would like to keep screen on at computer, while using scrcpy, but device screen should be turned off at the same time.

Tried also GUI but it didn't help either. One device with Android 9 has screen always on, but another device with Android 11 will time out and also scrcpy window will turn off. I know, that there is a shortcut key CTRL+O at scrcpy, which helps to turn off device screen or using -S will do it immediately after connecting.

Any idea, how to solve this?

# Answer
> 1 votes
The answer is

```
adb -s <ID> shell svc power stayon true

```

Device IDs can be retrieved, while Android devices are connected with computer via USB-cable (or WiFi):

```
adb devices
<ID1>  device
<ID2>  device

```

If device is not recognized, then please ensure, that USB-debugging is turned on while USB-cable is connected. For that in turn there is needed a developer mode beforehand. Also Default USB configuration is worth to check, e.g. charge only and no data transfer by default in order to avoid possible personal data revealing or malware infection at foreign computer. Even in own computer, it is not needed all the time mount device storage, if you just need to use screen mirroring. Whenever data retrieval from Android device is needed, USB mode can be changed (while Android device USB-cable is connected with computer) via notification menu, usually pulled down from upper edge on Android device.

E.g. in Linux there can be created dedicated shortcut icons (`~/.local/share/applications/*.desktop`) with appropriate PNG-images (`~/.local/share/icons/*.png`).

device 1:

```
Exec=sh -c 'adb -s <ID1> shell svc power stayon true && scrcpy -s <ID1> -S &'

```

device 2

```
Exec=sh -c 'adb -s <ID2> shell svc power stayon true && scrcpy -s <ID2> -S &'

```

The `-S` will turn off Android device screen immediately when connecting, but the first part of command until `&&` will keep scrcpy mirrored image on computer screen always on and device will not be locked even on idle time. Additional explanation about svc power command can be found from source code. The command will set whether to keep your device awake (prevent sleeping) or not while it's being charged on specific platform: USB charging, AC power, wireless charging, or all of them:

* `true` will set all flags (usb, ac, wireless)
* `false` will clear all flags
* `usb/ac/wireless` will set that specific flag while clear the other

The same setting usually can be accessed on "Developer options" named "Stay awake", though it's simpler with only toggle to turn on/off.

The overall desktop shortcut code (replace the `<device name>` and `<ID>` with appropriate values) for `~/.local/share/applications/*.desktop` file(s), also possibly change category:

```
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Type=Application
Name=<device name>
GenericName=<device name>
Comment=Android screen copy
Icon=scrcpy-<device>
Exec=sh -c 'adb -s <ID> shell svc power stayon true && scrcpy -s <ID> -S &'
Terminal=false
StartupNotify=false
Categories=Utility;

```

Thank you commentators for hints!

---
Tags: adb, shell, scrcpy
---


# Question
Title: Get new random MAC for same SSID without factory reset on Android 10+
Here is the MAC Randomization described and stated:

> Note: Randomized MAC addresses are generated per SSID and are persistent.

I can confirm after deleting the SSID, rebooting, and connecting again, the same random MAC is used as before. However, if you reset the device to factory defaults and connect to the same SSID, the device connects with another random MAC address.

So how can you trigger this behavior without doing a factory reset?

# Answer
> 9 votes
On Android 11, there is a new option "Wi-Fi-enhanced MAC randomization" in the developer options.

When you enable it, delete/forget the network, and then reconnect, you get a new MAC address every time. Also, you get a new MAC address for this WiFi/SSID when you reboot your device. Disabling and enabling WiFi is not enough to get a new MAC. With this enabled, the device also generates a new random MAC address every few days.

When you disable this option, you get back your previously used random MAC.

Please also read liangpig1's answer, which is very informative.

Even with a new random MAC, some WiFi hotspots recognize you and still show your free hotspot time is over. This seems to be because of cookies with the Android browser. To mitigate this: connect, dismiss the notification that you have to log in, and in your browser in a new private window, open any non-HTTPS website. Then you'll be redirected to the login page, can log in, and enjoy free WiFi again.

# Answer
> 5 votes
The key related to MAC randomization is only generated for the first time. And the MAC address is calculated by calling `hmac_sha256` over the SSID with the generated key.

This key is stored in the `/data/...` on the device, and as far as I know, Android does not provide any API to remove it.

But when you perform a factory reset, all the data located under `/data/...` is wiped out, that's why the MAC address changes after that.

Therefore, if you can manage to remove the key, you can trigger this behavior, which is not easy, in my opinion.

# Answer
> 0 votes
Here is a list of events that will change your random MAC:

* The network name changes
* The operating system is upgraded and the device connects to the network for the first time after the upgrade
* The network name is "forgotten" in the phone settings and then reconnected to

Source: https://wifi-helpcenter.nokia.com/hc/en-us/articles/360056890733-Issues-with-random-MAC-addresses-Android-10-iOS-14-

---
Tags: privacy, android-10, mac-address
---


# Question
Title: Play store stuck on 'Download Pending' or 'Waiting to Download'. How to fix?
TL;DR - How to uninstall the Google Play store?

---

A friend of mine deleted my Google Account as a prank (don't know how it is a prank). When I came home, I just logged in and tried to install some apps, but it wasn't downloading and stuck on Download Pending. Here is a list of troubleshooting I did:

1. Force stopped and disabled. Cleared data and cache. Uninstalled updates. Restarted the APK but still didn't work. Yes, I also gave it time to update.
2. I deleted all my other accounts and just kept my Google Account. Did the same as 1), didn't work.
3. OK. I remembered that there are modded Play Stores available online. So I downloaded the Lucky Patcher Google Play Store (modded) ver. 14. something and it didn't work. Also, did 1) again after I installed it.
4. When I uninstall the update for the modded app, it requires authorization, meaning I would have to sign in again. No problem, but there is no option to log out, meaning the arrow drop-down doesn't appear. Also, I signed out from Settings and relogged in from Play Store, but still, when I open it, it asks for authorization again.
5. I tried to install the Gapps again. In the XDA forum, it was stated that you just need to install the package again and it will replace the existing Gapps. I did it. I downloaded the nano package. But it asks for Authorization. Still no drop-down.

I am back again with the Lucky Patcher app. It will let me browse APK and use Play Services, but it won't let me install APKs.

How to uninstall Play Store and reinstall it?

# Answer
I had a similar issue after trying to install a custom ROM onto an old tablet. In my case, the solution was to change to a different build of GApps.

I had tried to install the Slim6 ROM (Android 6.0.1 Marshmallow) onto a Samsung Galaxy Tab 2 GT-P5110), with Open GApps Pico (also tried Nano). This appeared to work: I could add my Google Account and browse apps in the Google Play Store, but anything I tried to install or update just hung on "Pending..." None of the normal advice about clearing caches worked. I fixed the problem by installing the Delta version of GApps base, after which everything seemed to work fine. I didn't even run into the Certification issue mentioned by @Robert - maybe my setup was too old!

If you run into the Pending Downloads problem after installing a custom ROM, my advice is to research the threads for your ROM in the XDA Forums, and look for a known-good version of GApps that works with that ROM. Hope this helps someone else in the future!
> 0 votes

---
Tags: google-play-store, installation, uninstallation
---


# Question
Title: Set Tablet Network for a specific SSID permanently
Hallo Stack Exchange Community,

I have android 10 and 11 Samsung Tablets and I want to set the tablet (device) MAC on a specific SSID.

I dont need to know how to set it via Wifi Settings, because it changes after a restart. Source: https://www.easytechguides.com/disable-device-security-on-a-samsung-galaxy/

Is there any way to set it permanently? If not a simple no will do, but I still kinda hope that I did not find the right way to do it.

Other Sources: https://wifi-helpcenter.nokia.com/hc/en-us/articles/360056890733-Issues-with-random-MAC-addresses-Android-10-iOS-14- https://source.android.com/devices/tech/connect/wifi-mac-randomization

# Answer
> 0 votes
The problem was that the network was added by a soti profile.

---
Tags: samsung, mac-address
---


title: Custom Timezones in Android

text:
# Question
Title: Custom Timezones in Android
Is it possible to set the timezone of an android device (either a physical device or and emulator) to a timezone that doesn't actually exist (for instance, GMT+00:03 or GMT-500:00)? I tried reading the docs, and it seems like the data type supports that in theory, but I have no idea how you'd actually do that in practice, or if there's some reason it's impossible that I'm missing.

# Answer
> 2 votes
**Not without using/creating a Custom ROM**

So the link you provided is for Android app developers who need to create custom timezone for their usage within Android Apps. Other apps wouldn't be affected by any internal time/date calculation or settings done in that manner.

You can set an emulator's timezone on startup:

Android Emulator command line options

> **-timezone *timezone***
>
> Set the timezone for the virtual device to timezone, instead of the host timezone By default, the emulator uses the timezone of your development computer. Use this option to specify a different timezone or if the automatic detection isn't working correctly. The timezone value must be in zoneinfo format, which is area/location or area/subarea/location. For example:
>
> * America/Los\_Angeles
> * Europe/Paris
> * America/Argentina/Buenos\_Aires
>
> **The specified timezone must be in the zoneinfo database.**

But you are limited to the existing timezone in the zoneinfo database (also known as `tzdata`).

Date/Time/Timezone rules are complicated so the Android Open Source Project has a section on Time Zone Updates.

What this means is that the complexity of time zone management is 'centralized' into `tzdata` and `tzlookup.xml` files. As `tzdata` database is used by many other systems and maintained by the Internet Assigned Numbers Authority organization, the mechanism by which you can modify the file is off-topic as it is not Android specific.

---
Tags: date-and-time, time-zones
---


# Question
Title: Problem creating a reminder with date/time in title
Using Android 9 on a Pixel 2, I can recreate this problem reliably.

Let's say currently it is January 20. I prompt Google Assistant to start making a reminder for a certain date and time, such as:

"Remind me on February 8th at 6 pm",

to which it replies:

"Okay, what's the reminder?"

If I then want to the reminder text to say something like: "Appointment tomorrow at noon", Google will interpret that as a new reminder set for January 21 at noon, instead of a reminder on February 8th at 6 pm saying "Appointment tomorrow at noon".

This seems like a mistake, especially since Google specifically saved the date and time of the original request and prompted me just for the reminder text.

Has anyone found a solution to this? Many thanks.

# Answer
> 0 votes
This seems to be insurmountable. People often want reminders of an event that will occur some time in the future. You cannot put a time in the title without it being interpreted by Google Assistant as the time for the reminder. Having to manually edit these makes the feature much less useful. Perhaps a keyword before a time in the title is necessary.

---
Tags: google-assistant, date-and-time, google-voice-actions, reminders
---


# Question
Title: Is it possible to use WhatsApp Web without scanning the QR code?
I have a camera issue in my phone that it is not able to scan the QR code. Is there any other way to use WhatsApp Web without the QR code, like using OTP?

# Answer
> 1 votes
Unfortunately, the only way is to migrate WhatsApp to a device that does have a relevant camera.

But as the article in the question's first comment mentions, you can emulate such a device and thus use WhatsApp directly in your computer (i.e. run Android in your computer). It'll be slow and unfriendly though.

If it's any consolation, WhatsApp plans to support Desktop computers independently.\[1\] Hopefully it'd be unlike Telegram which requires another device to log you in.\[2\]

---
Tags: whatsapp-messenger
---


# Question
Title: How can I set the Teams default meeting settings so that the video + microphone are always turned off by default?
How can I set the Teams default meeting settings so that the video + microphone are always turned off by default?

I use MS Teams on Android 10 with Samsung Galaxy S9.

# Answer
I use teams daily both on Android and Desktop. There are no settings options for these. (Why, I have no idea) There have been plenty of requests for it...

Teams will automatically mute you if there are 5+ users already in the meeting.

As far as video goes, it appears teams takes the default from your previous meetings. My video isn't automatically set to on when I join meetings anymore. Make sure you select video off in the screen that pops up before you join the meeting. That setting should take effect then.
> 1 votes

---
Tags: android-10, samsung-galaxy-s-9, microsoft-teams
---


# Question
Title: Force Android to display "Desktop Version" when you add to home screen
I view several websites only as "Desktop Versions" but when I add them to my home screen they do not respect this decision.

Is there any way to force this feature to work correctly?

# Answer
Yes . install kiwi browser and from kiwi browser settings turn on only desktop site option and create home screen shortcuts from kiwi
> 1 votes

---
Tags: google-play-store, 5.0-lollipop, chrome-for-android
---


# Question
Title: Android plugged into car gives annoying popup "The connected device is unable to access data on this device."
Every time that I connect via USB my not-rooted Galaxy S6 (SM-G920F with stock Android 7.0) to my car (a Kia Soul 2015), this popup annoys me: "The connected device is unable to access data on this device. Reconnect the USB cable and try again. Android File Transfer or Samsung Smart Switch..." and I have to touch "OK" to dismiss it.

I dismissed it so many times that at this point I have nightmares at night about this popup that tries to kill me wrapping itself around me and taking my breath away.

What I tried is to set "USB configuration" to "Charge this phone". In this case the popup doesn't appear when I plug the USB cable, but after a while, if I also have enabled "USB debugging" (that I need), the "USB configuration" reverts to "MTP (Media Transfer Protocol)" by itself and the popup reappear at the next cable plug. Double annoyance!

Any way to kill that popup definitely?

(My car in this case: Kia Soul 2015)

# Answer
> 4 votes
I have been dealing with this all year and finally figured out a solution! Here's the steps:

1. On your phone, go to settings.
2. Scroll down to and click on "about phone"
3. Click on "Software information"
4. Find "Build number", and click on it until you get a message that says that you're a developer. I think it's 10 times.
5. Go back
6. Go back
7. Scroll to the bottom and you should now see "developer options"
8. Scroll down and click on "default usb configuration"
9. Select "charging phone only"
10. Go back DONE!

# Answer
> 0 votes
I turned off USB Debugging and when I reconnect after that I don't see the popup anymore.

1. Settings \> Developer Options (you have to enable Developer Options)
2. Developer Options \> USB Debugging: Turn it off
3. Click Back

Then, disconnect and reconnect and you shouldn't see the popup anymore.

Except.. I don't really like leaving USB Debugging off.

Fixing the data access problem instead may require rebooting the computer you connected your phone to, or installing a working driver (OS-specific), or other things like replacing your USB cable with a fully working one.

---
Tags: usb, usb-connection-mode, automotive-head-unit
---


# Question
Title: default home app / launcher reset after Android 11 update
I had Nova Launcher installed and set as default. Yesterday I updated to Android 11. After the update there's a bit of mixup: mostly when I go back to the home screen, it presents the Nova Launcher as expected, but sometimes it drops me into the preinstalled launcher I stopped using long ago in favor of Nova.

Pressing the home button again pops up the Nova Launcher.

Device: Nokia 5.3 (Android One)

How to properly fix this?

# Answer
> 2 votes
It looks like the upgrade messed up the default home app setting. Good news: it's really easy to fix:

**Settings / Apps & Notifications / Advanced / Default apps / Home app**

After the uprade, this screen showed two launchers (Nova Launcher and Quickstep), none of which is selected as default.

Select the Nova Launcher, and live happily ever after.

Also, it looks like Google Pixel users encountered this problem last year: https://support.google.com/pixelphone/thread/72544673/android-11-update-nova-launcher-bugs

**UPDATE 2022-08**: Another Android 11 system update messed up the default launcher setting *again*.

How I managed to fix it this time:

1. Uninstall Nova7
2. Restart phone
3. Select factory-shipped Android launcher (Quickstep) as default (Settings / Apps & Notifications / Advanced / Default apps / Home app).
4. Install Nova Launcher
5. Go directly to Settings / Apps & Notifications / Advanced / Default apps / Home app. Neither of the available options (Quickstep and Nova) so I selected Nova.

---
Tags: updates, default-applications, android-11, nova-launcher
---


# Question
Title: Make SSL certificate trusted by Chrome for Android
I want Chrome to trust an SSL certificate. How do I add this certificate or its issuing authority to the system or browser so that Chrome will not generate an error upon trying to access the website that uses it?

# Answer
> 10 votes
Chrome is one of the few apps that trusts custom root CA certificates installed by the user.

First you need the custom root CA certificate. Usually it can be downloaded to your Android device. Place it e.g. in Downloads folder.

The following installation procedure is for Android 11 running a non-modified version of Google Android. On older phones or on phones that are running a heavily modified Android version (like used by Samsung and other manufacturer) the settings may be named different.

Therefore you can simply open Android Settings app and in the Security section select `Encryption & credentials` -\> `Install a certificate` -\> `CA certificate`. Then select the downloaded certificate.

You can verify that the certificate has been installed in `Encryption & credentials` -\> `user credentials`.

**Note that the installed custom root CA certificate will be only used by Chrome. Other apps will not accept it as by default modern apps (targeting Android 6+) don't trust certificates installed by users.**

**2023-06:**

Recent versions of Chrome for Android no longer accept custom root CA certificates because Chrome now checks certificates additionally using the Certificate Transparency system.

---
Tags: certificates
---


title: Configuring SD card

text:
# Question
Title: Configuring SD card
I bought an SD card of 64 gb for my Razer Phone 2 and I'd like to transfer big data in it (Spotify songs, videos, useless apps). I can't find any option to safely move data from my phone to the SD card. On top of it, i inserted the card, l installed it as memory extension and, out of nowhere i filled up 20 gb on it!! That is, my phone continues to have 97% of usage data plus 20 more GB on the SD card created apparently from thin air. How's it even possible? Did google just transfer there stuff, what criterion did it even use?

I downloaded an app 'files to SD card' which could do the transfer, however when selecting the root of the SD card it returns me the following message : 'no root directory has been selected'. I am afraid my card has been installed as extension of the SD card and thus cannot be used to transfer data from the phone to the SD card. However, after the creation of the 20 additional gb, i am afraid of reformatting the SD card to reinstall it differently. Hope this is clear enough

# Answer
To have control, you need to configure the SD card as Storage and not Expansion. Not all phones offer these options automatically and it is possible you have to switch it. Changing modes, wipes data on the card since it gets reformatted.

Once you the SD card is configured as Storage, you can use it to store Data but generally not Apps, at least on most recent official versions of Android. However, many Apps that expect to produce or manage large data have the option somewhere to configure where that data is stored. This includes the Camera App, since it is expected that it can capture huge volumes of photos and videos, Netflix, Amazon Prime, Maps.ME and many more, but those are the ones I know and are configured on my current phone.

For applications that are media players, such as VLC, then generally you can place media yourself in any folder that could be on the SD card or in internal memory. You can place all your videos and audio in the SD card and then either navigate to where you want to open media or add folders on your SD card to their 'Media Folder' list. Technically, you can add the entire card but if it is huge, scanning it will take a long time, so it is preferable to create yourself a folder structure by media type. Note that you will have to grant permissions to modify the SD card for each application you want to use that way.

When you installed the card as memory extension, I am surprised that much data appeared but generally, the process involves creating some cache. Before you erase that, do take a look to see what those files are using the file manager. There should be mostly hidden files (starting with a dot) and folders called 'cache' or similar.

Note that modern Android phones mount SD cards by their Label which means that when you swap SD cards, most applications will no longer find their data and revert to internal storage or show an error. Ideally, there would be a way to mount the SD card in a fixed mount-point (but I have not figured out how to do this. It is likely to be possible since all phones so far have a single SD-slot, so they could give it a fixed path) but if you use a cloning tool (or just `dd` on Unix), then you can backup an SD card so that it has the same label. This is not so important but there are some apps that once they do not find their data, force you to redownload it, even if you put back the same SD card again later and point them to the same path (MAPS.ME does this).
> 0 votes

---
Tags: backup, sd-card, app2sd, internal-sd, google-backup
---


# Question
Title: How to infuse/push/modify/install busybox SU in twrprecovery.img for getting root privilages commands?
**Question :How to infuse/push/modify/install busybox SU in twrprecovery.img for getting root privilages commands**

I want to take backup restore flash change some PM Package management and SM storage Management settings of my android 5.1.1 /6.0 mobile phone through adb shell commands or through twrp terminal without installing twrp or SU or rooting mobile device

1. Firstly I want to take backup of mobile system.img userdata.img through adb pull command and then recover write back adb push

My concerns related to first :

a. As adb pull reads and copy data but adb push writes on the device b. Will adb push work without rooting mobile phone without root privilages.
c. If phone bricked or something gets wrong while rooting and phone is not rooted then will adb push work or not.

```
Steps of commands using for backup of device
    Adb devices
    adb reboot bootloader
    adb pull /dev/block/mmcblk0 mmcblk0.img
    Adb push mmcblk0.img /dev/block/mmcblk0 mmcblk0.img

```
2. Using PM package manager on unrooted mobile android 5.1.1 with following commands but error

Adb devices adb reboot bootloader adb shell pm set-install-location 2 adb shell pm get-install-location

Error of command

> /sbin/sh: pm: not found

what I understood from above error means that PM binary command file is not available in /sbin/sh/ folder as phone is not rooted so what I think if I put these binary files or install busybox within twrprecovery.img before loading and run temporary pm command so that I don't have to root the device and temporary set the changes in device.

If it's possible then kindly share the link for step by step procedure for modifying twrprecovery.img before booting in pc computer windows as I am new novice to adb shell Linux commands

3. Thirdly As whenever I run SM storage manager command adb shell following command on unrooted android 6.0 mobile from it gives following errors

Adb devices adb reboot bootloader adb shell sm has-adoptable adb shell sm set -force- adoptable true

It gives following errors

> /sbin/sh: sm: not found

what I understood from above error means that SM binary command file is not available in /sbin/sh/ folder as phone is not rooted so what I think if I put these binary files or install busybox within twrprecovery.img before loading and run temporary pm command so that I don't have to root the device and temporary set the changes in device.

If it's possible then kindly share the link for step by step procedure for modifying Twrprecovery.img before booting in pc windows as I am new novice to adb shell Linux commands

4. Now if boot in fastboot mode and run twrprexovery.img or cwgmod recovery.img with these commands and then in twrp or cgmod terminal windows can I run busybox or Super user or PM SM command

Adb devices Adb boot bootloader Fastboot boot twrprecovery.img
5. Secondly the whole ideas is that I want to virtually temporary use twrp terminal with busybox or Super user binary to execute services packages like PM (package manager) SM (storage manager) within from twrp recovery menu terminal (loaded in fastboot boot twrprecovery.img mode). Or adb sideload If it's possible technically feasable. If yes then can we modify twrprexovery.img and infuse insert busybox in it before loading or after loading.

6. Thirdly I don't want to install twrp or busybox or any super user binary file inside mobile device and don't want to install anything inside mobile except the changes alteration of settings done after execution of SM PM commands. That is I want to execute PM SM from within twrprecovery.img

# Answer
1. a) `adb pull` requires root access. This can be achieved by running custom recovery like TWRP.
b) `adb push` works the same way like `adb pull` and requires root access (without rooting android).
c) `adb` daemon only works on *booted* kernel (android or recovery) therefore **not** on bricked devices.

**Warning:** Never write whole `mmcblk0` because this contains bootloader and little kernel, therefore fastboot will not work in case you bricked!

Backup every partition on it's own instead. you will get a full list of symlinks to all partitions from adb

```
adb shell ls -l /dev/block/bootdevice/by-name

```

commands for raw backup of device (encrypted)

```
adb reboot bootloader
fastboot boot twrp*.img
adb pull /dev/block/bootdevice/by-name/boot
adb pull /dev/block/bootdevice/by-name/system
adb pull /dev/block/bootdevice/by-name/modem
adb pull /dev/block/bootdevice/by-name/persist
adb pull /dev/block/bootdevice/by-name/userdata
...

```

---

2. Android service Package Manager `pm` requires java which is not available in recovery mode.
It might be possible to start java when `/system` is mounted and even possible to execute `pm` but still Package Manager will badly crash because of missing framework dependencies.
Someone could figure out all required services and may be able to start them in right order, but that ends up similar to fully booted android and is not worth the effort.

---

3. Android service Storage Manager `sm` is not available in recovery mode for the same reason.
Furthermore adoptable-storage isn't available on Android 5.1.1 regardless it is rooted or not.
It is pointless to copy files like `sm.jar` from other android version and there is no way to run it from recovery, not even temporary. Integrating adoptable-storage on android 5 will result in compiling custom ROM which requires lot of patience. Anyone who manages this most likely would become a skilled developer during this long troubleshooting period.

---

4. `su` `sm` `pm` and `busybox` are unrelated to each other. None of that tools will help to edit some storage settings in a way to overcome problem 2. + 3.
Furthermore `/data` is encrypted and storage settings can not edited -offline- until you decrypt userdata or disable encryption (which requires factory reset and modification of boot).

---

5. It is possible to temporary push desired binaries like `busybox` into RAM while in recovery mode, or permanently integrate it in recovery ramdisk by modification of `twrp.img`

**Steps** for adding busybox into recovery ramdisk

* download `twrp.img`
    * download Android.Image.Kitchen.Win32.zip
    * download Busybox.Installer.zip
    * disable antivir heuristic and extract the zip files. make sure *Android\_Image\_Kitchen \ android\_win\_tools \ **sudo.exe*** is not in quarantine
    * place `twrp.img` in *Android\_Image\_Kitchen* directory
    * open `cmd.exe`, navigate to directory and execute `unpackimg.bat`
    * copy `busybox-arm-selinux` binary into *Android\_Image\_Kitchen \ ramdisk \ **sbin*** directory and rename it `busybox`
    * execute `repackimg.bat`

---

6. There is no need to **root** android for doing modifications in `boot.img`
you can even install custom `init.rc` script or `init.d` shell script without installing `su` or `busybox`

You can write custom mount script for MicroSD Card `sdext2` partition. You can even do all the symlinks offline from twrp recovery `adb shell` commands.
But this is unusual and over-complicated when one could just install Link2SD as system app and automatized the whole symlink handling.

**However**, for more information about creating custom **init.rc** or **init.d** script refer to
How to run an executable on boot and keep it running?
> 1 votes

---
Tags: adb, twrp, fastboot, clockworkmod-recovery, busybox
---