# Question
Title: Unable to upgrade firmware on Vidonn X6 bracelet
I bought myself a Vidonn X6 sports band, and am having issues upgrading the firmware.

The new version released last week of the app on the Android adds support for the X6, and is offering a newer firmware version for my sports band. When I try to install it, the band's face shows up 'Up' arrow (taking on an upgrade), and stays for approximately one minute, while the phone stays on the 'Upgrading' screen in the app.

After a minute, the arrow disappears off the band, and the Bluetooth settings screen comes on. I have tried:

* waiting,
* backing out to the app, and
* disabling the Wifi so Vidonn asks to turn it on.

None of these seem to finish the upgrade, and in all instances, I have to pair the sports band back to my phone. The battery was charged up to 100%, so I know it's not a power issue.

What more can I try to get the newer firmware installed?

# Answer
> 0 votes
I finally got it to update, after no help from their tech support.

Start the upgrade, and wait for the Bluetooth settings screen to come up. I scanned for devices, and got a new gibberish device to connect to, as shown below. It now successfully reads as an x6 bracelet, but was gibberish the first time I saw it.

<sub>(Click on the image to see enlarged view.)</sub>

I was then able to successfully upgrade the firmware. The upgrade bar turned green, and it copied over, using my only Android device, a OnePlus One.

# Answer
> 2 votes
Got the same issue on my OnePlus, unable to upgrade firmware, my smartband had some issues (screen not working). After long search, found it : uninstall vidonn2.0 app , download vidonn tool.apk and firmware https://goo.gl/BZYGsQ (read the text file) then install it, reboot phone, launch Vidonn tool then flash firmware. You can also try to flash the firmware in the Vidonn2.0 directory on the phone.

# Answer
> 2 votes
1. Please install and open the upgrade tool.
2. Search X6 and click to connect with X6.
3. after connected successfully and display "Unknown service 00001800-0000-1000-8000-00805f9b34fb" .Click "Reset(upgrade)"
4. X6 will display arrow icon.
5. With arrow icon on smart band go Back to search page, it will display "DfuTarg".
6. Click"DfuTarg" and connect it.
7. Connected and it will display "Unknown service 00001800-0000-1000-8000-00805f9b34fb", then Click "Select File" and choose the file. then it wil upgrade automatically.

# Answer
> 0 votes
I have THREE of these bracelets to be used as gift and yes, they are very flaky in the software.Mind you, the hardware bits are simple and (I think) pretty robust if the water-proofing works properly. Just DO NOT swim with this on!.

As to firmware upgrade. I have 3 phones and only ONE will upgrade the firmware. I found that the latest Android Kitkat V4.4.4 works in my case as it is a new phone I got from a warranty claim. The software upgrade goes into the screen, then the red letters on the bottom of the screen turns green and the big circle starts the percent count from 1% to 100% and device resets and repairs with the phone. So, it is a Bluetooth or software issue relating to bluetooth stack in the PHONE itself rather than the device. Since Bluetooth 4.0 is new, the profile part in the phone can be tricky and there is nothing you can do except to upgrade the software on the phone itself and try again.

My Lenovo phone upgraded to V4.4.2 also CANNOT upgrade the firmware of the X6 but works well with it. The ANdroid app is also poor quality and reliablity of sync is also about 80%. Not good but passable.

# Answer
> 0 votes
Ive now done 2 upgrades and figured it out.

After you try to upgrade the first time, the Vidonn phone app will hang. You have to kill the app in the task manager. Important: Then go into bluetooth settings and unpair the bracelet from the phone.

Then relaunch the phone app and start the upgrade process again, This time you will see the circle move and do the upgrade.

# Answer
> 0 votes
Just did a firmware upgrade of very old Vidonn X6 wristband by following this answer(this thread). I am using a Vidonn App and VidonnTools App from the website linked on that answer. My X6 now has a v2.9.0.0 release. Vidonn Android App version is v3.2.4.

Before upgrade Vidonn Android app told X6 was a version v2.7.0.6. Link above answer had a firmware file but it was v2.6.2.1. German website lists firmware history and latest one is v2.9.0.0. I could not find a binary in the same german website but they link to a russian(?) website with all firmwares available.

http://www.vidonn.com/en/faq.html
https://vidonnx6.tumblr.com/post/126413649799/firmwareupdate-durchführen
https://yadi.sk/d/jKHO8XrthJ63n/Firmware%20X6

---
Tags: 4.4-kitkat
---


# Question
Title: How to use Gmail app without any browsers installed?
I had rooted my Android phone, and after uninstalling all browsers, I am unable to use the Gmail app on my phone. While I still get notification of Gmail in the notification bar, it closes as soon as I open the app.

I had tried some other apps (other than Android built-in apps for mail) like Microsoft Outlook, but the problem remains the same. On reinstalling the browser (like Chrome), my mail apps work properly.

Is it possible to use the Gmail app without browsers installed? Any solution including any third-party app is okay.

# Answer
Android apps can make use of a WebView (web browser that runs inside the app).

Depending on the Android version Google preferred used Chrome webbrowser app to provide this WebView or the Chrome based WebView app.

Any other WebView capable web browser can also be used.

Go to **Settings -\> System -\> Developer options -\> WebView implementation** to see and select the app that provide the WebView to all apps.

In your case the WebView app may be the best to install because it can't be used as stand-alone web browser but once installed GMail app should work again as it provides the necessary WebView component.
> 4 votes

---
Tags: gmail, browser
---


# Question
Title: What determines game or app differences of availability between countries?
There is a particular game which is in beta release in on country, in my country it is possible to register on a waiting list and in South America it just says "not available in your country". Is there a general explanation why the availability is different between different countries? Is it for marketing and purchase power adjustments or some other reason?

# Answer
Two factors

1. Google for reasons not made public has a list of countries where app and Google Content is available Country availability for Google Play apps & digital content.
2. Developers may choose targeted release for their own reasons. Google guidance on this - Distribute app releases to specific countries - Play Console Help. I am not a developer but I guess reasons could include localization, scalability of app, revenue expectations, taxation issues, political reasons (Indian ban on Chinese apps recently comes to mind), reviews (I am aware of a famous developer who doesn't release his apps in some countries because of unfair reviews).
> 3 votes

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


title: Android boot-up messages for debugging?

text:
# Question
Title: Android boot-up messages for debugging?
I am trying to figure out if Android (i.e. Galaxy Nexus, Nexus S, and/or Motorola Xoom) come with some sort of capability to produce a "boot-up" log. (kind of like Linux boot-up screen) It would be immensely helpful in figuring out how far one's phone gets in the boot stages before it crashes (such as first-stage bootloader, main bootloader, then kernel loading, etc.). Does anyone know how to enable the phone to spit out this log file or enable a "verbose" boot-up mode (and print actual messages to the terminal of the Linux computer you have the phone connected to)?

My phone gets stuck in a "boot-loop" with my current modified build and I would like to debug it if possible.

Alternatively, anyone know of any useful resources or tutorials that explain how to easily "hack" the phone to do this (no messing with the hardware)? Or of any forums where my question may have been asked but in a more obscure form?

This has been a frustrating problem of recent, so any help would be greatly appreciated!

# Answer
There's a couple of ways to do this:

* `cat /proc/last_kmsg > /sdcard/last_kernel_message_log.txt`
* `dmesg > /sdcard/kernel_boot_log.txt`
* plug in the usb cable with the smart-phone switched off. Then issue the command `adb logcat` from your Windows cmd or Linux terminal, it will hang waiting for the device to come on-line, now power up the smart-phone. The logcat should start scrolling off then.

Since you expressed interest in *figuring out how far one's phone gets in the boot stages before it crashes*, those methods should help. The thing is you need to be pretty quick to grab the kernel's log (the first two methods shown above).

What I would do is this, on my Arch Linux box, two terminal windows, one for the `adb logcat`, the other, to grab the log the minute logcat starts scrolling off!

***Edit:***

BE aware, there are differences with using `adb` and `fastboot`!

`fastboot` works differently, it is only used for flashing images into specified partitions, and is more tied in with the boot-loader process, i.e, it can understand the boot-loader mechanism. It also requires that:

* under Windows, 'Administrator' privilege to execute it
* under Linux, 'root' privilege

The reason it requires it is because it bypasses certain input/output of the hardware, and thus, does not "talk" in `adb` protocol, rather, it is to "talk" directly to the boot-loader. Something that cannot be done as a normal user. Here is the help for the usage of `fastboot`.

```
$ sudo fastboot
usage: fastboot [ <option> ] <command>

commands:
  update <filename>                        reflash device from update.zip
  flashall                                 flash boot + recovery + system
  flash <partition> [ <filename> ]         write a file to a flash partition
  erase <partition>                        erase a flash partition
  getvar <variable>                        display a bootloader variable
  boot <kernel> [ <ramdisk> ]              download and boot kernel
  flash:raw boot <kernel> [ <ramdisk> ]    create bootimage and flash it
  devices                                  list all connected devices
  continue                                 continue with autoboot
  reboot                                   reboot device normally
  reboot-bootloader                        reboot device into bootloader
  help                                     show this help message

options:
  -w                                       erase userdata and cache
  -s <serial number>                       specify device serial number
  -p <product>                             specify product name
  -c <cmdline>                             override kernel commandline
  -i <vendor id>                           specify a custom USB vendor id
  -b <base_addr>                           specify a custom kernel base address
  -n <page size>                           specify the nand page size. default: 2048

```

A well known-usage of `fastboot` is for flashing for example, to flash a recovery image: `sudo fastboot flash recovery recovery.img`, another is to directly flash a raw image, `sudo fastboot flash system system.img`. For more of for the case of kernel development, using this `fastboot boot new_kernel`, this temporarily downloads a new kernel and boot using that without touching the boot-loader's own boot.

There is also a limitation on the size of a raw image that requires to be flashed, when I say raw image, I am referring to a file that has a `.img` extension, the image must not exceed 128Mb. (*I found out this when developing ics4blade, after the build completed, the system.img was 162Mb, and I tried to flash it but fastboot refused! To circumvent the limitation, had to create a CWM flashable zip file to do that and get around it!*)

Practice caution and ensure the partition is correct and double-check and double-check again, if necessary, walk away from the computer, take a break, come back again, and double-check again, this is where it can go horribly wrong, flash the wrong file into the wrong partition... well *shrugs*
> 18 votes

# Answer
You can use LiveBoot. It's in the Google Play Store. It will do just what you are asking.
> 1 votes

# Answer
You can go into recovery on that screen it allows you to access a few log files which you cant access once the phone boots. What your trying to troubleshoot will be in these pre boot logs.
> 0 votes

---
Tags: reboot, fastboot, bootloader
---


# Question
Title: Camera settings/features are disappeared
There is a Samsung A01 whose default camera settings are like this:

But for some reason, some camera settings/features located at top bar are disappeared. Does anybody know why? How can I restore it?

# Answer
Approach suggested here worked:

> The way I got my camera features back is ... by going into the settings going to device care and then click on battery and then changing power mode to optimize which is the first choice.
> 0 votes

---
Tags: applications, samsung, camera, android-10
---


# Question
Title: Android in app purchase issue: You already own this item
I am interested in purchasing the Game from Google Play Store, but when I try to purchase it using the **buy** Button in game menu it takes me to Play store and there I get a message `"You already own this item"`, but when I click on details button in the message box the play store application crashes.

Now I don't know even if I own this or not. If I own it then why didn't I received this full version and if I do not own it then how I will be able to purchase it?

# Answer
Summed up from the comments:

This was a known issue with *Google Play*, which meanwhile is resolved (read more on this Google support page, opening the "fixed/resolved" item, and there you see `[#8849329] Falsely received error: "You already own this item"`, together with more details).
> 1 votes

# Answer
The best option that worked for me was to install the following app that will allow you to download the app again "Purchased Apps (Reinstall your paid apps)" https://play.google.com/store/apps/details?id=com.azefsw.purchasedapps&hl=en
> 0 votes

---
Tags: google-play-store, in-app-purchase
---


# Question
Title: How to disable screen lock during Android development?
I am developing Android app with my daily phone, I want to turn off screen lock only during development.

I can do this manually, but that is too troublesome and sometimes I forget to enable it back after development.

Are there ways to do this automatically? i.e. turn off screen lock when connected to USB?

# Answer
> 14 votes
There are other ways too. My favorite is:

```
$ adb shell svc power stayon true

```

See here: https://stackoverflow.com/questions/8840954/how-do-i-keep-my-screen-unlocked-during-usb-debugging

# Answer
> 7 votes
Yes. Go to `Settings` -\> `Developer options` and turn on the `Stay awake` option.

# Answer
> 0 votes
So I faced this problem too and I got quite annoyed at having to go into settings and enable "stay awake" and then disable it when I'm done. Searching the Play Store for an app to do it autonomously, and tried a few that claimed to work but didn't, so I made my own...

And the code is available open-source here: https://github.com/projectdelta6/ADB-Stay-Awake#adb-stay-awake

# Answer
> 0 votes
I created simple shell script for my **macOS**

File Name : cell-screen.sh

```
#!/bin/sh

echo '`cell-screen on` to keep the screen on during usb debugging'
echo '`cell-screen off` to reset'

echo ''
echo 'your parameter - ' $1

if [[ "$1" = "on" ]]; then
    ~/Library/Android/sdk/platform-tools/adb shell settings put global stay_on_while_plugged_in 2
elif [[ "$1" = "off" ]]; then
    ~/Library/Android/sdk/platform-tools/adb shell settings put global stay_on_while_plugged_in 0
else
    echo '\n[****]Bad Input.'
fi

echo '\nEnd'

```

Steps:

1. I saved the script to the default use location - `/Users/[your username]`
2. Given executable access to the file - `chmod +x ~/cell-screen.sh`
3. Whenever I start my development tasks, I just execute the shell script in terminal - `~/cell-screen.sh on`
4. After I complete my development work, I simply execute - `~/cell-screen.sh off`

**For Windows Users:**

Change the shell script for the adb location - `%LOCALAPPDATA%\Android\sdk\platform-tools\adb`

---
Tags: applications, adb, security, lock-screens
---


# Question
Title: Why would an app ask for location permission when configuring an IP camera?
Why would this android phone app for this IP camera need location services to be turned on before it gets set up?

Surely that's a security risk. If the camera company's database is ever hacked, an attacker would have both the exact location of the property and the means to view the property to see who was around!

Is there any technical reason why location is required for an app to set up an IP camera? (Another data point: The Google Home app also requires location permission to set up the Home Hub device).

Is it safe to turn on location services and allow the app to determine my location during setup of the camera?

# Answer
No, there is no need for geo information to set up or connect to a IP cam. The risk is only in providing data to a company even if it doesn't need it, depending on how they will use it. It depends on the company...
> 1 votes

# Answer
I found a way to work around the location requirement, by installing a Fake GPS app and configuring my android device to use it in the android developer menu.
> 0 votes

---
Tags: security, permissions, camera
---


title: Bulk word import into Gboard

text:
# Question
Title: Bulk word import into Gboard
I moved from my Redmi to Mi Mix 2 now and used the Mi Mover app but unfortunately, the words in my used keyboard Gboard weren't restored. Neither does the internal synchronization work, it says something like "sync is not available for devices with G suite accounts or Android for work profile".

Couldn't yet find a working solution for this issue, so I'm thinking about re-adding all words but don't want to do this one by one. I have a wordlist as a text file that would cover at least 80% of my custom words. Any way of adding this at once to Gboard dictionary?

Apart from Gboard dictionary, there seems to be a common Central Android custom word dictionary. Is Gboard also considering words from there? In case it is, maybe there's some API/interface to this Central place so I could add those words at least there, so they could be used by Gboard (and also by other keyboard apps should I ever decide to switch).

I don't mind which way to go in case at least one of both could be achieved.

# Answer
> 3 votes
I have just managed to move my Swype dictionary to Gboard and would like to share my technique. Please bear in mind that I am not able to program, so this technique is aimed at novices like myself. I used Android 9 on a Samsung Note 8.

I know it looks like a long and complicated process, but that's just because I've broken it down into small steps: if you have less than a thousand personal words in your vocabulary the whole thing shouldn't take more than about half an hour. At the end of the process, I uninstalled the two apps which I had installed, but that of course is up to you.

1. Open Swype and go to Edit My Dictionary.
2. Install and open Universal Copy: I found it on the notification bar
3. Tap the top-right icon which is a dotted square surrounding a solid rectangle. This will select everything on the screen. Then press the Copy icon which is two overlapping rectangles
4. Because I have Word on Android, I opened a new Word document and pasted into it the words that Universal Copy had copied. (It would probably have been quicker to use ES File Explorer to create a plain-text .txt file, but I did not think of this until too late).
5. Press Enter after the last word pasted so the cursor will be on a new line
6. Go back to Edit My Dictionary and scroll up until the words you have already copied have disappeared at the top of the screen
7. Go back to Universal Copy, which means going back to the notification bar at the top of the screen, and repeat steps 3 to 6 however many times you need to copy all the words from your Swype dictionary. (I have more than 700)
8. Optionally, go through the Word or .txt document you have just created, cutting out all the repetitions of "Personal Dictionary" which Universal Copy has faithfully copied each time it saw it on the screen. Also, remove any unwanted words on that list.
9. If you created a .txt document, call it `wordlist.txt`. If you created a Word document, you will need to Save As `wordlist.txt`. I had to do this and the next step on the PC but I'm sure it's possible to do it on the phone.
10. Whichever way you created this `wordlist.txt` file, move it to the root of the SD card
11. Install and open User Dictionary Manager to import this file into your Android Personal Dictionary.
12. The most difficult part for me was finding the path to the root of my SD card. In the end, I found it on a Google app called Files, by selecting the file and then tapping the Information icon on the drop-down menu. My path was `/storage/14B5–E887/wordlist.txt`. Obviously your SD card will not be called `14B5–E887`, and depending on your version of Android and your phone, you may have a different path altogether.
13. The most satisfying part was checking this had worked by going TG board, choosing Settings, Dictionary Personal Dictionary, English (UK) and seeing all your Swype words appear… For some reason in duplicate :-( but this does not seem to matter.

# Answer
> 0 votes
The closest workaround I got perhaps is installing some third-party application (like User Dictionary Plus by Alessandro Paolino).

This application essentially, lets you personalize your personal dictionary with words you usually use. It learns words you’ve used on Social Networks, Messaging Apps etc. to text files.

Some of its feature include:

> * Backup/Restore your Personal Dictionary (Premium Feature). Premium Version will allow you to get Premium features and to import more words than the Free version.

User Dictionary Plus also allows importing of words from Text File but this is a premium feature:

*Note from author: The App works correctly with keyboards that access to Android User Dictionary (for example: GBoard from Google).*

# Answer
> 0 votes
I updated Gboard to a test version and I noticed that there is now an import/export option when you press the three dots on the top right next to the plus button to add a word to the dictionary. This might have been there before as well. Unfortunately, you will have to import every language separately and the "all languages" separately as well.

The easiest way is to export from the app of your old device and then import the same zip file/s to your new device. However, if you want to go the hard way or if you don't have the old phone any more, you can also just see how the text file in the zip file is structured and use that structure, then zip the text file and you can import that as well.

# Answer
> 0 votes
### Step 1 - Pay attention to the format

Format your `personal-dictionary.txt` file following the provided sample/template. Copy and paste if you need to. The only thing(s) you are changing is adding one tab after each category, or 4 spaces. But don't mix tabs with spaces and vice versa.

The format is as follows:

`word_shortcut your_word`

Example of EXACTLY how the file format should look.

```
# Gboard Dictionary version:1
drug    Degarelix   en-US
ruski   Ruskinaya   en-US
den dendog1 en-US
motha    motha#@*$#    en-US
nigh    night   en-US
til tiller  en-US

```

Also, the file encoding MUST be ASCII text.

### Step 2 - Compress your document

**Do not use any other zip format other than the universal basic `.zip` format.**

Gboard will not recognize any other archive type e.g. .7zip, .tar.gz, etc. Also, Gboard will not recognize *any* type of file format.

So, put your newly created and made-up word list in a blank folder. The only file that should be in that folder is the .txt file. Compress the folder. Name the folder and the file whatever you like. You can even use one of those made-up words you made up.

Tips: Do not compress the .txt file first and then compress the folder on top of that. Either just compress the file (a folder gets created automatically)

### Step 3 - Import the file

Open Gboard \> Personal dictionary \> Import \> find your .zip file \> tap/click one time \> Gboard will do the rest.

---
Tags: gboard, dictionary
---


# Question
Title: Output audio with Bluetooth and speaker at same time
I want to watch a film with my friends on my Xiaomi/Redmi7/Android9. I have Bluetooth headset and he have normal Headphones (with cable).

How can I output the sound on BT and AUX at same time?

# Answer
> 0 votes
In most cases, smartphones does not support the audio output to Bluetooth and to speaker at the same time. But some models support output to more than 1 Bluetooth device.

check this lifewire tutorial https://www.lifewire.com/how-to-connect-multiple-bluetooth-speakers-4173788

---
Tags: audio, headphones, bluetooth-audio, headset
---


# Question
Title: Make a pop up message if about to call area codes excluding specified
So I wanted a pop up message/dialog box to appear whenever I dial/call number with prefixes excluded from my list.

To clarify, there are two codes. One is the country code and the other is the network code. For instance, country code is `+63` and network (company) code is `945`. Country code is only one. While network code reaches like a hundred. I want a pop up message to appear when the prefix is other than `+63945*`, `+63917*`, `+63906*`, and 20+ other numbers. In other words, there would be no pop up when the prefixes I set are being dialled/called while every other number would prompt a pop up message.

I used this macro but all the numbers I dial seem to activate the dialog box. The macro is working but there seems to be an error somewhere.

(Click to enlarge the images)

# Answer
> 0 votes
Here's a working macro with explanation in comments

(Click to enlarge)

**Note**

1. Log events write to the log which can be accessed from the home screen of the app and are useful to check errors.
2. Screenshot shows the local variable value, which is also useful in troubleshooting.
3. Your macro had matching condition `excludes` which is wrong, it needs to be `!=` (not equal to).
4. In the Text Manipulation action, the output should be saved to the variable A

Edit : The answer above is in response to the previous version of the question

---
Tags: macrodroid
---


# Question
Title: update Android 6.0 to Android 8.0 on my RCA Galileo Pro 2 in 1
1. I would like to update from Android 6.0 (Marshmallow) to Android 8.0 (Oreo) on my RCA Galileo Pro 2 in 1, this model is RCT6513W87 it has a 1.3 GHz quad-core processor+, with WiFi and Bluetooth.
2. I would like to upgrade the WiFi to dual band 2.4/5 GB 802.11ac.

I am told that a way to upgrade is to use a Custom Recovery app like ClockworkMod Recovery (CWM) or Team Win Recovery Project (TWRP) both of these requires you to make a connection with a computer, using a USB cable. My 2 in 1 only has one USB 2.0 port and one micro USB port for charging only. But I haven’t been successful with work with the root and app’s that give you root access.

# Answer
If your wifi chip doesn't already support dual band (2.4/5 Ghz), there is nothing you can do via software or firmware to change this - it's a function of physical hardware that was built in when the tablet was manufactured.

As far as an Android update - that is usually up to the manufacturer. There is a menu item in settings to check for system updates. Connect to the Internet and then select this menu item - if an update is available from RCA, then it will tell you and allow you to download and install the update.

The 2020 version of the Galileo Pro comes from the factory with Android 8.1 Go edition.
> 1 votes

---
Tags: unrooting
---


# Question
Title: How to add website as a website link with Brave/Chrome to the Android home screen?
On a Chrome or other Chromium browser (Brave, Kiwi..) on Android

When I click "add to home screen" from the Brave/Chrome menu, on some sites the icon that is added does not open website but instead opens a custom app created for the website (so called "PWA").

I want to create a simple website link that opens the website in a browser (so I can use search / see the url from the address bar and so on).

How can I do that with Brave or Chrome?

# Answer
> 2 votes
After tedious search I was finally able to do it.

Simply put - with Brave/Chrome it seems that it is not possible to add a non-PWA shortcut when PWA-version is defined at the web pages web manifest.

HOWEVER there are separate apps on the app store (I don't link to any specific one here but search for example "create shortcut launcher") that allow you to create "custom" shortcuts. With these apps you can create a simple URL shortcut and define which browser is used to open it.

This solves my problem and this question.

To get the corect icon you have to separately download and set the icon which is quite tedious so if anyone solves how to do this with chrome/chromium then please respond and I will change the accepted answer.

# Answer
> -1 votes
One thing you can do is set your homepage. Go to Settings on Chrome. Tap on Homepage. There will be two options, one is called Chrom'e Homepage and the other option is a text box for URLs. You can put HTML content in there for example the following line will create a page with Google as hyperlink. You can create a whole pretty dashboard using this method.

```
 data:text/html,<!DOCTYPE html><html><head><meta name="viewport" content="width=device-width, initial-scale=1"></head><body><a href='https://google.com'>Google</a></body></html>

```

The other option is to just bookmark the websites you visit. Then when you start searching in the address bar Chrome will show links from bookmarks. Doesn't always work though.

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


# Question
Title: What will happen when I uninstall system apps? (I need to free up space)
I need install a game update (1.9GB), but I have have 800 MB or so of internal storage left and I can't run the game on my sd card. I went through my apps and found that the largest one that I don't need was the "package installer" app, which is 800 MB. To my small knowledge, I need that app to install Apk's, but I can do it with other app installers. I haven't experimented with Android system files before, so I have no idea what will happen if uninstall Package Installer.

Edit: This now answered, thanks to advice. I'm just too stupid to find the check mark on my phone.

# Answer
> 0 votes
You should never touch to system apps but you can uninstall pre-installed apps like fb, google phots, MSO, ect, otherwise, why don't you buy a memory card and transfer unimportant apps to it.

---
Tags: internal-storage, storage
---


# Question
Title: Macrodroid: Convert "+63" area code to "0"
So there is already a working macro that does the following:

Whenever I dial/call a number with a prefix other than the ones I specified, a dialog box appears. I wanted to "filter" the numbers so I would be notified if I was to make a call to a number belonging to a different network/company.

To clarify, there are two codes in the prefix. One is the country code and the other is the network code. For instance, country code is +63 and network (company) code is 945. Furthermore, the country code +63 is interchangeable with 0 and both valid are when making a call. So a +63945xxx number is the same as 0945xxx.

My current issue is that 4-digit prefixes (the ones starting with 0 like 0945, 0917, etc) are already "filtered" by the existing macro. However, 6-digit prefixes (the ones starting with +63 like +63945,+63917 are not filtered), hence 0945 and +63945 which are virtually the same will get different responses (One will prompt a dialog box and the other will not). What I am looking for is a way to first convert +63 to 0 so that it becomes a 4-digit number which the macro can filter.

Here is a link to my previous question which can be used as reference.

Make a pop up message if about to call area codes excluding specified

Also attached is the macro that currently filters 4-digit prefixes but overlooks 6-digit ones.

Edit: 8/15/2020 14:10

I started a new macro from scratch just to be sure. But result in log seems to be the same. Examples of numbers called would be +639451234567 and 09451234567. All numbers dialled prompted a dialog box. Here are the screenshots:

(https://i.stack.imgur.com/wksR0.png) (https://i.stack.imgur.com/FJTtc.png) (https://i.stack.imgur.com/y9Jqi.png) (https://i.stack.imgur.com/qnwbm.png) (https://i.stack.imgur.com/JTS76.png) (https://i.stack.imgur.com/uBuJ8.png)

Edit: 22:30 Below macro given by beeshyams works well.

# Answer
* I am not sure what went wrong at your end, it could be wrong configuration, misuse of global variables or a silly mistake. In the absence of trouble shooting information, it's a guessing game.
* Your approach of changing 63 to 0 as in the title is totally unnecessary.

**Macro Logic**

1. Outgoing call number is assigned to local variable A as a string (don't use global variables unless you need)
2. The length of the string in variable A is assigned to variable strlen. We have two types of outgoing numbers, those starting with +63, which is 13 digits long and the other starting with 09 that is 11 digits.
3. We use IF-then-ELSE logic. If the string length is 13 (corresponding to numbers starting with +65):

a) We use text manipulation to find out the first six digits to find out whether they are allowed codes or not. In either case, they are assigned to variable A.

b) If the first 6 digits are allowed codes, no action is taken. If they aren't a warning dialogue is configured. This is done by the nested IF loop and can be extended to include more area codes.

4. Back to step 2,if it is not 13 digits, then actions in else loop will be carried out. We are looking at 11 digits corresponding to 09 starting numbers. But by saying not 13,we are also including other cases like police, fire etc., which have 3 digits and for which the warning will still pop up and the effort to exclude this 3 digit case is not worth it IMO.
5. For 9 digit numbers, the same set of actions at Para 3a) and b) are executed.
6. At the end both variables are initialized

Macro is slightly long owing to comments, so it's in two screenshots, the first one covering IF and next one ELSE

(Click to enlarge)

OP has confirmed it works as expected. To prevent MacroDroid being killed follow instructions at don't kill my app.com
> 1 votes

---
Tags: macrodroid
---


# Question
Title: How to reset static IP address back to DHCP for ethernet
I have setup a static ip address for `eth0` with adb command `ip addr add $ipAddress dev eth0` plus other commands to set the `netmask`, `route` and dns values.

My question is how to I go back to a non static IP address

I tried doing `ifconfig eth0 dhcp` but I get an error in adb saying

> ifconfig: bad argument 'dhcp'

Right now the only way I can reset everything is if I reboot the device since the changes dont persist.

How can I reset them without a reboot?

# Answer
Solution without root privileges:

* Disable WiFi
* Run:

```
 adb shell settings put global wifi_connected_mac_randomization_enabled 1

```
* Enable WiFi and connect to your network

You should have a new IP.
> 1 votes

---
Tags: adb, dhcp, ip-address
---


# Question
Title: Revoking Bluetooth permission from all apps?
I noticed that my phone silently enables bluetooth when screen turns off. When phones remains inactive for few minutes and I click unlock button I can see bluetooth indicator showing up for around 1-2 seconds, then it disappears and Bluetooth is disabled. I have suspicions that some app enables bluetooth programatically when screen is off.

Can I revoke bluetooth permissions from all apps? (eg. using `adb`) Or at least check recent bluetooth activity events?

# Answer
Run the following commands:

```
adb shell
for package in $(pm list packages -3 | cut -f2 -d":"); do pm revoke $package android.permission.BLUETOOTH; pm revoke $package android.permission.BLUETOOTH_ADMIN; done

```

That will list every installed third party application then revoke both permissions `android.permission.BLUETOOTH` and `android.permission.BLUETOOTH_ADMIN`.

If you need to apply this to all installed and enabled applications, use `-e` instead of `-3`.
> 2 votes

# Answer
You can go to **System settings****Apps**, then click on the **3-dots ⋮** icon at the right-top corner of the title bar. Then, click on **Reset app preferences**, then click on **OK**.
> 0 votes

---
Tags: adb, security, bluetooth, permissions, resource-monitoring
---


# Question
Title: Disable a specific WiFi network from automatically connecting to in Android
I have several WiFi networks setup on my android device. I want most of them to automatically connect, but one specifically I don't want to automatically connect to. I want to manually connect to it only.

I don't want to forget it because I don't want to lose the settings for it.

# Answer
> 11 votes
Android automatically connects to all WiFi networks it has configured. So basically, if you do not want that to happen, you could either turn WiFi off (which would also disable to connect to the other WiFi networks, which is not what you want) -- or delete the configuration for the network you don't want to connect to automatically (which would make you lose its settings, on the first glance).

The first option is not in your interest -- but the second can be helpful, even if you don't see this immediately. You could use an app like WiFi QR Share first to convert that networks settings into a QR code, then print out this generated QR code. Store it in a safe place (e.g. laminate it, cut it down to credit-card size, and put it in your briefcase). Now delete this WiFi networks configuration -- it will no longer auto-connect.

If you want to connect it manually, that does not mean to enter all the configuration again: Simply open your QR Code reader (Barcode Scanner should do fine), scan the QR, and connect. Don't forget to delete the configuration again afterwards.

Unfortunately, there's no way to mark a network "manual only", so this seems the easiest way to me.

# Answer
> 5 votes
If you are a programmer, check out this site: WifiManager Documentation - disableNetwork.

The disabled network is saved in your phone, but you have to manually choose it from your WiFi list to connect to it.

If you have already rooted your phone, find `wpa_supplicant.conf` in the folder `/data/misc/wifi`, find the network with the WiFi name, and add this code `disabled=1` in this particular network. I think this will solve your problem.

# Answer
> 2 votes
You can use the Locale app to disable your wifi whenever that SSID is in range. You will need the wifi plugin for this to work. Reenabling the wifi can be triggered by different events. I chose to use the Movement condition to determine when I am leaving. You could also use location or time events to turn on the wifi.

# Answer
> 2 votes
This seems to be built into Android 9.0+. Some manufacturers added it earlier.

On my Sony, the setting is in: System Settings -\> Network and Internet -\> WiFi -\> WiFi Preferences (at the bottom of the list of possible access points) -\> Advanced -\> Auto-Connect.

In there is a list of all your saved access points and a check box to mark whether each can auto connect.

Other manufacturers put the auto connect setting directly in the access point preferences (the same place you set password and IP settings).

Here's some screenshots from my Sony

# Answer
> 1 votes
If you have root access you can try to create a widget with Tasker that will manipulate the text file where the wifi passwords are stored. Then all you have to do is tap that widget (or run the task in tasker manually) and toggle to be (dis)connected to that network.

The approach: find out where your wifi password are saved on your device using a Root browser. Most of the times it's in /data/misc/wifi/wpa\_supplicant.conf. Make two copies of this file and name it with\_network.txt and without\_network.txt. In the without\_network.txt remove the SSID corresponding to your preferred network.

Now you can make a task in Tasker or any other automatisation app to rename the with\_network.txt to wpa\_supplicant.conf and when clicked/run again to reverse it back to with\_network.txt and rename without\_network.txt to wpa\_supplicant.conf on command.

# Answer
> 1 votes
This is not solution but workaround. Every network has a `priority` parameter. If I don't want to connect to this network I setup lowest possible priority for that network. Greater value is greater priority. This will be work when network that you wan't to connect automatically coexist in same place with other network that has greater priority.

# Answer
> 0 votes
Inside every saved Network there is option to connect automatically. Disable the option. Tested in commute networks I do not want to use wifi as it is slow

# Answer
> 0 votes
As of Android 10, this feature is not supported natively (on a Pixel 3). I filed the following issue

https://issuetracker.google.com/issues/160453528

# Answer
> 0 votes
This app "WiFi connection manager" can do it if you use it to manage your WiFi connections, you just tap the connection and then choose "Disable this connection", I'm positive other similar apps must be able to do it as well:

https://play.google.com/store/apps/details?id=com.roamingsoft.manager

---
Tags: wi-fi
---


# Question
Title: How do I clean up remembered files in builtin files app?
Default files app is showing many files (mostly photos) that don't exist anymore. How to clean it up?

All of these files existed under `/sdcard` and were cleaned via synchronization with my PC over ssh. I don't keep my old photos on my phone, and most of the rest was just junk.

(Yes the files really don't exist. If I tap them it just spins. It's like the files app can't handle the file not being there.)

I've operated this way for a long time, but it's glitched out now.

This is an rooted essential PH-1 phone; firmware is from this year. Note that rooted PH-1 phones run patched firmware.

# Answer
> 1 votes
* Delete cache of the file manager and photos app.
* Go to the app info section in your settings, enable "show system apps" on the hamburger menu, locate media storage, delete it's cache. Reboot, wait for a few minutes for the media databases to build up again and your problem most likely would be solved.
* This may not always solve the problem as explained very well in this answer by Irfan Latif and you may have to resort using apps such as AZ media rescan

---
Tags: sd-card, file-management, media-files
---


# Question
Title: Sahara fail while trying to flash a rom into my phone
I tried to flash a custom rom into my phone but it was an unsuccessful try and I decided to update the TWRP recovery in order to increase my chances to flash a rom. But istead of updating TWRP I bricked my phone somehow I even don't understand. The phone is **Lenovo ZUK Z2**. I tried to flash a stock rom via QFIL previously installing all drivers needed.

But when I actually press the download button it says:

```
Validating Application Configuration
Load APP Configuration
COM:20
SAHARA:True
SAHARA:C:\ZUI\prog_emmc_firehose_8996_ddr.elf
SEARCHPATH:C:\ZUI
RAWPROGRAM:
rawprogram0.xml
PATCH:
patch0.xml
ACKRAWDATAEVERYNUMPACKETS:False
ACKRAWDATAEVERYNUMPACKETS:100
MAXPAYLOADSIZETOTARGETINBYTES:False
MAXPAYLOADSIZETOTARGETINBYTES:49152
DEVICETYPE:eMMC
PLATFORM:8x26
VALIDATIONMODE:0
RESETAFTERDOWNLOAD:False
MAXDIGESTTABLESIZE:8192
SWITCHTOFIREHOSETIMEOUT:30
RESETTIMEOUT:200
RESETDELAYTIME:2
FLATBUILDPATH:C:\
FLATBUILDFORCEOVERRIDE:True
QCNPATH:C:\Temp\00000000.qcn
QCNAUTOBACKUPRESTORE:False
SPCCODE:000000
ENABLEMULTISIM:False
Load ARG Configuration
Validating Download Configuration
Image Search Path: C:\ZUI
RAWPROGRAM file path: C:\ZUI\rawprogram0.xml
PATCH file path:C:\ZUI\patch0.xml
Programmer Path:C:\ZUI\prog_emmc_firehose_8996_ddr.elf
Process Index:0
Start Download
Program Path:C:\ZUI\prog_emmc_firehose_8996_ddr.elf
Binary build date: May 13 2015 @ 14:41:37
QSAHARASERVER CALLED LIKE THIS: 'C:\Program Files (x86)\Qualcomm\QPST\bin\QSaharaServer.exe -p \\.\COM20 -s 13:C:\ZUI\prog_emmc_firehose_8996_ddr.elf 'Current working dir: C:\Users\vladi\AppData\Roaming\Qualcomm\QFIL
Sahara mappings:
2: amss.mbn
6: apps.mbn
8: dsp1.mbn
10: dbl.mbn
11: osbl.mbn
12: dsp2.mbn
16: efs1.mbn
17: efs2.mbn
20: efs3.mbn
21: sbl1.mbn
22: sbl2.mbn
23: rpm.mbn
25: tz.mbn
28: dsp3.mbn
29: acdb.mbn
30: wdt.mbn
31: mba.mbn
13: C:\ZUI\prog_emmc_firehose_8996_ddr.elf
17:01:24: ERROR: function: sahara_rx_data:194 Unable to read packet header. Only read 0 bytes.
17:01:24: ERROR: function: sahara_main:854 Sahara protocol error
17:01:24: ERROR: function: main:265 Uploading  Image using Sahara protocol failed
Download Fail:Sahara Fail:QSaharaServer Fail:Process fail
Finish Download

```

Screenshot of QFIL

The phone is in fastboot mode all the time. I tried to follow a dozen of howtos but no of them helped. I also used MiFlash, here are the error and the phone state:

Fastboot

MiFlash screenshot

# Answer
See here how I solved this problem. Somehow Windows is blocking the flashing of the device, that's why the sahara error occurs.

https://superuser.com/questions/1538067/cannot-flash-qualcomm-with-stock-image-lenovo-tab-m10-tb-x605l-lte-android-8-o

Sorry for posting it as an answer, I don't have enough reputation yet to comment on questions. But, in fact, it's a working solution for the problem exactly as described, which - I hope - is anyway enough to qualify as an answer.
> 4 votes

# Answer
Error:-

Sahara server is failing : sahara protocal failed.

Ans:-

I have adjusted the cable connection and it work perfectly. ADB Cable was not connected properly.

another fix just go to fastboot hold power button as soon as mobile switches off , hold vol up and down button to go to download state . Now fastly press download button in QFIL tool it will start programming and download successfully . worked for me
> 0 votes

---
Tags: rom-flashing, rom
---


# Question
Title: Nexus 5 signal drops immediately when making call
My Nexus 5 running on Marshmallow and it has Last ota security update provided by Google at the time of end of support.

I’ve a perfectly working SIM card. Using this sim card to make calls from nexus 5, but before the call gets placed the mobile signal drops to zero.

When the call is disconnected the signal resumes back to normal.

I tried soft reset, hard reset and airplane mode on/off. But nothing works.

Any help would be appreciated.

# Answer
> 1 votes
Recently I have installed `Lineage OS Android 8.1.0 (Oreo)` custom ROM in Nexus 5.

It has resolved the issue and I'm able to make calls successfully now.

I believe there should be some issue in `Android Connectivity Services` application and it might have got resolved by the OS upgrade.

---
Tags: 6.0-marshmallow, calls, nexus-5, network-signal, nexus
---


# Question
Title: Do "unlocked" phones come pre-unlocked or just the ability to be unlocked?
When you buy an unlocked (carrier-free) device, do the phones usually come unlocked already, or just with the ability to be unlocked easily? e.g. would the fastboot unlocked status be locked when it arrived? I believe this is referring to the bootloader lock and not the sim/carrier lock if those are different.

# Answer
**They aren't related at all**

Unlocked phones refer to phones that aren't bound to any carrier.

It looks like you are mixing this up with , whose tag wiki says

> Some bootloaders are locked by the manufactures to prevent the phones from booting unofficial firmware images.

(Read the wiki and linked questions for more information)

These two are totally independent and as a security measure practically all mobile devices are shipped with boot loader locked while they may be carrier locked /carrier unlocked. For instance, in India we don't have the concept of carrier locking (barring a negligible few cases) and therefore all phones are carrier unlocked, while they are boot loader locked. How easy or difficult is it to unlock boot loader depends on the measures taken by the OEM and again has nothing to with carrier lock/unlock (carriers often make it more complicated)
> 4 votes

---
Tags: bootloader-lock, factory-image
---


title: How to root Tecno Camon 12 air?

text:
# Question
Title: How to root Tecno Camon 12 air?
I want to root my Tecno Camon 12 Air but nothing works. I got samsung devices rooted within a blink but this one just does not. I have:

* Allow OEM bootloader to be unlocked checked
* Tried different PC softwares like KingoRoot iRoot etc.
* Tried almost all of the apps which said they could root

I have searched everywhere and tried almost everything but could not have the job done. Every time some adb command is rejected by an indefinite printed on the command-line or it just reboots to get back normal. No change. Nor the fastboot commandos work as in fastboot it gets hang on the same thing. Which is a crucial step in ROM patching or bootloader unlocking.

Its running Android 9 Pie and the processor is MTK Helio P22 if that helps.

# Answer
So I was able to root Tecno Camon 12 Air. Turned out the biggest hurdle was to unlock bootloader which can be unlocked as follows:

## Unlocking Bootloader

Use this command: `fastboot getvar unlocked` to check the phone’s Bootloader status (whether it’s locked or unlocked). If the Bootloader is already unlocked then you should see “Unlocked”

If locked you need to run the following command:

```
fastboot flashing unlock

```

And then reboot:

```
fastboot reboot

```

Alternative commands are `fastboot oem unlock` and `fastboot oem unlock-go`
> 2 votes

---
Tags: rooting, root-access
---


# Question
Title: com.whatsapp_preferences.xml periodically gets overwritten how to prevent that from happening
on a `magisk rooted Android` 10 device `com.whatsapp_preferences.xml`

( `/data/data/com.whatsapp` ? ... can't remember that `path` now ) has been updated with non default parameters as I needed but it periodically gets overwritten *how to prevent that from happening.*

**what I did so far**

even if `reMount` the `partition` as read write ( for my convenience I do it using `total commander` with `root` though I haven't tried I would assume it would end up the same way if I did it on `command` line ) it will not let me overwrite the original file with my modifications & but if I delete the original and `copy` the modified file that is allowed. funny...why ? I did this and then `chown` ( to `root` ) & `chmod` ed it to 444 then force stopped the app cleared `cache` .new settings were working until next day I landed up with the same old file that it overwrote

**question**

now I am aware that for `WhatsApp` or any app to be able to write it should be the owner or maybe the owner should be `everyone` .. that is the case here as well but the issue is *how can I selectively prevent it from overwriting just one file* \- implement this at file level ? alternatively how do I conceive a method that periodically overwrites the the original file with the one I have... after detecting that it has changed.

btw : my `APK` and `data` is linked to to second `partition` which is `ext4` via `apps2SD`

# Answer
> 2 votes
Changing the permissions of the file can solve the problem.

Get the WhatsApp system group, you can use:

```
ls -la /data/data/com.whatsapp

```

Let's suppose that the WhatsApp system group is **u0\_a301**.

Change the owner of the file to root and the group to WhatsApp group:

```
chown root:u0_a301 /data/data/com.whatsapp/shared_prefs/com.whatsapp_preferences.xml

```

Then remove the write permission to the group:

```
chmod 640 /data/data/com.whatsapp/shared_prefs/com.whatsapp_preferences.xml

```

That will prevent WhatsApp from writing the file and it can read it.

---
Tags: security, permissions, app2sd, customization, systemless-root
---


title: Enable Magisk Hide on Magisk 20.4

text:
# Question
Title: Enable Magisk Hide on Magisk 20.4
Magisk 20.4 release notes say

> Please be aware that MagiskHide is no longer enabled by **default**

(Emphasis supplied)

*Default* probably means there is a workaround to enable it but I couldn't find a way to do it or find anything on searching

Edit:Enabling Magisk Hide in Menu does not reveal the settings option to select apps for applying hide

How do I do that ? (Please don't suggest installing earlier versions, which I may well do, if I don't find a way )

# Answer
You can find the option to enable "Magisk Hide" in the settings of Magisk app:

Afterwards the side menu has a new entry:
> 1 votes

---
Tags: magisk
---


# Question
Title: How to disable "Mini Call View" feature in Google's latest Phone app?
The latest version of Google's Phone (v 23) app has a feature called "Mini Call View" in which when you answer a call it won't open the phone dialer. Instead, there is a notification in the notification bar and if you expand the notification bar you will see an on-going call and a button to hang up and another button to start speaker phone.

I don't like this feature and I want to disable it. I want the full phone dialer to open up when answering a call.

Does anyone know how to disable Mini Call View in Google's Phone app? Or at the very least does anyone know how to open the phone dial pad by default when answering a call?

# Answer
> 0 votes
It looks like this mini call view primarily happens when you have Do Not Disturb enabled. If you disable, the regular Phone app view should appear when you answer a call. Same with if you add an exception to your Do Not Disturb list and that person calls.

I was able to fix my issue by adding the particular contact to my Do Not Disturb exception list.

---
Tags: calls, google-apps, phone-app
---


# Question
Title: Why do cell phones don't really turn off (unless battery removed)?
I've known this for a long time. A quick google confirms that many people think the same.

Basically, that when shutting down a cell phone, the antenna still communicates with the tower. Triangulation will still work, as well as some other stuff.

Only when the battery removed, is a cell phone "really" shut down.

Not that I care but it's interesting to know why!
If possible, please provide primary sources - it's time to shut all the myths around this down!

Update, the following question has been suggested: What is the fastest way to shutdown unrooted Android phone? Obviously, this is semantically NOT equal. The answer there, despite being a very detailed answer, does not provide the reason WHY the baseband processor remains ON.

For a technological feature to exist on perhaps Billions of devices, there must be a need for that... Especially since it drains battery and costs cellular tower bandwidth.

# Answer
> 1 votes
A telephone that is not in contact with the local cell phone tower cannot detect an incoming call. When someone places a call to your phone, you probably want to get notified that your phone is ringing, even if you have hit the power button. The power button turns off the display, but doesn't actually shut down the phone.

Being in communication with the tower uses some battery power. It's quite low, but it isn't zero.

## This is true for a smart phone, and also for a dumb phone. A cell phone of 20 years ago also used battery to maintain contact with the tower.

Addendum: When I tap the OFF button on my phone, it goes into Standby mode. The screen goes dark, and I have to enter a password before using it again, mostly. But it still can accept incoming calls, and it alerts me when one comes in. When I go through the POWER OFF procedure, and somebody calls my number, they receive a notice from the phone company that my phone cannot be located. I do not know whether baseband operations are still drawing current.

---
Tags: cellular-radio
---


# Question
Title: How to get "Say Ok!Google" text on google search widget
I have a samsung galaxy A5 running android 4.4.4. I've seen many kitkat devices having the text "say ok google" on the google search widget in the home screen. How can I get that? It gives the look of a flagship and is awesome.

# Answer
> 1 votes
I figured out a way. I uninstalled the updates of the google app in my device and re-installed the latest version from the play stoore. Then the text appeared. Once I activate ok google detection form "any screen" the text disappears.

# Answer
> 0 votes
If I remember correctly it requires Samsung to enable something. You could try going into the Google app and have a poke around (`settings` -\> `voice` -\> `OK Google detection`) and see if there's an option there. If not install the Google Now Launcher which does the OK Google from home screen.

Click image for larger version

# Answer
> 0 votes
Text in my widget comes and goes. When it is gone I do this to bring it back: I go into settings and reduce text size. I do not know why it works. I then restore size, and the text remains visible for several days.

---
Tags: google, app-widgets, ok-google
---


title: Why aren't my songs dowloading?

text:
# Question
Title: Why aren't my songs dowloading?
I use an Android phone, and I usually download songs by converting them from YouTube to mp3 through websites. This time, when I hit the download button, the downloading didn't start. It said "download paused", and when I hit resume, it disappeared. How can I fix it?

This is what it looks like:

# Answer
Try using a different internet browser like Google Chrome or Mozilla Firefox, but I must remember you that this kind of YouTube video downloading method isn't legal and you shouldn't use it, you may be downloading viruses and other harmful components in your device.

If it didn't solve your problem, then leave a comment in my answer and I'll find a way to help you better.
> 1 votes

# Answer
After few days reseach, finally I found an app can download Youtube videos (up to 1080p), download mp3 from Youtube ( up to 180 kbps). It's named HBTube. You can download full version at HBTube Online

***Youtube while lock screen***

***Download Youtube videos all format***

Good luck!
> 0 votes

---
Tags: downloading, youtube, mp3
---


# Question
Title: "You have lost data connectivity because you left your home network with data roaming turned off" notification appears
My phone is a Huawei Ascend Mate7. I get the following notification whenever I turn on my 4G connection:

> **Data lost**
>
> You have lost data connectivity because you left your home network with data roaming turned off

The problem is my SIM card is from the same country I live in now. This problem somehow remained since I moved from my old SIM card, and now I can't seem to get rid of it. I also see an "R" next to the connection indicator.

How to solve this?

# Answer
I solved this by going into Settings, SIM and network, and selecting SIM 1 (the phone carrier SIM in my case Giffgaff). This showed me another setting for mobile data which was switched off. Once I switched it on, it found a nearby 4G source.
> 0 votes

# Answer
Go into Settings, SIM and network, and selecting SIM 1 or SIM 2 according to the slot used by the problematic SIM.

This shows another page for mobile data or "roaming". Roaming is for sure switched off, which is the problem here. Turn roaming on. Now, the phone will remain silent and quiet.
> 0 votes

---
Tags: connection-issues, huawei, 4g, roaming
---


# Question
Title: ad blocker w/ vpn, or vpn with ad blocker?
Simply, (S10e no root) does a ad blockers vpn do the same as a vpn app like cyberghost? Installed adlock then wondered if there VPN being focused on blocking ads would lack in hiding traffic etc. Would it be better to get a vpn with ad blocker. I apologize if this question is simple but could not find a streight answer. Privacy would be the main thing I would like to accomplish but ad lock worked very well would I be OK keeping ad lock in the privacy dept.

# Answer
> 3 votes
Most VPN based ad blocker Blokada don't work like traditional VPN systems, instead the VPN server is located on the same Android device. Outside of your device the traffic is just normal Internet traffic exactly as it would be without VPN based ad blocker. The VPN based ad blocker uses the VPN system only for redirecting the traffic into the app for being able to filter the traffic. On unrooted devices the VPN system is the only way to get access to the traffic of other apps, therefore the Android VPN-client is used.

On regular VPN systems the VPN server (endpoint) is located on a server somewhere on the Internet. If the VPN is active all traffic that leaves your device is encapsulated (protected + encrypted) in a VPN data connection that is sent to the VPN server and there the data is unpacked and sent to the original server. Therefore the traffic that leaves your device is totally different and because of the additional server in-between the latency can increase depending on where the VPN server is located.

Of course it is possible to add ad blocking features to a traditional VPN.

---
Tags: vpn
---


# Question
Title: How to download video from Youtube, FramaTube, Media CCC or mp3 from SoundCloud?
I'm using Mi 5, I want to **download hot trend videos from Youtube, FramaTube** or video conferences from Mediaccc and then make the tiktok video for fun. How to reach this? Also, sometimes I want to **listen Youtube music or offline video while screen off**. I found some answers but it is not working. Anyone can suggest me?

# Answer
> 1 votes
Try this HBTube. It allows to play Youtube background, download video, audio from multi platforms. No Ads when watching videos. You can visit HBTube Online to see more detail.

Good luck!

---
Tags: lock-screens, youtube, background-process, video-streaming, video-conference
---


title: How do I update the lock screen clock?

text:
# Question
Title: How do I update the lock screen clock?
My Samsung Galaxy tab A6 shows the correct time on the home screen. However when it's locked it shows the time one hour ahead. So 10:30 instead of 9:30 for example.

How do I get the lock screen clock to show the same time as the home screen clock?

# Answer
> 0 votes
As it turns out - the timezone was set to GMT+2 when it should have been GMT+1.

---
Tags: samsung, clock
---


# Question
Title: how to identify on command line terminal emulator apps and packages that have active network connections
I tried this using an app and I am able to identify most apps and their `network connections` however there are certain apps listed as `'?'` so apparently it is not able to identify a `package` name I would like to know how I can get this information on `command line` using `termux` or any other `emulator`. I am `magisk`aly `root`ed on an `Android 10`  phone

also would like to get a list of apps that can modify contacts and then revoke modification of contacts from certain apps by command line
and on `command line` how do I force `kill` an `app` I mean I can use the `hang -9 Signal` ....but I am sure there must be a more gentle `package-`level way of force stopping an app title the equivalent of getting inside the app property on `gui` and clicking that `force stop` button
also delete the `cache` on `command line`

what I want to do is write a \`batch\` script that will overwrite certain app specific files that the app keeps resetting every time and then force stop and clear \`cache\` and restart the app

# Answer
> 2 votes
* If you mean by `network connection` the applications that has "android.permission.INTERNET" permission, then run this shell script:

```
for package in $(pm list packages -3 | cut -f2 -d":"); do
dumpsys package $package | grep "android.permission.INTERNET: granted=true" > /dev/null && echo $package
done;

```
* If you want to list all applications that are connected to internet:

```
netstat -tuplna

```

That will list all application that has an established connection

* If you want for each App an their mobile data usage:

```
for package in $(pm list packages | cut -f2 -d":"); do echo $package; pm dump $package | grep  "Mobile network"; done;

```
* To kill an App:

```
am force-stop PACKAGE_NAME

```
* Clear cache:

```
pm clear PACKAGE_NAME

```

---
Tags: root-access, malware, magisk, firewall, termux
---


# Question
Title: How to watch Youtube with screen off on any Android without a Youtube Premium subscription
How can I listen to Youtube with my screen off without a Youtube Premium subscription

# Answer
> 1 votes
A simple method is to use Firefox for Android.
Once installed, install the extension Video Background Play Fix

Go on youtube.com and enjoy your best video/podcast/music screen off.

You also can add ublock Origin to Firefox to block any advertisement as well.

# Answer
> 2 votes
There is a solution, if you want to listen YouTube song even when your android phone is locked. To do that you have to use chrome browser in android phone. Open YouTube in chrome browser and request as Desktop Site and search for the song which you want to listen then minimise it. The song will be paused then, from the notification you can tap on the play(▶). By doing this you will be able to listen YouTube videos in your phone even if it is locked. I hope this will help you.

# Answer
> 2 votes
You can download: YouTube Vanced. I am using this app myself and it works like a charm. You can also turn off the screen and still hear the music playing.

# Answer
> 0 votes
OGYoutube can play with screen off.

But oddly it cannot play while minimized, which means you can only listen when not using the phone with other apps.

# Answer
> 0 votes
I think HBTube is the best answer for your case at the moment. You can see my question here.

After few days used it, I want to share it to everyone. It allow to **download video from multi-channel like Youtube, FramaTube, Media CCC or audio from SoundCloud**.

You can do other tasks while watching videos on Youtube, learning on Media CCC or join conferences on Media CCC. Even it allows **play music with screen off**.

I hope this will solve your issue.

Best regards, Lee

---
Tags: youtube
---


# Question
Title: Save file as PDF using Microsoft Word's app
I have a .docx file that would like to save as .pdf.

If I click in the three dots in the upper right

And clicking the Save As doesn't allow to change from .docx to .pdf

The way I managed to do up to this was to click Share As PDF and send to my email. Then, from there, download it. But surely there must have an easier option. Also this method didn't work all the time.

# Answer
> 4 votes
Instead of clicking Save As, click Print. Then, in the top there's a dropdown from where it's possible to select Save As PDF.

Then click in the yellow circle with the download icon and the text PDF and select where you want the file to be saved. That's it.

---
Tags: pdf, microsoft-word
---


# Question
Title: Android 9 Pie where are SMS stored please? What is the path to the SMS database?
Android 9 where are SMS stored please? What is the path?

# Answer
As mentioned by @alecxs, the sms are stored in the database: " /data/user\_de/0/com.android.providers.telephony/databases/mmssms.db" which need root privileges to access it or edit it.

If you don't have root access, you can interact with the table `sms` in this database using ADB:

**list all SMS**

```
adb shell content query --uri content://sms

```

**list SMS from +2121212121**

```
adb shell content query --uri content://sms --projection address:date:date_sent:body --where 'address=+2121212121'

```
> 2 votes

---
Tags: sms, 9.0-pie
---


title: Whatsapp backup for new and old chats

text:
# Question
Title: Whatsapp backup for new and old chats
I recently accidentally deleted a chat in Whatsapp for Android 7.0 "Nougat". I know if you uninstall and reinstall the app, you can download the backup containing these old messages. Now my problem is, this certain contact messaged me again after deleting the chat, so if I use the uninstall method, I lose all the chats from after the deleted ones. If I say "backup now" as to keep the new messages, it will delete the old backed up messages and only keep the new ones. Is there any way I can have my bread buttered on both sides and get my old messages back while still keeping the new ones? Thanks in advance.

# Answer
If these messages are important, you can root your phone in order to restore them.

There are many methods to root Android 7 to use at your own risk.

WhatsApp make a backup of the messages database each day at 2:00 AM, these databases are stored encrypted in `/sdcard/WhatsApp/Databases/`. The key used to encrypt the backup is stored in `/data/data/com.whatsapp/files/key` which can be accessed only if you have root privileges.

To restore your previous messages:

* root your phone
* enable USB debugging
* dump the encrypted databases

```
adb shell pull /sdcard/WhatsApp/Databases/

```
* dump the key

```
adb shell pull /data/data/com.whatsapp/files/key

```
> 1 votes

---
Tags: backup, whatsapp-messenger, data-recovery, 7.0-nougat
---


# Question
Title: Which files does `adb backup -apk -shared -all -f <filename> back up?
I wanted to back up everything on my phone: call logs, messages, whatsapp texts, photos, videos, screenshots, screen video captures, recordings, app data... and everything else, before selling my phone. So, basically, data-wise, I wan't to create a clone of the (entire) current state of my phone. I don't necessarily wan't to restore all of it on my new phone, but I want to be able to access the stuff that I backed-up on my computer later, when needed...I saw a few answers on this site, but they don't answer my questions fully.

1. Is the command line `adb backup -apk -shared -all -f <filename>` well-suited to my purpose?
2. My phone has `32G` capacity, but the backup file generated is only `5.3G`. How do I know that the backup completed properly and contains all the data I wanted?
3. Are there ways to do the backup over a network (`WAN`) using `ADB`, instead of having to depend on the USB debugging mode.

# Answer
**Answers:**

1. No, `adb backup` will only backup the applications that has Backup option enabled.
2. It depends on which data
3. Yes, you use can connect to ADB over TCP (https://stackoverflow.com/questions/2604727/how-can-i-connect-to-android-with-adb-over-tcp).

**Details**

* List applications that probably can be backed up:

```
adb shell
for package in $(pm list packages -3 | cut -f2 -d":"); do
dumpsys package $package | grep "ALLOW_BACKUP" > /dev/null  && echo $package;
done

```

Probably: WhatsApp has ALLOW\_BACKUP flag but cannot be backed up with ADB.

* Verify the backup:

To verify the application has been backed up successfully, you can use the Android backup extractor tool.

* Storage backup:

```
adb pull /storage

```
* Backup SMS:

```
adb pull content query --uri content://sms

```
* Backup contacts:

```
adb shell content query --uri content://com.android.contacts/data

```
> 2 votes

---
Tags: adb, backup
---


title: Information about transactional SMS

text:
# Question
Title: Information about transactional SMS
\*this is not a coding query, rather a how stuff works question *

I am working on a project for which I will 'receive' a huge number(say 1000/day or more) of transactional SMS (transactional SMS means those that have OTP etc, ones that are sent because I asked for it, unlike promotional SMS which comes unasked!). I want to receive them on my android mobile itself. Please answer these if you know:

1.If I keep deleting the SMSes and never let the memory get full, then, can I receive any number of those SMSes per day? By the way, what is the max number of messages that can be stored at once in a mobile inbox?

2.what if the queue has become of say 1000 pending SMS, what will happen, will senders server get terminate the queue/get hanged or send them one by one? I read such queued SMSes will be sent in bunches, like 10 at a time, then an interval, then next 10 and a longer interval and so on; if so, how long is that interval then?

3.Lastly, what about the transactional messages that are failed to be received? Will the sms server resend it at some later time? Or it's gone!

Answer as much as you can, these are very bad ques I know! Thanks for your time! :)

# Answer
> 2 votes
I mentioned by @Άνδρας the questions 2 and 3 are not related to Android.

For the first question, I suggest two methods:

* Android App:

you can use an Android App that use Alarm Manager which will be executed once a day or every hour to clean up the SMS database using Content Provider.

* ADB solutions:

```
content delete --uri content://sms --where "date>EPOCH_TIME"

```

where: EPOCH\_TIME is 13 digit epoch time (milliseconds)

The command will delete all messages received after EPOCH\_TIME

---
Tags: sms
---


# Question
Title: How can I re-flash stock firmware for my Nokia 6.1?
I've developed an issue since the last Android 10 OS update where the phone doesn't charge unless it's in 'USB Controlled by device' mode, which it usually fails to switch to. I'd like to try flashing stock firmware to it, as resetting to factory default didn't fix the issue.

I've tried downloading a stock firmware file and using the recovery mode option to install from SD card, but alas the timestamp on the file was older than the current OS, and so it refused to downgrade.

Since I'm a complete newbie to the android hacking world, I'm looking for an easy to understand solution to install a fresh stock firmware / ROM (not sure what the nomenclature difference is) or failing that, backing up the existing firmware and re-installing that. Naturally, the phone isn't rooted nor is the bootloader unlocked etc, nor do I currently know how to do those things.

Any assistance would be much appreciated.

# Answer
> 1 votes
**Warning:** Before flashing, always make sure that you have the correct tools, ROMs, etc. because you can brick your phone if things don't go as expected.

I found at least 2 threads from xda-developers. Before you start, your bootloader must be unlocked.

From the first thread:

> 1. Install the OST tool.
> 2. Replace the EXE file in the program files with the patch file you downloaded.
> 3. Delete the Onlineupdatetoolexe.config file. If you don't do this, the program will not start correctly.
> 4. Put phone into download mode ( either by powering it off, pluging into USB cable and immediately hold power and volume down. Or if you can boot into android with ADB debugging, just do a adb reboot bootloader.
> 5. Pick firmware file and click next.

From the second thread:

> 1. Download Nokia-SDM660-Tool.zip & Copy Nokia-Tool.exe
> 2. Download latest HOME BREW Stock Rom And extract in one Folder and name it as STOCK ROM
> 3. Now add Nokia-Tool.exe in to that respective STOCK ROM Folder
> 4. Now connect phone to pc
> 5. Go to download mode
> 6. Now Open Nokia-Tool.exe
> 7. Now select Button according to your Phone code
> 8. Example Iam Using Nokia 6.1 Plus & My phone code DRG & so i will choose \[ DRG B2N CTL PL2 \] same option for 6.1 , 7.1 & 7+ but for 7.2 & 6.2 users choose \[DDV SLD\]
> 9. i will click on \[ DRG B2N CTL PL2} According to my phone as i explained in point no.8
> 10. wait for 10 min Tool will flash the rom & your phone reboots to system.
> 11. So finally this is what the exact standard method to flash stock rom on Your devices

**Important:** Read the linked threads (and others). If there are steps that you don't understand, ask the authors questions so they can guide you throough the process.

Nokia 6.1 (2018) ROMs, Kernels, Recoveries, & Other Development

---
Tags: rom-flashing, recovery-mode, charging, installation, device-firmware
---


title: Can I make Home folders close on click?

text:
# Question
Title: Can I make Home folders close on click?
So, say I have a folder on my home screen. In it I have a bunch of shortcuts. If I click one of those shortcuts it runs the program. Now when I come back to the home screen the folder is still sitting there open. Most of the time I want to go to something else on the home screen when coming back to it, not something in that folder. To that end is it possible to make it so that upon clicking a shortcut in a folder, after launching the app (or before, doesn't really matter) it would also close the folder, so that when I come back to the home screen I am actually AT the home screen without needing to manually close the folder?

Running rooted, but otherwise stock Galaxy S Captivate.

# Answer
> 8 votes
I haven't tried it myself, but from what I am reading in forums, etc, Apps Organizer is a free app that does what you are looking for. When you select an app in a folder, it closes the folder.

EDIT: update - I just tried out Apps Organizer. It does close the folder when you select something. The only problem is that it appears to only allow app shortcuts - not bookmarks, widgets, etc. There appear to be other apps (Folder Organizer) that are able to hold bookmarks, however.

# Answer
> 0 votes
Here is a simple Automate flow i wrote that closes folders when you go to the home screen (not when you open an app, but it still works within a few milliseconds)

(Get "Automate" from the Google Play Store first) https://llamalab.com/automate/community/flows/36343

---
Tags: samsung-galaxy-s, home-screen-folders
---


# Question
Title: Google Weather's notifications show weather in F°
I'm using a Samsung Galaxy A30s. The following is what I see in my notification panel - 70° in Peniche, Portugal

Clicking in it, I'll get the following screen which has the number for the weather correct

Clicking in the three dots, I can see that the weather is selected to show in Celcius

How can this be fixed?

# Answer
I've gone to Settings, searched for the term "Weather" and got the following

Clicking in it could see that it was defined here as Fahrenheit. Changing it to Celsius solved the problem

See it working
> 0 votes

---
Tags: notifications, google, weather
---


# Question
Title: How to restore a particular app's data from Google Drive backup?
I have hard reset my android phone and I have restored it from a backup in Google drive which was taken 2 days ago. Some of the apps are installed.

There are however some system apps whose data is not restored.

I can see from the Backup that there was about 750KB of data for system app which can be restored. But it is not restored.

The app has no option to restore data from Google drive backup also.

I have also tried Google Takeout (for Google Drive) bit it did not give me the Android backup data.

**Question**

How to restore a particular app's data from Google drive?

Also, is it possible to download the Google drive backup data on PC or to some storage and try to extract it?

Can I restore it on any emulator like Genymotion to get the data?

# Answer
The applications that was not restored does not allow backup (`android:allowBackup="false"`). Which mean that your backup will not contain these applications even after restoring in another device.

You can check that by following these steps:

* Install one of the concerned Apps in your new device
* Enable USB Debugging
* Run this command (using ADB):

```
adb shell dumpsys package concerend.app.package | grep flags

```

Where `concerend.app.package` is the package name of the installed App.

If ALLOW\_BACKUP exist in the command's result then probably the application can be backed up. Else, the application cannot be backed up and it will explain why it was not restored.
> 1 votes

---
Tags: restore, google-drive, realme
---


# Question
Title: USB-C port not working as a host to use with USB OTG or HDMI adapter
I have a Samsung Galaxy A9 which I'm trying to connect to an external HDMI display by the means of a commonly-found USB-C to HDMI adapter like this one. Connecting the USB-C input "lights up" the adapter, and Android shows the adapter as charging, but it does not work with multiple HDMI cables and monitors.

After searching everywhere with no avail, I noticed that the notification area shows that adapter - briefly - connects and disconnects multiple times before it disconnects permanently (while still showing that the adapter is being charged).

Some screenshots:

Here the USB connector is shown connected (it disconnects soon afterwards, but I couldn't get a good shot of it) and charging.

Now the device has "disconnected" (I presume?) yet still charging.

I also tried forcing the phone to act as a host of the connection in the settings, but that also fails.

How can I enable USB OTG in my device (if it's not already enabled)? I take that the device should be able to do this screen sharing since it was produced in 2018, and I've seen older devices in videos performing it just as well. What can I do to fix this USB error and enable other things (such as a USB hub or a keyboard) to be used together with the phone?

Similar questions to this one are very old and not quite close, so that's why I'm asking again.

Many thanks, feedback is appreciated.

# Answer
It turns out that my device is **not** HDMI-compatible and will not transmit over that adapter (or any other, apparently).

Props to Robert for finding a (generic?) listing over here:

https://en.everybodywiki.com/List\_of\_devices\_with\_video\_output\_over\_USB-C

(In case anybody else is googling this and can't find a solution, I highly recommend checking your device against the list above.)

Whereas at first I was a little skeptic of this insight, buying a USB-C to USB-A adapter and testing out with other devices like a USB mouse or keyboard confirmed that the port itself has no issue - it's the HDMI output that has a problem.

I'll look into alternatives on how to cast my screen in another way.
> 3 votes

---
Tags: usb, external-keyboard, hdmi, external-display
---


# Question
Title: How can I rephrase: adb shell "pm block com.sec.knox.bridge" to work in an Android 10 phone?
Hope I am asking the right kind of question. I recently gained from my father a brand new phone his company gave him shortly before his retirement. They gave it to him knowing he was leaving and were trying to be nice. However the phone was still attached to the security settings of the company, including being tied to a Intune Company Portal app, I believe via Knox. Long story short I managed to uninstall that app after eventually being able to revoke its admin app permissions (previously it kept reinstalling itself). I am now trying to put the final nail in the coffin to make sure it can't come back to haunt me.

I have managed to connect my s10 to ADB on my computer and a site I found that helped me with some of the above gave a list of commands to remove Knox. They all follow the format in the title, which to repeat here is

`adb shell "pm block com.sec.knox.bridge"`

however the return is `Unknown command: block`

I imagine this was a fix for a previous version using old nomenclature. So my question is how do I correct the above syntax for that statement to do its job?

Cheers, Shane

# Answer
As mentioned by @Firelord, use `pm disable --user 0` instead of `pm block`. `pm block` is deprecated (not exist of new versions of `pm`). if you have an error with `disable` then the application still device admin or the package name is not `com.sec.knox.bridge`.

**Check if the App is device admin**

```
adb shell dumpsys device_policy | grep knox

```

If the command output a result, then the application still device admin.

To be sure that the package name is `com.sec.knox.bridge`:

```
adb shell pm list packages | grep knox

```
> 1 votes

---
Tags: adb, samsung, samsung-knox
---


# Question
Title: Andiodine DNS Tunneling - Connects to server but unable to browse. No internet connectivity
I have an **Iodine** (DNS Tunneling) server running on my VPS and have tested and confirmed DNS Tunneling is working by connecting using the Iodine client from my local Linux machine.

When using the **Andiodine** app (https://f-droid.org/packages/org.xapek.andiodine/) on Android however, it connects but i have no internet connectivity.

I've done extensive searching and am unable to work out what the issue is.
My Android device is a Nexus 5 running Android version 6.0.1.
Has anyone else experienced this issue? Any remediations or other things to try?

# Answer
> 0 votes
Without other steps this is expected. AFAIK your iodine setup only enables the client to send packets to the server, not to any other IP. Internet browsing would require some configuration on your VPS.

---
Tags: dns, nexus
---


title: What is com.mgoogle.android.gms?

text:
# Question
Title: What is com.mgoogle.android.gms?
While checking the installed packages in my device through `adb`. I found two packages, `com.google.android.gms` and `com.mgoogle.android.gms`. I know the former is related to Google Play Serivces.

**What is `com.mgoogle.android.gms` and its significance?**

Should I remove it?

# Answer
Based on quick research of the package name `com.mgoogle.android.gms`, looks like it is **a MicroG package used by YouTube Vanced**.

The installation of this package is suggested by the official YouTube Vanced for non-root users if they want to add and login with a Google account.

> # Download & Install MicroG!
>
> Download and install MicroG for YouTube Vanced in order to be able to connect your google account with YouTube.
> If you don't install MicroG package, "**add account**" button will not work.

The renaming of the package is to prevent any conflicts with existing Google services.
> 5 votes

---
Tags: adb, google-play-services, nokia-6
---


title: Sort or search text messages by date

text:
# Question
Title: Sort or search text messages by date
How do I search and or sort individual text messages by date/time?

I am using an AT&T Samsung Galaxy S5.

# Answer
export your message conversation (like a backup) with that particular person as a CSV file excel spreadsheet after that u can just sort by date in excel,

if you are using Huawei phone u have something called Hisuit (it is a device manager a default software to manage the phone) for this. I think Samsung phones have something similar if they don't. u can try using other device managers or Hisuit to try an export all your conversation messages.

hope you find what you are looking for all the best, IT\_kid
> 0 votes

---
Tags: sms
---


# Question
Title: Why is it possible to backup the rom images from mediatek devices using third party (open source) tools such as SP flash tool unlike Google Pixel?
When running Linux i am able to use SP flash tool to do a readback from my mediatek device and do a full backup of the rom images while the device is in preloader mode, without the use of any additional USB drivers.

Yet this is not possible with Google Pixel.

Is this perhaps due to Mediatek going out of their way and adding support for their devices during the development of the mainline linux kernel and Google dont?

# Answer
> 2 votes
it is simply not true that linux does not need drivers. linux is just smarter than windows and handles it's drivers itself. linux just doesn't ask for drivers, but it **use** drivers anyway

new mediatek devices are accessable from preloader **only** with proper secure boot download agent (DA\_SWSEC.bin) and authentification file (auth\_sv5.auth). that files are vendor and device specific. even with proper files SP Flash Tool is not able to read back whole EMMC, there are forbidden partitions which can't be accessed. Lenovo devices are a good example

for qualcomm devices it is quite same, there we have EDL mode available instead where we can read raw partitions from device only with proper factory loader (firehose programmer). again that files are vendor and device specific

the fact that you can't read data from google pixel is that HTC hasn't released/leaked firehose programmer for google devices

while google **may** have that file internally, it seems they are not interested in unbricking, the official install method rely on fastboot only. once a device becomes bricked, it is not possible to unbrick (on locked bootloader). so the official solution for bricked google devices is a replacement device. that's why i personally recommend every google device should be bootloader unlocked on initial setup (my opinion)

---
Tags: linux
---