# Question
Title: Is it possible to backup data from a locked android phone?
So i forgot the PIN number on my old phone which was not rooted, had no recovery software (Cwm, Xrec, etc.) installed on it, and has usb debugging and auto-mount disabled. We don't know the google account associated with the phone. Basically all I have is the phone and a usb cable. Is there a way to get the user data out of it? Adb won't recognise the device btw. I do apologise if it's a stupid question. The phone automatically connected to the wifi, and I'm on Linux, if that helps. But I managed to get into recovery but adb only recognises the device in sideload mode. The files inside the phone is extremely important to me because it contain photo of my family member that were passed away.

Phone: Vivo V7 Plus

I wanted to try brute-force the PIN with program but unfortunately the phone will cool down for 7000 second (3hours+)

**Info** My phone model: Vivo 7 Plus USB debugging: Not turned on

# Answer
> 2 votes
So i found a way to unlock my phone (Vivo V7 Plus) without losing any data ! Special thanks to @alecxs for guiding me through the process !

In order to unlock the PIN lock, I open my phone case and short the test point in order to get into EDL mode (**Note: Different phone have different test point, search where is your phone test point before proceed.** )

After successful short the test point, I can see the "Qualcomm port 9008" is open !

When Qualcomm port 9008 is visible from device manager, I proceed to run the software. So, here is the MAGIC part! I used a tool from MRT but its cracked by a developer called `officialroms`. The different between cracked and original MRT software are cracked version doesn't have to buy additional hardware to make it work.

I clicked on `start` and the program run until it show `all is done`, after that I restart my phone and everything worked !

**Here is the instructions link that i follow:**

https://www.youtube.com/watch?v=iUOFvRkmBMc

https://www.youtube.com/watch?v=Enm-8CvGqIY&t=189s

---
Tags: backup, storage
---


# Question
Title: How can I access the browser console on Opera Mobile on Android?
How can I access the browser console on Opera Mobile on Android?

Browser console = something similar to the developer console window on Chrome, when pressing the keyboard shortcut Ctrl Shift J

# Answer
> 2 votes
You can try this app that I developed it may help you, F12 | Browser Console for Mobile Devices

But if you are developing something and want to access Console for it, then following the steps in following link will be a better option https://developers.google.com/web/tools/chrome-devtools/remote-debugging

# Answer
> 2 votes
That feature seems to be unavailable for all major android browsers. You could try Opera-mini instead.

1. Reset the console output by opening a new tab with the address debug:resetconsole
2. Open a tab on the page on which you want to do the inspection:
3. Run JavaScript code on the page by replacing the address in the address bar with the following address `javascript:var%20n%3Ddocument.firstChild%3Bwhile%28n%20%26%26%20n.nodeType%21%3DNode.ELEMENT_NODE%29%20n%3Dn.nextSibling%3Bconsole.log%28n.outerHTML%29%3B`
4. Retrieve the output by opening a new tab with the address debug:console

---
Tags: debug, opera-browser
---


# Question
Title: How to check Firefox/Chrome developer console/tools on Android without a computer?
I am aware of these two questions

However the first one is interested in Opera and that is not the browser I use for development.

As for the second one, there is some interesting answers, however my goal is to see the console only using a mobile Android device (Redmi Note 9S).

# Answer
> 1 votes
That feature seems to be unavailable for all major android browsers. You could try Opera-mini instead.

1. Reset the console output by opening a new tab with the address debug:resetconsole
2. Open a tab on the page on which you want to do the inspection:
3. Run JavaScript code on the page by replacing the address in the address bar with the following address `javascript:var%20n%3Ddocument.firstChild%3Bwhile%28n%20%26%26%20n.nodeType%21%3DNode.ELEMENT_NODE%29%20n%3Dn.nextSibling%3Bconsole.log%28n.outerHTML%29%3B`
4. Retrieve the output by opening a new tab with the address debug:console

---
Tags: chrome-for-android, xiaomi, firefox-for-android, debug
---


# Question
Title: Is it possible to force an app to use cellular data instead of WiFi?
Our local office provides free public WiFi for phones and tablets, but blocks access in ways that means that some applications (like WhatsApp) are unable to connect.

Is there any way to configure Android so that a certain app (in this case WhatsApp, but could be others) will always use cellular data even though it is connected to a WiFi access point?

Bonus points if it'll only do it for a specific access point, so we can configure it to use cellular data for the office, but at home it'll still go over WiFi.

Currently the only alternative is to either keep WiFi off (which is much slower and eats into data caps) or keep toggling WiFi on and off (which is really quite annoying).

(Free or paid solutions appreciated. Using Android 4.3. Would prefer solutions that don't require root, but if that is the only way, then so be it.)

# Answer
Yes you can do this. On my phone you go into Connection Settings and in Data Usage you can choose which app to make a "Mobile Data Only" app.
> 2 votes

# Answer
NetGuard and AdGuard will both allow you to accomplish your stated goal. Both apps allow you to specify whether *each* installed app on your Android device can use WiFi, cellular data, or both (try doing that on an iPhone!).

Even more impressively, both NetGuard and AdGuard can help you specify whether or not an app can access the internet when the screen is on, off, or either.
> 2 votes

# Answer
As far as I know, android won't use cellular data at all when wifi is enabled. On a regular machine I'd create routes for whatsapp to use the celular interface, and have a default route using the wifi interface.

One solutio might be to use a VPN server at home, and connect to that on your phone. If you run OpenVPN op tcp port 443, then you'll probably successfully evade the firewall. The downside: it can eat battery like crazy (at least, it did when I tried).
> 1 votes

# Answer
Some apps provide solution for your problem. Try Avast Antivirus. It have a built in firewall which limits the selected apps to use the given data network. You can select/limit app to use 2G, 3G, Wi-Fi etc.
> 0 votes

# Answer
The automation App Tasker allows for location-specific triggers so that you can disable WiFi completely whenever you are in the local office (see example here).

I'm not aware of an option in Android to direct some apps via WiFi and others via mobile, *at the same time*.

You may be able to set a variable to indicate when one or more of the problematic apps is running and combine that with the location-based trigger to disable WiFi only when one of these apps is running *and* you are at the office. However, that would would not be helpful with an app like WhatsApp that is running all the time.

Alternatively, you may set specific time intervals during which you turn the WiFi off at the office so that you can get WhatsApp updates. This approach may have the additional advantage that it limits diversions to limited time windows.
> 0 votes

# Answer
Use the Android app Mobiwol. You can designate each app to use which network. :)
> -1 votes

---
Tags: wi-fi, mobile-data, data-connection, cellular-radio
---


# Question
Title: How do I make an Android phone play sounds remotely?
I'm doing a Lego EV3 robot for a project. It needs to play sounds (like a soundboard app on a phone, but triggered remotely). Sadly, the speaker on the EV3 brick is too quiet for this.

I got the idea to use my old phone connected to a Bluetooth speaker. I want to hold my phone in my hand and with that phone, I want to make my other phone play short MP3 files. Without any wired connection. Sadly, I can't find any apps that already do this and I have no programming experience.

Is there another way to remotely trigger playback of a sound file stored on the phone? I'm okay with rooting the phone.

# Answer
Have you tried AirDroid? It's very easy to use!

Or you can try something like LogMeIn. It's a cloud-based remote connectivity service a bit more complicated to set up.
> 0 votes

# Answer
You can install TeamViewer Host on your remote phone and TeamViewer on your regular phone. Setup is straightforward.

I use this for a similar purpose. I have a cheap Chinese surveillance cam which sends me an alert to my phone when an intrusion is detected. I want to play a loud sound when an intruder is detected, but unfortunately the camera built-in speaker power is too low. I had the idea of connecting an old phone to a set of speakers, then remotely controlling it to open the audio player and play a sound. I can easily accomplish this "manually" with this setup while I try to figure out how to accomplish this in a more automated way.
> 0 votes

---
Tags: audio, remote-control
---


# Question
Title: Restrict app's background battery usage using terminal (root granted)
Is it possible to change this setting using termux?

# Answer
> 0 votes
I initially asked this question to figure out a bug-fix for an open-source app but it turns out it's in AOSP (see here if you're interested to learn it, https://github.com/MuntashirAkon/AppManager/issues/388)

Now, for Users who want to apply this setting to a batch of apps the best and easy method would be to use this app, https://github.com/MuntashirAkon/AppManager

From AM's prevent background operation option available in the batch operations.

There are should be many alternative apps such as https://github.com/mirfatif/PermissionManagerX and App Ops which you can try and see what it offers.

This answer didn't cover how you can do it using CLI but you can check the comment by Irfan Latif if that's any help.

---
Tags: root-access, terminal, background-process
---


title: How can I sort contacts by date added?

text:
# Question
Title: How can I sort contacts by date added?
Is there a way to sort contacts by date added, or at least see contacts that have been recently added? I'm running android os 2.2.

# Answer
This is useful if you want programmatic and CLI access to your contacts in sorted order.

If you're on Android then most probably your phone contacts are synced with your Google account's contacts which you can access using Google Contacts. Now, using the Google Command Line Tools you can return contacts in order of filing if no other sort method is set.

For example, use the following command to get all contacts in a text file in recently added order:

```
google contacts list ".*" > output.txt

```

Cheers.
> 4 votes

# Answer
As most of the applications mentioned did not work anymore two approaches worked for me now (Aug 2020):

**Update 2022-03** *Contacts API is being deprecated. Migrate to People API to retain programmatic access to Google Contacts. See https://developers.google.com/people/contacts-api-migration.*

**Steps to use the api:**

1. Open the playground website: https://developers.google.com/oauthplayground/
2. Open Step 1, expand "People API v1" and click the url below (https://www.googleapis.com/auth/contacts) then the blue button "Authorize APIs" (login with your Google account if not done already and grant permissions)
3. Open Step 2 and just click the blue button "Exchange authorization code for tokens"
4. Open Step 3 and put the url `https://people.googleapis.com/v1/people/me/connections?pageSize=25&sortOrder=LAST_MODIFIED_DESCENDING&personFields=names,metadata` into the "Request URI" field and click the blue button "Send request"
5. Find your results on the right in the "Request / Response" textarea.

* `pageSize=25` limits the shown contacts to 25
* `sortOrder=LAST_MODIFIED_DESCENDING` sorts the results by last modified date, descending
* `personFields=names,metadata` limits the returned results to contain only names and metadata \[plus basic info\]

See also
> 4 votes

# Answer
**Short answer:** I made an app for this called Quis, and would love to hear if it solves your problem :)

**Longer answer:** Android doesn't save the date you added contacts, unfortunately. However, there is a trick: you can sort contacts by their "raw ID" in the database, which roughly increase over time. It's not perfect, meaning that it will more or less work for recent contacts, but definitely won't work for contacts added years ago since a lot of things probably happened since then – new phone, Google merging/syncing contacts, and various third-party apps messing with the contacts database.

I wanted this so badly I actually made an app for it. It stores the date and location of newly added contacts, and also uses the above trick for contacts added before using the app. Would love to hear your thoughts!
> 3 votes

# Answer
I suppose it might vary by carrier, but I only see options to sort by first or last name. (Motorola Droid, unrooted, Android 2.2.1)

I also don't see any apps in the Market that would display contacts sorted by date added.

I'm not even sure "date added" is captured.

If you're syncing with Google Contacts you might be able to kludge something together by applying a group to all of you existing contacts ("Old Contacts"?) then, whenever you review your contacts anyone without such a label is, by definition, recently added.

It is, as I said, kludgy. I don't see any other way to do it.
> 2 votes

---
Tags: contacts
---


# Question
Title: Mobile data is set to auto turn on with command but isn't working
I'm using 2 apps, "MacroDroid" and AutoInput", I set a command(Macro) that would turn on mobile data and location. But when I sent the text, it shows that mobile data and location are "on" but only location works. And when I try to manually turn on data it won't work unless I restart my phone. Why is this happening?

Edit : From comments. OP used commands to give elevated privileges to an unrooted device for MacroDroid

# Answer
Using commands to gain elevated privileges is a hack and is not guaranteed to give you behavior as on a rooted device

With this holds true for turning data off /on. See my comment in the app forums and developer 's reply

> The common behaviour I see is that it does actually enable/disable data but then you cannot modify it later using the system controls until you reboot. However anything that is done via a hack like this may be subject to failure on different devices as it's always possible to have different implementations from other manufacturers that prevent the hack working.
> 0 votes

# Answer
Provided that you have already set permission to modify `SECURE_SETTINGS`, then this trick ***may*** work for you. I read from the forum that they are using `Wifi toggle` to enable `Mobile data` for unrooted device.

**BUT** it's not useful in all cases since, other than `turning on` the `Wifi` Macrodroid also needed to connect to a Wifi connection before `turning off Wifi` to make the Mobile data trick turn on.

So what I discover instead, which is not present yet in the forum, and have not posted yet. Instead of using Wifi, you can:

* Mobile data on
* *Turn on Hotspot*
* *Turn off Hotspot*

After that Mobile data should turn on. It's working on my device using `Android 8.0`.

PS. I can't find any trick to turn off the mobile data. Let me know if you find some. Thanks.
> 0 votes

# Answer
My problem is, that mobile data is not switched off. To be exact, mobile data indicator is off, but real data transfer is still on.

My solution for this is, to set in Macrodroid sequence:

* Turn off mobile data
* Turn on airplane mode
* Sleep 5 sec.
* Turn off airplane mode

It's working with my device with Android 9.
> 0 votes

---
Tags: adb, mobile-data, automation, macrodroid
---


# Question
Title: How do I reduce WeChat storage size on Android?
Wechat takes up a huge amount of storage space on my phone (Moto G5 plus). Almost all of it is due to the Wechat cache (which has ballooned to 11gb) but neither the app nor my phone settings allow me to clear the Wechat cache. When I use File Manager to open the Tencent-Micromsg-xlog folders, I see that a lot of space is taken up by files like MM\_20190420.xlog or MM\_20190430.xlog. What are these? Can I delete them to free up space? Otherwise, how do I clear my wechat cache? Thanks!

# Answer
> 2 votes
Select "Me" on bottom panel. Then Settings \> General \> Manage Storage. For the cache, I have a "Clear" button on the this screen and was able to clear the cache by pressing it.

On this screen, can also press "Manage" which brings up another screen where you can select conversations from which to remove all pics, videos, and attached files. Text msgs are kept. Don't know about audio msgs. After pressing orange "Delete" button *on my version* a warning window popped up telling you what's about to deleted and asking for confirmation.

# Answer
> 0 votes
I tried deleted the xlog folders, nothing happen, looked safe, but over time it will built up again, so I keep deleting them from time to time.

---
Tags: storage
---


# Question
Title: Fastboot command stucks and goes to disk sleep
I am trying to flash recovery in my Poco F1 but fastboot stucks when running `fastboot flash recovery recovery.img`. Also while running `fastboot oem device-info` for a second time gets stuck.

```
➜  ~ fastboot devices
c7ca2666    fastboot

➜  ~ fastboot oem device-info
(bootloader) Verity mode: true
(bootloader) Device unlocked: true
(bootloader) Device critical unlocked: true
(bootloader) Charger screen enabled: false
OKAY [  0.001s]
Finished. Total time: 0.001s
➜  ~ fastboot --version
fastboot version 30.0.5p1-android-tools
Installed as /usr/bin/fastboot
➜  ~ fastboot oem device-info

```

this is where fastboot gots stuck when I ran `fastboot oem device-info` for a second time.

When trying `fastboot flash recovery recovery.img` gives error `[Failed] fastboot flash failed no such device`. If I try flashing after using `fastboot --version`, it stuck as described previously.

I tried with both Linux and Windows (Intel CPU) and the problem persists. I have already unlocked bootloader and previously(few months ago) flashed TWRP.

# Answer
I finally discovered the source of the problem - another process had apparently claimed the USB device. In my case, fwupd was automatically connecting to the device, attempted some kind of USB transfer and failed. However, it didn't release the device, which is why fastboot was stuck and waiting for it to be released.

Stopping the fwupd daemon, fixed the problem.

I've opened a bug report with fwupd here ( https://github.com/fwupd/fwupd/issues/3187 ). Meanwhile, if you want to be able to use fastboot, make sure no other process is using the device.
> 1 votes

---
Tags: fastboot
---


# Question
Title: Flashing update.zip signed with OEM keys return "failed to verify whole-file signature"
I have an update.zip which include an APK in the system/priv-app/ folder, a boot and shutdown animations and an SSH server among other things. I have the private and public keys of the OEM who sold me tablet so I used sigapk.jar to sign the update.zip file. The command I used is the following:

```
java -jar signapk.jar -w certificate.x509.pem key.pk8 update.zip update-signed.zip

```

Then after trying to flash this file via stock recovery using sideload (`adb sideload update-signed.zip`) I get the following error:

```
Verifying update package...
E:failed to verify whole-file signature
E:signature verification failed
Restarting adbd...
Installation aborted.

```

Previously, I was trying to flash the update.zip without signing it and the result was the following:

```
Verifying update package...
E:footer is wrong
E:signature verification failed
Restarting adbd...
Installation aborted.

```

Actually I do not know if the difference in the error (footer is wrong --\> failed to verify whole-file signature) is because the keys are working or not, or maybe because the file didn't have any signature at all. Can someone help me with this and tell my why is it not working if I am using the OEM's `.pem` and `.pk8` keys?

EDIT:

I also tried adding the `certificate.x509.pem` file inside the `META-INF/com/android/otacert` folder inside the `update.zip` file and then sign it, but that also didn't work.

# Answer
You are on the right track. The message "failed to verify whole-file signature", means that the file could not be deemed valid for the provided certificate.

The missing error message indicates that this is the case as the signature could not be matched to the trusted certificate store:

https://android.googlesource.com/platform/bootable/recovery/+/2c6c23f651abb3d215134dfba463eb72a5e9f8eb/verifier.cpp#258

The Android application which runs while sideloading uses a different certificate store than the recovery:

https://source.android.com/devices/tech/ota/sign\_builds#signatures-sideloading

Assuming the keys you have are valid for the recovery, you might get away with directly booting into recovery using fastboot, then selecting your signed ZIP from there.
> 1 votes

---
Tags: rom-flashing, recovery-mode, stock-android, ota-update, stock-rom
---


# Question
Title: Is it possible to default to a host name instead of a search query on Chrome for Android?
I would like to type in "server" in the address bar in Chrome on Android, and have it go to http://server (like things worked in the old days) rather than searching Google for the word "server". Is this possible to do?

I'd also consider other browsers, such as Brave, if they have this feature. Thanks!

# Answer
If you have root on the device, you should be able to access and edit your `host` file on-device. If you don't have root, you can still look into:

1. configuring something at the router level,
2. add site as a search engine (I know Vivaldi supports this), or
3. search for browsers that support "!bangs".
> 0 votes

---
Tags: chrome-for-android
---


# Question
Title: How do I increase audio sound on my app for recording phone calls?
I have an Echo phone and downloaded an app for recording phone calls, both received and made myself. When it records, my voice is very loud, but you can barely hear the other line unless it is on speaker phone. Is there a way of increasing there level without using speaker? I record phone interviews I do and it is much easier just using the headset and not using the speakerphone...cuts out parts of our conversation.

# Answer
> 3 votes
The recording works by using the microphone. You're talking straight into the mic and thus are much louder than the sound that reaches the mic from the ear speaker.

You'll need to use an app that actually records the incoming call and not simply what it picks up from the mic. Check out this question, I believe it includes a couple such apps in the answers.

# Answer
> 0 votes
You could also employ the services of Google Voice. It has an option to record phone calls, and you could also make them directly from your computer, which can be nifty.

# Answer
> 0 votes
I think I found a solution of this problem. I'm not sure why the call recordings cannot be recorded over phone calls, but only through the microphone of your smartphones, but I believe this one will help solve the problem. The app is called "Call Recorder - Cube ACR" by Cube Systems at Google Play.

I'm not sure what's the cause of these problems, but I found a solution. I share this app with the all of you and I believe it will help at least for now if they don't change any settings in future. I had problems with recording the phone calls and I couldn't hear the other side, only my voice and if there was something heard it was very, very low as a volume because apps are working directly with the microphone of your smartphone and most of them don't record when the loudspeaker is off. But this one does finally! Good luck!

# Answer
> 0 votes
settings -\> additional settings -\> clear speaker setting -\> clear speaker toggle

---
Tags: audio, call-recording
---


title: What are validated connections?

text:
# Question
Title: What are validated connections?
The FairEmail client has the option to use only "validated" connections. The only explanation given in-app is that a VPN might prevent synchronising from working if this option is enabled, but what does this actually mean? Is this about not using the very weak 2G/3G encryption or open/WEP WiFi?

# Answer
> 3 votes
In the source code I see this sets a preference which is later read and enables the checking of `NET_CAPABILITY_VALIDATED`. This capability is documented as "Indicates that connectivity on this network was successfully validated." which tells you absolutely nothing. However, an example is given for "a network with `NET_CAPABILITY_INTERNET`, it means that Internet connectivity was successfully detected." Digging into when that capability is set: "Indicates that this network should be able to reach the internet."

So if it expects that a connection should reach the internet, some part of the OS will check it, and then apps can check that the check was successful, and only then they will try themselves to talk to the internet. That's what this switch does.

Presumably this will prevent custom setups from working, such as when you change routes after making a WiFi hotspot (without mobile data enabled) where it wouldn't expect to be able to reach the internet regardless of whether it can. Or if you, indeed, have a VPN where the email server is reachable but the internet in general is not.

---
Tags: internet
---


# Question
Title: uTorrent and bitTorrent on Android cannot download anything?
I tried to see how download is like on an Android phone, so I emailed myself a torrent file and then saved it in the Download folder.

And then I tried both uTorrent and bitTorrent app. But it only has "Open the torrent on http://\____________", or there is a search function that leads the user to do searching on duckduckgo.com

There was no way to use a local torrent file in the Download folder.

So I tried setting up a webserver on my Mac and then use http://128.0.1.123/try.torrent (something like that) but it could not load it. Duckduckgo.com led to some magnetic URL site, and I copied and pasted to uTorrent, and they cannot load either.

Is it possible to make it work? I tried the LibreTorrent app and at least it can open a local torrent file and start downloading.

# Answer
I found one solution: go to the File Manager, and then open the torrent file, and choose "Open in app" and choose the app.

Why the app itself doesn't allow opening the file in itself, I am not sure.
> 1 votes

---
Tags: bittorrent
---


# Question
Title: What's the purpose of A and B partition slots if both are flashed?
I recently play with LineageOS flashing (or actually adb-sideloading) tutorials, but I guess my question is more generic.

In my device there are A and B partitions for everything except the `userdata` partition (and maybe something else). I understand the purpose is to provide extra safety against bricking. Should anything go wrong during a flashing operation, there's the other slot.

Now, **every tool and manual procedure I have seen flashes both A and B. Doesn't it render the whole concept useless? What's the gain from A and B slots if we keep on putting the same to both?**

# Answer
> 1 votes
> every tool and manual procedure I have seen flashes both A and B.

This is not correct-

Update engine does not flash both A and B, 2 slots exists for rollback purpose if updated slot does not boot up.

---
Tags: rom-flashing, partitions, ab-partition
---


# Question
Title: Accessing android device via ADB shell with broken touchscreen (can't authenticate)
So, the touchscreen on my Nexus 4 broke this weekend. I have a new device coming in, but in the meantime I need to be able to access the device to use a few different apps and send/receive some SMS messages from it.

I found this guide on reddit: http://www.reddit.com/r/Android/comments/1r2zha/how\_i\_managed\_to\_use\_my\_android\_device\_with\_a/

It's not exactly simple, but it should work.

Unfortunately, I discovered that in order to use ADB shell commands, a pop-up window should appear on the phone to allow/disallow USB debugging. (USB debugging is enabled already, but there appears to be an additional 'authentication' step)

Unfortunately, I can't use the phone's touchscreen, so I can't unlock it or tap the notification that will allow me to authenticate the phone.

Is there a way I can get around that authentication step?

The device is unlocked and rooted.

# Answer
I figured this out on my own. I solved this by installing Airdroid using an OTG USB adapter and a wired mouse. I then used the airmirror capability of the software to control a virtual mouse on the device. I do have root on the device, this may be significant to the operation of Airmirror. I could then accept the debug confirmation on the screen and complete the backups I wanted to do.
> 4 votes

# Answer
I'm sure this is not exactly the answer you're looking for, but this could solve your problem:

If your Nexus works fine otherwise, why don't you just plug a mouse and keyboard (via USB OTG or Bluetooth) and pretend your Nexus does not have touch screen?

Anything, including allowing USB debugging would work as the mouse cursor is even usable when your phone is locked.
> 1 votes

# Answer
Well with the boot loader unlocked you can temporarily boot up into recovery by using fastboot:

```
fastboot boot recovery-clockwork-6.0.4.7-mako.img

```

This will then give you adb access to your device to get files off etc. The adb debug mode could then be turned on by editing a settings file and copying in the crypto keys generated by adb on the host computer. I've done the latter before but not the former, which could be an issue.

Update - To reboot into fastboot mode do: To get into fastboot mode power off the phone, if nothing else a very long press on the phone should work if all else fails (I don't want to confirm this on mine and crash it!). Then power on holding down the volume down key and the power key together. If you can't see the display (I gather you can but you can't use the touch screen) then hold the buttons down for about five seconds and it should vibrate to confirm. Then use the above command to load custom recovery and gain adb access. This all assumes that the boot loader is unlocked, as stated above.
> 1 votes

# Answer
I did something a little boring, but it helped me ... Since I wanted to use the smartphone as a webcam, but as you may already guess, the screen is broken.

So I connected the smartphone to the computer, when the message was displayed on the screen, I marked the location for yes and with one of those automatic click apps, I selected the location and put a delay of a few seconds. I started the application and connected to the computer, so after a few seconds he clicked yes and I was allowed to do what I needed.

NOTE: To install and configure the auto click application, I used an OTG cable with a mouse.

Sorry for my English...
> 1 votes

# Answer
I saw this on a different thread, after searching online for hours and hours....seemed to help a few out so I am re-posting here...

> "This just happened to me!
> Phone works but screen and LCD broken and unresponsive. I had a screen lock too so what I did was I took off the back plate, removed the battery, and unscrewed the six screws to uncover the PCB board under the back housing. Then I carefully disconnected all the tiny ribbon connectors.
>
> I waited a minute just to be superstitious and then reconnected all the ribbon connectors and put everything back to how it was. Then I downloaded Kies from the Samsung website, pluged my phone into a computer via USB and was able to view all my files!
>
> Something about disconnecting the PCB board resets the default settings to factory state but doesn't delete any data at all. Good luck and I hope this helps someone out there."

Source: Android Central
> 0 votes

---
Tags: adb, lock-screens, nexus-4, usb-debugging, touchscreen
---


# Question
Title: Can't authorise android device in USB debugging mode
I am trying to use a Samsung Galaxy S6 Edge for debugging an android app. I've downloaded and installed the Samsung USB driver but when the device appears in android studio it says the device is unauthorised. I've got my phone connected in transfer image files mode (PTP mode). I've tried turning USB debugging on and off and after reading other forums it says I should get an authorise pc message on my phone but nothing appears.

Any idea how to get it working?

# Answer
By deleting the adbkeys file found in C:\Users\[Username\].android folder the permission dialog appeared on my device.
> 5 votes

# Answer
Like you already said:

**Unauthorized** means that your is not trusting your computer. This is because after activating USB-Debugging and connecting your phone to your PC, there should be a popup asking you if you want to trust this PC, which you have to agree (permanently).

The issue now is that you do not get the popup. I also had this issue (on another device) and installing other USB drivers solved the problem. Maybe you try the official standard Android USB driver. If this does not work too, try other drivers or if possible try it on another PC. Also try to disable and re-enable USB-Debugging (and reconnect USB) after installing new driver.

Before installing new drivers, make sure to remove all of the old broken drivers with USBDeview (Download at the end of page). You need to unzip it and **!run the program as administrator**. Then it creates a list of all USB drivers installed on your PCs (pay attention, as there are also drivers for other USB devices like printers or USB sticks). Select all unwanted old Android USB drivers by holding **CTRL** and selecting one entry after another. If you have selected everything, release CTRL. Then click on the **remove-icon** or right click on any entry and click remove. Then the installed drivers should be cleared and you can install the new one.
> 1 votes

# Answer
I had the same problem because my C:\Users\\--username--\\.android folder was empty and readonly (because trying to cleanup C: and migrating to D: drive). Allowing to write to that folder and running `adb server` put the adbkeys files in and the permission dialog appeared on my device.
> 1 votes

# Answer
I tried all this and the only thing that worked for my Lenovo tablet was to switch it to PTP mode from MTP.
> 1 votes

# Answer
I had the same problem and deleting the adbkeys files in C:\Users\[username\].android folder re-enabled the authorization dialog. Good hygiene recommendation: Copy those files and store them somewhere else prior to deleting them so you can more easily restore them if this is not your solution.
> 0 votes

# Answer
**Try "Revoke USB debugging authorisations" in Android after changing developing computer**

I had the same problem when I upgraded my development computer. I guess Android allows USB debugging from 1 computer at a time. If another computer already has debug privileges then the Android does *not* popup the permission dialog for the new computer.

I also changed "Select USB Configurations" from Charging to MTP, but I don't think this is what fixed it for me.
> 0 votes

---
Tags: applications, usb-debugging
---


# Question
Title: Internet access via wi-fi is ok, but just not financial apps
I have hit the same problem with a couple of apps on an Android phone. The phone has no issue with Internet access using wi-fi. Web browsing and other apps run ok. However, two apps hit connectivity issues when the phone is on wi-fi. During the moments I am facing the problem, if I turn off wi-fi so that Internet connectivity switches to cellular (4G), the apps breeze through immediately.

It so happens that both apps are finance apps. One is a bank's app and the other is a payment app. Both are not related to telcos, ie they don't use cellular for authentication. They have been working fine on wi-fi all along until recently.

What could possibly explain this behavior?

# Answer
Check WiFi device if you are the owner. Some adjustable features like QoS, priority or Gaming may affect some Apps.

Then check with the provider behind the wireless service. They might have blocked some ports or IP addresses, intentionally for performance or security reasons.
> 0 votes

---
Tags: networking, wi-fi
---


# Question
Title: Google play store available apps whilst on VPN vs native Google Play Store country
I've read a few threads as well as the Google requirements for changing the country in the Google play store. My question doesn't pertain to actually changing countries, it's about how the play store distinguishes the available apps to download.

For example, when using a VPN to the USA(current play store is UK) I am able to download Venmo(which is not available in native UK play store). However I am not able to download HBO GO(which is available in the native USA play store). Why? I imagine some apps are only available if the native app store is the specific country (where a payment card is required, etc). Are there further aspects aside then IP that PlayStore looks at? Does the app developer play into the requirements?

# Answer
Don't ask for problem. Ask for solution. Try making two accounts add both to a family group and share both with each. That way you pay once and get both apps on both accounts. Thats what i would do. I recommend sharing with nearby share. (offline)
> 0 votes

---
Tags: google-play-store
---


# Question
Title: Using the GPS instead of Google Location Services in Chrome
I do not consent to Google collecting constant background information about my position at all times through their Google Location Service program. So I have got that option disabled.

I can get just about everything to work with just the GPS. Except for the Google Chrome browser. It keeps referring me back to enabling the Google Location Service option. Which does not make sense. The HTML5 GeoLocation API wants latitude and longitude, which the GPS is perfectly capable of providing on it’s own without involving Google’s servers. Is there a way around this?

# Answer
Use Firefox, no location needed, blocks that nosy one use duckduckgo search also does not track or sell, true privacy
> 0 votes

---
Tags: gps, geolocation, privacy, chrome-for-android
---


title: Invalid zip file format - Magisk 22.1

text:
# Question
Title: Invalid zip file format - Magisk 22.1
I have OnePlus 5t, Twrp 3.5.2\_9-0-cheeseburger\_dumpling, and when I'm trying to flash the magisk zip it's tell me: `Invalid zip file format`.

I searched google and found that I need the least TWRP version, but I have the least version... What can I do?

Edit:

In V22.1 (least) the only zip file is called "Source code (zip)", and in the TWRP its says `Invalid zip file format`. Same in V22.0. The next version available is 21.4, in V21.4 the link name is not "Source code (zip)", the link name is: "Magisk-v21.4.zip", and in the TWRP it's working well and flash into the system! Why it is like that? And what I don't understand?

Link to all versions: https://github.com/topjohnwu/Magisk/releases

# Answer
You have downloaded the "Source code" release of Magisk which is for developers you want to build/compile Magisk on their own or make modifications to the code.

If you want to install Magisk from within a custom recovery ROM such as TWRP since Magisk v22.0 you have download the "APK" release which is at the same time a ZIP file with can be installed via recovery:

> In some custom recoveries, the installation may fail silently (it might look like success but in reality it bootloops). This is because the installer scripts cannot properly detect the correct device info or the recovery environment does not meet its expectation. If you face any issues, use the Patch Image method as it is guaranteed to work 100% of the time. Due to this reason, installing Magisk through custom recoveries on modern devices is no longer recommended. The custom recovery installation method exists purely for legacy support.
>
> * Download the Magisk APK
> * Rename the .apk file extension to .zip, for example: Magisk-v22.0.apk → Magisk-v22.0.zip. If you have trouble renaming the file extension (like on Windows), use a file manager on Android or the one included in TWRP to rename the file.
> * Flash the zip just like any other ordinary flashable zip.
> * Warning: sepolicy.rule file of modules may be stored in cache partition, do not clear it.
> * Check whether the Magisk app is installed. If it isn’t installed automatically, manually install the APK.

https://topjohnwu.github.io/Magisk/install.html#custom-recovery
> 3 votes

---
Tags: twrp, magisk
---


# Question
Title: How to disable default calendar notification on Samsung Watch Active 2
I have the Samsung Watch Active 2, and use Google Calendar app on my phone, which also has event notifications on my watch, which is great.

However, the default Samsung calendar notification also shows up, but it would lock up the screen and require me to explicitly dismiss the notification to use the watch. Is there a way this notification can be disabled?

# Answer
I opened the Samsung Calendar app on my phone. Not through device manager but the Default Calendar that comes with Samsung phones. From there you can see all calendars and un-check the calenders you do or do not want to be synced.
> 0 votes

# Answer
Samsung calendar-\>settings-\>alert settings

Change all to none. You're welcome.
> 0 votes

---
Tags: samsung, calendar, samsung-galaxy-watch-active
---


# Question
Title: How to stop ads redirecting to Google Play store?
I have a similar problem to How can I stop being redirected to the App Store/Google Store by dodgy ad-scripts? however the solution provided there doesn't work:

I'm opening in-app ads on purpose for in-app rewards (freemium game), and some of them open the Play store after they finish playing. I want to continue seeing these ads, so I can't just block them, and redirecting to a web browser changes virtually nothing on the problem. Can I prevent those ads from sending me to the store?

I'm using an older Samsung Android, 4.4.4 according to the device.

I think a redirect tag would fit this question as well, but it doesn't exist.

# Answer
I ended up installing Firefox to use as my web browser and my problem was solved.

The phone started asking which app to open the links in instead of opening the store directly.
> 2 votes

# Answer
Here's a solution for Android:

1. Turn on the Pin windows feature. (For my phone, it's located in Settings --\> Lock screen and security --\> Other security settings --\> Pin windows.)
2. When you're about to watch an ad for rewards, pin the app window.
3. Once the ad ends, it'll try to redirect to google store and fail. Then, you hit the back button, and voila: there's your in-app reward.
> 1 votes

---
Tags: google-play-store, ads
---


title: Strange build number on Alcatel phone

text:
# Question
Title: Strange build number on Alcatel phone
According to this site, since Android 8, build numbers have a certain format. However, I have an Alcatel 5030D\_EAA with Android 10 with a build number **01011**

What should I think of that?

The reason I ask this, is because I have some Bluetooth code in my app that does not work on this phone, but does work on many others (including with newer Android versions).

# Answer
That site you have linked to explains the build number of Android Open Source project (AOSP). AOSP is the base of all Android versions, however (except for the Google Pixel devices) AOSP is not used directly on Android phones. Instead each manufacturer adapts AOSP to each device and additionally usually a lot of manufacturer specific modifications are applied.

Therefore most Android builds you can find on real phones don't follow the build number scheme proposed by Google in AOSP.

As long as the built Android OS in the end passes the Google Android compatibility test it can be sold as Android phone with pre installed Google Android Apps (especially Play store).
> 1 votes

---
Tags: android-10, builds
---


# Question
Title: How to clear a Folder (e.g. Downloads) automatically on a regular/scheduled basis?
There is a folder on an Android phone that continually fills with junk.

Instead of clearing that folder manually on a regular basis, how can I setup up a way to have that folder be automatically cleared (e.g. all its contents deleted) on a regular basis (e.g. daily) to free up space?

Or is there a (free) App that does that?

It's a *very simple* task, but I can't seem to find a way or an App that allows one to select a **specific folder** (e.g. other than `cache`) and have it **automatically** clear *that* specific folder on a **regular** basis set by the user.

# Answer
> 5 votes
MacroDroid (free up to five macros) can do the job.

The macro would be:

* **Trigger**: *Day/Time Trigger* → select all the days and choose the time for trigger activation
* **Action**: *File Operation → Delete* → select the folder that needs to be cleared → *All Files*

Edit: { There is a catch here. Unless the device is rooted, only the files at the top-level would be deleted i.e. the deletion wouldn't be recursive so any sub-directory would remain untouched.

The only option I found to nuke recursively is to delete the top-level folder itself. So instead of choosing *All Files* select *Folder*. }
* **Constraint**: none

Done!

---

I prefer to use Tasker (paid; 7 day free trial) though.

* **Profile**: *Time*

+ **From**: choose the time for trigger
    + **Repeat**: *24 Hours*
    + **To**: uncheck it
* **Task**: *File*

+ **Delete Directory**: choose or enter the directory's path
    + Select **Recurse**

Alternatively, the action can be **Code → Run Shell → Command**: `rm -rf <DIR_PATH>/*`

Replace `<DIR_PATH>` with the path of the directory, such as for `DCIM` folder under `sdcard` the whole command would be `rm -rf /sdcard/DCIM/*`

That should do the cleaning for every 24 hours.

# Answer
> 1 votes
Use free and open source software to ensure better privacy. I found Easer especially good. However, it does seem to require root permissions for this specific task.

1. Download the F-Droid store and then install Easer.
2. Once you have the app, open "Settings" from the app-drawer and tick "Use root features". Then go to "Settings" \> "Activated skills" and make sure that "Run commands" and "Time" are ticked.
3. Now go to "Data" \> "Event" and add a new "Time" event, specifying the time that you would like the files to be deleted.
4. Go to "Data" \> "Profile" and add a new "Run commands" profile. Add the following to the command: `rm -rf <DIR-PATH>/*`
5. Go to "Data" \> "Script" and add a script with the profile and event which were created above.
6. Go to "Outline" and press "Start" from the menu.

Voila, and enjoy!

---
Tags: applications, file-system, file-management, automation, delete
---


# Question
Title: Privacy effects of disabling notifications through Android settings
## Assumption

My question assumes the following situation, that is what I could understand about Google's push notifications system. If I misunderstood anything, please correct me here.

When a web service wants to send a notification to a user who installed its app (client), it sends the notification content to Google's push notification server. The server then contacts the user's device instructing it to show the notification.

This system prevents user's device from continously checking for notification, that would cause battery drainage and other annoying side-effects. However, some privacy concerned people point out that it allows Google to access all the notification contents, including for example private messages.

## Question

If I have an app (client) that manages\* notifications on my device for a web service and doesn't have an option to disable them, the only way I can prevent them to be shown is through Android settings. To my understanding, if I do so the web service (that doesn't know my Android settings) will still send notification contents to Google's server, thus allowing Google to know notification content, but the server won't send it to my device. So, disabling notifications through Android settings wouldn't have any effect on privacy. Is that right?

\*I use the word "manage" because usually the notifications are shown if and only if the app is installed and it often has settings for them (sound selection, vibrate and so on); however, I don't know how much notifications depend on the app and how much on the system. Anyway, it looks to me that it is not very important for the question (but I might be wrong of course).

# Answer
### Push messages - what do they contain

What data each app receives via Firebase push notifications can be very different.

Some apps receive the complete message content as Firebase push notification to the user's app. In such a case Google can of course see the complete message.

Apps that handle privacy related content should use push notifications not as data transmission system. Instead they use push notifications just as notification for the app that new data is available on their own WhatsApp/Signal/... server.

Therefore for messenger apps I would expect that the push notifications may just contain e.g. a number the app processes and then knows that new data is available on the server.

### Disabling notifications for an app

Regarding the question what happens if you disable notifications of an app in settings this also depends on the app:

The app itself can check if you have enabled/disabled a certain push channel. Therefore it is possible for an app to disable the notifications on server side so that no push messages are sent at all if you have disabled notifications for that app.

However a lazy app developer may not implement such a check. In such a case I would assume that all notifications are sent as before but just ignored by your device.
> 1 votes

---
Tags: privacy, push-notifications
---


# Question
Title: Installing Signal without using Google Play, Still requests update of Google Play
I want to install Signal on my Android 4.4.2

I found countless of reports that it appearently works without it, I followed the documentation here https://k7r.eu/testing-signal-without-google-account/.

But still after the installation when I enter my phone number i get a prompt.

"Google Play-Dienste aktualisieren" "Signal wird nur ausgeführt wenn du die Google Play-Dienste aktualisierst."

Which roughly translates to

"update Google Play-Services" "Signal will only be run if you update the Google Play-services"

I tried installation with apks from both theire Website and Apk-Mirror.

# Answer
> 1 votes
This behavior is caused if Google Play is still active in the background.

Appearently Signal finds the service, tries to use it and finds that it is outdated. I had to deactivate Google Play via

"Einstellungen" \> "Allgemein" \> "Anwendungen" \> "Alle" \> "Google Play-Dienste" \> "Deaktivieren"

rough translate

"Settings" \> "General" \> "Applications" \> "All" \> "Google Play-Services" \> "Deactivate"

After that Signal gave me a notification warning me that using it without Google Play will cause increased power consumption and I could proceed with the registration.

# Answer
> 1 votes
Managed to fix it.

First, disable Google Play services: Disabling Google-Play-Services works as following: Applications ("Apps" on my virtual device even in German;) - All (alle) - Google Play services / Google Service framework

click force kill & then deactivate.

If the button is greyed out (disabled): go to system \> administrator users \> disable everything in that list

Reference: https://www.guidingtech.com/google-play-services-wont-update-issue/ \> section "6. Disable Play Services"

reference2: https://github.com/signalapp/Signal-Android/issues/6381

Then restart Signal (quit it before completely or restart device), enter phone number and verify it. Accept that without Google Services something allegedely won't work properly. In fact, it works.

---
Tags: installation, instant-messenger
---


# Question
Title: How do I skip an Android system update and stop its notifications?
I get a message

```
Android 5.0.1 System Update Available

```

but no option to skip the update.

In frustration, I click "download". It's not better after the download. I still get

```
System update downloaded

```

with no option to avoid the update.

How do I signal that I am perfectly content with KitKat 4.4.4 for the time being? I use my phone for development and want to be certain my development tools are ready before upgrading. In the meantime I also want to stop the continuous harassment via notifications. Is this possible? I am using a Nexus 5 and the phone is not rooted (I prefer it to stay that way).

# Answer
I just spoke to Google directly. The Nexus 5 under settings, apps has something called Google Play services. Not store. If you uncheck the notification box in Google Play services and restart the phone the notification for the Android system updates will stop in the notification bar. Worked like a charm!
> 26 votes

# Answer
If you happen to be rooted, you should be able to install Disable Services and find the `SystemUpdateService` under *Google Play Services* disable *Google Services Framework*.
> 8 votes

# Answer
I figured it out :D :D

If you get the notification and have not yet downloaded the update. Simply Press the notification in the notification bar and Hold for 10 Seconds. It will give you two options. Click on the Settings button. From Settings select "Turn off notifications update" :)
> 2 votes

# Answer
You need to clear data for downloading application (DMClient)

1. open system nofitication bar
2. hold touch on system downloading bar until it pop up app info
3. touch App info it will go to DMClient app info
4. touch clear data button under Storage
5. then touch OK for Delete app data question
> 2 votes

# Answer
As of 2021 there's an option to turn off automatic updates in the Developer Options  . It seems to be available since Nougat
> 1 votes

# Answer
Turning off auto updates in Google Store did not stop the phone updating, even after a reset. I pressed on an updating app until download manager appeared, then I disabled it. Seems to have stopped.
> 0 votes

# Answer
Found it on Nexus Grand Prime: Settings - About Device (bottom) - Software Update (top) - Set 'check for updates' (Auto-Update) to Off.

The update wanted 530mb free space! Like hell, that space is reserved for game recording :).
> 0 votes

# Answer
On my LYF Flame 2 device in India, I tried Krystalblue's answer and could only limit the software update to "weekly", "wireless only" and disabled "Allow auto-update over WiFi...".
Hope that works!
> 0 votes

# Answer
Found option to disable automatic updates in developer menu on Android 7. (click many times on build number in about phone to enable that menu)
> 0 votes

# Answer
On my OnePlus9 Pro I disabled the auto updates in the developer mode menu but apparently they are still forcing me to do an update. In fact so much that the phone says "If you choose not to do so now, this update will take place AUTOMATICALLY between 2 AM and 4 AM starting May 4th, 2021." WTF.
> 0 votes

---
Tags: updates, nexus-5, ota-update
---


# Question
Title: Sound from VLC video after locking screen
So I'm watching a video talk in VLC on my Samsung I9305 rooted stock 4.4.4 with Xposed Framework, and I want to lock the screen and put the phone in my pocket, but still continue listening to the audio of the talk. Is it possible to do this with VLC, or do I have to switch to another media player?

# Answer
It turns out this is actually a native function of VLC 1.7.4 (and probably previous versions too) for Android.

1. Click the three horizontal lines in the top left corner (on the file selection screen, not while a video is playing).
2. Click on "Preferences".
3. Tick the "Play videos in background" box.
4. Play a video.
5. Lock the screen.
6. Keep listening to the audio from that video!
> 9 votes

# Answer
i have Huawei mate 9 and i have found one resolution which is Phone Battery is locking VLC player to run in back ground see attached screenshots which we have to enable.
> 3 votes

# Answer
I had the same problem on a Samsung Note 8, even with "Play videos in background" setting turned on. In the latest version of VLC (v3.3.4), the "Play videos in the background" option is a little different, it's actually "Background/PiP mode" with 3 options:

* Stop
* Play videos in background
* Play videos in Piciture-in-picture mode

The issue for me was the power saving setting, similar to THE PATHAN's answer for their Huawei Mate 9.

Here's how to fix it on a Samsung:

* Open Settings
* Open Apps
* Find and open VLC
* Click "Battery"
* Toggle "Allow background activity" to on

Without this setting, audio playback will be stopped about 30 seconds after locking the phone regardless of the "Background/PiP mode". However, with "Allow background activity" turned on, audio playback will continue even with the "Background/PiP mode" set to "Stop".
> 1 votes

# Answer
Would something like this work for you? YouTube player That is a YouTube player that plays after the screen is locked.
> -1 votes

---
Tags: vlc
---


# Question
Title: Number of cpu cores change in my systrace output
I have 4 cores cpu on my device, but each time I use this command line to genetrate a systrace file :

```
python C:/Users/BJI/AppData/Local/Android/Sdk/platform-tools/systrace/systrace.py freq idle -o C:/Users/BJI/Desktop/systrace

```

I get a different number of cores (2 or sometimes 1 core cpu), is it only the number of active cores ?

# Answer
you can check how many `cpu<?>` under `/sys/devices/system/cpu/`

for example, If CPU has two cores, there should be

```
/sys/devices/system/cpu/cpu0

/sys/devices/system/cpu/cpu1

```
> 1 votes

---
Tags: cpu
---


title: When are Android apps auto-updated?

text:
# Question
Title: When are Android apps auto-updated?
In the Play Store, I have checked the box "Auto-update" for my application. However, although the app received a new version several hours ago, it is not being auto-updated on my phone.

What I'm wondering is how often are apps auto-updated (if at all)?

**Edit:** It's been one day and the app hasn't been auto-updated yet. I've tried letting the mobile charge to 100% overnight but it didn't help.

# Answer
If a user has auto-update enabled in the Google Play store, apps will be updated according to:

1. Developer preference. Developers can specify that only a certain amount of users receive an update to an app, and then, if the update is successful, roll out the update to more users (either all at once, or slowly).
2. Region. Sometimes specific updates are only for certain regions, so only users in certain geographic regions will get updates.
3. Device compatibility. Only devices with hardware compatible with the update will receive it.
4. Android version compatibility. Only devices using an Android version compatible with the app update will receive the update.
5. Apps requiring more permissions *should* prompt the user to accept new permissions before auto-updating. I have heard about cases where this did not happen as expected, but have never experienced this myself.
> 1 votes

# Answer
Check *Sync is enabled in settings & background Data is not restricted*

Then Check *app update is given to your Region*. In Play Store, It is possible to distribute app by Region. For example, If A developer given an Update to the US REGION, But you are staying in Some other countries(Even if you have downlaod US version) Play store will not update the app.
> 0 votes

---
Tags: google-play-store, application-autoupdate
---


# Question
Title: Device stuck in boot animation after reverting to LineageOS 17.1
I tried to update my OnePlus One to LineageOS 18.1, following my usual procedure:

* do a full backup (boot, system, data excl. storage, cache) with TWRP
* then flash the new image, along with the zip files Magisk and microG

As I then noticed that Android 11 breaks some of the apps I use, I decided to roll back the update by simply booting into recovery, restoring the backup and rebooting. However, this failed with the system being stuck in the boot animation for significantly above 10 minutes.

I then tried the following:

* boot into TWRP
* flash LineageOS 17.1 from the previous image I had installed (plus Magisk and microG)
* restore my backup
* wipe caches

Still no joy, I am still stuck in the boot animation.

Suspecting the upgrade had converted some app data in `/sdcard/Android/data`, I moved all app dirs starting with `com.android` or `org.lineageos` off the device. (The rest should be user app data. I do not have Google Play services installed.)

That still was not successful, I am still stuck in the startup sequence.

I have never (knowingly) encrypted any data on the device.

What gives? How can I find out where the device gets stuck, so I can hunt the error down? Wiping all user data is not an option.

# Answer
Everything that is in the backup is safe to wipe for a test (it can be restored later).

Therefore, rebuild the system step by step:

* wipe system, data (excl. storage) and both caches
* reinstall LineageOS 17.1
* boot
* if this works, return to recovery, install Magisk and reboot
* if the device still boots successfully, restore data and retry
* if the device still boots successfully, copy back app data to `/sdcard/Android/data` (possibly one by one, or in small batches rather than all at once) and retry
* if the device still boots successfully, restore the system partition from backup and retry

If at some point the system no longer boots (i.e. gets stuck in the boot animation or similar), you can examine the step that broke it in more detail.

In my case, it seems the backup of the System partition was faulty and caused the system to hang on boot. Since this partition does not contain any user data, it is easy to rebuild if you still have the system image: Wipe the system partition, reinstall LOS 17.1 and Magisk, wipe cache and Dalvik, then reboot. That fixed it for me.
> 1 votes

---
Tags: twrp, restore, lineageos, android-10, downgrade
---


title: Fine Bluetooth Volume Control

text:
# Question
Title: Fine Bluetooth Volume Control
I connect my Pixel 3 to JBL Flip 4 via bluetooth. The volume rocker buttons don't increment the volume in equal installments, which is very noticeable at the lower volume range. I installed the Precise Volume app to get the actual numbers and it looks like the bump from 12% to 13% is barely noticeable (which is how it should be) whereas from 13% to 14% is quite significant (which is annoying, hence this post)

If I use the Flip 4 via an aux cable this isn't an issue as the two volume controls become decoupled - the speaker's volume buttons affect the speaker's volume without affecting the phone volume, and you can get much finer control over the volume with small, equal increments (leave phone on 5-10% and play with the speaker's volume until it sounds good)

Basically, I am interested in being able to make fine adjustments to the volume coming from a bluetooth speaker, but it looks like it's just a bluetooth limitation that I can do nothing about.

Can anybody comment on with any thoughts or workaround ideas (other than using aux)?

ps: the actual use case i am after is that i like listening to audiobooks at night, don't want to deal with a cable in bed, really want to find a fully wireless solution where I can set the volume exactly right, but I kind of feel blocked by the technology and don't see a way around it

# Answer
> 3 votes
Found the answer: To decouple phone volume and speaker volume enable what's now called `Disable absolute volume` in developer options (looks like used to be called `Disable max volume`)

Taken from here

---
Tags: bluetooth, volume, speaker
---


# Question
Title: Is there really no true FM radio without earphones?
I am looking for an offline FM radio without antenna.

It was definitely possible on older devices with Android Jelly Bean, but I look for a non-root solution.

I know that FM radio requires a 75 cm antenna, that's why the stock FM radio app is forcing me to plug in earphones. But I need another app which ignores this physical requirement.

I see no reason why it shouldn't work for Android 7. But all the offline UKW/FM radio apps I found in Playstore are lying, these are just online radio apps, not using the built-in fm radio hardware.

# Answer
The Redmi Note 9 radio works without earphones plugged in.

Does not do much else like work as a phone but the radio works.
> 1 votes

---
Tags: fm-radio
---


title: adb shell get text from clipboard

text:
# Question
Title: adb shell get text from clipboard
After I copy text in emulator I want to get this text in `adb shell`

I found a reference:

```
// API < 11
static final int TRANSACTION_getClipboardText 1
static final int TRANSACTION_hasClipboardText 3
static final int TRANSACTION_setClipboardText 2
// API >= 11
static final int TRANSACTION_setPrimaryClip = 1
static final int TRANSACTION_getPrimaryClip = 2
static final int TRANSACTION_getPrimaryClipDescription = 3
static final int TRANSACTION_hasPrimaryClip = 4
static final int TRANSACTION_addPrimaryClipChangedListener = 5
static final int TRANSACTION_removePrimaryClipChangedListener = 6
static final int TRANSACTION_hasClipboardText = 7

```

And I did `service call clipboard 1`

```
root@iX101T1:/ # service call clipboard 1
service call clipboard 1
Result: Parcel(
  0x00000000: fffffffc 00000069 00740041 00650074 '....i...A.t.t.e.'
  0x00000010: 0070006d 00200074 006f0074 00690020 'm.p.t. .t.o. .i.'
  0x00000020: 0076006e 006b006f 00200065 00690076 'n.v.o.k.e. .v.i.'
  0x00000030: 00740072 00610075 0020006c 0065006d 'r.t.u.a.l. .m.e.'
  0x00000040: 00680074 0064006f 00270020 006e0069 't.h.o.d. .'.i.n.'
  0x00000050: 00200074 006e0061 00720064 0069006f 't. .a.n.d.r.o.i.'
  0x00000060: 002e0064 006f0063 0074006e 006e0065 'd...c.o.n.t.e.n.'
  0x00000070: 002e0074 006c0043 00700069 00610044 't...C.l.i.p.D.a.'
  0x00000080: 00610074 0067002e 00740065 00740049 't.a...g.e.t.I.t.'
  0x00000090: 006d0065 006f0043 006e0075 00280074 'e.m.C.o.u.n.t.(.'
  0x000000a0: 00270029 006f0020 0020006e 00200061 ').'. .o.n. .a. .'
  0x000000b0: 0075006e 006c006c 006f0020 006a0062 'n.u.l.l. .o.b.j.'
  0x000000c0: 00630065 00200074 00650072 00650066 'e.c.t. .r.e.f.e.'
  0x000000d0: 00650072 0063006e 00000065          'r.e.n.c.e...    ')

```

I tried other indexes from 1-7 the clipboard not changed. I read this question from StackIverflow but installing additional `.apk` is not a solution for me

# Answer
This answer from StackOverflow should be hepful. It requires to use of the `input` command and `keyevent`.

```
adb shell input keyevent 279

```
> 1 votes

# Answer
For older Android versions until 9, you can read the clipboard with the command line using an app like https://github.com/PRosenb/AdbClipboard.

You don't need to use the Python script, you can directly install Adb Clipboard from Google Play at https://play.google.com/store/apps/details?id=ch.pete.adbclipboard.

Then you can use this command to read the clipboard with or without adb (command taken from the Python script):

```
am broadcast -n ch.pete.adbclipboard/.ReadReceiver

```
> 1 votes

---
Tags: adb, shell
---


# Question
Title: Stop the phone from disconnecting Discord calls
My phone is an LG K40+. Sometimes when I'm on a call on Discord, it'll disconnect from the call. I'm connected via WiFi and the quality is fine, so I don't think it's an internet issue.

Is there any way to prevent this behavior?

# Answer
> 0 votes
Try disabling battery optimisation for Discord only, eventually that will work.

---
Tags: discord
---


# Question
Title: Nexus 5x No Wifi. Default MAC 02-00-00-00-00-00 change attempt
So I bought new Nexus 5x with android 6.0 and everything worked fine, but when I updated to 7.1.2 suddenly wifi stoped working. (It seeks for wifi networks forever). When I go to settings I can see MAC adress which is default one 02:00:00:00:00:00. I've noticed that its common problem for phone like Nexus 5, 5x 6p and Pixels but all solutions I could find just failed.

**What i have tried:**

first simplest solutions they gave like pulling off SIM card, turning off phone, charging battery to 100%. - Failed

Then i was trying to install other versions of Nougath 7, 7.1 , 7.1.2. Switching back to Android 6 makes wifi running again.

Some people said that changing MAC adress resolved issue, so firstly I have rooted my phone. Then I have tried to use some external programs for changing MAC but they didint worked.

**Problem**

I am trying to change MAC manualy. I did it few times on other linux/windows machines with no issue.

when i check for avalible network interfaces throught *ifconfig* it outputs

```
bullhead:/ $ ifconfig
rmnet_ipa0 Link encap:UNSPEC
      UP RUNNING  MTU:2000  Metric:1
      RX packets:843 errors:0 dropped:0 overruns:0 frame:0
      TX packets:1129 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000
      RX bytes:563887 TX bytes:210944

dummy0    Link encap:UNSPEC
      inet6 addr: fe80::78e6:16ff:fe96:3cf7/64 Scope: Link
      UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0
      RX bytes:0 TX bytes:210

rmnet_data0 Link encap:UNSPEC
      inet addr:10.156.9.217  Mask:255.255.255.252
      inet6 addr: fe80::53e3:f4d7:6ca9:be5e/64 Scope: Link
      UP RUNNING  MTU:1500  Metric:1
      RX packets:843 errors:0 dropped:0 overruns:0 frame:0
      TX packets:1129 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000
      RX bytes:568878 TX bytes:210944

lo        Link encap:UNSPEC
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope: Host
      UP LOOPBACK RUNNING  MTU:65536  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0
      RX bytes:0 TX bytes:0

```

there is no *eth0* interface nor *wlan0*. All of those interfaces does not have mac assigned. As I have tested *rmnet\_ipa0* and *rmnet\_data0* are probably for mobile connection (ifconfig (rm..) down makes mobile connection off. So my question is how do I find network interface for wifi so I can try digging in it.

Thanks!

# Answer
> 0 votes
Install lineageos and see if it works As I see, vendor firmwares are quite glitchy on nexus phones (I have nexus 5 (Hammerhead, non-X) and vendor android 6 worked with freezes while latest lineageos nightly works perfectly (though without gapps))

---
Tags: wi-fi, 7.0-nougat, mobile-network, nexus-5x, mac-address
---


# Question
Title: There's some weird storage nonsense going on, as if part of an app's data is permanent on your phone?
So, when I want to free up some space, first *yesterday* it said WhatsApp was worth **207MB**, and then *today* it said it was only worth **166MB**, ***What's happening here?!***

# Answer
We can't tell how you are freeing the storage. If you are using any third party app then it will free the caches of whatsapp. In which case no one can say how much storage is used by your whatsapp cache. Whatsapp it self deletes some caches when there is no need of it. So, if it's cache then it's totally normal.

Other than that you should look into Whatsapp's media folder where all your images,audio,video and docs are stored.
> 1 votes

---
Tags: applications, storage, delete
---


# Question
Title: My Lenovo tab 4 M 10 is frequently switching off its own. How can I resolve this issue?
Can anyone say how to resolve this?

Frequently it is turning off its own.

# Answer
There can be many reasons behind it. May be phone's battery is damaged. Or may be there is a background process which is never ending so in order to restore control phone turns it's all functions off.

You should probably take backup of your data and reset it.
> 1 votes

---
Tags: lenovo, power-on
---


# Question
Title: How can I detect my phone's screen resolution?
Other than looking in the Chinese manufacturer's website, which can be somewhat "misleading" (12.1 MP camera? come on...)

# Answer
You can visit whatismyandroidversion.com from your phone's web browser which will show you your screen resolution, android version and device id.
> 29 votes

# Answer
Since I was not entirely sure if the system information was correct, I simply checked the resolution of a **screenshot** from my phone. :)
> 5 votes

# Answer
You should be able to use `Settings > About phone > Hardware information > Display`

E.g. on my phone, it says "3.7 inch WVGA resolution"

(Then of course, you would have to discover what WVGA is...)

The Hardware information screen should also tell you the camera specs too.
> 3 votes

# Answer
if you follow much the same path that Nick suggested, but instead go to `Settings > Display > Display Resolution` it should show you the options for your screen resolution.

As for your photos, take a picture, put it on your computer and check the resolution. And let us know if you actually have a 12.1 MP camera!! :)
> -1 votes

---
Tags: screen-resolution
---


# Question
Title: Unknown "keyhole gallery icon" sometimes appears on lock screen?
Sometimes on my lock screen, an icon with what looks like a keyhole and some sort of gallery-related image appears for a few seconds and then disappears. It happens randomly when I turn on the screen on my phone. It shows among the other notification icons in the middle of the lock screen, and it always disappears by itself after a few seconds even if I don't unlock the phone.

The phone is a Samsung Galaxy S10.

I can't find any settings or apps that seem related or that have this icon, and I can't find the icon when Googling either.

# Answer
> 2 votes
The mystery is solved - apparently it has something to do with the "dynamic wallpaper" feature.

I'll leave this answer here in case someone else sonders about this icon.

---
Tags: samsung, lock-screens, notification-icons, samsung-galaxy-s-10
---


# Question
Title: Smartphone laggy and slow: when a factory reset is ineffective
First of all, I would like to say that I recognize how tiring it must be to read about people asking for help to solve problems all the time. I tried to not be that person... but here goes my story.

I have Galaxy S6 (SM-G920i), 4.5 years old, that I used a lot, and always served me well (within its capabilities). It is running Samsung's stock Android 8.1.

However, two days ago, out of nowhere, he became excessively slow. It was very sudden: in a second I was reading some messages on WhatsApp, and in the next second the device was not responding, taking many seconds to answer any command from me.

I decided to restart it. But even that I couldn't. It was as if it didn't recognize that I was hitting the screen lock button. Then I forced a shutdown (I connected it to the charger, and held the power off + volume key).

After that, I turned it on again, but now the phone was stuck in the boot loop: taking 5 or 6 minutes to boot (screen with the Samsung logo) and as soon as it went to the lock screen, it restarted on its own.

I did a search on some specialized sites and forums, and the first recommendation was to "Wipe Cache" through the recovery mode. I was able to enter recovery mode, but I received the message "NO COMMAND" on a blue screen with the green android! Moments later, while I was searching about that new and unexpected error, the recovery screen finally appeared. I selected the option to clear the cache (Wipe Cache Partition), waited for completion, and then restarted the device... No success there! The problem persisted. Bootloop again.

The next recommended step now was to perform a factory reset. Against my will, I did. But, unfortunately, it did not solve the problem: the smartphone is still very slow, it is taking several minutes to boot up, it is taking 3 or 4 seconds to respond to simple commands (lock, unlock, scroll, etc...) and is exaggeratedly slow to open any application (simple as it may be, such as a calculator). Sometimes it hangs and gets hot (e.g. if I try to open the camera). Even in the safe mode, it behaves this way.

I am aware that this problem may be something related to the hardware since the storage units have a life cycle (although unlikely, it is possible that this occurred in less than 5 years). That said, I am also aware that the problem may not have a solution.

On the other hand, hope dies last: have you guys ever seen something similar, even on other devices? Am I missing something? Is there a path that I have not explored? Is it (soft or hard) bricked? Or, considering the facts, it is indeed a dying device?

Thank you for your time!

**TL;DR**: A Samsung Galaxy S6 with 4.5 years of use suddenly became laggy and unresponsive. "Wipe cache partition" and "Factory reset" were unable to restore device performance. Is there a solution?

# Answer
> 0 votes
I am passing by to post a possible solution to those who have similar issues.

Although I cannot say it is definitive/long-term (I did it only yesterday) the device is really much more responsive now, and the hangings and crashes seemed to disappear.

The steps were (without deep details):

In my computer:

* Downloaded a stock ROM from a reliable source (mind the exact version);
* Downloaded Odin v3.13;
* Installed Samsung USB drivers;

In my Samsung S6:

* Wipe Cache (recover mode), then reboot.
* Started it in Download Mode.

After that, plug the USB cable between the phone and the PC, and flash the firmware using Odin.

I followed these steps. It may help someone too: https://www.youtube.com/watch?v=UEnm5TU5KMw

In my case, I needed a factory reset after the flashing because the new FW did not erase the data. Now everything seems fine. I wish I had discovered that before buying a new smartphone. However, no problem... I'll give this one to my father. :-)

Hope someone finds this useful. See you guys!

---
Tags: factory-reset, unbricking, samsung-galaxy-s-6, 8.1-oreo, lagging
---


# Question
Title: Faster way to copy slot B back to slot A after update
After update into Slot into B, is there any way to mirror the contents of B back to slot A? So that both slots have the same versions.

How do copy complete updated slot B back to slot A efficiently?

# Answer
> 1 votes
I have had to do this while installing Lineage OS on my Moto X4. You can find the "copy partitions" ZIP file on the official installation site here:

> ### Pre-install instructions
>
> In some cases slot `b` can be unpopulated or contain much older firmware than slot `a`, leading to various issues including a potential hard-brick. We can ensure none of that will happen by copying the contents of slot `a` to slot `b`. This step is NOT optional.
>
> To do this, sideload the `copy-partitions-20210323_1922.zip` package by doing the following:
>
> 1. Download the `copy-partitions-20210323_1922.zip` file from here.
> 2. Sideload the `copy-partitions-20210323_1922.zip` package:
>     * On the device, select “Advanced”, “ADB Sideload”, then swipe to begin sideload
>     * On the host machine, sideload the package using: `adb sideload copy-partitions-20210323_1922.zip`

---
Tags: updates, ota-update, ab-partition
---


# Question
Title: Nexus 7 2013 WiFi (flo) freezes and/or bootloops when booting TWRP
I unlocked my Nexus 7 2013 WiFi (flo)'s bootloader and flashed the latest TWRP (3.5.1\_9-0 at the time of writing), but now it freezes on the boot/splash screen and reboots after waiting. I can use `adb shell` to access it, in there I see errors like this repeated over and over:

```
<3>[  305.099060] EXT4-fs (mmcblk0p30): VFS: Can't find ext4 filesystem
<5>[  305.158416] type=1400 audit(1620032012.811:24): avc:  denied  { read } for  pid=172 co
<5>[  305.158416] type=1400 audit(1620032012.811:24): avc:  denied  { read } for  pid=172 comm="recovery" scontext=u:r:recovery:s0 tcontext=u:r:recovery:s0 tclass=netlink_kobject_uevent_socket permissive=1

```

What might I do to get TWRP working?

# Answer
I want to preface this by saying that the following is what worked for me. I can't guarantee it will work for you, but I wanted to document it here for the future in case I need it again or someone else finds it useful. I take no responsibility the possibility of this messing up your device even worse or not doing anything at all. I don't really understand why this worked for me.

---

First of all, reboot the device so that you're freshly in the TWRP recovery when you start executing the commands. The device seems to randomly reboot when in this state and it wouldn't be nice if that happened while re-creating the partition, so give yourself as much time as possible.

You will need adb on your PC to follow these steps. Explaining how to acquire it is out of scope for this guide, but I'm sure you can find instructions for your operating system online.

### Note that you should **not** include the `$` and `#` when running the commands!

Once TWRP's splash screen appears on the device, quickly run this command on your PC:

```
$ adb shell

```

Make sure you start the adb server with the right permissions before you try this as starting it up takes some time.

Following that, run this (in the adb shell):

```
# mke2fs /dev/block/mmcblk0p30

```

This formats the userdata partition. Let this finish. For me, the device rebooted right after, but you may need to do it manually.

After the reboot, you should be booting back into Android assuming you have a working Android ROM on the device. If it seems to be stuck, wait a few minutes. If it still seems to be stuck, try giving the power button a short press. This worked for me for some reason. After this, set up the device, go into settings, enable USB debugging, and run this on your PC:

```
$ adb reboot bootloader

```

After this, flash TWRP 2.8.1.0 (Not sure whether this is necessary):

```
$ sudo fastboot flash recovery twrp-2.8.1.0-flo.img

```

Boot into it and observe it boot Android instead for some reason.

```
$ sudo fastboot reboot recovery

```

Reboot back into the "bootloader" (fastboot):

```
$ adb reboot bootloader

```

Now flash the latest TWRP again.

```
$ sudo fastboot flash recovery twrp-3.5.2_9-0-flo.img

```

And it should work. However, in my case, I have to re-flash TWRP after every boot of Android.

I'm not sure whether it is necessary to flash the older TWRP version for this to work, but I thought I'd include it just in case.

---

Credit goes to this forum post for giving me a vague outline on what to do: https://forum.xda-developers.com/t/q-flashed-twrp-and-now-cant-find-ext4-filesystem.3096502/ (archived version: https://web.archive.org/web/20210503093052/https://forum.xda-developers.com/t/q-flashed-twrp-and-now-cant-find-ext4-filesystem.3096502/)
> 0 votes

---
Tags: rom-flashing, twrp, nexus-7, system-error
---


# Question
Title: Does `pm uninstall` also automatically execute `force-stop` and `clear` on a non-rooted device?
This is for non-rooted stock ROM's.

To get rid of one single app, I've been executing the following commands:

**(Step 1)** `disable-user`

**(2)** `force-stop`

**(3)** `clear`

**(4)** `uninstall`

**(5)** `clear`

Steps **(1)** and **(2)** first — otherwise, if I just execute **(3)** before them, the app will (more often than not) launch itself again and start accumulating app data.

At this point, I've achieved to make an app useless. It is not running (force stopped), it has no data saved (cleared) and will not launch itself without me knowing (disabled).

If I wish to take it further and entirely get rid of it, I can execute **(4)** to uninstall it.

Step **(5)**, might seem redundant, but I tested myself several times on two different categories of apps. The first one is system apps (i.e., the Settings UI has the option to disable it greyed out) and the other is typical carrier bloatware (you can uninstall it from the UI yourself without ADB)

If you run steps **(1)‐(5)** on a system app, you will get "success" on all five. If you run all five on the carrier app, you will get "success" only in steps **(1)-(4)**. In step **(5)**, you will get "app is not found" *(or some similar message)* instead.

So I said, maybe an "uninstalled" system app is still accumulating app data, if I can run `clear` as many times as I wish after it's uninstalled and still get "success". Is that the case?

As far as just disabling is concerned, I have verified steps **(1)-(3)** are necessary. But when it comes to uninstalling instead, are they redundant?

*(i.e., does a simple* `uninstall` *also automatically execute* `force-stop` *and* `clear`*?)*

# Answer
> 0 votes
### force-stop

Uninstalling an app always kills all related processes. Keeping them running doesn't make any sense and can end up in an app crash. Therefore Android kills the app process(es) before uninstalling it.

### clear

Clear data and cache directories is enabled by default. It is just the opposite if you want to uninstall the app but keeping data and cache you have to add the option `-k` to the uninstall command.

### clear an system app after uninstall

System aps are located on the system partition which is by default read-only. Thus uninstalling an system app is not possible on a non-rooted device. If you execute `uninstall` on a system app only the installed app updates on the user partition are removed and the system app itself is set to disabled. Clearing the data of an disabled app is possible therefore you don't get an error.

---
Tags: adb, uninstallation, system-apps, disable-app
---


# Question
Title: Use bluetooth keyboard with a different layout?
I'm Italian, so I use italian language on my tablet (note 10.1), but I have also a bluetooth keyboard with english layout that I use to write little snippets of programmes, the problem is that I don't know how to set english language only for the keyboard. Can someone help me to solve this problem?

# Answer
> 6 votes
The best way to use two different languages either on a smartphone or on a tablet is from device standard settings, with device keyboard and also with external USB and bluetooth keyboard. To use more than one language follow the images: \[I can't post images yet\]

```
General Settings -> Language and input -> Option of Samsung keyboard -> Input languages

```

Here you can chose between many languages. So you have setted correctly. Now to use one or the other language when you write is very easy, you have to slide with finger on the spacebar of the device keyboard.

# Answer
> 7 votes
You need to install physical keyboard layouts. One of the best extensions to do that is this:

RS - Hardware Keyboard Layouts

It is free, and does nothing else. You use the standard settings page to select the hardware keyboard layout.

(It is mystery why Google does not provide the layout files by default.)

# Answer
> 3 votes
You might wish to give the External Keyboard Helper a try. Take a look at this screenshot (click for large variant):

External Keyboard Helper (source: Google Play; click images for larger variant)

That's just two of its setting screens. See the second entry in the first? *Chose keyboard layout*. That's what you are looking for. And it should only apply to the external keyboard, while leaving your "software keyboard" untouched.

# Answer
> 2 votes
Let me suggest you Russian Keyboard app. It allows you to choose different layouts for hardware and software keyboards (one or multiple). It supports any layout (including your own). And it is free.

The only thing you should know is that selected layouts work as long as the app is selected as a current input method.

# Answer
> 2 votes
Shift-Space works with an Apple Bluetooth Keyboard and a Samsung Tab 2 7.0. I included the languages I am using in the way that Mitro showed.

# Answer
> 1 votes
Are you using stock / default keyboard? Open the keyboard settings (in the keyboard, it's the cogwheel/gear icon to the left of the space bar). Go to `General settings > Input languages` and select English.

# Answer
> 0 votes
Shift+Control works on my Apple Bluetooth Keyboard with my Asus Zenfone 5

# Answer
> 0 votes
You should install extra keyboard layouts:

https://play.google.com/store/apps/details?id=varzan.extraKeyboardLayouts.

It is free and helps me to type on Mongolian language and included many other languages.

---
Tags: keyboard, bluetooth, languages, text-layout
---


title: How to add a physical keyboard layout

text:
# Question
Title: How to add a physical keyboard layout
I'm using a Logitech Tablet Keyboard for Android with Galaxy Nexus (Android 4.1).

When I go to Settings -\> Language & input -\> Physical Keyboard and tap on Logitech Tablet Keyboard Gen there is an option to "Set up keyboard layouts". There are many predefined layouts but the "Polish (programmer)" keyboard layout is missing. How can I add one?

I have looked at /system/usr/keylayout and /system/usr/keychars but I don't see the other layouts there.

I know there is an app that does not require root, but it's aa virtual keyboard that works with bluetooth keyboards https://play.google.com/store/apps/details?id=com.apedroid.hwkeyboardhelper and I'm interested only in adding the layout to the built-in physical keyboard layouts.

# Answer
> 4 votes
It's quite an easy task. See the source of the InputDevices system package. Or get the ready to use Polish programmers external keyboard layout plugin from there: https://sites.google.com/site/polishhardwarekbd/

You'll find the app source there as well. Regards.

# Answer
> 3 votes
You should install extra keyboard layouts:

https://play.google.com/store/apps/details?id=varzan.extraKeyboardLayouts.

It is free and helps me to type on Mongolian language and included many other languages.

# Answer
> 0 votes
I'm interested in this too.

However, as a temporary fix I found that the soft keyboard you have selected seems to affect the way a bluetooth keyboard functions. For example:

I usually use Go! Keyboard. While I have this selected my shift key is a latch (double press for shift-lock) and ctrl-c and ctrl-v do not function. However, when I switch to Hacker's Keyboard, shift requires me to hold it down and ctrl-c, -v and -a all work as they would on a PC.

What I would really like to do is edit the way the fn- functions or some of the iphone of mac keys work to attatch them to my back, recents and menu buttons. This must be possible because one of the keys already works as 'home.'

---
Tags: bluetooth, keyboard, external-keyboard
---


title: Restoring browser history in Android

text:
# Question
Title: Restoring browser history in Android
In an unrooted Android tablet, is there any way to restore web browser history searches that have been cleared?

It is Chrome web browser, and it's not linked to a Google account. Android version 6.0

# Answer
> 0 votes
Unless you are able to perform disk forensics on the storage medium, this is unlikely, since as far as the application/OS is concerned, it has been deleted.

---
Tags: browser
---


# Question
Title: Cannot disable MMS link sharing without creating Samsung account
When I try to send a picture using the standard SMS/MMS app "Messages", my Samsung S20 does NOT send it as an MMS.

Instead, it sends a plain SMS with a web link to a deep subdomain of 3gppnetwork.org (for example https://ftcontentserver.rcs.mnc001.mcc288.pub.3gppnetwork.org/cs/...etc. ).

I found these Samsung instructions on how to disable this "feature". But when I click on the "Off" icon to disable link sharing, I come to screen offering "Connect to your Samsung account" or "Continue with Google", and no other option to continue.

So how can I disable this without creating a Samsung account or giving Samsung access to a Google account, which should all be completely irrelevant to sending MMS messages.

# Answer
> 1 votes
The phone sending SMS messages with links instead of MMS messages was due to RCS (Rich Communication Services). It was turned on by default in my new phone.

Because it was not enabled or not available on the recipient's phone, the messaging app was sending web links instead of standard MMS messages.

But the setting to turn it off is not in the Messages app itself. It's under the general "Settings", in

Connections \> More connection settings \> Rich Communications

It seems that the Samsung instructions about disabling link sharing and which required a Samsung account were about some other unrelated "feature", irrelevant to my real problem.

---
Tags: samsung, mms, rich-communication-services
---


title: Launch a "shortcut" in Tasker?

text:
# Question
Title: Launch a "shortcut" in Tasker?
Can Tasker launch an app's shortcut as an action? I can't find "Shortcuts" as an option in the "Select Action Category"-dialog when creating a new task. This works without problems in Locale.

# Answer
> 5 votes
Strangely, this does not appear to be possible in Tasker, by default. However, I see there is the AutoShortcut app on Google Play which is meant to allow it. Interestingly, Tasker itself will tell you about AutoShortcut (complete with a link to Google Play) if you press the magnifying glass icon when attempting to add a plugin action to a task (I'll update this answer with screen shots when I get around to it).

Theoretically, it should also be possible using the `Send Intent` action, but that seems way more complicated than should be necessary for such a simple task. If AutoShortcut doesn't work for you, let me know, and I can try to figure out what the Intent settings should be.

# Answer
> 1 votes
Seems like Secure Settings lets you launch shortcuts from Tasker in the same way as AutoShortcut but without all the annoying ads and nags. So I prefer using that method.

But neither method is really that great, I have a bunch of shortcuts they can't seem to launch.

# Answer
> 0 votes
My advice would be to switch to Automagic. What you're asking is a simple matter of selecting the "class" option in "Launch App." It gives you a complete list of available "shortcuts" to launch. Automagic has 90% of the functionality of Tasker, and requires fewer plugins. However, it will also use all the plugins Tasker can use. Also, the interface is a hundred times easier to learn.

# Answer
> 0 votes
LS

In tasker there is a field data. When starting Chrome, one can fill in a url is this field and Chrom then starts with this url. I asume that othe apps will also react in a simular way.

Regards, Martin

---
Tags: tasker
---


# Question
Title: Is there a way to log wifi probe request?
I am able to log wifi probe request with script like hoover, probeSniffer, and my favorite for the moment probemon on my ubuntu machine with a card able to run in monitor mode.

Is it possible to do the same on android ? a rooted android is not a problem.

But I guess one major problem would be to be able to switch the wifi card in monitor mode, if it is possible at all, depending on the driver.

Is there even script or software or app to be able to log the wifi probe request ?

At the very least, one can try to use the script I mention above but there are not meant to be run on android.

My question is perhaps too general. I use a moto G 4G (XT1039) with LineageOS 14.1 (peregrine)

# Answer
> 0 votes
As a work-around, buy a raspberry pi zero (W ?) with a usb wifi key that does monitor mode. This will be almost as portable than a phone but not as much.

You need the battery too to power the rpi0.

# Answer
> 0 votes
You can use you're favorite sniffing tools with kali NetHunter os on a rooted device or with the kali NetHunter app if the device has support for monitor mode

---
Tags: wi-fi, logging
---