text:
Android phone OS crashes when turning on. Can I recover the phones data?
I have an non-rooted Moto G5 phone that crashes when getting to the main home screen. I get a message that says process system isn't responding and I get the the options to "close app" or "wait" and then the phone crashes 10 seconds later.
I can get the phone to recovery mode and I tried to wipe the cache but that did not help.
I can get the phone to the fast boot screen. If I connect a USB to the phone I see text that says "Transfer Mode: USB Connected"
Can I use Recovery mode or fastboot mode to get my data off the phone? I'm willing to trash the phone as long as I am able to get the data off the phone.

What do you mean "the phone crashes 10 seconds later"? Are you saying it actually reboots? Have you tried booting it in Safe Mode as soon as the error message occurs (hold power until the Reboot into Safe Mode options shows up)?

It actually reboots but is not really usable. The home screen isnt visable and I cant access anything other than settings. All phone features are disabled and it says that it cant find the sim card. The phone resets so quickly that I cant really do anything on the settings screen. I've tried booting into safe mode and it only works 1 out of every 10 tries and even when it works the phone will reset after 10 seconds.

Honestly, unless the bootloader is already unlocked, it is unlikely you can recovery anything on this device. The best you can do is perform a factory reset and attempt to recover the device, but all content will be lost. I know that isn't the answer you are looking for, but stock recovery isn't going to allow you to pull the information you want.

the message "close app" is from android system_server, this means your phone is successfully booted. just the gui crashes because of some uid errors. try to connect via MTP

You can try to backup with this method (not sure about encryption)
https://forum.xda-developers.com/general/rooting-roms/how-to-backup-qualcomm-phone-root-t3570178
if this fail you may find a flash tool (Qualcomm SW Downloader, QPST, MSMDownloadTool, RSDLite, Snapdragon Flash Tool) which can flash only system - in this case you can flash a modified system.img where you have adb root enabled. then you can backup from adb regardless system_server is crashing


text:
Can't boot into system or recovery
I had the Pixel Experience ROM on Redmi Note 7 Pro which got an OTA update and after the update was installed it got stuck on the boot logo of the phone, the usual keys for recovery mode don't work. Reinstalling the recovery through fastboot flash and fastboot boot gives the same result. Sometimes it shows warning: Your phone is destroyed press power button to turn off.
How can I recover from this? This is the ROM that was installed through OTA.

You can try to boot directly into recovery instead of flashing image: fastboot boot recovery.img
If it doesn't work, go for flashing factory firmware in bootloader or Emergency Download mode. Here are the detailed instructions for Xiaomi devices.

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

sort: votes


text:
block facebook app in WiFi system
Honestly, I want for my kids not to use facebook.
But, they still use facebook app on the wifi network.
I successfully blocked facebook domain with the router management on my home wifi network.
So, this facebook website was blocked in windows system, and other android system.
But, facebook app still access to the facebook website(?).
How to block facebook app?
I cannot find domain address using facebook app.

Usually the apps use a different server that the web page. There are a large number of apps that can monitor the network traffic of apps, for example Net Monitor

Install a firewall such as Netguard on the phone and block Facebook app when wifi is on.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
How can I use Gmail's canned responses on my phone?
I frequently use canned responses in Gmail on my computer but it doesn't seem to be accessible on my phone. Are there any workarounds or solutions that allow me to use this feature on my phone as well?

As of July 2019, the features is not available for Gmail app but you can use it when using a browser on your phone and requesting the desktop version.
You are left with 3 possible solutions:

Create draft messages that you can then copy and paste for new messages.
Enable "Smart Reply" in the Settings of the Gmail app for the account you are using. Then hope that you will get good suggestions when replying to messages.
Use Canned Responses for GMail. It purports:

GMail canned responses are very handy on a full featured web browser but when it comes to mobile - it's almost impossible to import your canned responses in an email message. With Canned Responses for GMail you will be able to do it in 2 taps. A swipe and a tap actually :)


text:
I found apps that I have not installed. How can I investigate this?
There are 6 apps on my phone that I haven't explicitly or implicitly installed.
Most likely they were installed today, as they happened to get on the first screen/page, so I immediately noticed them.
Of course I didn't use the web/desktop Play Store to install them. And chances of the phone being unlocked in my pocket and installs 6 apps by mistake are none.
What is even more suspicious is that when I go to to Play Store, the apps show (install) button instead of (open), as if Play Store couldn't detects that they are installed.
How can I investigate this?

HUAWEI Mate 10 pro
Model BLA-L29
EMUI version 9
Android version 9
Non-rooted

The applications are:

Asphalt Nitro_com.gameloft.android.GloftANPH
Assassin's Creed Unity
Arno's Chronicles_com.playwing.acu.huawei Dragon
Mania_com.gameloft.android.GloftPDMF
Kingdoms_com.gameloft.android.GloftDMKF Spider-Man Ultimate
Power_com.gameloft.android.GloftSMIF

I extracted them with an APK extractor.

The fact these apps show as not installed in the play store is very telling... they were not installed via the Play Store at all but from a 3rd party source. This likely means you have some kind of malware on your device. I would immediately backup all important data and factory reset your device, then only install apps directly from the Play Store afterwards. If you need some apps that are not available in the Play Store, turn on Unknown Sources, install the app, then disable Unknown Sources immediately afterwards.

Actually, in Android 9 this is an app level permission now. Look in Settings - Apps & Notifications, Special app access, Install Unknown Apps, and see what apps are listed as Allowed, if any are, you had to specifically give that app permission to install a 3rd party app. Often this is Chrome. I really don't like the new Android 8+ system for doing this, it has some dangerous potential because once you grant permission to install a 3rd party app, that app has permission to do so forever unless you turn it off manually... For Chrome, or any browser, that could be disastrous.

You were right, Chrome was allowed, among some other apps. Is there any way to verify that those apps were installed by Chrome? And most importantly, there should be no harm if the apps are not opened, or opened without getting any permissions. Right?

And I don't remember being prompted by Chrome to install any app. Being allowed to install apps, doesn't mean that they are allowed to do it without my confirmation?

There is no way to verify what app(s) Chrome installed, but there is also no way an app can get this permission unless you allow it manually. The pop-up window is a system prompt, it can't really be misinterpreted unless you chose not to read it. Some apps would legitimately require this permission, like alternative app stores, and in some cases Chrome as well if you have to install apps that are not in the Play Store (some of GSAM's extensions and XDA Labs come to mind).

One option would be to look at your Chrome downloads for any "apk" file, that is an Android application. If there are any, it would also tell you what site it was downloaded from.

What are the applications in question ?


text:
AndroidTV Access Point
I got an Android 9 TV Box with root access connected via LAN.
Now I want to use the WLAN as an access point/bridge with same SSID/password and after the handover the IP should stay the same.
The basic hotspot feature works but without the requirement that the IP on e.g. smartphone stays the same.
So basically I want that the Router/Gateway is the only DHCP in the network.
Is there any app or method to do this?
All devices in my network got reserved gateway IPs and I need static IPs because of my "smart" home...
Since English isn't my first language I used my paint skills and made a little picture of the situation:


text:
System storage is showing full even when it is not. So I can't install apk as system app
I have OnePlus 6 with latest Open Beta. It is rooted. I have done everything but I still can't install any app as a system app.
I have tried Link2SD and Titanium Backup. I have tried to copy/paste the apk using TWRP file manager and ES file Explorer. I have tried to move the apk using adb shell. Everything is giving the same error that /system has no space left.
Link2SD storage shows

Settings storage shows

Why it is giving me memory error when system has space?

Use the Magisk module app systemizer

systemizer isn't working. But even so why does it shows my system storage is full when its not?

yes the system storage is full. But how can it be full I have just flashed my phone twice. Does that mean I can not get updates for system apps that are bigger than the current size?

Thanks, I'll look into the list to see what is taking so much space.

... /system has no space left.

It indicates that your /system partition is mounted R/W but just to make sure, if dm-verity is enabled, /system is always R/O. For details see How to disable dm-verity on Android?.
Next, both of your screenshots show that your /system partition is full. Even if you haven't written anything to it, some ROMs may have /system already completely filled. After all it isn't for user's usage.
The space shown as "System" in Settings isn't actually the /system partition. In fact it can't be of 11GB, that's too much. Android is counting a large data from /data partition also as "System", because it's not what a "user" directly puts there. User can access only shared/external storage (/sdcard).
You can check actually space usage of /system partition with command df -h /system. Execute du -h /system | sort -h to get a directory-wise detail of what's taking up space.
For more details, see How disk space is used on Android device?


text:
SELinux temporary set to permissive
I am using a Galaxy s10+, rooted with magisk, no custom ROM, no custom kernel and no custom recovery. The rooting is heavily limited because of the SELinux enforce mode. Actually, no root command in termux works because of SELinux. I do not want to disable SELinux permanently for security reasons. What I want is something similar to the command "setenforce 0". This does not work on my phone however, and I think it could be KNOX related. It gives no errors but the output of "getenforce" is still enforced.
Is there a way to set SELinux to permissive mode only temporarily until next reboot on rooted Samsung galaxy s10+ with magisk, everything stock?
The linked duplicate is what i already tried, and it also says it does not work after 2015.

Possible duplicate of How to make SELinux permissive on a Knox Samsung device?

That is what i already tried as I said. The answer says that it no longer works after 2015.

Related: https://android.stackexchange.com/a/209374/218526

... and the answer remains the same after 2015: you need to run a custom kernel

@alecxs and OP insists on not having a custom kernel in 4 questions asked previously: 1, 2, 3, 4.

@Selinuxguy just built the kernel without SECURITY_SELINUX_ENFORCING=y. May be the source code needs to be patched.

CONFIG_SECURITY_SELINUX_DEVELOP=y

@alecxs yes, with that kernel starts in permissive mode, later enforced by init.

I almost literally did the same thing.. I went after an LG K30 Premier Pro and comes down to SElinux. I did mine to prove you can "Root" a phone without deactivating the bootloader. Still having hard time cause without deactive it either says your not rooted or it does say it and the phone inner programs send you an email and tell you they are going into hidding inside a FireStick
. pretry. Funny really. ..
Ok herwnis the email com.lge.software.cliptray
Version: null (0)
SD Maid
Version: 4.14.27 (41427)
Device
Fingerprint: lge/cv3_lao_com/cv3:8.1.0/OPM1.171019.026/19155140321d4:user/release-keys


text:
Is it possible to add a driver to my kernel without flashing a new kernel?
Is it possible to load a driver as a kernel module into my Galaxy S10, Magisk rooted without having to build a new kernel and flash it?

None of those have anything to do with being able to load drivers without reflashing a new kernel

Drivers are built as kernel modules i.e. .ko files which can be loaded with modprobe but for that you have to rebuild kernel with the required module, or it should be compatible with installed kernel if built separately.
The installed kernel should be built with CONFIG_MODULES=y in order to load modules. Make sure the version of kernel source code tree or that of header files match with installed kernel version. Otherwise dependencies may break resulting in Unknown symbol in module type of errors. Also, if kernel is signed (CONFIG_MODULE_SIG_FORCE), modules must be signed with the same key to avoid required keys not available error.


text:
Delay and group notifications
I would like to be able to reduce the number of times my phone interrupts me while I am working, without significantly decreasing my responsiveness. I have a few ideas for how to do this, but I haven't found a way to actually implement any of them.

Only receive notifications every N minutes. For N=10, at 2:00 I would get a few notifications. Then at 2:10, I would get the next set of notifications.
When my phone receives a notification, check when the last notification was delivered. If it was less than N minutes prior, wait until N minutes has elapsed then deliver all the notifications received in that time. This is the ideal solution, in my mind.

One suggestion (mentioned at Delay notifications) handles silencing messages delivered at nearly the same time, but it doesn't alert the user about the second notification after the time has passed. It essentially just silences the phone for 1 minute after receiving a notification.

Does this answer your question? Delay notifications

@willlma Clearly not, else I wouldn't have mentioned it in my question.


text:
How to root Android using CF-Auto Root Solution
How to root using CF- auto root? How to use Odin with it?

Possible duplicate of Do I need CFs auto root If I can install TWRP recovery?

When you decide to root your Android usually you have to pick a proper rooting solution next. Otherwise, you have to face a lot of problems. In the worst-case, you might have a bricked mobile phone or tablet instead of a rooted one. So in this article, I'm going to talk about one of the best rooting tools if you have a Samsung smartphone or a tablet. We are going to root it using CF Auto Root through download Odin.
Preparations before Root Android
So this an invention of the famous XDA developer Chainfire. The exploit is working for more than 300 common Android devices.  But today we are gonna focus on Samsung. If you want to work with this you better check the compatible list which is available in the XDA Developers forum. It usually unlocks the bootloader first. So make sure to keep backups unless you will lose your data. And the other special fact is that Samsung drivers are only compatible with Windows. So you should have a Windows PC for the task.

Android Rooting for Samsung

First, you have to make sure to install proper drivers. Check this
link out and you will be able to download them. You just have to extract the zip and launch the .exe.
The next step is to download the correct CF-Auto-Root file. There are
many. So to find your compatible version check the model Number and
the Android version. And then click the download.
Make a new folder and extract the downloaded zip file there. The file
should be located in the hard drive.
Then put your smartphone or the tablet into the download mode. Volume
down button, home button, and power button will help to do this.
Press and hold it simultaneously.
Now connect it with the windows computer using a USB cable.
Now browse to the folder that has extracted the content of the
downloaded zip file. On there you will see a .exe file with a name
ODIN. Right-click on that select to run it as an Administrator
Once Odin is running it will detect the device.
In the interface  "ID:COM" field should be turned to blue.

Click the AP button and keep the rest unchanged.
Again you have to browse to that exact same place that has extracted
the content and select CF-Auto-Root.rar.md5 file. Then click Open
When the log tab displays a message saying "Leave CS" click the
start.
Now the rooting process has been started.
When its finished the device will reboot back to Android.

Wrap Up
So this is an almighty process of rooting your Android Operating System using CF-Auto-Root and Samsung Odin. It is safe and pretty easy compared to some other tools. So if you want to check the root status you should download the root checker.


text:
What happens to the encryption key on "Forget SD card" action?
Recently my SD card, formatted as internal storage, got inaccessible for the phone (Moto G5) for some reason.
If "Forget SD card" option was selected, does it wipe out the SD card encryption key from /data/misc/vold?
Does it make sense to root the phone and try to extract the key?

I never did that, but in my opinion key would have been deleted after forgetting SD card.

Possible duplicate of How to get Adoptable storage encryption key without root access after I "forget it"


text:
Where can I find User Data of an app?
I have downloaded an app on my phone because I want to take out information from it. It has pages (In image form, probably PNG) that I need on my computer. I went to storage and I clicked on the app, in "Space used" it says the app size is 57.27MB, but I want is the user data (Because when I first downloaded the app, the pages weren't there, but when I opened the app they gave the option to download the pages and I clicked the option to downloaded all pages). The user data is 288MB, and the total size of the pages is probably somewhere in 200MBs. So it means the pages are in "User Data." When I connect my phone to my computer (through USB) this shows up:

So if the images are in User Data, from which of those can I locate the "User Data" of the app?
Note the app's name is Al-Muhaffiz and it was published by Mahad Al-Zahra Publications.

Look under /sdcard/Android/data/com.aliasgarmurtaza.hifzalquran, but all data might not be there. Private data is in /data/data/com.aliasgarmurtaza.hifzalquran which you can't access without rooting your phone.

Data could also be found in hidden folders starting with .
You can easily find a hidden folder using the built-in File Manager or a 3rd party application.
Once you open your directory,  tab the hamburger icon and select "show hidden folders"

@IrfanLatif is there anyway to access it without root?

May be and may be not. adb backup trick may work, but I never tested. See this and this. Is it a Quran app? Most probably it will be placing files in first location I've given in above comment, or may be simply creating a (possibly hidden) directory in /sdcard if it has Storage permission granted.


text:
Gmail not automatically syncing
Samsung A40 OneUi 1.1
Connected to wifi
After an email arrives to inbox, the phone (screen turned off) will not register this and no notification is given. After waking up it will sometimes sync but not always, after opening Gmail app it will usually sync but not always. Waiting for dozens of minutes and still nothing.
In such case, when I go to Account > (account) > syncing then Gmail syncing is enabled, but "last synced" can be e.g. 20+ minutes old.
Clicking to sync icon manually there or by pulling down in Gmail app it would sync successfully. I've read that the info about new mails is supposed to be pushed to the device so not sure why syncing is necessary actually, but it works like that...
2 Gmail accounts are bound to the device, but both have the same behavior
I tried (when account-related then was done for both accounts)
- Re-enabling syncing of Gmail
- Global auto sync is enabled
- Mobile data background usage is allowed (it's on wifi, but ... just to be sure)
- Wifi works correctly
- Checked battery settings - changed global to optimized mode (which is the most performance-focused and least battery optimization-focused mode available despite the name)
- Gmail is not set to be forced to sleep
- Gmail working in background is not disabled
- Checked memory-related settings, not seeing anything off
- Syncing is enabled within Gmail app itself > account settings.
- Notifications within Gmail app's own settings screen are enabled
- All notification options are enabled for Gmail app in the system screen for notification settings of the app
- No optimization 3rd party app etc. is running there
- Restart didn't help
Any idea how to fix this? Thank you

Had the same issue. I have also checked everything twice and this is how I have finally fixed it. I went in the Settings -> Apps -> gmail -> Storage -> Clear Data, then restarted my phone.


text:
How to edit ES File Explorer default view
The Home Page of ES File Explorer is shown as

I want Home Page as a default view, when I open ES File Explorer.
I tried to change from here.

But it's not changed.
Pls let me know, how to change it?
Regards
Smith

What version of ES File Explorer are you using? Can you edit the post and insert an image to show the default view that you have currently?

Its ES File Explorer Pro version and the path you see in Home directory appears by default when I open ES File Explorer.


text:
Really strange battery issue?
So, I don't have a picture, but my Android phones batter is on the fritz. At first it just started draining quickly so i checked if I had any apps that where draining it quickly but I didn't have anything out of the normal, the highest thing that was draining it was the Android systems which was 6%. I didn't think much off it since it is an older model and was thinking maybe the battery was just getting old and draining quicker. I just put it on the charger and brought it up to 100%. I took it off the charger and started watching YouTube which I knew drained it quickly but then something weird started happening. It went from 100% and instantly dropped to 1%. Thinking it was just a glitch I turned off the screen then turned it back on and it was at 90%. I went back to watching YouTube. Next thing I knew I looked back at the battery and it said 24%. I was confused and so i started to watch the battery, it drained normally for about a minute then started changing like this 58%,20%, 80%, 1%, 100%, and just all over, its been doing this for about three days now and I'm honestly not sure what's going on. I'm wondering if there something wrong with my battery or if this is just some strange phone glitch?

Related: Battery Stats Are Vastly Incorrect

Go to Settings>Developer Options>Running Services and check to see if something you don't recognize is using a bunch of processing power.
If yes, you've probably got a virus.
Otherwise, a factory reset could fix the issue.


text:
app2sd link2sd nightmare ..all Fully Linked apps disppear
One advantage in using app2sd ( or link2sd ) was that if all your apps are totally linked
when you swap out phones you would hope to 'carry' your apps with you and of course space savings to /Data
I know how linking works but my question is about how app2sd and link2sd "remember' how apps are linked.
I am facing a constant problem  where my ext4 partition # 2 does not automatically mount. I have to do soft-reboot  or use "Mount 2nd partition" after the boot. It does not want to do this on runtime and after this only partially linked apps will show up. I am rooted via Magisk with Global Namespace turned on .

One of the consequence of this  is if an app is 100% linked it Just disappears ...WTF ..whoa  ! what a waste of time linking. Why does is do that . What's happening under the covers ?
Both these are clone apps but I have been using app2sd for sometime after Link2sd dev. wont reply to emails ( I had the paid version )

These apps store linking info into an app2sd database ...why then cant this info be preserved. All my apps that are 100% linked ( well to be precise those apps that have apk , and Libraries ( lib ) linked as against data and ext_data and cache . So an app with apk linked and data , ext_data & cache on internal would still fall in the 'disappear' category  )
keep disappearing Those that are part linked will appear .

apps are still there, maybe just the links are gone. you can manually link again with ln -s it will be recognized from Link2SD. besides this you can place mount script in /data/adb/post-fs-data.d or /data/adb/service.d just mount your ext4 partition to /data/sdext2 on earlier stage. remember these apps are outdated and developed for low memory devices with android 2.3.6, you have a native ext4 partition meanwhile called adoptable storage

Hi Thx for revert. /data/adb is not there on 7. Also for my SD card which has ext4 partitions it will not recognize this and wants  to format it. For adoptable storage , It should have asked me if I want to use the card partition as adaptable storage. So I dont think ext4 is respected for adoptable storage ( else If you know how I can  get Android to recog. this  & convert it to adoptable storage do let me know)

the other Q is .. yes for a handful apps I can manually link how can I do this for a ton of them . Apparently link2sd ( in my case app2sd ) has a DB that stores all this info. so in case links are broken , the DB can help  ( ? I 'd assume so but Need confirmation) .. why then do all 100% linked apps disappear ?

post-fs-data.d is folder from magisk, sure you have it. why then do all 100% linked apps disappear? Probably sdcard mounted too late
https://android.stackexchange.com/questions/214233 adoptable storage can make your sdcard 50:50 (for example) one is vfat other is encrypted ext4 partition

problem with adoptable storage is that ext4  is not supported since I i n rooted I can use the ADB method and give any kind of mix I want... but the second partition it will create is a fat32..so coming back to my concern .. I would like to devote a separate third partition for all apps that are extremely write sensitive such as a WhatsApp. and and isolate it from my main partition. Idea behind this also has to do with wear leveling algorithm which I read is active in micro SD card - if file system is based on FAT cf ext4 which is not based on any file allocation table  & so does

not support .this is an inference I drew but I am not sure if it can be assumed true
so now coming back to main Q  how do I get 3 ext4's mounted and all of them should be available to all apps for RW

i believe you can mount with correct uid/gid then it should be accessible without root. regarding Link2SD see my first comment. or checkout the vold stuff as suggested here https://android.stackexchange.com/questions/214684/mounting-multiple-ext4-partitions-in-android-7#comment275059_214684

look in the output of mount how a fat32 partition is mounted from android, use the same uid/gid for your mount replacements. for apps they 'disappear' check /data/system/uiderrors.txt

seems the uid/gid mount parameters only work for vfat partitions


text:
Importing contacts from Nokia C1-01 to Android
I'm trying to import my contacts from an old Nokia C1-01 to my new Android Motorola G6 Play.  How can I do this?
So far I've tried a Bluetooth connection (connected but couldn't transfer the contacts).
And I've saved my contacts to the Nokia SIM card, but it is the micro-SIM format and I don't think it will fit in the Motorola G6 Play.  Should I cut it to size with a sim card cutter?
I can access the contacts in the phone using the Nokia PC Suite and make a backup of my phone. I can also export the contacts into a CSV. It is combining the first and last name into the "Last Name" field, so I can manually fix this in a spreadsheet and then probably import it into the new phone using Gmail.  I'm following the advice from this question.

Try this, export contacts to .vcf file, then send this via Bluetooth to Moto g6, then import contacts from file.

I don't think that is possible.  I can export the contacts to the SIM card.  But that and Bluetooth are the only options I see.

As long as you don't have to cut anything but the plastic around the actual chip, it won't hurt anything to give it a try.
The last time I had a really old phone, I just went over to the nearest cell phone providers store and they transferred over the contacts for me.


text:
AVD camera configurations and key mappings
AVD: Android Virtual Device
Currently available AVD camera configurations are...
Front Camera:
None - no camera installed for AVD
Emulated - use a simpulated camera
Device - use host computer webcam or built-in camera
Back Camera:
None - no camera installed for AVD
VirtualScene - use a virtual camera in simulated environment
Emulated - use a simulated camera
Device - use host computer webcam or built-in
I want an option... say...
HostSystemScreen - capture your host system's screen
Which simply means that the AVD camera can act as my desktop screen-recorder. For an app that scans a QR code from the web-browser for some verification. installed in AVD, its will be super helpful if its camera opens to view my desktop.
How can I do it?

System Info
OS: Elementary OS 5.0 Juno
Kernel: 5.1.0-generic
CPU: i5-2410M
GPU: NVIDIA GeForce GT 525M
RAM: 12GB
AVD:
API: 28 Pie
Google Play Image
Pixel XL 2
CPU: x86
Couldn't find the tag android-studio
Edit
I've got an idea to link up AVD to any native screen-recorder, but I really need help on it.

I'm not perfect in playing with picture editors

One more thing...
Can I map the HOME & END button of my physical keyboard as start and end of the line being typed in the AVD?

Currently the HOME key navigates to the home screen, and the END key does nothing particular.

Not directly - you have to do it manually: Create a screen-shot, save it to a file and then let the emulator use it as picture source.

I hope you have seen the same question on stackoverflow
But by then the QR code will expire.

That you don't get much replies makes me no wonder. Your question is not very clear. The only real info is in the title which is quite bad. reformulate it and write some sentences describing what and why.

@Robert, I made some real changes to the question, I'm open to further improvement, thanks to all who respond in advance.

In the end your question is very similar to this one: https://android.stackexchange.com/questions/176977/feed-an-image-to-genymotion-camera


text:
How to get IP address from DHCP running on WiFi AP using adb shell?
I am connecting to my WiFi network from adb shell using the following command:
iw dev wlan1 connect -w WiFi-AP

There is a DHCP server running on the AP as well, but whenever I try to get IP address using dhclient -v wlan1, I get the following error:
sh: dhclient: not found

Is there a way to install dhclient on Android 8.1, or is there any other way to request IP address from the DHCP server over a wlan interface?

Android used dhcpcd up to Lollipop (or KitKat?). Now the client runs as a service inside Java runtime. No native tool available. You can build a static DHCP client binary from source.

@IrfanLatif: Any pointers on how to start with that would be highly appreciated.

Building dhcpcd isn't that much complicated, but it won't be of any use. Linux distributions have simpler network configuration, usually use main routing table and /etc/resolv.conf for DNS. Android has a dynamic routing policy, containing scores of rules and routes, continuously updated by netd with network changes. Plus Android's Bionic libc doesn't use /etc/resolv.conf. So even if dhcpcd gets you an IP and DNS nameserver from DHCP server, you still have to manually configure routing, NATing, forwarding etc.

@IrfanLatif: I have tried to use udhcpc from busybox and when I use it, it returns an IP address from DHCP, but doesn't assign it to the interface. Using some bash scripting, I can extract IP and assign manually to the interface. Did you mean the same by manually configuring?

By manual configuration I mean IP address + rule + route + DNS + iptables rules (if any required). If this WiFi is the only network you are connecting to, then route auto added to main table may work.

Answered here: Connecting to WiFi via ADB Shell


text:
How to connect two phones via SSH with a central SSH server?
I have two phones A and B which use Mobile Data. I would like to connect from phone A to phone B, the latter has an SSH server running on port 8022. The central SSH server is running on AWS and has an Elastic IP.
Phone A can connect to AWS Server directly at port 22, so can phone B.
AWS Server configuration:
GatewayPorts yes
TCP forward yes
Password Authentication Yes

Further, I have forwarded port 9099 on the AWS SSH server to local port 8022 on phone B:
~$ ssh -NR 9099:localhost:8022 user@Remoteip

By running netstat -tpln on the AWS SSH server, I can see that 9099 is in listening mode.
But when I ssh from phone A into the AWS server at port 9099, it says timed out.

What I have understood from your question:
You have two phones A and B, which are connected to internet through Mobile Data. Phone B has a SSH server running, listening on port 8022. You want to login from phone A to phone B, but since the later doesn't have a public IP, you want to create a reverse SSH tunnel from phone B to another SSH server running on AWS cloud, listening on port 22. In this way you want that all traffic received on port 9099 on AWS SSH server should be forwarded to port 8022 on phone B, so that phone A can access it on internet.
If I understood correctly, the simplest thing you have to do is:

On AWS run a SSH server, which is listening on port 22. Since you are able to login to this server from both phones A and B, I think you have done it correctly. Let's say your login user here is server_user and IP address is server_ip.
You need two additional keywords in /etc/ssh/sshd_config, should look like this exactly (no extra spaces):
# /etc/ssh/sshd_config

AllowTcpForwarding yes
GatewayPorts yes

After changing configuration, don't forget to restart server.

First parameter ensures that port forwarding is allowed i.e. you'll be able to create tunnel.
Second parameter ensures that the reverse tunnel will listen on all network interfaces, and not only the local (loopback) interface on AWS server.

On phone B run a SSH server, which is listening on port 8022, let's say your login userame is phone_user (Termux's SSHD requires no username).
Do test if you can login to this server. For instance create hotspot on phone A or B or connect both to some third WiFi network. Now login from phone A to phone B. If it doesn't work, troubleshoot the problem, most likely with password / key authentication.
On phone B create a reverse tunnel i.e. forward AWS SSH server's port 9099 to phone B's (local) port 8022:
~$ ssh -NR 9099:localhost:8022 server_user@server_ip

This can be done on Termux or use some GUI app like ConnectBot.
To test if the the tunnel works correctly, on AWS server:
~$ ssh phone_user@localhost -p 9099

It should login you to phone B.
On phone A, login to phone B through AWS SSH server:
~$ ssh phone_user@server_ip -p 9099

If it doesn't work, repeat the steps.
RELATED:

How to connect to Android through SSH over 3G/4G public IP?
How to run SSH/SFTP server for multiple user logins with password authentication on Android?

Id like to confirm that if i need to make http requests on Phone B via Phone A,do i need to have a server or a Client should get the job done

@EhtizadZashkiyor sorry couldn't understand what you mean by http requests. Do you want to host a web server on phone B?

Basically I would like to connect Phone A to Phone B and access the Internet through phone B .So do I need to have a server on Phone B to do this or a client on phone B can do the same ?

@EhtizadZashkiyor You can't connect a client to client. At least one end should be a server.

Ok.Let me configure the server and update about this .


text:
Re-locking bootloader with stock ROM/recovery - Wileyfox Swift 2 Plus
I recently unlocked the bootloader on my Wileyfox Swift 2 Plus to take a partition image, as per this answer.  I didn't flash the recovery or make any change to the ROM, and the device is not rooted.  After a factory reset (to Android 8.1.0, if that helps), I now need to re-lock the bootloader, but fastboot oem lock renders it unable to boot normally.  I can still boot into fastboot mode or recovery, but the phone won't start normally until I run fastboot oem unlock again.  How can I get this back to factory settings, with the bootloader locked?
Note that I'm not interested in reasons to keep the bootloader unlocked.  Having the bootloader locked is a requirement for several apps that I need to use, and I'm not going to try to bypass that.

You can try to reflash the stock rom, or if your only problem that apps wouldn't work install magisk and by this apps you can use magisk hide.

Why would reflashing the ROM help?

Maybe unlocking has broke any function on your software. this i*ve found on Xda @fminl


text:
Always require PIN to unlock device
Is there any way to always require the user to enter the PIN (instead of fingerprint) to unlock the device?
It seems that as soon as you add a fingerprint to the phone, now it no longer requires the PIN to unlock, just the fingerprint.

You still need the PIN, but not on every login. Every few days and after a certain count of finger print logins you have to enter the PIN.

You can try Next Lock Screen.
During the initial settings, give the app the required permissions. Open the app, make sure that "Enable Next Screen Lock" is on. Click on Screen Lock, then "Next screen lock". Set a Pin for the app (preferably different from the PIN of your phone). Go back then, click on "Fingerprint lock" and turn it off.
Important: Don't disable the phone fingerprints that you set in Settings -> Security.
The app will work the following manner. If you enter your fingerprint first, then you will be required to enter the app's PIN.If you enter the app's PIN first, then you will be required to enter either the phone's PIN or your fingerprint.
Note: The app is no longer on the Play Store. I don't know if Microsoft will bring it back in the future.


text:
How to move data to a bigger SD card (internal storage)?
I have a Moto G5 with Android 8.1. My 128 Gb micro sd card is formatted as internal, and I want to replace it with a bigger one (and I want to still use it as an internal storage).
Is it any way I can migrate my data to the new memory card?

Your new memory card will be wiped anyway when you insert it into your phone for the first time. So I would recommend copying the data to the new memory card after you insert it. You can copy it using OTG or via computer.


text:
What's the correct stock ROM for my unlocked Moto E5 Play?
So I was working on backing up my phone after installing TWRP so that I could restore it if it had an issue, but it had an issue. It thinks its decrypted and I can't get it to boot, wiping does seemingly nothing.
My next step to troubleshoot is to reflash a stock ROM, but here's the thing: I bought my phone unlocked with no carrier.
$ fastboot getvar product
product: james

According to the fastboot menu, I have the XT1921-2, which according to Motorola's documentation, is the Cricket Wireless variant, which seems to have ROMs here: https://mirrors.lolinet.com/firmware/moto/james/official/Cricket/
I don't want the Cricket Wireless ROM, and my device is not subsidized (as indicated by the filenames), it's wholly owned and hasn't ever really been used to connect to a network. Which ROM am I supposed to use to restore my device?

I've figured it out. Besides the carrier-specific ROMs, Motorola has a "retail channel", called RETUS (Retail - US, I believe).
This is not tied to any carrier, and you can match the factory version by comparing with what you get here:
# fastboot getvar ro.build.fingerprint
(bootloader) ro.build.fingerprint[0]: motorola/james/james:8.0.0/OPP27.9
(bootloader) ro.build.fingerprint[1]: 1-121/42:user/release-keys

Combine the two lines, and we have
motorola/james/james:8.0.0/OPP27.91-121/42:user/release-keys


text:
Is this Android phone Android 9.0 or Android 6.0?
I purchased an XGody Mate 20, advertised as Android 9.0.
Indeed, if you switch it on Settings -> About Phone reports Android 9.0:

However, when I plug the device in, Android Studio reports it to be Android 6.0:

Also the DevCheck Android App also reports the device to be Android 6.0.
Is there any way to find out which is it really? I bought this under the understanding it was an Android 9.0 device.

I’m not an expert but the about phone screen screams Android 6.0. I imagine DevCheck and Android studio are correct. The phone itself sounds like a cheap Chinese ripoff and seems fishy. With my personal opinion, I would avoid using at all costs.

they have just changed a 6 with a 9. kernel is still old version and security patch level is 2017. besides this you can check from adb shell permissions of /system. android 9 should have system-as-root

Id like to note that it says build is test-keys. Any reputable stock ROM I've seen uses release-keys. This is obviously an illegitimate ROM and should not be trusted

@colbycdev: Is that just a label that they forgot to change, or does it involve getting the "official" signing keys from Google?

it's just a flag you can change

@grawity no official keys from OEM, used for dm-verity and such

If you ever get into such a problem again, refer to this (check the left-side navigation bar) to compare Android versions.

I wanted to turn some of the comments into an answer that can be used for additional verification in case someone else runs into a similar issue where the vendor also reskinned the notifications window.
Android 9.0 was released in March 2018. The Security patch level is May 2017. This doesn't make sense at all. Would you trust it if the vaccination card for a 15 month old toddler says the most recent vaccinations were given 10 months before he was born? Not to mention that I'd really recommend against using a phone which is over 2 years out of date on security patches.
The Kernel Version also doesn't match: Android 9.0 has one of 3 kernel version: 4.4, 4.9 or 4.14. The stated version, 3.18.19, matches that of Android 6.0.
The Build Number also is cause for concern. MRA58K is related to the Android 6.0 ROM, and vendors are not supposed to use test keys for released products.
Overall, these are all causes for concern. This device has been tampered with (either rooted and the build.prop edited, or a full ROM edit), and poorly at that, since if they were competent, chances are they'd have edited the above values as well to be less suspicious. There is no way to know what other changes they made. At best they're trying to mislead you. At worst they're spying on your and stealing your money.
I urge you to get a refund. If that's not possible, I recommend you install a clean version of Android so you have less reason to worry about malicious intrusions. However, that might not be enough, because there might be intrusions in the device, either hardware or software, that can interfere with anything you do with the device. I agree with the others though that it's a security risk to use the device as-is.

it is a low budged phone there is no reason to assume they have done anything bad with it. they just changed the version number and this is probably done by the manufacturer itself. it is a common practice in china. he can use it as a normal android 6 don't be scared about a simple changed text

@alecxs even if it's just a stock Android 6 with no other modifications other than s/6.0/9.0/, 1) it was marketed as an Android 9 phone and sold on the understanding that it was an Android 9 phone and 2) The security patch version date (which already is something which is known to be faked on low cost brands) is over 2 years ago, which is an eternity when it comes to security patches. I personally wouldn't be comfortable with using a phone which hasn't had security updates since 2017 as a daily driver.

Thanks. It's a cheap device, £50 (about $70). I write game apps, and needed to test our apps on android 9.0 devices. It'll only get used to profile/debug our games, not for day to day use. And yeah, the time zone was set to Hong Kong when I bought it. The CPU is fine, but the RAM is so slow it hampers everything.

@StevenHaggerty If you're going to test your games on Android 9.0, it's better to get a more representative phone that is more commonly used by Android gamers. I don't know your user numbers, but I doubt Android gamers will commonly have 50 quid budget brand phones. I think the really popular Android gamer devices are generally around the 3-400 USD pricetag.

@Steven Haggerty since your phone runs Android 6, it is completely useless for testing with Android 9

Related, see Backdoor Built into Android Firmware. CyanogenMod (then) and LineageOS (now) seem like better choices then fly-by-night manufacturers doing shady things. I think even an official Google image for Nexus would be a better choice.

Pull down the notification shade. If it looks like this:

It is android 6.0
If it looks like this:

It is android 9.0

Thanks, looks like it's android 6.0 then. I guess the only thing that would give this kind of result is a tampered with version of android, made to show these results in About Phone?

@StevenHaggerty Certainly possible and likely not very difficult. If you plan to continue to use this phone I would install a clean version of the OS on the device as you can't know what other changes have been made. Or try to get a refund.

@StevenHaggerty Note that android 9 was released in August 6, 2018, and your screenshots show that your phone has the security patches from May, 2017, another sign that there was some tampering

@StevenHaggerty with root and build.prop, it's possible for anyone to fake the Android version (ref: MIUI forum)

Thanks all. Assuming I treat this phone as a BIO HAZARD and want to nuke it from orbit, is there a generic android 9.0 I can install? It appears 9.0 is only appearing for certain devices at the moment.
I can put an axe through it, but it'd be nice to get some use from it!

It's a normal android you can use normal. android 6 is still supported official

Android 6 Marshmallow is not, in fact, still supported. Its last security update was released in August 2018.

Interesting, concise answer. +1.

While this is a useful quick check, it's worth noting that many builds of Android are heavily customised by OEMs (e.g. Samsung's "Touchwiz"). It would be perfectly possible to build a ROM based on Android 6 that looked very like your second screenshot, if someone was trying to pass off the phone as something that it wasn't. The system information in Nzall's answer seems a much better clue.

I agree with IMSoP. While useful as a "quick check" this is far from foolproof (my old stock LG phone running 6.0 looks closer to the "9.0" screenshot than the "6.0" screenshot!). The process in Nzall's answer, while a bit more involved, provides much more concrete confirmation.

this is not android pie
you can tell this because the little circle at the bottom looks like O and not ◉

just wondering, how is this unhelpful?

I didn't down-vote, but my Samsung phone (running Android Pie / 9) has a somewhat square unfilled outline like the first O. This is not at all representative of the Android version, since most manufacturers customise it.

@toothbrush most non Samsung phones don't have nearly the same amount of customisation but thanks for reminding me about that


text:
Is there a way to upgrade Vivo V5 from Marshmallow to Pie?
I am having an Android device Vivo V5, Which has Android Marshmallow installed. Now, I want to upgrade the OS to Android Pie.
Please suggest me any workaround.

Please let me know why the question gets a downvote?

Not the downvoter, but assuming the device is not officially supported anymore, the only way is to find Android Pie-based custom ROM that supports your device (if exists). I only found mostly Android Nougat on XDA.


text:
proxy settings after latest update
I'm using an S8+ and recently we got a "security update". Before this update, I was able to go into my wifi settings > advance > set proxy to manual and add IP address plus port.
Now every-time I do this, my phone fails to change the settings. It is almost like the "save" button is not working. As soon as I leave the page, my proxy settings get reset to "none".
I saw a post about possible apps that could mess with it, but I haven't installed any new apps or updated old ones. This issue started right after the latest update.


text:
USB debugging turns off after restart on Android 7.0
Recently, my Moto G4 running Android 7.0 has been turning off USB debugging under developer options whenever the phone restarts. Is there a way to keep it on all the time? I have already tried revoking and reauthorizing the USB debugging authorizations.

This might help you Sir!:
If you have further questions, don't hesitate to ask me.
https://www.youtube.com/watch?v=7KdH4j7aAPM

This might be the answer, but as of current writing, it's considered as "link-only" because YouTube video can be taken down/offline at anytime, thus making this answer useless. Consider [edit]ing and putting the detail/steps as a text instead. Thank you.


text:
Phone does not detect SIM after a few minutes
I have a Moto G (Falcon). I have flashed some custom ROMs on it over the past few years, but there is one problem which always persists. When I restart the phone or turn off the airplane mode, the phone detects the SIM for a few minutes and everything works perfectly.
After some time, it shows the message
"invalid card" . I tried multiple SIMS in either of the slots, but the problem persists. The problem wasn't there with the stock ROM.
Did I mess up with something while flashing the ROMs? If not,  does anyone have an idea why is this happening ?


text:
adb shell input text with space not working
adb shell input text 'Hindustan%sTrading%sCompany'

Gives Company in Gboard
adb shell input text 'Hindustan%s'

Just gives a space
adb shell input text '%sHindustan' is working fine.
so word before %s is missing
Android Debug Bridge version 1.0.40
Version 28.0.2-5303910

Try using double quotes ("...") and putting real space instead of %s in the input.

Same on double quote.
Real space never worked

It works for me. Which version of Android are you using?

Which one ? Lollipop , which keyboard u using

I am using the hard keyboard of my PC.

I am using the latest version of Google keyboard (GBoard).

ADB version is 1.0.41. And yours?

Seems fixed
λ adb --version
Android Debug Bridge version 1.0.41
Version 30.0.4-6686687

The following works as expected
adb shell input text 'Hindustan%sTrading%sCompany'

Try separating the input lines like this:
adb shell input text 'Hindustan'
adb shell input text '%s'
adb shell input text 'Trading'
adb shell input text '%s'
adb shell input text 'Company'

Only Hindustan.
Did you get the correct one?

is this the correct way? with many adb shell input text lines?

did you get the correct output? Just a workaround


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

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

#/etc/init/custom.rc

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

    # don't start unless explicitly asked to
    disabled

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

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

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

#!/system/bin/sh

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

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

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

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

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

Reboot the system.

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

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

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

In easy words it states that init is running with its context u:r:init:0, you want it to execute /system/bin/custom.sh with context u:r:su:s0, but it's not allowed in sepolicy.
Rooting a phone gets two things: UID 0 (which you have) and an unrestricted SELinux context (which you don't have). Magisk allows any other context to do anything with its own contexts (u:r:magisk:s0 and u:object_r:magisk:s0). And it can do anything to any other context. See details in this answer.
u:r:su:s0 is a limited context which doesn't allow init to make transition to itself. Only adb can do this on userdebug or eng builds of a ROM. See reference and this answer for details.
Possible solutions:

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

Also see dmesg for any other denials. As a reference, on my device init is allowed to do following operations to Magisk:
allow init magisk : process { fork transition sigchld sigkill sigstop signull signal ptrace getsched setsched getsession getpgid setpgid getcap setcap share getattr setexec setfscreate noatsecure siginh setrlimit rlimitinh dyntransition setcurrent execmem execstack execheap setkeycreate setsockcreate getrlimit }
allow init magisk : fifo_file { read write getattr open }
allow init magisk : fd use
allow init magisk : unix_stream_socket { getopt connectto }
allow init magisk : binder { impersonate call set_context_mgr transfer }

Then extract boot.img and ramdisk (only on non-system-as-root devices), replace /sepolicy with new policy file copied from /sys/fs/selinux/policy, repack boot.img and flash back.
Set SELinux permissive
From root adb shell do echo -n 0 >/sys/fs/selinux/enforce or setenforce 0. However this is not permanent and will be set to enforced on boot. init can't set it permissive. Also setting SELinux permissive is a security risk and hence never recommended.


text:
What is the little icon in the top left
The icon disappears when I'm using the phone.

Sorry, Reddy. What is your answer?

Giffgaff (stylised "giffgaff") is a mobile telephone network running as a Mobile Virtual Network Operator using O2's British network. Owned by O2's owners Telefónica, Giffgaff was launched on 25 November 2009.
It is the Branding logo from your Mobile Telephone Network
From Wikipedia

Thank you for the reply. It only appeared today though and I've used giffgaff for several years. My hubby also has it and hasnt got the icon?

That seems strange... You can individually go through the notifications and identify the app inside settings.


text:
Use Charles Proxy to monitor traffic from an android game
Can I use Charles Proxy to monitor traffic for an online android game like PUBG. If yes then what all information can I get from this? Can I use this to monitor the packets which are sent to the game server while playing the game and get the information like the ping I am getting while playing the game?

Online games usually use UDP (and sometimes also raw TCP and/or HTTP(s)) traffic, but Charles is a web proxy that captures only HTTP and HTTPs traffic. Therefore you will only see a small part of the traffic.
The in-game ping usually bases on the UDP traffic, therefore using a pry will also not help you to get your ping time. AFAIK PUBG has a built-in ping time viewer that can be enabled in-game.

Thanks for the reply. This explains a lot. Is there some way I can monitor the UDP traffic to get the ping time. I know PUBG has a built-in ping viewer but I want to save this data to do some analytics.

You can use Wireshark to see UDP traffic. There are apps that can record Wireshark pcap files on Android. However UDP is stateless, therefore you usually can not identify which received packet is a response to what sent package, hence can't calculate the ping. For that you need an understanding how the PUBG protocol works. Also keep in mind that redirecting/recording traffic can have an effect on what you are trying to measure (like the "observer effect" in physics).


text:
Chrome unable to read files from SD card
I have some HTML files in the SD card in my phone, which I want to open in Chrome. But, when I am entering the URL of those files in the Chrome's address bar with the file:/// prefix, Chrome says Access to the file was denied. But, I have checked that Chrome has access to the storage. See this screenshot:

Please help me out.
I have Android 7.0 Nougat and please ask if any more information is required.

Are you able to save pages to your sd card when using Chrome?

Yes, of course.

Copy the file to the internal storage and check if Chrome can open it.

Yes, it can open from the internal storage.

It seems that Chrome does not have the permission to read the external storage although you have enabled it.

Try to use your file manager to open the file. If the "Open with" dialog box appears, select Chrome. Is Chrome able to open the file this way?

Possible duplicate: https://android.stackexchange.com/questions/186478/how-to-open-local-web-pages-in-chrome-on-external-sd-card

if you type file:///sdcard in Chrome's address bar, does it send you to the internal or the external storage?

Chrome can read file from the SD card folders it has access to. That folder, if you have set to download pages on the SD card, can be located by clicking Menu, then Downloads, then clicking on the gear. You have unrestricted access to that folder. But if you try to navigate to the parent folder, you will receive an Access to the file was denied message (if that folder is located on the SD card).
You can copy your files in that folder and read it from there. Or you can copy them to the internal storage and access the internal storage by typing file:///sdcard/ from Chrome's address bar. The internal storage is not restricted and you can navigate to any folder.

You are right, Chrome can read and write from the Android/data/com.android.chrome/files/download folder in the SD card, but is unable to access it's parent directories. Thanks.

I have made a browser app of my own. In that app, everything is working fine, it is able to access the SD card. See this screenshot. I can still remember that I haven't used any special permissions in that app.

@PuspamAdak I will have to check but if I remember correctly Firefox is also able to access the SD card in its entirety.

I know that using ADB, we can grant permissions to apps. So, is there any way to grant SD card reading permission to Chrome?

@PuspamAdak I am not sure if it is going to work or not on a non rooted phone. But you can try (if you have not already done it) the following command: adb shell pm grant com.android.chrome android.permission.READ_EXTERNAL_STORAGE. I have a rooted phone and with some Xposed modules, Chrome has full access to the SD card.

It didn't worked. Anyway, thanks for the information and for your involvement in this question.

Now, I am using my self-made browser for this purpose and some third-party HTML viewer apps for some more features.

Am not a devloper but according to my experience -
Actually after an update you can check in your Android Apps Manager Settings you will see Chrome is only allowed to read only MEDIA files not EXTERNAL files. To fix this those who have APK EDITORS in your PC, you can edit the MANIFEST file to change the permission (READ_EXTERNAL_STORAGE), otherwise please contact Google to inform this issue


text:
Can I increase the volume of the end-of-call beep?
According to this article, Google softened the end-of-call beep to an almost inaudible level following customer feedback. I happened to like the beep because it made it easy to know if a call had been dropped when the signal was rubbish. Is there a way to bring it back? (I know it’s still there, but, as I said, it’s almost inaudible, even when the call volume is set to max. I’d like to raise the beep volume.)
Thanks for any help.


text:
How to prevent the use of the safe mode with Android?
My 13 years old son found how to start his smartphone in safe mode to disable parental control.
Is there a way to prevent this ? For example, "protect" the safe mode with a password ?
Thanks !


text:
How root huawei y7 trt lx1/ switch slot?
I am trying to root my phone,

I unlocked bootloader
I have uploaded Magisk-v16.6 to internal storage
I flashed by many twrp versions (fastboot flash recovery TWRP_3.2.3_TRT-LX1_by_kiruha_21.img/ twrp-3.2.3-4-land /
boot-without-enciphering-data / twrp-3.3.1-0-CRO_U00 /
TRT-TWRP-3.1.1-0818 /TWRP_3.2.2_TREBLE_TRT-LX1_by_kiruha_21 /
twrp-3.3.1-0-whyred but every time when I start phone i twrp mode -
touchscreen not working
I read https://forum.xda-developers.com/showpost.php?p=77597383&postcount=86

And I try to switch slot but when I run fastboot --set-active=a
I get error: Device does not support slots.
and when I run fastboot getvar current-slot I get
current-slot:
finished. total time: 0.002s
my fastboot version fastboot version 1:8.1.0+r23-5~18.04

The safest way to use Magisk is NOT to download other TWRP versions ... You need your Stock Recovery & Boot.img files, The boot.img must be patched with Magisk Boot Patcher ..

Try "Method 2" - Patch Boot Image ... https://www.thecustomdroid.com/install-magisk-root-android-devices/

The bootloader must load the DTBO image that is compatible with the recovery image. in your case Touch is not working because the TWRP version does not support it. There is not much you can do, the TWRP kernel must be compiled with touch support (or maybe binary hex-patched).
Look for dtbo.img or (edit: dtb is appended to kernel for y7)
use the adb shell commands TWRP comes with:
https://twrp.me/faq/openrecoveryscript.html
You can also try to boot TWRP from fastboot instead of flashing it, sometimes this will affect to touch screen work.
fastboot boot C:\adb\TWRP_3.2.2_TRT-LX1_by_kiruha_21.img

regarding switch slots, you can not switch if you don't have A/B device. don't mix up different recoveries.
please note the differences between /etc/recovery.fstab
only in TWRP_3.2.2_TRT-LX1_by_kiruha_21
/dev/block/bootdevice/by-name/userdata fs: f2fs
/dev/block/bootdevice/by-name/
vendor, product, version, log

only in TWRP_3.2.2_TREBLE_TRT-LX1_by_kiruha_21
/dev/block/bootdevice/by-name/userdata fs: ext4
/dev/block/bootdevice/by-name/
fsc, lksecapp, sbl1, dip, dpo, limits, mcfg, mdtp, mota, oem, syscfg

Please check if your phone has f2fs or ext4 file system, and check if vendor partition is present or not. Select the proper TWRP variant according to your partition layout.
you can check your partitions from adb shell or terminal emulator (one of these commands will work)
ls -d /dev/block/*/*/*/by-name/*
ls -d /dev/block/*/*/by-name/*
ls -d /dev/block/*/by-name/*

for file system type (one of these commands will work)
df -t ext4 /data
df -t f2fs /data
df -T /data
mount | grep "/data "

So, What version of twrp should I use? what twrp version is supported?

the version does not really matter 3.2.2 or 3.2.3 should have minor differences

When I try adb shell twrp backup SDBOM I get error:
System
Data
Boot
Compression is on
Digest Generation is off
Updating partition details...
...done
 * Total number of partitions to back up: 3
 * Total size of all data: 2229MB
 * Available space: 9877MB
[BACKUP STARTED]
 * Backup Folder: /data/media/0/TWRP/BACKUPS/J5Y7N17718005067/2019-07-12--22-53-24
Can not create '/data/media/0/TWRP' folder (Permission denied).
Failed to make backup folder.
Backup Failed
Done processing script file```

/data is mounted? maybe related to encryption? share link to adb pull /tmp/recovery.log (pastebin.com)

you can save backup directly to PC adb backup -f data.twrp.ab --twrp compress data (the message "Now unlock your device and confirm the backup operation" can be ignored)

When I run adb pull /tmp/recovery.log
I get adb: error: remote object '/tmp/recovery.log' does not exist

When I run ls -d /dev/block/*/*/*/by-name/* and smilar that You wroten, I get error: ls: /dev/block/*/*/*/by-name/*: Permission denied

The touch screen started working when I moved magisk and supersu from the internal storage to the sd card, Thanks @alecxs

I have one more question,  When I go to backup, a check data, system and boot and I "Swipe to Backup" I got error: Can not create 'data/media/0/TWRP'folder (Permission denied). Failed to make backup folder. @alecxs

The best and safest way is to root it with magisk. First you need to unlock bootloader. It can be done with adb and fastboot commands. Then you have to flash twrp recovery with adb. After that you have to flash the latest magisk available via TWRP. latest Magisk is 20.1


text:
How do I change phone number in Viber from SIM1 to SIM2, when I only have data on SIM2?
How do I change Viber phone number in a dual-SIM phone from SIM1 to SIM2, when my current Viber account's phone number corresponds to SIM1, but I only have data on SIM2? (e.g. when I have moved to a new network)
(The Viber doc does not say how to)

In Android > Wifi & Internet > SIM & network, Enable both SIM1 and SIM2. Set 'default SIM for mobile data' to SIM2.

Apparently Viber needs to see old SIM1 as well, to verify it corresponds to your account, before it will allow changing phone number. But SIM1 is disconnected and doesn't need roaming; all your data is now coming via SIM2. While you are in this in-between state, you will not be able to receive any calls or messages with Viber - but neither Viber nor Android won't actually tell you 'No network on SIM1'. Viber will not notify you it's offline (oh no, proper notification would be too easy...), it will appear as if it's online, except when you try to send a message it will just get silently delayed, or when you try to make a call you get a 'No Service' dialog (but it won't say which SIM, and even if you  do have service on SIM2 and SIM2 is enabled as default).

Close and reopen Viber. Go into Settings > Account > Change phone number > New phone number > Continue > Continue (to prompt about spamming your contacts with your new number)

Type in the new phone number (from SIM2) and press Continue. Viber will attempt to message all your contacts but fail with 'No Service'. Ignore that. (Actually it's desirable to prevent Viber spamming your entire contact book)
Viber will send the confirmation code to the new SIM2 number. This should succeed. This is the crucial step.
Verify it worked by checking that the phone number at the top of the 'More' profile page (under your picture) has changed to the new one.
If this step didn't work, do it again till it works. Make sure you actually have data connectivity on SIM2.

In Android > Wifi & Internet > SIM & network, disable SIM1. (At this point you could power down and remove SIM1 from SIM tray, if you won't need to reactivate it again/soon).
Now, you apparently have to reboot your phone. (Quitting Viber and deleting its cache don't seem to be enough. Although the Viber doc implies this is never needed.)
Restart Viber and everything should be fine under SIM2.

(None of this procedure is described in Viber doc > Change phone number but should be. Possibly because dual-SIM phones are not very common in Europe and US.)


text:
How to open keyboard in Wine app?
I would like to use Notepad++ on Android, if possible. The only thing I found was this app, which, unlike the regular Wine, seems to emulate an entire Windows system. The only problem: I can't enter text. Surely I could connect a Bluetooth keyboard, but at that point I might as well take a laptop with me. I've also tried simulating a press of the Alt key using the app "XPosed Edge", but that doesn't open the keyboard, unlike in some other situations. Even when I let XPosed Edge enter a preset text, it does not appear in the console window in Wine.
So how do I enter text in this app? Alternatively, is there a different way to get Notepad++ running on Android (or is there a proper app with all of its features)?

This thread suggests installing extra software just to open the keyboard, which I not only find strange, but I also doubt that it works, since entering text with XPosed Edge didn't work.

Not related to question, but notepadqq is a linux alternative and for android try DroidEdit

Not a full replacement, but "QuickEdit" has syntax highlighting, persistent state, regex search+replace, optional word wrap, undo/redo, autocomplete, line numbers, style options, autosave, …: https://play.google.com/store/apps/details?id=com.rhmsoft.edit


text:
How to auto-sync photos on Android [replicate Samsung Cloud]
On the Android phone Samsung Galaxy you can use Samsung Cloud which will sync your photos to online. Can we replicate this on a personal level to just your computer (and not going through Samsung Cloud). Here is how I imagine this:

You are outside somewhere and take some photos.
You come home and your Android connects to your home wifi.
Then an app or service wirelessly transfers the new photos to a folder on your laptop.

Thank you.

To my knowledge, there is no on-board solution available. But with a little 3rd-party-help, this could be accomplished:
There's e.g. the app PhotoBackup (also available at Play Store if one insists) which does exactly that: automatically backup your photos as soon as they are taken – to your own backup server. For this it needs a counter-part on the server/computer you wish to backup to, which with this app is the tricky part (and described on its homepage).
Some alternatives can be found in my app lists here.
A third one would be to self-build a solution with one of the automation apps like tasker or macrodroid: trigger a sync whenever a photo was taken. As I haven't done that, I cannot provide a recipe here.


text:
Where do I find the Samsung S5 private folder in adb?
So my dear old Samsung S5 has died in a bootloop. But before I either wipe it or trash it I wanted to recover my old photos. I've managed to pull most of them by going into their folders and then pull them in adb shell. However, some photos are in the private folder and I don't know where it is. So my question is:
Where do I find the private folder in the Samsung S5 with adb?
The Dr.fone software managed to pull some of them, so there should be some way to reach them I think.

maybe helpful https://android.stackexchange.com/questions/205430

@alecxs Thanks, but I dont think the private folder has anything to do with emulations. May be wrong about that. I'm kinda new to this as well.I've tried to look through all folders with l -R, but can only find folders and the .jpg from my ordinary gallery.


text:
Phone gets stuck after charging
My phone is somewhat older sony xperia v. still running on android v4.1 jelly bean.
recently it behaves abnormaly. whenever I put it in charge (wall adapter or usb plugged into a laptop) , it only sometimes very slow to respond while chargin and almost always slow to respond after i remove the charging cable. its usually working very much fine but in only these situations it acts abnormly.
i don't have many apps installed and i usualy force-stop them after i use them. and also phone works very much fine in normal situations. only after charging this happens.
why is this happening and what can i do to avoid this? please help

Your device is very old and contains dozens of vulnerabilities. Therefore one very likely scenario is that malware has infected your system using one of the vulnerabilities and now uses your CPU to do something, e.g. Bitcoin mining or something similar.
As on Smartphones heavy CPU usage results in high battery usage (which is usually easy detectable by the user) this malware only abuses your device while it is charging.
As it is so old I assume it has only one CPU core and if the malware is active the CPU operates at full capacity and hence the device is nearly blocked.
The detection if the device is charging or not is a bit slow therefore this effect continues some time after you have disconnected the phone from the charger.

Thank you for your answer, but please consider few points here. it works fine while charging most of the time, but problematic behavior comes after I remove the charger.No my phone has 2 cores(Qcom snapdragon s4 krait with Adreno 225). Anyway if what you said is the reason, what can I do? what can I do to fix this?


text:
How to make fennec(firefox) not reopen and automatically load the last open tab?
After removing the Firefox Android browser (Fennec) activity and reopening it again, the lastly open tab appears and loads the webpage.
How can this be disabled?
(by this, I mean that the tab that was last opened, is reloaded automatically upon reopening the firefox activity.)
background

I do want open tabs to be conserved during cycles of closing and reopening the firefox/fennec activity.
However, it is annoying that this setting to keep tabs, provokes the last open tab (which was displayed at the moment the firefox activity was closed) to be automatically reloaded. More often then not I do not want to revisit this exact webpage, but was expansive mobile data volume and time for this.

Was Firefox just in background or did you explicitly close the Firefox app (e.g. by swiping it away form the recents list)?

explicitly closed

What page do you want to load when you open Firefox with multiple tabs open?

@ReddyLutonadio upon reopening Firefox and to avoid loading any online resource (while keeping the tabs) it would be most lovely that it drops you onto a "new tab page". Indeed this is some workaround currently, as this way upon reopening you are at the offline new tab page (hence no load).

Did you have a look at the edit made on my answer?

To disable restorng tabs, go to Firefox settings, then Advanced, click on Restore tabs. Select "Don't restore after quitting Firefox". It will not open previous tabs when you restart the browser.
But you said that is not the behavior you are looking for. Then the other possibility is to set as homepage a page you don't care for.  Go to Settings -> General -> Home -> Set a homepage, then select Custom and enter: about:blank (a blank page as your homepage). Click OK. Enable "Also use for new tabs".
From now, before closing Firefox, open a new tab. A blank page will be displayed. When you open the browser again, the blank page will be loaded. The other tabs will still be there.

This does not keep the tabs. As expressed in the question, I do not want to delete all tabs, I only want to prevent the last active browser tab to be loading upon reopening firefox. With your suggestion, as tested, the tab is indeed not loaded, at the costs of loosing all tabs as well.

@humanityANDpeace See edit


text:
How to switch between APNs using adb?
Is there any adb or shell command available to switch between different APNs?

There is a very similar question which contains also some interesting links for you:https://android.stackexchange.com/questions/117125/how-do-i-add-an-apn-via-adb


text:
Can't boot into recovery mode after flashing TWRP on Samsung Galaxy S5
Problem
I can not boot my Samsung Galaxy S5 into recovery mode after flashing TWRP.
Background
I am trying to install LineageOS on my Samsung Galaxy S5.
What I tried
I followed the install guide on the LineageOS wiki:
1. Installing heimdall, which I built from source to get v1.4.2, since the previous version could not complete the handshake with my phone (other people had the same error)
2. Checking if heimdall works by using heimdall print-pit, which it did
3. Flashing TWRP by using heimdall flash --RECOVERY twrp-x.x.x-x-klte.img --no-reboot. Keeping their disclaimer in mind I tried both the current version as well as two older ones. Heimdall outputs RECOVERY upload successful, and I disconnect the phone (after the device has been released).
4. Booting into recovery mode -> FAIL
Error
The device boots into download mode instead (and no, I did not accidentally switch the volume buttons). There is no error message.
Edit
I originally (and wrongfully) assumed the device to be Samsung Galaxy S5 LTE. It was, however, a Samsung Galaxy S5 Plus (at least this is how I explain the error).

Preface
I have found the solution to my particular problem now, but if someone else knows more about this feel free to improve my answer or post your own.
Solution
Annoyed with what I thought to be heimdall's fault, I turned to odin (not in a religious way).
This, however, gave me the same error. Close to desperation, I decided to check everything that I did again, and luckily so: Because the guide was emphasizing that the TWRP version has to be the correct one for the model, with not even a little deviation, I checked and found that what I thought to be be a Galaxy S5 was actually named Galaxy S5 LTE-A. However, the model read "SM-G901F", which belongs to the Galaxy S5 Plus. So after downloading the correct TWRP and LOS versions, everything went fine.
I am not sure if this was the only problem or if there is still a problem with heimdall, since the linked reddit thread suggests so.
Conclusion
All this may be very well due to me not being patient enough to get the correct model before I start. In this case, I still hope that my error can serve someone else in their search, seeing as I linked a lot of resources (and maybe other people make the same mistake as me).


text:
adb device doesn't listed on cmd {Lenovo K8 Plus}
I am trying to root my Lenovo K8 Plus after unlocking bootloader. I try to install TWRP and somehow the TWRP recovery doesn't open and the phone is struck in the bootloop.
I then fastboot the device and connect to PC and open minimal fastboot cmd. The phone wasn't listed in adb device, but listed in fastboot devices.
I think usb debugging is not turned on because the system doesn't restart (maybe there is no ROM).
What should I do?

don't mix up adb with fastboot

Hi, I try to make your post more clearer. This requires me to edit your sentences and add more words, which may not be your intention. Please check and see if I understand you correctly.

Common mistake these days people do not read the instructions.
Here is a example Warning from TWRP site:

This device uses dm-verity!
This means that swiping to allow system modifications will prevent you from being able to boot if you are using the stock kernel. In order to bypass dm-verity's boot prevention, you will have to install a kernel that has dm-verity disabled in the fstab.

Go back to the Tutorial where you have downloaded TWRP and read, i am pretty sure there is something you forgot to flash.
Universal DM-Verity ForceEncrypt Disk Quota Disabler
Another common mistake after flashing TWRP you must not boot into android. Reboot straightforward into recovery right after flashing, otherwise your custom recovery will be replaced with stock recovery
/system/recovery-from-boot.p

Universal Disable_Dm-Verity_ForceEncrypt.zip has issues with encryption, no-verity-opt-encrypt.zip is recommended instead


text:
How to make Termius look for hostnames on the local network first?
I have four devices:

Windows 10 PC
Android Phone (v6.0.1)
Internet Router
"servername" (Raspberry Pi 4)

All are connected locally using Wifi (not that it should matter) using the simplest possible configuration imaginable.  Every device has working internet access.  Everything talks with everything else nicely apart from when I try to use Termius on Android to ssh into "servername".
On the PC I can simply issue the command putty fred@servername and I can login without difficulties, as one would expect.
However Termius on the Android phone does not seem to understand that "servername" is attached locally to the same wifi network as the phone itself.  If I open a local SSH session on the phone itself and ping "servername", then it appears to be going after some random internet IP address (92.xxx.xxx.xxx) and fails to login.
If I use the server's local IP address (192.168.xxx.xxx) then Termius can SSH to it with no issues.
So, how can I persuade Termius (free version) to understand local network host names?  I cannot find any settings that correspond to this problem.

So, how can I persuade Termius (free version) to understand local network host names?

In fact you have to persuade Android OS, not a specific app. Resolving hostnames is handled by Android's C library to which apps are linked through APIs at the time of compiling.

On the PC I can simply issue the command putty fred@servername and I can login without difficulties, as one would expect.

You haven't mentioned which Wi-Fi router you are using and if you have a DHCP/DNS server running on local network or not. But to resolve local hostnames on Android, you must have a local DNS server running. Usually Wi-Fi router is the DHCP/DNS server.

I cannot find any settings that correspond to this problem.

That's the difficult part, you have to configure your phone to use a local DNS server but Android doesn't provide a straightforward way to do this.

If I open a local SSH session on the phone itself and ping servername, then it appears to be going after some random internet IP address (92.xxx.xxx.xxx) and fails to login.

It indicates that Android phone is sending DNS queries to internet. You have to make sure that DNS queries are sent to the local DNS server only. Public DNS servers don't know what hostnames you have set on your private network. Android loves Google so much, so you will often find queries going to 8.8.8.8 (may be when router is advertising the IPv6 DNS server). Configure static IP in Wi-Fi settings to set IP address of local DNS server as the first (and preferably only) DNS. Or if you have root you can use Android kernel's built-in firewall netfilter to force a nameserver. Since DNS uses UDP port 53, do a Destination Network Address Translation (DNAT):
~# iptables -t nat -I OUTPUT -p udp --dport 53 -j DNAT --to 192.168.1.1:53

Non-root solution which works for both Wi-Fi and Mobile data is to use a VPN app like Virtual Hosts which intercepts DNS traffic and makes queries to configured upstream DNS server.
This should resolve your problem.
For more details please see How to ping a local network host by hostname?.
Related: How DNS works on Android?


text:
install a flashable zip, using the "Install Update from SD card" option built into any stock recovery
I'm looking for a way to install a flashable zip (no OTA zip), using the "Install Update from SD card" option built into any stock recovery, without installing a custom recovery.
Is there any way to do this?
Will "unlocking OEM" in developer settings allow this?

A stock recovery is engineered to only accept .zip files signed by the OEM. You can try to flash something else, but the process will likely be halted.

the answer is no. unlocking will not change the behaviour of stock recovery. what you can do is boot into custom recovery from PC via fastboot without flashing it.

Unfortunately this is not possible on devices newer than Android 5.0.
After 5.0, signature verification was enhanced to combat the Universal Signature bug.

Prior to Android 5.0, a bug existed in the Signature verification program, something to do with the way the signature was validated allowed another signature to result in the same validation ( The Universal Signature ) .
To answer your question for Android 5.0 and lower..

Repackage the custom system.img into an OTA Update format
Sign the update package with the Universal Signature
Hope that it validates through the stock program.

In most cases, the recovery program checks the format and signature are correct, then it check's if the package is designed for your device by reading the build.prop.
If your build.prop matches the package, and the signature is validated it will install.


text:
How does one remove a single song from a downloaded album?
I have purchased an album on the play store and downloaded the entire album to my Android device, through the Play Music app. I want all of the songs from that album on my device, except for one.

If I click on the breadcrumbs icon next to the song, I can delete the song from my library, which will also remove it from my device, but I don't want it removed from my library. See the first image.
I can click on the downloaded icon below the album name, but that removes the entire album from the device. Refer to the second image.

How can I remove this one song? I have either missed something or this is quite awful software.

Can you locate the songs on your storage with your explorer? If so, then you could be the way to go

@Beveloper Apparently you need root privilege to access it, https://android.stackexchange.com/questions/51665/where-does-google-play-music-v5-store-music-locally.


text:
msgstore.db nightmare on my WhatsApp
I have a 780 MB msgstore.db WhatsApp file that I recovered when my  phone data was corrupted ( from the available image - data recovery software).
now the issue is that I have the UN encrypted msgstore.db file available and the encrypted files that is dbcrypt or  whatever they go by - those were not recoverable
when I open this 780 MB file with a SQL lite reader I can browse the database so it is not corrupt.
I have yet another 580 MB msgstore.db
which is corrupt and the desktop software cannot read. this is the original file that I recovered from the corrupted image and I had hoped to restore this very file after i wiped  my data and Re installed  Stock ROM

after wiping and new ROM installation
WhatsApp went to the cloud (
Google Drive)
and created A 380 MB  msgstore.db
this file has a lot of my chats missing

so here are my questions please help me I am stranded without WhatsApp for the last two weeks
-- even though msgstore.db can be read on my desktop , if I remove 380 MB msgstore.db & put  the 780mb msgstore.db
in  /data/data/com WhatsApp/data bases and clear cache , WhatsApp gives a message that it has trouble reading my chats please wait while it tries to restore and then it will look for the DB crypt files.
- read about  WhatsApp xtractor
if I use this Python based bat script &
extract  messages as HTML from the 580 MB and 780 MB files,  how can I import them back to WhatsApp so that my chat is restored .
-also read a  method of merging > 2  msgstore.db files. but seeing the fact that a non corrupt 780mb file got rejected , is this a  viable option

you forgot to set file permissions especially uid/gid https://android.stackexchange.com/questions/169607

755 & root owns them. Thanks so.much didn't realize that.I will Chown  them to WhatsApp but the symptoms in that post are  different from what i see here. But will give it a.shot & inform.755 ahould still be good for reads .

with root permissions it can not work. look for "userid" in /data/system/packages.xml - most important file on android

ok Thank you again.

sounds.like WhatsApp  uid .& gid aee already copied when u copied over the foles  even though they were owned by root  . i.didnt do any chow  or octal change. I still keep getting the same error message it looks like your chat cannot be read. something else going on

First delete /data/data/com.whatsapp then reboot and check secontext too with ls -Z

there is nothing special from selinux that could call attention . Here goes the o/p ls -Z

 # ls -Z /data/data/com.whatsapp u:object_r:app_data_file:s0:c512,c768 app_light_prefs u:object_r:app_data_file:s0:c512,c768 app_minidumps u:object_r:app_data_file:s0:c512,c768 app_textures u:object_r:app_data_file:s0:c512,c768 app_webview u:object_r:app_data_file:s0:c512,c768 cache u:object_r:app_data_file:s0:c512,c768 code_cache u:object_r:app_data_file:s0:c512,c768 databases u:object_r:app_data_file:s0:c512,c768 files u:object_r:app_data_file:s0:c512,c768 lib <etc> u:object_r:app_data_file:s0:c512,c768 shared_prefs dreameltemtr:/ #

what I did find out was after I added the 780mb msgstore.db it did try and read it ..for a moment I could see the messages after which I got the SQLite error message. Malformed database. But this is NOT a malformed db. I can open  it in  SQLite Browser.Another observation : after sometime , the 780mb file just got deleted. The pre-existing file  being renamed there wasnt msgstore.db around & it tried to do a chat restore again . I then restored the earlier 'valid' msgstore.db  & take it from there

have not solved it anywhere close. still in the same quandry I am missing about six months of WhatsApp message data that I can see on a desktop but I cant put it back on WhatsApp.


text:
fastboot cannot see my phone (moto3g) when adb can
Introduction:
My phone is moto3g (bootloader unlocked), my OS is Debian GNU/Linux 10 (buster) and I want to install Debian native on it. To do so, I need root my device, and to do it i have to use fastboot and adb command.
What doesn't work:
fastboot devices shows nothing, other fastboot commands shows <waiting for any device> (adb works good, as excepted).
Things that I did
-Turn on usb debugging.
-running fastboot with sudo
-run one of fastboot commands ADB adb reboot recovery
-run one of fastboot commands when android was booted
-installed some drivers with those commands:
sudo apt-get install libz1 libncurses5 libbz2-1.0:i386 libstdc++6 libbz2-1.0
sudo apt-get install lib32z1
sudo dpkg --add-architecture i386
sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install lib32gcc1 lib32stdc++6 libcurl4-gnutls-dev:i386
sudo apt-get install lib32gcc1 lib32stdc++6 libcurl4-gnutls-dev:i386

-my andoird rules (sudo nano /etc/udev/rules.d/51-android.rules):
SUBSYSTEM=="usb", ATTR{idVendor}=="2e76", MODE="0666", GROUP="plugdev"

I tried 2 versions of idVendor: "2e76" (from lsusb) and "22b8" from this site.
Had someone of you similiar issue? I think its something with drivers, but I couldn't find that myself.
PS. I have also windows machine, so I can use it if needed.
EDIT: I wasn't rebooting between doing those things.

Fastboot will not work within recovery. When in recovery you are not within the bootloader were fastboot works. Adb works within the Android OS or within recovery.  Try adb reboot bootloader then enter the command fastboot devices

your solution did work for me. try sudo fastboot, or double check fastboot from windows (maybe phone have problem)

@alecxs I edited my answer, I did both of things that you wrote

@BoLawson I edited my answer, I did both of things that you wrote

how did you unlock bootloader then? check with another device / cable

I followed steps from motorola unlocking support - and fastboot there was working well, as excepted @alecxs


text:
What are AP Bands?
There are 2 AP bands in Android WiFi settings (2.4GHz and 5GHz). What is their use and what effects will be seen if we modify the WCNSS_qcom_cfg.ini file in order to support 40MHz.

Q1:

What is their use

These 2 bands, 2.4GHz and 5GHz, are extensively used in consumer technologies for the transmission of data wirelessly. They are both free to use, no need to apply for a license. On a phone, they are use for wireless connections to other access points, routers, or to create hotspots for other phones, tablets, etc.
There are other devices that use these bands such as cordeless phones, routers, automatic garage door openers, etc.
Q2:

what effects will be seen if we modify the =>WCNSS_qcom_cfg.ini<= file in order to support 40MHz

You should make sure that your WIFI chip supports those wide channel. If it does, then the bandwidth will increase (see the difference between range and bandwidth in the note section).

What Channel Bandwidths on 2.4GHz and 5GHz?
On The 2.4GHz Frequency Band
When using the 2.4GHz broadcasting radio you should generally use a channel bandwidth block 20MHz wide. This is because there are more non-overlapping channels available when using 20MHz (as opposed to 40MHz) which means there is less likelihood of congestion or clashing channels.
You can also use 40MHz on the 2.4GHz broadcasting radio. However it congests the Wi-FI in the area so if you live in a built up area it probably isn’t a great idea as it will interfere with other 2.4GHz users.
On The 5GHz Frequency Band
When using 5GHz, however, it is possible to use wider channel bandwidths for increased bandwidth. As such on the 5GHz channel you can use the 40MHz, 80MHz or even the 160MHz channel bandwidths (if your router or AP supports it) for increased bandwidth.

Note:
Difference between range and bandwith

Range : how far your data can travel. In most cases, the higher the frequency of a wireless signal, the shorter its range.
The biggest reason for this is that higher frequency signals cannot penetrate solid objects like walls and floors as well as lower frequency signals. Thus, the 2.4 GHz has a farther range than the 5 GHz frequency.
Bandwidth (speed): Higher bandwidth means that files will download and upload faster, and high-bandwidth applications such as streaming video will perform much smoother and faster.
Higher frequencies allow faster transmission of data, also known as bandwidth. Therefore, the 5GHz with its higher bandwidth will provide much faster data connections than 2.4 GHz.

Sources:
Using the 2.4 and 5GHz bands
What is the difference between 2.4 GHz and 5 GHz?
Why Your Router Has Two Wifi Bands and How They Work
20MHz vs 40MHz vs 80MHz vs 160MHz: What Channel Bandwidth Should I Use?

+1 for detail....


text:
Does blocking notifications at the system level stop data usage?
If I go to
Settings -> Apps & notifications -> Instagram (or some other app)

and turn notifications off for that app, does that stop data usage on my data plan?  I ask because the message, when you turn notifications off for an app, is

At your request, Android is blocking this app's notifications from
  appearing on this device

which would seem to imply that the Android OS will receive the notification, and swallow it up at the OS level.  Which would imply that the phone does receive the notification from the network, thus some data usage would occur against your data plan.
So does blocking notifications stop data usage, or not?

So does blocking notifications stop data usage, or not?

It does not. A notification as stated in Notifications Overview is simply:

a message that Android displays outside your app's UI to provide the user with reminders, communication from other people, or other timely information from your app

When you are connected, your apps will connect to servers to receive messages and communicate them to you. Blocking the notifications does not block the apps from receiving the messages, but from showing them to you.


text:
Can I connect an external flashlight to an Android smartphone and control it?
Can I connect an external flashlight to an Android smartphone and control it?
I've seen it done on an iPhone (YouTube video).
If it's possible, can it be done also via JavaScript?


text:
Phone Clone from Samsung S7 to Huawei P30 blocked?
I'm trying to upgrade a Samsung S7 to a Huawei P30 using the Phone Clone app on the P30.
This works by setting up a WiFi hotspot on the new device and then connecting the old device to it.
This fails every time, but when I look at the old S7 the hotspot has been added to the list of restricted networks, probably because the new phone isn't acting as a bridge to the internet and something stupid in the S7 is deciding it isn't a valid network because no internet.
How do I get Phone Clone to work?
How do I turn off whatever it is in the Samsung phone deciding to block the WiFi hotspot because it's local only?

afaik Samsung have Knox enabled by default which may prevent access to phone data (regardless it is hard to believe such apps are working without root?) but i am still learning...

@alecxs it doesn't get that far and I've given Phone Clone access to the things I want it to copy. It's failing to connect in the first place.

didn't know that such app exist. unfortunately only for huawei - would like to see it for other devices too