text:
Can I automatically turn off WIFI completely whenever not connected to a network on Android 10+
Here's my problem:
I used to run Lineage 16 on my Pixel3a, which still had the "profile" option where I could do things like "When my home network is not within reach, switch to another profile". I used this to turn off wifi when leaving the house and it worked very well. Important: This did not need my location services to be on to work.
Now I've upgraded to Lineage 17.1 (Android 10) and this option is gone. I am now looking into how to rebuild that functionality.
My phone is rooted (via Magisk), and as a software developer I am ready to use all tools I have available.
What I've tried: I've built an app that periodically checks if I am connected to one specific SSID (since that is all I can see on Android 10 anymore - "Am I connected to "my-ssid"?) and then turns of wifi using the shell and sulike this:  sudo("svc wifi disable"). sudo() is my function that opens a process and talks to the shell.
The problem is I don't think there is a way I can guarantee my app always runs, and I'd like this to also work when the app is off? It doesn't even need to be a specific SSID, I'd be happy if my result is: "If we're not connected to a wifi network for more than 3min, turn wifi off.
so what other options do I have? Tasker, just like my own attempt, kind of works but only with location services on, which I'd like to avoid. What else can I do. Can I run some kind of script or a job just on the shell or so?
Is there anything I can do with Magisk or Xposed?
Happy for any help here - the internet is full of links and tips, but they all target older OS versions. Btw the source for my (extremely rough draft) app is here if anyone is curious.

if you have Xposed installed, you can try installing Xposed Edge. Open it, go to More triggers > Wifi Disconncted > Wifi > Turn off. It will turn off wifi as soon as the phone is disconnected from any network.

With methods described below, when the phone disconnect from your wifi network, wifi will be immediately switched off. Also they don't require the Location Services to be on.
A. Xposed Edge
Open Xposed Edge, go to More triggers > Wifi Disconncted > Wifi > Turn off.
B. Macrodroid

Open Macrodroid, click Add Macro.
Click the + on the right of Trigger. Click Connectivity > Wifi State Change > Disconnected from network. Click OK. Select your network(s).
Click the + on the right of Actions. Click Connectivity > Wifi Configure > Disable Wifi. Click Ok
Give your macro a name. Press back, save the macro. The macro will look like this:

C. Automate

Open Automate, click the + at the bottom of the screen to add a new flow.
Click +, Connectivity > Wifi enable?. Click the Wifi enable? block, set Options to Immediately. Click Save.
Click +, Connectivity > Wifi network connected?. Click Wifi network connected? block, Don't click on pick the network, but enter the network name (SSID) manually. Set Options to Immediately. Click Save.
Click +, Date & time > Delay. Click on the Delay block, set the duration to 3s. Click Save.
Click +, Connectivity > Wifi set state. Click on the Wifi set state block, select Off. Note that this block is not officially supported for Android 10+ and might not work.
Link the block has shown on the image below. Press back. Give your flow a name. Press Start to start the flow.

D. Ping your home router
You can use a script in combination with the app mentioned to ping your home router. When the pings are successful, the phone wifi stays on. When they are unsuccessful, disable you phone wifi.


text:
OG Pixel , I can only get to stock bootloader. device is not booting. How can I resurrect the device?
just checking if my device is permanently bricked or there is a chance to resurrect it? I can only get to bootloader.
device is stock
I cannot get to recovery mode (stuck on google logo)
I cannot boot to OS (also stuck on google logo)
the only I can get is boot loader.
fastboot oem unlock get this error
FAILED (remote: 'oem unlock is not allowed')
fastboot: error: Command failed

adb devices does not show my device.
using https://flash.android.com/ it says device not supported (only pixel 2 and up)
any chance to revive this ??
also tried dePixel8, but no luck
adb push dePixel8 /data/local/tmp
adb: error: failed to get feature set: no devices/emulators found

thank you
fastboot flash recovery C:\IT\twrp-3.5.0_9-0-sailfish.img
Sending 'recovery' (26477 KB)                      OKAY [  0.760s]
Writing 'recovery'                                 (bootloader) Command is not supported.
(bootloader) Please unlock device to enable this command.
FAILED (remote: '')
fastboot: error: Command failed

you can change boot slots from fastboot and try to enter recovery. once in recovery flash Full OTA Image

Ok. Let me try tomorrow thank you for the suggestions

check download mode for bootloader version

source: Stack Exchange

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

sort: votes


text:
Some websites not reachable using cellular data but working perfectly using Wifi
I a have a Xiaomi mi 9 se phone and I am not able to access some websites using their IP adress. To give you some context, I have some servers I wish I can access but it not possible, I receive a ERR_ADDRESS_UNREACHABLE in chrome for android when using cellular data but the same IP address works fine using Wifi. Using another phone (Google pixel) the same address can be accessed without any problems using cellular data.
I though it could be a carrier issue but I tried the sim card from the Google Pixel putting it in my Xiaomi phone and still it does not work.
I tried tweaking with DNS configuration but still nothing.
Do you have any idea on what can be the cause of this problem ?

Are you talking about IPv4 (four numbers connected by dots) or IPv6 (multiple numbers connected by colons) addresses? If it the latter your cellular provider might not yet support it. If you enter the IP address then the DNS configuration is not used at all.

Yes it is IPv4 format. Indeed, you are absolutely right about the DNS ans IP addresses, my bad.

Can you give us the first three numbers of the IP address? May be the address belongs to a subnet that was originally restricted but later because of the small number of remaining IPv4 addresses was opened for use but your cell provider still thinks it is restricted.

In fact any ip address will not work when I try to access it from my phone. For exemple I can't access cloudflare's 1.1.1.1 IP address using cellular data while accessing using wifi is not a problem. Also if I put my SIM card in my google pixel phone, I can access any IP address normally.

This source says that ERR_ADDRESS_UNREACHABLE means a DNS resolution problem. Can you somehow find a way to use a different DNS? 8.8.8.8 works often much better.

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


text:
Send SMS to myself for free
I'm testing a Tasker script that looks for a sequence inside a received SMS.
The problem is: who will send me this SMS ?
I could steal another phone and send me a text, but I'd be charged for the SMS'...
Is there an app for this, or even a shell terminal command ?
If the solution dispenses a computer, would be the ideal.
Tried this https://www.opentextingonline.com/, but I didn't receive anything.

You can try using Android Emulator and emulate receiving an SMS there. See https://stackoverflow.com/a/38897485. If your Tasker profile works in emulator, it should work on your phone too. Also,Tasker has a trial app on its website, so you can use it instead of going through the hassle of logging into Play Store, than downloading Tasker from there.

Thank you ! Just for the sake of curiosity, my spending consern was about the SMS. Rectified/elaborated my post.

Now, I'm just having some difficulty understanding the answers from the link you provided: which of them you believe is the most appropriate ? The OP seems to be looking for the same thing I do, but he points out that the provided answers are not adequate

One last thing: Instead of Android Emulator, is there a way I can use Terminal Emulator or something similar from within the phone ? Thank you again.

"for free" is misleading a bit, you still be 'charged' for sent sms (depending on your contract). are you asking for send sms via cmd line intent?

Thanks for the support. Well... All I need is to receive an SMS on my phone with a specific string. Nothing more. Now, who will send this SMS ? Another person ? A shell terminal ? Doesn't matter to me, as long as it's free and easy. :)

why don't you just send SMS to your own number? it works fine to me (at least with Textra) https://i.stack.imgur.com/OR1ZG.png

I'm starting to believe that is the only solution, alecxs. May I ask: was you charged by your carrier in your testings ? Mine charges, and I don't suppose the recipient will change that  :(

yes, of course. although it's a contract with unlimited sms flat, so i don't care

https://stackoverflow.com/q/64301613

Thank you again. That thread is promising. I left some comments on an answer there. Maybe you can respond them.


text:
Connecting to a private IP over WiFi and public IP over LTE simultaneously
I'm designing an Ubuntu app for Android which is running through a Termux chroot jail. The app requires the phone to be connected to a drone through the drone's generated Wifi network. This network does not provide internet access (obviously). Unfortunately, I still need the app to have general internet access while connected to the drone network. This means I need to be able to designate certain address accesses to use LTE and others to use Wifi. Any idea how to set this up from within the chroot jail (or externally)?
Note: I saw a question similar to this one answered 4 years back. However, it doesn't seem like an up-to-date answer was provided. Here's the post.
Thanks for your help!

There's a similar situation asked recently: Unable to communicate to a local WiFi with mobile data enabled. The linked questions on there also explain the difficulty of supporting this on Android devices.

What if you would run the phone in AP mode, and so you would contact the drone? You can identify the drone by its MAC (more hardcore would be to use some zeroconf solution like bonjour).


text:
Does deleting a photo from my android phone's gallery app also delete it from Google Photos(I have backup & sync turned on).If yes, how to prevent it
I have a samsung (android) device and I use samsung gallery app. Question: Does deleting a photo from the gallery app also delete it from Google Photos in which I have my backup and sync turned on. And if yes, then how to prevent it. ie I want a photo to stay in Google Photos even after I delete it from Samsung Gallery app.
PS: If the solution is to turn off sync then how to Turn on just backup on Google Photos without turning on sync.

Does this answer your question? Google Photos deletes copy and original on device

I am using samsung gallery app to delete my photos and not google photos app.

you know that pictures are stored locally? let's say /storage/emulated/0/DCIM/Camera/IMG_20210115_233018.jpg and another copy in cloud. you want to delete it local (it doesn't matter which app deletes this) while keeping the cloud backup. i am afraid the above method is the only workaround (so far)

Yeah but having a more convenient way to delete it locally from samsung gallery and still allowing it to stay in the google photos as a backup would be great. Because visiting google photos every time just to delete something would be too hectic.

Yes, Google Photos does send it to the bin.
You can prevent this from happening by tapping the "Free up space" feature in Google Photos, which will delete all the photos on your phone that have already been backed up to Google Photos.

But I dont want to delete all the photos on my phone. I just want for the deleted photos on my phone to still stay in google photos as a backup.

I'm interested to know why you want the photos on your phone. The main disadvantage I've found with having photos only in the cloud is that downloading the photo in Google Photos also re-uploads it again. So, I try share photos directly from the Google Photos app, to get around that.

If you want to delete specific photos from your device without deleting them from your Google account, the following steps should do it:

Remove your Google account from your phone:

Go to Settings
Tap Accounts
Tap your Google account
Tap Remove account

Delete the desired photos from your phone.
Re-add your Google account to the phone.

Note: this might result in some minor inconveniences the next time you launch various other apps that use your Google account. And it's certainly much more of a hassle than using the method alecxs provided.


text:
How can the battery get discharged while Ampere is showing that it is charging?
How can the battery get discharged while Ampere is showing that it is charging?
Example:
At 1:06 PM, the battery indicates 2%.

At 1:08 PM, the battery indicates 1%, even though Ampere says that the min mA was strictly positive (40 mA).

How is that possible?
I use Android 10 on Samsung Galaxy S9.

Consumption is higher. Try AccuBattery app. It shows realtime (whatever that means) reduction of charge from the battery in a sticky notification. If that is higher than what is reported in Ampere, you have a net reduction in battery charge even during charging. Most likely, USB cable or charger or the usb port of your device is faulty.

You didn't say what your device was doing at the time, apart from charging, or how much your AC charger is "giving". As for consumption, see my oder answer here for some example values. If you eg record a HD video, stream it live while having the display on full brightness, that means about 4W being consumed. Having an USB2.0 charger connected, you'd only get about 2.5W in (500mA at 5V) – and thus would consume 1.5W more than you feed. Just to give an example.

Thanks for the comments, I has assumed, apparently wrongly, that Ampere would subtract the consumption from the displayed charging speed

nevertheless you are using wrong cable. buy another cable with 200 Ω resistor on data pins to let usb charging protocol allow fast charging
https://electronics.stackexchange.com/q/177788

@Robert thanks for your edit, but please don't reduce the image resolution when changing the size of the displayed image.

As said in the comments, the issue is that Ampere doesn't take into account the battery consumption when showing the charging current.
Example:
AccuBattery, which takes into account the battery consumption when showing the charging current:

Ampere:


text:
Notes and Contacts Recovery (Huawei P6 Android 4.4)
I have a Huawei Ascend P6 with 4.4 Android sutcking on the start up logo. I have many important notes (saved by default notepad app) and some unsynched contacts in there. so I have access to the location of them (if it is correct: /data/data/com.example.android.notes/com.android.contacts/com.android.provides.contacts) using aroma file manager. the rom I installed is root and has TWRP recovery so I copied those folder. I was wonder will they be back if I replace the mentioned files after flashing a new rom?

Fort the contacts please see this answer. It contains also a description to check/view the extracted database. In general I would recommend to not only save the files selective, but as you have the possibility via TWRP to make a full backup. If you save data of apps separately make sure to `tar´ them as this includes the Linux access permissions. You can practice data recovery using a rooted Android 4.4 emulator, e.g. Genymotion.


text:
How to host a public website with my domain name on Android?
I have my own domain name, richardbrowning.cf, and I want to host my own website (using this domain name) on my Android phone. My Android isn't connected to Wi-Fi (I am using Mobile Data).
I started locally hosting my website on my Android, (and it was available at http://mylocalipaddress:myport. Then I went to my registrar and added an A DNS Record setting the target to my local IP Address. Now if I go to richardbrowning.cf:myport, I can view my website. But it is still only local.
So I have two issues. I want to make my website public, not just local (so everyone can view my website) and I want to remove the need for putting :port at the end of the domain/website.
By the way, an end note is that I tried putting my external IP Address into my DNS Record instead of my local IP Address, but this doesn't work because there is nothing being hosted to this external IP Address. So if I could maybe host my website to my external IP Address and then put this external IP Address into my DNS Record, then that would work. But I can't find a way to host my website to my external IP Address. I only see ways to host my website to my local IP Address (locally). Thanks in advance.

"So if I could maybe host my website to my external IP Address...". You can't do that behind NAT. Instead you need to do port forwarding in case you are behind a router. In case of mobile data you are most probably behind a CGNAT: https://android.stackexchange.com/a/205807/218526. Contact your ISP to get a static public IP, if possible at all.

Thank you for your answer, but I am not on Wi-Fi, so there is no router involved. I have Mobile Data only. I understand that it would be more convenient with a static IP Address (because they don't change), but right now that isn't my concern. I just want to figure out a way to make my website public/external instead of just local. Any help with this is appreciated. Thank you.

Note that most mobile carriers use a carrier grade NAT system for all mobile device, and most also block nearly all inbound traffic.

I don't think I am blocked from doing this by my carrier. I could do it. I just need to know how. Can anyone help with that?

I don't think any carrier provides public IPs, if not part of a special plan. You must be behind a CGNAT. Even if you don't want a static IP, it must be public. Internet is the public network, so private IPs are not accessible over there. You can confirm if your external (which you think is public) IP is not within the range of private IP addresses: https://en.wikipedia.org/wiki/IP_address#Private_addresses


text:
Is my old phone still recoverable after super bricking it?
A long time ago, when I was way dumber, I really wanted to upgrade my old phone (Wiko Lenny 3) from Android 6.0 to Android 7.0 but with no avail. Since that day, the phone is no longer bootable. If I try to connect my phone with the computer, it won't even detect it. I tried every way to fix the full issue.
What I mean with "super bricked phone" is that I tried to install another phone's system (Wiko Lenny 4 probably, can't remember) into the main phone, which lead to the complete brick that the kernel, system, boot, preloader and such stuff are corrupted. Now I know that I can buy another motherboard and install it into Wiko Lenny 3, but I don't want to waste that much of my money for something that I completely rigged.
If there is any other way to fix this issue, then I could try without making more damage to the Wiko Lenny 3 phone.
Edit 1:

I tried to find the KCOLO/KOLO/COLO point, that I need to short with the GND golden point, but I literally can't find the KOLO point. This device has 2 GND points, so with this, I don't know which I need to short. I provide an image to it

https://forum.hovatek.com/thread-11802.html

I don't know if it will succeed, but I trust this site.

i really have no clue but i have seen somewhere that SCL might be the kcol0 test point. i believe it's the first point near the touch screen connector https://www.youtube.com/watch?v=xUYMk0C4ylY

https://forum.xda-developers.com/t/can-someone-help-me-with-this-bricked-phone.3308769 btw i recommend NOT to soldering any wires to the PCB. just puncture with some needles


text:
Why Google Apps have TikTok APIs and Libraries?
I'm new to Android app development, but a privacy Enthusiast who looks into the Activity's of Apps to see what kind of tracking does the specific apps use. And while doing so, I came across, TikTok's APIs and Libraries that are related to Account and all. And I've a very little amount of knowledge about that.
BELOW IMAGE: Receivers that Google App has. [App is Warden]

I've turned off those TikTok's things(I'm not sure whether they're libraries or APIs or any other and sorry for that).
I've searched the internet and got no results that are related to my query but related to usage of TikTok's APIs.
Editing's are welcome. Waiting for knowledge about these.:)

Related on Stack Overflow: Does anyone know the function of this Android class? “com.google.apps.tiktok.tracing.db”?. Google is known to use weird/"unique" package names (there were some questions related on here, but I currently couldn't find them), and it's just a coincidence that there's TikTok app now.

Here, in India, TikTok is banned months back stating "Privacy Concerns" by the Government. And I was somewhat amazed to see every Google Apps using the the content from the banned app...

Wow, that sounds weird. Just read that tweet by Pratik on twitter. Google is weirdmost of the times!

According to the Google Xander (which is "Gold Product Expert") on the support:

Tiktok is an internal component in Google used by many apps, it was written and named like that before the social network existed and is absolutely unrelated.


text:
How to boot into the Recovery mode without volume buttons and reset hole?
I'm having a Chinese tablet Allwinner Quad Core A33. The tablet has only Power and Home buttons. No Volume buttons, no reset hole.
When it boots, it freezes on the Company logo.
The ADB devices command sees no devices.
I am trying to boot into the Recovery mode by holding down the Power and Home button, then releasing the Power button, but nothing happens (like pressing the Power and Volume Up buttons on other devices).
Is there any way to boot into the Recovery mode?

Nice tip for the future: before you buy a phone, always check its rootability on the Google. If you find such problems like yours, boycott the whole manufacturer.

try one of this to repair 1) livesuit 2) phoenix-suit 3) phoenix-usb-pro 4) phoenixcard

I found that I can go to the Download mode by pressing and holding down the Home button. Then I connect the USB and press the Power button. I also used Phoenix Suite.

Sorry, this site cannot help in finding external sites for firmware. Also, unlike traditional forums where posts are used to reply to each other, Stack Exchange is a Q&A site, thus answers can only be used to answer the question, not for asking further questions.


text:
What can be done with a phone that has an encrypted bootloader
I am trying to get a rooted android phone set up for reverse engineering purposes. I tried to root two separate phones (SM-G925A and a Google Pixel 2) but they both turned out to have locked (meaning, encrypted by the carrier) bootloaders.
Is there really no way to get around this without finding an exploit? I have tried everything short of taking the phone apart and flashing the ROM in (whatever device you use to flash a ROM chip.) Would that even work? I can't even find a single example of someone doing this for any model of phone on the internet.

A bootloader does not encrypt or decrypt anything. Hence a bootloader is never encrypted. I assume you are referring to the digital signature that can be checked by the bootloader but again neither the bootloader nor the checked software is encrypted.

@Robert indeed bootloader lock state is encrypted, but that's different topic

@alecxs Are you really sure you mean encryption and not cryptographically tamper protected?  Do you have any reference for the encryption in bootloader?

@alecxs If the bootloader is OEM locked, you can't unlock the bootloader without using an exploit. For both the pixel 2 (verizon model) and SM-G925A, there are currently no known exploits. I'm 100% sure about this.

@Robert I'm not completely sure how it works honestly, you could be right about that

@Robert the latter one. gklsodascb right, verizon is a different story, kindly include that info in your question

some older unlock stories, just linking https://forum.xda-developers.com/t/unlock-bootloader-on-verizon-pixel-2-confirmed.3730076

regarding samsung try to re-brand SM-G925F with modded Odin https://forum.xda-developers.com/t/patched-odin-3-13-1.3762572 or find combination rom according to your bootloader version https://samsungfirmware.net/samsung-galaxy-s6-edge-sm-g925a-combination-firmware


text:
I want to advertise, but I don't want to publicize my personal#...unsure what options are available? (android handset Tracfone service)
My understanding is there are options to advertise with a # that is-not my personal#, without getting a new cell-plan or new device.  What I don't know is whether I should be looking carrier-side, or android/handset side (I just swapped from a nearly-decade-long flip phone stubbornness just a couple weeks ago ;P )
Thank you for options to use "781 - 784 - 7707", or some randomly-generated #, to ring my personal handset as if the person really dialed my real number "123 456 7890" -- I know there are probably myriad options so any answer is appreciated, looking less for companies and more for what the landscape is for this (does VOIP come into play? Does it matter if I'm part of the futile crowd trying to 'limit google use on their android'? Have heard you can "play" google-voice to do call-forwarding for free, but imagine all calls are indefinitely stored...wouldn't really care, so long as it were reliable that I never miss a call to the business number, cannot afford it!!

This is a bit unclear: Do you want to place ads on other people devices but not include your number – or are you rather asking to see ads without revealing who you are? And what does this have to do with Google Voice forwarding calls?

You question is a bit confuse. Are you talking about making a call with or without sending your own phone number (e.g. temporary suppress number sending via #31#).

No I simply want to advertise, but NOT reveal my actual phone number.  So I need to get a new number(not a new service), that forwards to my handset (as-if the person had dialed my real number)  I believe "business number" and "vanity number" may be what it's called but am having trouble understanding what the options are... Just wanna advertise, without putting my personal number - I know there's ways of getting & using a "forwarding vanity number" so I can obscure/hide my phone#, but still post adverts with the vanity # that will ring my handset :)

Google Voice was the only free service for getting a "new phone #", that - when someone calls it - would ring my cellphone.  I control it from my google-account, it works quite well but not well enough for me for primary business # (will still keep & use it as backup/for certain use)
Also there's plenty of app-based ways of getting a 2nd number, but google voice is the only free one.


text:
How can I configure Google voice access so that I only have to say "hey Google" once?
After I say "hey Google", Google voice access is letting me say a few voice commands. However, after a few ones, I have to say "hey Google" again to be allowed to give further voice commands.
How can I configure  Google voice access so that I only have to say "hey Google" once?
I did disable "time out after the speech":

I've just updated the voice access application to the version 5.0.35 and the issue is fixed: there's no more timeout, i.e. voice access stays activated until one closes it.


text:
Samsung Galaxy S9+ SM-G965F/DS with 120v charger
I purchased a Samsung Galaxy S9+ SM-G965F/DS and noticed that it came with a 230v charger.  I live in the U.S.A., so I need a 120v charger.  Is the SM-G965F/DS model designed only for international usage?  I purchased this particular model because I want to install LineageOS.

According to GSM Arena, SM-G965F/DS is for Europe/Global dual-SIM, while G965U is for the USA. However, according to Redditor, the G965U cannot be unlocked anyway.

How about buying a 120V-230V converter, too? It will be probably cheaper than buying a completely new charger, although buying only a correct charger had been cheaper. However, you could use these later, for similar problems, too.

you don't need a ~120 V charger, all mobile phones are charged with =5 V and you can just use any charger with usb 2.0 port. only the cable pin-out is not always identical, i recommend to use samsung usb cable with 200 Ω resistor on data pins to let usb charging protocol allow fast charging https://electronics.stackexchange.com/q/177788


text:
How can I search for a specific word in an email thread in Gmail for Android?
I have opened an email thread (aka conversation) in Gmail  for Android. I would like to search a string (e.g., word or phrase).
How can I search for a specific word in an email thread in Gmail for Android?

the easiest and simplest workaround is to open the email thread in Chrome and search from there.  Not exactly an answer but is a workaround.

@William thank you, yes another workaround is print all as PDF.


text:
How to whitelist websites?
How would I whitelist so that I can only use certain websites in my browser?

Try a parental browser I don't Chrome can do this natively.  Alternatively root.  https://play.google.com/store/apps/details?id=mobicip.com.safeBrowserff&hl=en_US&gl=US

Which browser are you using? Which Android version and device are you using?


text:
Is there any way to share image+audio from an android device to a pc without mirroring?
I have a robot that uses android (API 22) but it doesn't have screen mirroring. One of our clients wants to stream the screen and internal audio (not the voices from people outside) of this robot to their pc, but I have no idea how or even if it's possible to do without mirroring. I tried AnyDesk but it doesn't allow me to share audio.
I've been looking for possible solutions but I havent found anything.
Any idea on how to achieve this?
Thank you, best regards.

If the destination can also be a TV instead of a PC you could try to share the screen via Chromecast. You just need the cheap Chromecast dongle as receiver (the full-HD version without AndroidTV-UI is sufficient).

Unfortunately, the client insists they need it on a PC, but thanks for the suggestion!


text:
Busybox is not detected even when it has been installed
The Debloater module module of Magisk tells me that Busybox isn't detected:
root@android:/data/adb # debloat
debloat
! Busybox not detected
Please install one (@osm0sis' busybox recommended)

=========================================
Debloater (Terminal Emulator) v17.3.3(76)
by veez21
=========================================
BusyBox not found!

=========================================

However I've installed it via Magisk Manager, and I have rebooted after installation.

Why is that? Is it a problem?
There is a similar question, but it's because the OP confuses Windows command and Android shell command.

Try uninstalling both, first install busybox of Osmosis, reboot, install debloater and reboot

The module is abandoned by developer. No more development, so if you want that badly try with earlier versions of Magisk


text:
Magisk manager doesn't show any modules
Android 11, Pixel 4a
I did something obviously stupid (and worse, don't remember what) and ended up in a situation that Magisk manager wouldn't respond, in the sense it wouldn't show any modules. I tried changing update channels to download another manager but no luck (this was canary manager)
Edit: uninstall option isn't available
My thought at this point of time is to side load the OTA and start afresh with rooting.
Are there any simpler alternatives?

If it were to happen to me, my preferred approach would be:
Step 1: Clear data of Magisk Manager app
Whatever way your Android supports, open the App info page for your Magisk manager app, force stop the app, and clear its data/storage. Reboot (optional). Now launch the Magisk Manager app. If the problem still persists, follow the steps below.
Step 2: Uninstall Magisk (the boot image modifications) and Magisk Manager (the app)
You can do so from Magisk Manager app by chosing "Uninstall Magisk" at its home page/launching page. While you're at it, also remove the Magisk files and modules saved under /data/adb. I don't know whether they would be automatically removed by Magisk Manager app upon uninstallation, so it doesn't hurt to purge the directory by yourself.
If the uninstall option is not available in Magisk Manager app, than manually restore the stock (unpatched, that is) boot image to your currently active boot slot. You can restore the stock boot image using a custom recovery, or using fastboot, or if su (root access) is still working, than using dd. If you don't have a custom recovery, you may find this Q&A helpful: How do you root a device with Magisk when it doesn't have a custom recovery
Whatever means you choose, do remove the Magisk Manager app beforehand. It would not make a difference if you do it later, by why wait to do it?
Note: if you had installed Magisk using a custom recovery earlier or had upgraded Magisk from Magisk Manager app, you would be having a backup of stock boot image under /data/ with directory name(s) starting as magisk_backup_ followed by some random characters. If you fail to find that backup, than search the internet to get a legitimate full OTA / fastboot image for your currently installed Android build. The boot image there is your stock boot image and can be flashed instead.
Step 3: Patch the boot image with Magisk modifications
Assuming that you have successfully restored the stock boot image and rebooted the device to a running Android, you need to install Magisk again. Magisk is a work in progress, and its preferred method of installation may change in future, so I suggest you follow its FAQ for installation.
If you have followed the installation steps, you should have a working Magisk modified boot image and a companion Magisk Manager app. Try launching the app to see if everything is working as you would want it to be.
At this point you should be able to install/sideload a Magisk module through Magisk Manager app.


text:
Can I move an app's data to another phone?
I have a game running on an old phone and since the game doesn't save any data in a cloud and neither does google play, I wanted to transfer the data from my old phone's storage to my current one, or just save it on an external drive for when I uninstall the game. Where do I find the data folder, and where do I have to put it on the drive/other phone?
(both are Android just to clarify)
The link to the game is https://play.google.com/store/apps/details?id=com.ironhorsegames.idlewasteland
Thanks in advance.

some manufacturers provide app to migrate phone like samsung smart switch, huawei phone clone, etc...


text:
Laptop doesn't recognize phone connecion
My Samsung a20e is not recognized by laptop.
When connected,phone is charging but nothing changes in computer. No notification, nothing in device manager. Phone is in mtp mode and I installed all drivers.

Try a different USB cable. May be the cable you use is defect or supports only charging.

I have done it and my laptop died. Thats fault of bad usb but is there any possibility i can fix it and motherboard is not gone??


text:
Connect Synology NAS to samsung android phone trough sftp with samsungandroid "My Files" app
There is a "DS File" Synology app to browse your Synology NAS via your Android phone, but the app is really laggy etc. On Samsung phones there is the "My File" app, a file browser that really does the job, and that would be perfect could it browse the NAS. (In fact I already tested it when the phone is on the same (wifi) network as the NAS as the app allows it with the "connect to a network drive (SMB)".)
Now, the app also allows to connect to an FTP or SFTP server. Hence in Synology I did a "control panel -> FTP -> Enable SFTP server" with port number 16666 (in the range allowed by my router) and a "control panel -> Terminal & SNMP -> Enable SSH Service" with the same port. Then I said to my router to forward that port.
In the "My File" app, I did an "add SFTP server" where I added the IP address from the Synology NAS, the 16666 port, my admin user name and password, and I keep having an error not allowing me to connect.

Is that "my admin user name and password" belong to SFTP? Are you sure that Synology SSH server is configured to authenticate using password and not the public/private keys? Are you able to ping Synology server from your phone? Did you scan Synology's port 16666 from phone and it appears open? Did you try to open SFTP from some other host like a PC? Sorry, that's how network troubleshooting proceeds.


text:
Can I know location of a phone if it doesn't have AGPS?
There is assisted GPS, which as I got it figures out your location only by distance from antennas.
But some phones doesn't have even AGPS in their specifications.
Can I see my location on maps (Google map) using such a phone?

There is assisted GPS, which as I got it figures out your location only by distance from antennas.

I am sorry but this sentence is wrong. What you describe is not "assisted" GPS /AGPS.
AGPS or "Assistend GPS" is mechanism for GPS to minimize the initial starting phase until the first GPS "fix" (the first calculated GPS location).
For doing so AGPS uses a small data (downloaded via mobile network) set which contains the info which GPS satellite uses what frequency and where in the sky it should be located roughly.
What you describe is the "Location Estimation of Mobile using cell towers." For doing so GPS is not used at all. You only use the exact geo location data transmitted by each cell phone tower plus the recipient strength for each signal.
On Android you can not enable the cell tower localization individually. It is always combined with the same, Wifi based location system and builds Android's "coarse" location system (in difference to "fine" which uses GPS assistend or not).
If you have activated it on modern Android devices all apps can make use of it. But each app has to request permission to access the location from the user.

I.e. I can't know my coordinates if there's isn't any Wi-Fi network around?

@RS There are two possibilities: 1. enable GPS 2. enable Google location service (on modern devices this is also called "Google Location Accuracy") so that cell tower and Wifi based locations are used. It works if there are cell towers or known Wifis around.


text:
How can I remove Amazon Prime Video from my Android device using the Android Debugging Bridge (ADB)?
I'm following this guide to remove bloatware on my Android device. So far I was able to remove the apps that I didn't want on my phone, but whenever I try to uninstall Amazon Prime Video using ADB I keep getting thrown this error:

Failure [not installed for 0]

The command that caused this error to appear was:

pm uninstall -k --user 0 com.amazon.avod.thirdpartycilent

Why am I getting this error and how can I remove Amazon Prime Video from my phone? I can see that the app is installed for me (see below) but it shows up as if it isn't installed whenever I try to uninstall it using ADB.

My phone's model is an LG G8 ThinQ and it runs Android 10.

Can you provide the output of the command adb shell pm list packages --user 0 amazon? Also, if you deem an app as bloatware I don't think you should be keeping its data lying around, in which case omit -k in the uninstall command.

Do you mean in the post or in a comment?

In the question would be good


text:
How to create QR contact code from vCard
Just came across a website with a QR code that when I pointed the mobile phone camera towards it (I am using a mobile phone with Android 10), it opened a window with Name, Phone, Email, Website, Title and a button to "Import contact".
I know that it is possible to generate QR codes specific for social medias, like WeChat and Facebook and those will detect your social medias, but I am wondering if it is possible to generate a QR contact code readable solely by the camera of my mobile device, ideally from my vCard with similar functionalities as the one above, more specifically the "Import Contact" option?
If yes, how do I do it?

The QR content is explained in ZXing's wiki, a library to generate & scan QR: Barcode Contents - Contact Information. The behavior also depends on each camera app since not all Camera apps support QR scanning though, thus need to install specialized app.


text:
Can't install apk using sh script and init.d app
I'm trying to install apk when the device is booting.
I wrote shell script to install apk:
#!/system/bin/sh
pm install /data/local/tmp/MagiskManager-v7.1.1.apk

Unfortunately, when I enters the shell (using 'adb shell') and runs the script(using 'sh my_script.sh')
I get error:
Exception occurred while executing:
java.lang.IllegalArgumentException: Error: Can't open file: /data/local/tmp/MagiskManager-v7.1.1.apk
        at com.android.server.pm.PackageManagerShellCommand.setParamsSize(PackageManagerShellCommand.java:461)
        at com.android.server.pm.PackageManagerShellCommand.runInstall(PackageManagerShellCommand.java:1060)
        at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:169)
        at android.os.ShellCommand.exec(ShellCommand.java:111)
        at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:22472)
        at android.os.Binder.shellCommand(Binder.java:881)
        at android.os.Binder.onTransact(Binder.java:765)
        at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4924)
        at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:4118)
        at android.os.Binder.execTransactInternal(Binder.java:1021)
        at android.os.Binder.execTransact(Binder.java:994)

I already tried to put the apk in /data/local/tmp but it's not working.
Also init.d app failed to run the script

But I want to do it every boot so I can't plug the device into pc every boot

Are you sure that at that time you execute the command the user data partition has already been mounted?

Why would you want to install Magisk Manager at every boot? If you install it once, it's installed.

I customized settings system app and sigbed it with officail rom signature, the problem is that when I reboot my device the app turns into the older version and I should reinstall it every boot

v7.1.1 is long outdated, please install v8.0.4 https://github.com/topjohnwu/Magisk/blob/master/README.MD#downloads


text:
Upgrade keyboard to another phone's
I've had three phones in the Samsung Galaxy Note line, a Note 3, a Note 5, and now for a few years I've been using a Note 8. I have enjoyed a keyboard on which I can draw a shape which has a vertex at each letter of the word I want to write, but I'm also perceiving that they're trying to make it smarter, to give it better capabilities faster than they can develop the algorithms that carry out the tasks.
(Some problems I can identify with the Note 8 keyboard is that it is autonomously adopting typos as new words in its dictionary, coming up with new words to suggest or interpret what I draw as, and also sometimes, when I write "something" putting down "s something", repeating the first letter.)
I would really enjoy it if I could upgrade from the native keyboard of my Note 8 to the keyboard which came with one of my earlier phones. Either would be good, though I think the first, that from the Note 3, would be best.

I always use (and recommend) SwiftKey, but ...

On the phone whose keyboard you like, install APKExtractor (it's in Play and it's free).

Extract the keyboard.  (It extracts as an .apk file.)

Copy the .apk file to the Note 8.

Install it.  You should now have 2 keyboards.  Go into Settings and choose to use the one you just installed.


text:
Is there any way to root Samsung a20e android 10 without pc?
I wanted to flash boot.img from magisk but my usb cable killed my pc. Is there any other way to root i/ And if there is any way to do something with that pc? Iys not charging after plugging usb it was okay for 10 seconds and then died.

do not try to root your device you will brick it for sure. rooting is not a three minutes thing, you need good preparation and should read and understand what you are doing

If you have only 1 USB port in the PC, try a PCIe USB card.
As for rooting with Magisk without a PC, unless you can find a port of TWRP for it, I doubt it.  (There's no official TWRP for the A20, and flashing Magisk requires TWRP as far as I can see from everything TopJohnWu has said.  You can try the one at https://mega.nz/folder/LTZlUKyI#oxxVc5zj8tP4bNQBIo8AlA - no guarantees, and no saying how long it's going to be up there.)
If you get TWRP running, Install (in TWRP) the latest Magisk (not the manager, although you'll need that installed too - as an app) from TWRP.
Running the manager after that should tell you that Magisk is installed.
On second consideration (after thinking for a few minutes), you'll probably need a PC to install TWRP.  So maybe use someone else's PC to install Magisk?  (Then you can just patch a boot.img file [that you can extract from a BL tar] and flash it with Odin.)

one can't flash TWRP without PC. indeed your edit is the only valid part of your answer. magisk official recommended root method is patching whole AP_*.tar.md5 file and flash it to AP together with + BL + CP + USERDATA/HOME(CSC) from Odin (TWRP is neither recommended from topjohnwu nor required). one can also flash from heimdall instead (however, boot.img is not in BL and must not flashed to BL)

Not possible. Samsung devices running Android 7.0+ or later can only rooted with Odin or heimdall. you need a PC for this (or something that can act like PC)

https://android.stackexchange.com/q/213616 https://android.stackexchange.com/q/225021


text:
SP Flash Tool | Error. Status_preloader_invalid
I am trying to write a custom recovery (TWRP) using SP_Flash_Tool but I get a Status_preloader_invalid error.
The device is "OPPO F1S" with chipset MT6755.
Here is a screenshot of the error and the scatter file I am using.
https://drive.google.com/drive/u/0/folders/1nyQQKPbYot_YxWwHN5lScNAEq84h-o3A
I tried to create the scatter file using Mtk_Droid_Tool but the creation button was greyed out (MT67xx is not supported) so I found a scatter file online

The problem was the scatter file. Using a correct one fixed the problem.


text:
Does Android disk encryption use device-specific keys (such as IMEI or model) to encrypt the disk?
This question is about how disk encryption for Android 6.0 works.
In short: Does Android 6.0 disk encryption use any device-specific keys (such as IMEI or model) to encrypt the disk?
In detail:
I'm trying to recover data from a Nexus 5 phone with a damaged motherboard (due to short circuit).
It was running Android 6.0 with a disk that was encrypted using a user PIN (Device was shipped with an unencrypted Android 4.4).
To recover the data, I'm thinking to buy an SMD rework station to do a chip-off of the memory chip to a new Nexus 5 device, and then turn on the phone, enter the PIN, and get access to my files.
I'm trying to understand, since the disk was encrypted - would this work?
Would a new device with an old eMMC memory chip boot?
If disk encryption on Android only uses the user-entered PIN to encrypt the user-created data, I think this would work. If it uses device-specific values (such as IMEI or model) either in concatenation to the user-entered PIN or as a salt, soldering the old memory to a new device won't work.
According to Full-Disk Encryption in the android open-source documentation, it looks like in Android 5.0 to 9.0 only the user-created data is encrypted, but not the OS itself. The Storing the encrypted key section says

Hardware backing is implemented by using Trusted Execution Environment’s (TEE) signing capability. Previously, we encrypted the master key with a key generated by applying scrypt to the user's password and the stored salt. In order to make the key resilient against off-box attacks, we extend this algorithm by signing the resultant key with a stored TEE key.

Does this mean the encryption uses a hardware-specific key? An expert's help would be greatly appreciated. Thanks.

As @alecxs said, you answered it in the last two words you quoted TEE. See Trusty TEE

https://www.j-michel.org/blog/2014/05/27/from-nand-chip-to-files

https://blog.elcomsoft.com/2018/05/demystifying-android-physical-acquisition

if you know for sure device is encrypted, try to fix the damaged motherboard. everything else is wasted time, as the encrypted dump is only decryptable on this unique source phone itself

If your device is running Android 6.0,why is it that you seek answers for Android 5 to 9?.please [edit] to clarify //This site works on a single Question model not multiple questions packaged in one question //You can split questions separately

fun fact/ yesterday flashed latest available stock ROM on Samsung Tablet SM-T555 Android 7.1.1 and this device remain unencrypted (completely stock with locked bootloader), which i thought encryption must enforced on all recent android - obviously not. afaik Nexus 5 is not encrypted, that's why i ask if you know for sure

can remember for Nexus 5 once there was a hack for Qualcomm's KeyMaster to extract the hardware backed key (CVE-2016-2431) https://bits-please.blogspot.com/2016/06/extracting-qualcomms-keymaster-keys.html if your device is still vulnerable you might be able to decrypt offline https://forensicswiki.xyz/wiki/index.php?title=How_To_Decrypt_Android_Full_Disk_Encryption#Locating_the_Encryption_Key

in case your encryption is scrypt only (no keymaster) hashcat https://hashcat.net/forum/thread-2270.html and santoku have scripts for bruteforce https://santoku-linux.com/howto/mobile-forensics/how-to-brute-force-android-encryption/#run-brute-force (although my previous comment is contradictory)

but the most straightforward seems TWRP. i believe the Nexus 5 was shipped with unlocked bootloader, so basically you "just" need to bring back this motherboard to life and enter fastboot mode, boot (or flash) TWRP and decrypt userdata partition

To add because it covers similar ground, KeyMaster 3.0 (introduced in Android 8.0) has an optional (but highly recommended) feature ID attestation which does tie hardware-specific ids into verified boot. That being said, I haven't looked if there exists a similar type of enforcement for Android 6.0 and below.


text:
How do I do a screenshot on a RCA 10" tablet?
My RCA only has touch screen volume control. Holding down the power while touching volume down doesn't work. Is there another way?

Some Android versions have a screenshot button in the shutdown menu that you get if you press power for about two seconds.

If your power menu doesn't offer screenshot button, you can try a myriad of apps which can add a screenshot tile in Quick settings. Use that tile to take screenshot. See https://play.google.com/store/search?q=screemshot tile quick settings&c=apps


text:
Google Assistant routine only executing first command?
I have a Google Assistant routine with 2 custom actions: Navigate to home and Play Spotify music.
For some reason, only the first action ever completes when I execute the routine via voice command. If I swap the actions around, the first one always completes. So if I have playing music first, it plays music but does not navigate. Vice versa, if I have navigating first, it navigates but does not play music.
Any way to fix this?

Disabling Digital Wellbeing seems to fix the problem for some

@beeshyams unfortunately, I don't have Digital Wellbeing setup (unless I am missing something, but I checked in settings and didn't see anything enabled).


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

How can I access the browser console on Opera Mobile on Android?

Is it possible to open developer tools console in Chrome on Android phone?

However the first one is interested in Opera and that is not the browser I use for development.
As for the second one, there is some interesting answers, however my goal is to see the console only using a mobile Android device (Redmi Note 9S).

Sorry, I posted an app answer and deleted because I was told that app does not provide the console functionality.  F12|Browser console for Android Devices  was the app

That feature seems to be unavailable for all major android browsers.
You could try Opera-mini instead.

Reset the console output by opening a new tab with the address debug:resetconsole

Open a tab on the page on which you want to do the inspection:

Run JavaScript code on the page by replacing the address in the address bar with the following address javascript:var%20n%3Ddocument.firstChild%3Bwhile%28n%20%26%26%20n.nodeType%21%3DNode.ELEMENT_NODE%29%20n%3Dn.nextSibling%3Bconsole.log%28n.outerHTML%29%3B
Retrieve the output by opening a new tab with the address debug:console


text:
Turn off PIP for calls
On my Motorola One and under Android 10, whenever I exit Call app during an active call, a picture-in-picture mode for this app is enabled:

This is super-annoying. How can I disable or turn-off this behavior?
I tried the usual way, i.e. by disabling this feature in Picture-in-picture section of Settings. But there is no sign of Call app there.

Is there any other way to achieve this?

If you by any chance have "Display over other apps" setting turned on for your phone app, just turn it off...

@MANI Yes, this is exactly the thing. Care to craft a full-featured answer out of this comment, so I can accept it a bring you some rep?

"Display over other apps" is the setting you must look for when some app (in the form of bubble in your case) is floating on other app.
PIP and "Display over other apps" are 2 different settings.
Latter is mostly non-obtrusive until user interact with it. PIP in contrast takes up screen space to show something informative. Only common thing is they can be moved anywhere on the screen and can be dismissed by dragging towards bottom of the screen.


text:
Can we use Odin/Heimdall to emulate a fake flash (without real hardware connection)?
As my title suggests.. is there a method to flash a (samsung) firmware on a formatted sd card (fat32 I guess? And 16gb too?) instead of an actual phone (flash emulation) using pit file in heimdall/odin or changing values in heimdall/odin to make it happen?
What I want to do : Just partition and flash the bootloader and kernel partitions to an sd card (it should be partitioned in a similar way as it happens after flashing them on internal memory normally through odin.. problem is .. phone is deadboot i.e can't go in download mode and I want to get the correct bootloader and primary partitions on the sd card and try to boot through it in download mode and reflash normally..)
I have firmware but I cannot seem to get it flashed (or in other words, partitioned according to pit file) on an sd card without actual working phone sadly. I tried and researched a lot but couldn't find exact answer.
Furthermore, repairing in a local shop or a box isn't an option. And can't afford replacing motherboard etc. Any help or guidance would be greatly appreciated. Thanks !

not possible. Odin is for communication with phone in download mode (proprietary protocol). there are several partitions (some ext4, some just binaries) the fat32 doesn't matter. besides one can't boot bootloader from sd slot, the whole idea is pointless. only the ROM can mounted from sd card, but that requires modified ROM or heavily modified kernel, a lot of knowledge and unlocked bootloader (and OEM unlocking requires fully working android)

buy JIG dongle to enter download mode and flash official stock ROM+bootloader+firmware+CSC from Odin it will do the proper partitioning itself https://www.xda-developers.com/samloader-download-updates-samsung-galaxy

Thanks for the input. Yeah I guess its like that and probably that's why there's nothing on web about this. But, have you came across something like dead boot repair ? Its mentioned to work for samsung devices too..

Also jig won't work as phone's bootloader has been corrupted (or am I wrong?)

you try and tell us


text:
ADB - Not able to wipe data. Tried a lot of things
I tried wiping my old Lenovo tablet using the following methods but none work

Factory reset through the phone

Erase all data using Google's Find my Phone

'wipe data/factory reset' -> 'Yes -- delete all user data' reset using the bootloader

So I installed ADB through android-tools on my latest Manjaro Cinnamon as well as android-udev and tried the following but they don't work either.
$ recovery --wipe_data
/system/bin/sh: recovery: not found
127|shell@android:/ $

$ wipe data
Wiping /data
Error opendir'ing /data 'Permission denied'
Done wiping /data
shell@android:/ $

$ adb shell am broadcast -a android.intent.action.MASTER_CLEAR
Broadcasting: Intent { act=android.intent.action.MASTER_CLEAR }
Broadcast completed: result=0

The device won't load as fastboot nor is there an option to fastboot under recovery or developer tools. So 'adb reboot bootloader' or 'fastboot' devices does nothing either. No root access option in developer tools either. So:
$ su
/system/bin/sh: su: not found
127|shell@android:/ $

and
$ adb root
adbd cannot run as root in production builds

$ rm -rf /data/*
rm failed for -rf, No such file or directory

So I don't know how to proceed and feel like I am out of options. Can someone help me please?

your device is in read-only mode because of emmc wear-out

@alecxs Okay. Is that a software or a hardware problem? And how do I fix that?

https://android.stackexchange.com/q/225078 https://electronics.stackexchange.com/q/5891

Alright @alecxs. Going through the link you sent and then will try mount and to flash userdata partition. Thank you. Will revert back soon

@alecxs I cant use mount because adb root won't work prior to it. And flashing the partition won't work because the tablet does not have a fastboot mode

Let us continue this discussion in chat.

https://android.stackexchange.com/q/203283 https://android.stackexchange.com/q/220584


text:
Which allowBackup attribute is useful to understand if an app can be backup?
A user on our site wanted to backup a game. For an unrooted device, the usual route to backup is either with Google Cloud Sync, or with adb. Both depends on the attribute allowBackup in the app manifest. If it is false, it won't be backup. That was my understanding, until now.
When reading the manifest of the game, I came across two entries for allowBackup. First one set to false (line 6), and the last one to true (line 70). I am trying to understand which one should I, an end-user, be concerned with to ascertain if the game/app can indeed be backup by adb or Google? An explanation, however brief, would be nice as to why there are two allowBackup attributes, and can there be more  than those two in an app/game?
Another confusing thing is that for regular apps (non-gaming apps), the attribute was always written as android:allowBackup=<FLAG>, but for the game here, it is game_display_name:allowBackup=<FLAG>. Is this convention game-specific? This part of the question is optional for you to answer.

follow up/extension: how do mobile switch apps handle allowBackup=false? for example Huawei Backup "Back up your apps, including app data such as accounts" - there are lot of such migrating apps for several OEMs claiming this

@alecxs it is a good question in itself. I don't think I can answer without having a device at hand whose OEM offers such a feature. OnePlus definitely doesn't promise app data migration. https://play.google.com/store/apps/details?id=com.oneplus.backuprestore

I don't know what tool you used for decompiling AndroidManifest.xml but both apktool and Jadx do not show an game_display_name:allowBackup=... entry.
No matter what allowBackup entries you have the only entry that matters is the one in the <application> tag. See Android documentation: https://developer.android.com/guide/topics/manifest/application-element#allowbackup
The other one may be added by the developers because they have not read the documentation carefully.
However the game you are refferring to has a second relevant entry for backup: android:fullBackupContent:

This attribute points to an XML file that contains full backup rules for Auto Backup. These rules determine what files get backed up.

When I look at this XML file I see the following content:
<?xml version="1.0" encoding="utf-8"?>
<full-backup-content>
    <exclude domain="sharedpref" path="appsflyer-data" />
</full-backup-content>

From my understanding of this file format that means that the file(s) in /data/data/com.ironhorsegames.idlewasteland/shared_prefs/appsflyer-data* are excluded from backup.


text:
Heimdall gives ERROR: Failed to receive handshake response. Result: -7 on samsung J5 (2016)
I am trying to connect to a Samsung J5 (2016) SM-J510FN, using linux ubuntu 20.04 (libusb-1.0.0), to flash a TWRP image using heimdall v1.4.2 (build from master a2cfdaa)
I have set the udev based on the git repository android-udev-rules
Mobile has USB debbuging on and OEM unlock. And using samsung cables for connection
Mobile phone is visible on lsusb either in normal OS boot or in download mode
Normal Boot:
Bus 001 Device 096: ID 04e8:6860 Samsung Electronics Co., Ltd Galaxy series, misc. (MTP mode)

Download mode / Odin mode:
Bus 001 Device 097: ID 04e8:685d Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II](Download mode)

Running heimdall print-pit works without problems. But then:
heimdall flash --RECOVERY twrp-3.4.0-0-j5nlte.img  --stdout-errors --verbose --no-reboot

Initialising protocol...
ERROR: Failed to receive handshake response. Result: -7
ERROR: Failed to receive handshake response. Result: -7
ERROR: Protocol initialisation failed!

ERROR: Protocol initialisation failed!

Releasing device interface...

My computer only has usb3.0 but also tried with a porthub for usb2.0, this looks like issue #209
Any ideas or tips on how to solve this problem ?!

try JOdin3

Tried JOdin3 but the same issue

then you are left with Odin


text:
Are the Ip address of a website and the android app equivalent the same?
So recently i wanted to block website. So i found out the ip address of the website using ping command and blocked it using the ip filter on my router configuration page eg: 192.168.0.1 for D-Link.
But again after some time i also found out that that website also has an equivalent android app like facebook.com and facebook android app and my question is when i blocked the ip address of the website will it automatically block the app from using the wifi also or the ip addressess of website and android app different? if they are different how to find that out and block that ip also and make sure that app dosent connect to the internet?
Don't ask me why are you even installing the app on your phone if you want to block that badly.
The thing is i want to stop my family members also from using that app through wifi ip block because as usual they don't listen to me.
And the website and app are bad like Really bad.

@Firelord In the times of cloud services an IP can change at any time. Additionally you may block other services that are hosted on the same IP address. Russia for example tried to block Telegram service on IP level some time ago. They made a lot of "collateral damage" on other services hosted on the same cloud instance, but Telegram just switched to a new IP. Therefore from my perspective a DNS based block will be more reliable.

In continuation to the the previous comments, a service (a mobile app or website or web app) might be using multiple domain names (which is hard-coded in the app or the app fetches from remote server) which might resolve to scores of IP addresses (which may also keep on changing). So while the domain (DNS) blocking is more reliable, the blockage can't be guaranteed. You need to keep an eye on app's activity if you don't want to block it entirely on the device. This question may help: How to view network traffic requested by a specific app?

Large services like Facebook have own servers for web-site and mobile apps. Other services have one (API) server for both. Therefore there can be a relationship between the server of the website and the server used by the Android app but does not have to be.
The large services even have multiple servers distributed around the world that share the same DNS name. Therefore if you want to block something on IP level your filter list will soon be very long.
An relative simple way to get all IP addresses an app communicates with is sniffing it's traffic. Even if the traffic will be mostly HTTPS and therefore encrypted the destination IP is always visible in plain text in each IP packet.
There are apps like PacketCapture that allow you to get the complete IP addresses an app communicates with.
After identifying a few IP addresses I would re-run the app while sniffing it with PacketCapture to make sure there are no alternative addresses the app just switche to if the main IP is not accessible.
Also keep in mind that you have to periodically check the IP addresses again as they will change from time to time.
Keep in mind in the times of cloud services the IP address of a service can change at any time and your block may also block other services that are running by coincidence on the same server.


text:
How does Samsung's Voice Recorder's Speech-to-text function store the text and sync it with the audio?
I am using Samsung Galaxy S7 and recently, I used the speech-to-text feature in the default Voice Recorder application. When I play one of the audio files that was recorded with that feature, the application is able to show the text in sync with the audio. I saw that there was the text stored in another text file together with the audio file, but it was just the raw text. I'm trying to figure out how this works.
Is this information for syncing the text and audio stored in the audio file? In this case, all the recordings are only in M4A files. Hence, I tried searching what M4A files can store, like if they can store subtitles because it would seem that it could be subtitles that enable this syncing. However, I can't seem to find any information on this. Or it could also be that the application just has this information stored in some sort of storage or cache, which would mean that if I moved the files over to my computer, there would not be any text synced with the audio.

I guess I have found the answer after looking within the M4A files themselves. The text and the timestamps, if I am correct, are stored in the M4A files.
I looked through the binary data of the file using a hex editor and just the normal Notepad application in Windows and I found all the text within a location and it looks like Java was used. I am guessing this is only a feature designed particularly for the Samsung Voice Recorder application.
A sample is shown here (with some parts and most of the weird characters removed):
;com.sec.android.app.voicenote.common.util.VoiceRecorderData
mCategoryNamet Ljava/lang/String;L mEffectNameq ~  java.util.ArrayListx sizexp 2com.sec.android.app.voicenote.common.util.TextData ConfidenceScoreI dataTypeJ durationJ elapsedTimeJ   timeStamp[ mTextt [Ljava/lang/String; [Ljava.lang.String;{
t The pppppppppsq ~
t
recording pppppppppsq ~
t to pppppppppsq ~

Here's a Python function that extracts the text of a given .m4a file path:
from codecs import decode

def extract_text_from_audio_data(audio_path):
    with open(audio_path, 'rb') as f:
        binary_data = f.read()
        utf8_data = decode(binary_data, 'utf-8', errors='ignore')
    index_start = utf8_data.index('Ljava.lang.String')
    index_end = utf8_data.index('com.android.version')
    substring = utf8_data[index_start:index_end]
    lines = substring.split('q\x00~')
    pattern_end = ' pppppp'
    pttrn_start = '\n'
    tokens = [l[:(l.index(pattern_end))] for l in lines if pattern_end in l]
    words = [t[t.index(pttrn_start)+4:] for t in tokens]
    phrase = ' '.join(words) + '.'
    return phrase


text:
No Graphene or Lineage support...am I stuck carrying a google-tracker now? (LG "Journey" on Tracfone)
I prefer flip phones but now I need web access while on job-site, I don't know why I thought I could just put Lineage onto any handset (swore you could just root a phone and put a new OS on, didn't recall it being model-specific but haven't used smartphones for nearly a decade)
What can I do to eliminate, or reduce if that's all I can do, my "google footprint" here?  I've used ADB to remove every package with "google" in the title but that doesn't remove all the google stuff (and some of it simply cannot be removed, one of them - if removed - makes it so the phone will go into an endless loop upon reboot, requiring a full hard-reset)
Thanks a ton for any advice, I know about F-Droid and am using the duckduckgo browser and FOSS alternatives to, say, Calendar adn Youtube-viewer but the fact it's still on this device/hardware that seems to have "Google" tattoo'd to its bones is bothersome, any & all things I can do to ameliorate this would be greatly appreciated!!

If you want a Google free Android device you have to plan this before buying, read reviews, tutorials and user comments to find the best device. Note that nearly every web page also contains Google and/or other trackers. Therefore the only way to live Google free is not to use anything web or Android related. Nowadays you can only decide how many data you give to trackers like Google. Totally preventing is next to impossible.

you can reset your google advertising id from settings every day

https://android.stackexchange.com/q/225549


text:
How to disable Shift + Space to change language on Android?
I am using Android 11 (Build Number RP1A.201005.004.A1) on a Google Pixel 2 XL with an external BlueTooth keyboard (Logitech K480).
In my normal typing on a desktop or a laptop, I am very used to typing spaces with the Shift key depressed (habit) and it correctly registers as a normal Space key in those environments, but on Android, it triggers a change in language which I have to then stop and change back, and then continue typing.
Obviously, one solution is for me to try and change 20 years of typing muscle memory, but I would also like to know how I can disable this keyboard shortcut, so that I can have a similar typing experience to what I would have on laptop or desktop.
Thanks.

Update (3rd January 2021)
I checked to see if the answers to the question linked in the comments by @Robert solved my issue or not.
As per the suggestions in the linked question, I switched off the Google Indic keyboard which is what was apparently providing the Shift + Space keyboard shortcut, with no way to change this mapping. Here is a screenshot of all the settings in the Google Indic keyboard app, having cycled through all of which, I was unable to locate a setting for changing keyboard shortcuts:

Anyway, reverting to Gboard, which is the main suggestion in the linked question (albeit for Samsung phones) does not resolve my issue:

Firstly, there now appears to be no external keyboard shortcut to switch between languages. I tried several combinations after having added a couple of languages to Gboard.
Secondly, and more importantly, Shift + Space now does nothing. Which means that my original intent of getting Shift + Space to emulate a Space keypress is not actually solved.

In fact, while this query was for my Pixel 2 XL, tinkering around with my Samsung Note 10+, I discovered that the Samsung keyboard actually provides exactly this feature of being able to switch off the Shift + Space external keyboard shortcut to switch languages, which is exactly what I am looking for in Gboard! See the screenshot below (Shift + Space on my Note 10+ now simply enters a Space while typing, exactly as desired):

I am really hoping that someone can help me understand how I can get Shift + Space to be just a plain Space keypress on Android using an external keyboard.

Do you have multiple languages installed so that you could really switch the language or does it simple show a dialog with one possible choice?

@Robert thanks for your response. Actually, that is a good question. One one of my phones (Samsung Note 10+), since I have only one language installed, this does nothing, other than flash the one language on the screen, and I have no problem ignoring it and typing ahead. However, on the Pixel 2, it auto-toggles between the two installed languages, again without showing me a selector screen. Presumably, with 3+ languages, it would show me a selector screen to cycle through the choices.

Does this answer your question? Prevent switching keyboard layout when pressing Shift+Space on an external keyboard

@Robert thanks for continuing to engage on this query. The linked answer helps, partially. While that query is specific for Samsung phones (mine is the Pixel), switching off the Google Indic keyboard, which is what provides the multiple language support, and falling back to Gboard does "solve" the problem, in that now there is no switching of languages when I press Shift + Space, but I no longer have multiple languages either. I guess the next step now is to figure out how to add another language to Gboard, and to check to see if that re-introduces the problem.

Hi @Robert I have updated the question based on the suggestions in the question linked by you in the comments. Do let me know if you think I am off-track here.

Google just posted an update on the ticket for one of the suggested solutions to this issue stating that the next version of Gboard is going to block Shift+Space if any character other than space is hit after pressing the shift key before pressing space. This should eliminate the misfires that cause the complaints about it.

I have a suggestion! You gave me the idea. Install a keyboard called Hacker's Keyboard. Switch to it when you use your Bluetooth keyboard. Hacker's Keyboard doesn't have the shift space function and it will type normally.

go to Settings > General Management > Physical Keyboard > Change Language Shortcut > and disable the short cuts you dont want to use to switch the language.

Note that this only applies to Samsung devices (which is shown on the screenshot on the question), but not necessarily to Pixel devices (which is what the question is about; there's no such menu)


text:
"no valid slot to boot" on locked bootloader
Using the Google Factory Image of Android 10 for the Pixel 4 (flame), I ran into trouble: the device does not boot with the following reason:
no valid slot to boot

I hence tried to flash another OS image but unfortunately, the bootloader is locked. Even Google's own Factory Images don't flash.
$ fastboot flashing get_unlock_ability
(bootloader) get_unlock_ability: 0
OKAY [  0.093s]
Finished. Total time: 0.093s

Is there any way to flash the factory image anyway?
$ fastboot getvar all
(bootloader) product:flame
(bootloader) serialno:99051FFAZ006PC
(bootloader) variant:SM8 UFS
(bootloader) max-download-size:0x10000000
(bootloader) slot-suffixes:_a,_b
(bootloader) version-bootloader:c2f2-0.3-6863466
(bootloader) version-baseband:g8150-00075-201008-B-6891495
(bootloader) secure-boot:PRODUCTION
(bootloader) secure:yes
(bootloader) hw-revision:MP1.0
(bootloader) is-userspace:no
(bootloader) slot-count:2
(bootloader) current-slot:a
(bootloader) unlocked:no
(bootloader) nos-production:yes
(bootloader) off-mode-charge:1
(bootloader) slot-retry-count:a:0
(bootloader) slot-unbootable:a:yes
(bootloader) slot-successful:a:no
(bootloader) slot-retry-count:b:0
(bootloader) slot-unbootable:b:yes
(bootloader) slot-successful:b:no
(bootloader) battery-voltage:4258
(bootloader) battery-soc-ok:yes
(bootloader) snapshot-update-status:none
(bootloader) storage-vendor:MICRON
(bootloader) storage-model:64GB-UFS-MT
(bootloader) storage-rev:8QSP
(bootloader) citadel-fw:0.0.3/brick_v0.0.7758-a9dacb5c9 2020-01-15 21:24:
(bootloader) auto-shutdown:0
(bootloader) partition-type:ssd:raw
(bootloader) partition-size:ssd:0x2000
(bootloader) partition-type:persist:raw
(bootloader) partition-size:persist:0x2000000
(bootloader) partition-type:misc:raw
(bootloader) partition-size:misc:0x100000
(bootloader) partition-type:keystore:raw
(bootloader) partition-size:keystore:0x80000
(bootloader) partition-type:frp:raw
(bootloader) partition-size:frp:0x80000
(bootloader) partition-type:boot_a:raw
(bootloader) partition-size:boot_a:0x4000000
(bootloader) partition-type:boot_b:raw
(bootloader) partition-size:boot_b:0x4000000
(bootloader) partition-type:modem_a:raw
(bootloader) partition-size:modem_a:0x6000000
(bootloader) partition-type:modem_b:raw
(bootloader) partition-size:modem_b:0x6000000
(bootloader) partition-type:klog:raw
(bootloader) partition-size:klog:0x800000
(bootloader) partition-type:metadata:raw
(bootloader) partition-size:metadata:0x1000000
(bootloader) partition-type:vbmeta_system_a:raw
(bootloader) partition-size:vbmeta_system_a:0x10000
(bootloader) partition-type:vbmeta_system_b:raw
(bootloader) partition-size:vbmeta_system_b:0x10000
(bootloader) partition-type:super:raw
(bootloader) partition-size:super:0x245800000
(bootloader) partition-type:userdata:raw
(bootloader) partition-size:userdata:0xC7FFFB000
(bootloader) partition-type:xbl_a:raw
(bootloader) partition-size:xbl_a:0x380000
(bootloader) partition-type:xbl_config_a:raw
(bootloader) partition-size:xbl_config_a:0x20000
(bootloader) partition-type:xbl_b:raw
(bootloader) partition-size:xbl_b:0x380000
(bootloader) partition-type:xbl_config_b:raw
(bootloader) partition-size:xbl_config_b:0x20000
(bootloader) partition-type:ALIGN_TO_128K_1:raw
(bootloader) partition-size:ALIGN_TO_128K_1:0x1A000
(bootloader) partition-type:cdt:raw
(bootloader) partition-size:cdt:0x20000
(bootloader) partition-type:ddr:raw
(bootloader) partition-size:ddr:0x100000
(bootloader) partition-type:aop_a:raw
(bootloader) partition-size:aop_a:0x80000
(bootloader) partition-type:tz_a:raw
(bootloader) partition-size:tz_a:0x400000
(bootloader) partition-type:hyp_a:raw
(bootloader) partition-size:hyp_a:0x84000
(bootloader) partition-type:abl_a:raw
(bootloader) partition-size:abl_a:0x200000
(bootloader) partition-type:keymaster_a:raw
(bootloader) partition-size:keymaster_a:0x80000
(bootloader) partition-type:cmnlib_a:raw
(bootloader) partition-size:cmnlib_a:0x80000
(bootloader) partition-type:cmnlib64_a:raw
(bootloader) partition-size:cmnlib64_a:0x80000
(bootloader) partition-type:devcfg_a:raw
(bootloader) partition-size:devcfg_a:0x20000
(bootloader) partition-type:qupfw_a:raw
(bootloader) partition-size:qupfw_a:0x14000
(bootloader) partition-type:vbmeta_a:raw
(bootloader) partition-size:vbmeta_a:0x10000
(bootloader) partition-type:dtbo_a:raw
(bootloader) partition-size:dtbo_a:0x800000
(bootloader) partition-type:uefisecapp_a:raw
(bootloader) partition-size:uefisecapp_a:0x200000
(bootloader) partition-type:imagefv_a:raw
(bootloader) partition-size:imagefv_a:0x200000
(bootloader) partition-type:apdp_a:raw
(bootloader) partition-size:apdp_a:0x10000
(bootloader) partition-type:msadp_a:raw
(bootloader) partition-size:msadp_a:0x10000
(bootloader) partition-type:multiimgoem_a:raw
(bootloader) partition-size:multiimgoem_a:0x8000
(bootloader) partition-type:aop_b:raw
(bootloader) partition-size:aop_b:0x80000
(bootloader) partition-type:tz_b:raw
(bootloader) partition-size:tz_b:0x400000
(bootloader) partition-type:hyp_b:raw
(bootloader) partition-size:hyp_b:0x84000
(bootloader) partition-type:abl_b:raw
(bootloader) partition-size:abl_b:0x200000
(bootloader) partition-type:keymaster_b:raw
(bootloader) partition-size:keymaster_b:0x80000
(bootloader) partition-type:cmnlib_b:raw
(bootloader) partition-size:cmnlib_b:0x80000
(bootloader) partition-type:cmnlib64_b:raw
(bootloader) partition-size:cmnlib64_b:0x80000
(bootloader) partition-type:devcfg_b:raw
(bootloader) partition-size:devcfg_b:0x20000
(bootloader) partition-type:qupfw_b:raw
(bootloader) partition-size:qupfw_b:0x14000
(bootloader) partition-type:vbmeta_b:raw
(bootloader) partition-size:vbmeta_b:0x10000
(bootloader) partition-type:dtbo_b:raw
(bootloader) partition-size:dtbo_b:0x800000
(bootloader) partition-type:uefisecapp_b:raw
(bootloader) partition-size:uefisecapp_b:0x200000
(bootloader) partition-type:imagefv_b:raw
(bootloader) partition-size:imagefv_b:0x200000
(bootloader) partition-type:apdp_b:raw
(bootloader) partition-size:apdp_b:0x10000
(bootloader) partition-type:msadp_b:raw
(bootloader) partition-size:msadp_b:0x10000
(bootloader) partition-type:multiimgoem_b:raw
(bootloader) partition-size:multiimgoem_b:0x8000
(bootloader) partition-type:devinfo:raw
(bootloader) partition-size:devinfo:0x1000
(bootloader) partition-type:spunvm:raw
(bootloader) partition-size:spunvm:0x800000
(bootloader) partition-type:splash:raw
(bootloader) partition-size:splash:0x8000
(bootloader) partition-type:limits:raw
(bootloader) partition-size:limits:0x1000
(bootloader) partition-type:toolsfv:raw
(bootloader) partition-size:toolsfv:0x100000
(bootloader) partition-type:logfs:raw
(bootloader) partition-size:logfs:0x800000
(bootloader) partition-type:storsec:raw
(bootloader) partition-size:storsec:0x20000
(bootloader) partition-type:uefivarstore:raw
(bootloader) partition-size:uefivarstore:0x80000
(bootloader) partition-type:secdata:raw
(bootloader) partition-size:secdata:0x7000
(bootloader) partition-type:ALIGN_TO_128K_2:raw
(bootloader) partition-size:ALIGN_TO_128K_2:0x1A000
(bootloader) partition-type:modemst1:raw
(bootloader) partition-size:modemst1:0x200000
(bootloader) partition-type:modemst2:raw
(bootloader) partition-size:modemst2:0x200000
(bootloader) partition-type:fsg:raw
(bootloader) partition-size:fsg:0x200000
(bootloader) partition-type:fsc:raw
(bootloader) partition-size:fsc:0x20000
(bootloader) partition-type:system_a:raw
(bootloader) partition-size:system_a:0x30FFC000
(bootloader) partition-type:system_b:raw
(bootloader) partition-size:system_b:0x173E000
(bootloader) partition-type:vendor_a:raw
(bootloader) partition-size:vendor_a:0x2DBC3000
(bootloader) partition-type:vendor_b:raw
(bootloader) partition-size:vendor_b:0x0
(bootloader) partition-type:product_a:raw
(bootloader) partition-size:product_a:0x7D6CA000
(bootloader) partition-type:product_b:raw
(bootloader) partition-size:product_b:0x28DAC000
(bootloader) partition-type:system_ext_a:raw
(bootloader) partition-size:system_ext_a:0xE9A1000
(bootloader) partition-type:system_ext_b:raw
(bootloader) partition-size:system_ext_b:0x0
all:
Finished. Total time: 0.296s

Since OEM unlocking is not enabled in Developer options, and the bootloader is not unlocked, your options a limited.
The first (although not preferred option in most cases) is to contact Google support for an RMA on your device to get a replacement. This is usually a simple thing and they usually handle it quite well. You can find information on this to check the status of your warranty and start a claim here.
The only other alternative you have at this point is attempting to flash an OTA image manually. An OTA image is what is sent to the device for an Over The Air update, and is usually pretty safe to install, but we are going to do it manually. Note that flashing an OTA image is not the same as doing a full firmware image flash, so some things on your device need to be in place even if the device is not in a bootable state. I don't know these exact items, but if they are not there the updater script will fail. I am also going to assume that you have Android Platform Tools installed and working (as you have output of fastboot working, it appears so).
The details and files are supplied by Google for Pixel (and older Nexus devices) on their developer site in the full OTA section for Pixel devices linked here, but just make sure you select the correct device you can see this on the previously linked page if you know your model such as Pixel 4 or by performing a fastboot getvar all and looking at the (bootloader) product: field... For you with a Pixel 4 it will be "flame".
Here are the essential steps, more detailed information is in the links above:

Download the OTA ZIP file from the above page, and know where it is located but do NOT unzip the file. Note you should always select the newest one listed for your device which will typically be at the bottom of your device section.
Boot your device into fastboot mode and connect the USB cable
Select Recovery from the menu and press POWER to select it. Wait for the Android logo with a red Exclamation mark to appear on the screen
Access the recovery menu with POWER+VOL UP
Select Apply update from ADB from the menu and press POWER
Test your USB connection with adb devices which should output your device with sideload next to it. If the result is anything else, you need to troubleshoot your USB connection or software installation before continuing.
Enter adb sideload ota_file.zip where ota_file.zip is the full path and filename of the OTA ZIP file you downloaded previously
The device will download and verify the file, then flash it to your device, then make that software "slot" active. If all goes well, after several minutes a success confirmation will be displayed and you will be presented with a menu.
Select Reboot system now and wait for the phone to boot up fully.


text:
Use same app data with another user (on Android 10)
I have a Samsung Tablet running Android 10. My kid uses a "restricted user" (password-protected) to play etc.
Now, since the Lego BOOST app is also installed on this restricted user account, I would like to make it possible for him to use the tablet without me unlocking the user - my boy does not know the password and I don't want him to know ... but specifically for the Lego BOOST app I would like him to be able to use it without me being around.
So, in technical terms, I want to "share" all his user data (already unlocked data in the app) with another user account which would NOT be password-protected - or with a password I can tell him.
Is it possible to share the same app data between 2 users? Or, alternatively, is it possible to "move"/transfer the app data to another user account?

ON a rooted device may be. On an unrooted even migrating the data from one user to another is difficult as as far as I remember adb backup only works for the primary user. Also keep in mind that after a device reboot always the primary user have to login.


text:
Is it possible to merge/network multiple smartphones and use them as one device?
I have 4 android smartphones each with 512 gb memory card. Is it possible to somehow combine them together so that I can access a total of 2TB?
My exact use case is to install kmplayer on one of those devices and network/merge the others such that the primary device has access to all the content as if it was on that device itself. I would leave all these phones at home and access the primary device, via some app like splashtop, from the phone that I have on me.
Am aware of cluster/distributed/HPC computing concepts to get many mainframe/workstation/server/home pc systems(and even the raspberry Pi using Beowulf cluster) to work together but in those cases almost all resources are desired to be used unlike my case where I only intend to combine the memory card storage resource.

What version of Android (and what devices, might be relevant) and is there root access on these devices? Basically you want to do network shares of folders on the devices so that one can access the other 3 devices folders (possible), or you want everything to appear as one single resource (very unlikely)? Curious why something a RP or other device with a network share wouldn't be better, especially since you could VPN it and make it accessible from anywhere...

@acejavelin I wanted a solution where the total memory of all 3 devices is available as one single memory resource to the primary device. Network shares are possible relatively easily. All the phones are on the latest version of android and high end enough.

I don't think the Android devices themselves could do this, you would need a third party tool, like a small Linux server to merge the volumes and make it appear as one virtual volume to the other device... Even with root this likely wouldn't be very clean. The Linux instance could be very small, a RPi or a VM would work well.


text:
External SD Card Mounted, Permissions granted, but still Inaccessible on LineageOS
I know there's a ton of external SD card questions, but my case doesn't seem to line up with any of them, sorry if this has been asked before and I just couldn't find it.
I'm running LineageOS 14.1 on a Fire HD 10 Gen 7. When I insert my SD Card the system recognizes it, I go in and make sure that all the apps that need it have permission to access SD card storage, and I enabled Global Namespace in Magisk. But LineageOS only mounts it to /mnt/media_rw/0000-0000 and there is no way to access it without going through the root directory.
Using a root browser I can see all of it's contents, but I can't access anything using any other apps. For example, I can see there's an mp4 file in the file browser, but if I open with VLC via the root browsers VLC immediately crashes. And if I try to go to the SD card via VLC, it isn't there, the only storage is Internal Memory.
All the other question articles I read were either concerning moving apps to the SD card, which I was able to do with Link2SD when creating an ext4 partition on the card, but the FAT32 partition was still inaccessible even by the apps on the ext4 partition which makes me think the issue isn't with the SD card (the SD card also works as intended on my PC), or were solved when they enabled permissions for the apps to access external storage, which I have done.
What do I need to do to make the SD Card accessible by apps other than my file browser?

https://android.stackexchange.com/q/166557 https://android.stackexchange.com/q/221122


text:
What is the way to debug multiple android device ie more than number of ports in PC in parallel?
I need to connect 10 device via usb at once. Does adb detect multiple android devices connected via usb hub?
I have explored connecting via tcpip one by one using the existing ports, but the problem is if the LAN is not very stable , it gets disconnected and I have to connect all over again. If I could connect all my devices via usb hub I wont have that issue.
I have gone through this issue: Using USB peripherals with hardware debug

ADB should detect multiple devices (check using adb devices) on USB, have you tried it? However, it depends on the USB hub and ports whether they provide enough power for multiple devices to be detected.

afaik all devices must set to same port (5037 or 5555) and connected via -s

A related post on Stackoverflow says that by default adb can handle up to 15 devices. If you need more you have to start separate instances of adb.

@AndrewT. That's what the question is for, if you can check adb devices and update the answer, I can place an order for a USB hub on amazon.

@Robert Yes I have gone through that answer, but doesn't answer whether the devices connected via hub are automatically detected or do we need some sort of driver to get it going.

@Boladin The USB standard defines that USB hubs are transparent for the the PC and the devices. Therefore it does not make any difference if you connect a device directly or with 6 USB hubs in between.

@Robert Thanks for confirming, even my understanding was hinting so. Before placing an order for a USB hub, I just wanted to confirm from someone who have tried debugging multiple devices in parallel connecting via USB hub.

@Boladin FWIW, I've debugged more than 1 Android devices connected to a hub on Macbook. All of them were detected, but Mac disabled them soon afterward because they used too much power. That's why I mentioned the "provide enough power" remark on my previous comment.


text:
Android 11 - Default Text Messaging App - SMS button not showing for some contacts
On Android 11 - Default messaging app:
When I type some text, "SMS" appears under the send button for some contacts but not others.
Just curious as to why.
Contact 1:

Contact 2:

Does this answer your question? Google messages app says text message sent by SMS

Removed Android 11 tag, since this feature isn't restricted to 11


text:
Where does your Samsung phone store its default ringtones?
So my grandma gave me a Samsung Galaxy J2 Prime from 2017, and it doesn't have any SD card inserted. So where does my phone store its defalt ringtones and notification sounds? I tried going to Android>data>system>media>audio>ringtones but it seems it doesn't have the system folder. Can someboy help me with this?

what you are looking for is on system partition. what you see is actually just the content of emulated sdcard on userdata partition. enable usb-debugging and type 'adb shell ls /system/media/audio/ringtones' in terminal
https://www.xda-developers.com/google-releases-separate-adb-and-fastboot-binary-downloads

@alecxs I came to post the same path. Post your comment as an answer and I will upvote it.

@ReddyLutonadio solid answer should include how to access/copy ringtones, where to add custom ringtones and which format (ogg, mp3) on unrooted device. we have lot information already but do you know canonical location?
How to extract default ringtones from Android device? //
List of special Android SD card folders? //
Android Folder Hierarchy //
What is /storage/emulated/0/?

@alecxs "do you know canonical location?" No, I don't. However, I have checked a Samsung and a non-Sansung phones; Both have the sounds located on /system/media/audio/ with these 3 sub-folders being common: notifications, ringtones and ui. The non-Samsung phone also add a sub-folder alarms. All of them contain files with ogg format only. Does/do your phone(s) have different formats?


text:
How to move Apps to the adoptable sd-card storage on LineageOS 17.1 (Samsung Galaxy S5 klte)?
Hi since I updated to LineageOs 17.1 I am having storage problems, because the management of the adoptable storage does not work as expected.
The problem:
LineageOs migrates constantly data from the sd-card (used as internal storage) to the real internal storage. Somehow the play, and apps like WhatsApp distinct between the internal storage and the adoptable storage and ask me to free space. WhatsApp even stopps working. So I constantly remove apps, but even freeing several GB of data does not help because LineageOs moves more and more data to the internal storage.
What I did to cause the problem:

Installed LineageOs 17.1 and enabled adb debugging.
Deleted the old partition table of my sd-card
used adb shell to format the sd-card with: sm partition disk:179,64 private
put a lot of data to my phone
by accident clicked in the options of the internal storage on "migrate data", what is the opposite of what I want. The process terminated with an error because of running out of storage. So maybe it never stopped and some flag is still set somewhere, what causes my problem?

What I tried to solve the problem:

Rooted the phone with Magisk
Installed app2sd pro from Bicky Bonick and tried to move apps. This did not help because the app seems to be targeted to an environment with a portable and non-adoptable sd-card storage? Clicking on linking apps to the sdcard results in an at this stage not further specified error. I just think this is the wrong way to go?

The question:
How can I increase the 16GB internal space available (with LineageOs 17.1) for apps on my phone by using my external 64GB sd-card?
This question might be related to this one.

please explain "migrate data is the opposite of what I want"

I think this means that data is moved from the sd-card to the phones internal stoarge

"migrate data" is the 2nd necessary step after 1st step "adoptable-storage" is created. it will move all apps from phone into sdcard (if app is moveable). all new installed apps will directly installed into sdcard. if you don't want to migrate, just uninstall+reinstall some of your apps

Sure I did this after setting up the adoptable-storage. But after this was done "migrate data" was just clickable on the internal storage (on LineageOS 17.1) and the phone never stopped to move data from the sd-card to the phone storage.
People in #lineageos @irc.freenode.net told me that using adoptable storage in general is a bad idea, but how in this case work with the Samsung Galaxy S5? I will always have storage issues with the 16GB internal memory. This is so little.

what you see as "internal storage" is the (adopted) MicroSD Card in real. "migrate data" won't transfer apps from sd-card to phone, it will (try to) move apps from phone to (adopted) internal storage (depending on android:installLocation). when 100% disk space adopted you can't see your MicroSD Card any longer, the only way to check disk usage is from cmd line df -h /mnt/expand/* (if your device is rooted consider 3rd party apps like Link2SD instead)

LineageOs showed both storages separately, despite I formatted the sd-card as 100 % adopted (as described above)

maybe lineageos is bit smarter? anyway, check the output of df -h

I had the same problem with lineage 15.1 on my samsung s4mini.
the solution which worked....

under 15.1 I formatted the sd as internal storage
I copied all relevant system zip files to the sd card (lineage 15.1 / open gapps 8.1 pico / supersu v82)
I booted to twrp recovery and wiped everything except preload and the sd card
then I installed all above mentioned 3 relevant system files from the sd-card in one go
I rebooted and my sd card was still configured as internal memory and newly installed apps moved to a large extent to the sd card and the phone was still rooted - it was perfect

having installed apps which would not have fitted to internal memory before I am now using only 3.3 of 8.0  gb and if I install more apps the real internal memory will fill up just slowly....

Sorry to revive this year old thread but found a method which seems to solve this issue so just want to put it down here for everyone's benefit. I am on LineageOS 18.1 (Android 11):

Enable Developer Options (Settings -> About -> Tap build number 7
times)
In Developer Options under Apps section there is a setting called
Force allow apps on external, enable that.
Now you should be able to go to Settings -> Apps and click on each
app to see if they are using Internal Storage or SD card, if it is
on Internal Storage you can move it to SD card.

Using this method most of my apps could be moved to SD card. One thing I noticed is the space used doesn't really update immediately and I had to reboot the device to see the space used in internal storage.