text:
How can I do factory reset on Samsung Galaxy 10.1 Tab?
After more evidence of my son breaking into my tablet (darned 11-year-old... going to be a true Social Engineer hacker, if I can't get through his thick head that he'll lose all computer privileges...), I changed the password this morning... and can't remember it now.
Unfortunately, after multiple failed password attempts, IT IS NOT ASKING FOR MY GOOGLE LOGIN TO UNLOCK. I don't seem to be able to get to the "failsafe" unlock mechanism any more, and so am looking to do a complete factory reset.
I've seen instructions to hold down the Volume-Up + Power buttons to initiate this (remember, I can't log in, so I can't do this from settings.) All that happens is that the tablet goes into a mostly-blank screen showing what is probably a newly-opened box, and a blinking Android that says "Downloading...". I let it sit for close to two hours in this state, and nothing. It did respond to a power-down from here, but just came back up to the password login.
What am I doing wrong? (Apart from choosing such a simple password as 10 U/L/num characters... obviously not sufficiently complex...).
Brian

If you were able to unlock the device, you would go to Settings ~> Privacy ~> Factory Data Reset & follow instructions. Done!
Since you don't have access to OS, press and hold "Volume Down + Power" for 10 seconds. Screen will appear with standard Droid recovery icon. Select it with volume down key & press volume up to enter. Now, you're in recovery mode from where you can factory reset your device.
Depending on your device sub-model, if its not working, try "Volume up + Home + Power" for 10 seconds. When something is displayed on screen,  release power button while holding other ones.
If this one is also not working, turn on device with power button and just after first display, press and hold "Volume up + Volume down" for 10 seconds.

As I just wrote on the same question for another device 5 min ago: This is a quite frequent question, so you will find a lot of ansers in the Related links section, and now some in the Linked section of this page as well.
I could not verify my search results, but basically there should be different approaches available for this device:
Using a dialer code
Though this option will not be available to you currently, since you cannot unlock your device, I will include this option for completeness:

Open your telephone app (dialer)
Dial *2767*3855#
Follow the instructions

This is not a real phone call, but rather a "magic number" (shortcut to system functions).
Via the system menu
Also currently unavailable to you:
In Menu Mode select Settings → Privacy → Factory data reset → Reset Tablet
Using hardware keys only
This probably is the only option left to you:

Turn your Tab off
Press and hold the Volume Up button, and then briefly press the Power button.
Use Power Up to move the cursor to the Left, and Power button to select.
Use the Power Up/Power Down buttons as cursors to move to the Factory Reset
Use the Power Up/Power Down buttons to scroll to "Confirm".

Last word: Be aware that with a factory-reset all your manually installed apps and all your data on internal/phone memory are lost, so backup what you need before! I guess you knew that, but just in case ;)

"Select Factory reset Wipe data" wasn't obvious in the instructions. Note that I was close; the "blinking Android" was actually a cursor for either "Download image" or "various factory reset options". I finally figured out where the factory reset was, but it is several steps past the very common answer "Volume Up + Power".
Additional steps:
2a) use the Power Up to move the cursor to the Left, and Power button to select.
2b) use the Power Up/Power Down buttons as cursors to move to the Factory Reset
2c) use the Power Up/Power Down buttons to scroll to "Confirm".
Backups? I keep data in cloud.

As I wrote: I was not able to verify my search results. So thank you for mentioning the exact way! I just updated my answer to include your steps. And yes, a cloud backup is a backup as well; as long as your data are stored/copied outside the device's internal storage, you can get them back after a factory reset ;)


text:
Internet problem in Samsung Galaxy S2 after updated Android 4.0
Recently I updated my Samsung Galaxy S2 OS from 2.3 to 4.0, after that the internet is not working properly (e.g. Internet web, facebook, twitter). If I open this application a message is shown saying  "unfortunately internet stopped".
How can I fix this problem?

I had the same problem opening attachments (.doc) in email.
I tried clearing the cache - didn't work, but ...
Under Settings ... Applications ... view all ... Internet ... Scroll down to "Launch By default", and click Clear defaults.
Next, when opening an attachment, select chrome and Just once (or something other than internet).
Worked for me !!!

Go to Settings, Applications, click the ALL tab and scroll down to Internet. Then clear cache see if it works, if not clear data.

source: Stack Exchange

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

sort: votes


text:
Will a higher class SD card reduce the risk of crashing my Galaxy Ace?
I was using my class 4 32GB SD card in my Samsung Galaxy Ace quite happily until I filled it up to a certain point (which point, exactly I'm afraid I can't find out and don't know). Once the SD card reached a certain percentage of its capacity (Somewhere in the >20GB used area) it started going into the "Sleep of death" bug, where it cannot be woken up after going into lock.
I then deleted some non-essential stuff, and the phone worked with the card quite happily for about 20 minutes, when the card died. I haven't been able to revive the card on my PC or phone.
My theory is that the processor in the Ace couldn't handle that much data on such a low-speed card, which would explain the sleep of death, but not the card failure. Is there any merit in this idea? Would a better class 32GB card have a chance of avoiding the sleep of death, or am I indulging in some wishful thinking?
Apparently the problem is very widespread in Galaxy Aces (according to the manager of a phoneshop I brought it in to), and it seems to happen the Nexus One aswell.
Any thoughts would be much appreciated.

I don't think a higher-class card would solve this particular problem (btw, you didn't specify which class your current card was). Not being able to revive the card the way you described looks more like a problem with that specific card as such. Was it at least recognized on the PC, and offered for formatting? Or was it totally gone?

I second Izzy's. I don't think this issue is caused by the slow SD card speed. You might want to check if you have an SD card with faked capacity, here's a few tips: one, two

Its because of you are using Max amount SDCard that an Ace can support.
Ace supports 32Gb Maximum, and you are using the same. But Its fact that Ace supports 32Gb ,but it may cause problems mounting that much higher amount.
You can try 16GB class 10, it may be accurate.

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


text:
android special characters keyboard
Under Winodws, if I want to enter extended characters (such as "«") I canuse the Character Map application and the Alt+keypad numbers (such as Alt+0171 for the "«").
How can I do this under Android?  I know there are ways to do this under Linux, but is this infrastructure there under Android?
Especially with tablets and phones and their special Android keyboards - which typically don't have Ctrl or Alt keys.

You might want to take a look at Hacker's Keyboard:

A full 5-row keyboard including arrow and Esc/Ctrl keys, intended for tablets.
Are you missing the key layout you're used to from your computer? This keyboard has separate number keys, punctuation in the usual places, and arrow keys. It is based on the AOSP Gingerbread soft keyboard, so it supports multitouch for the modifier keys.

It supports a bunch of keyboard layouts -- though I'm not sure about the "special characters" being inserted using alt sequences.
If you're mainly interested in being able to insert special characters (and don't care whether they are bound to alt-sequences or selectable by other means), I'd suggest to search the playstore for "charmap". This will yield about 10 results, the topmost of them would match your needs.

Thanks Izzy, I already have Hacker's Keyboard and it doesn't insert characters by the [Alt] method - that's why I posed the question.

Charmap looks interesting...

@PaoloFCantoni Thanks for the hint. As I never used Hackers Keyboard (just being aware of it, and always wanted to give it a try), I don't know about its full capacities. That's why I added the hint to Charmap at the end -- glad you found something with that!


text:
Xperia X8 flashtool error: ERR_DYNAMIC="SIN header verification failed"
I have a Sony Xperia X8. When I tried to flash it using Flashtool v0.6.8.0, it returned ERR_DYNAMIC="SIN header verification failed".
This is the log:
17/016/2013 20:16:47 - INFO - <- This level is successfully initialized
17/016/2013 20:16:47 - INFO - Flashtool Version 0.6.8.0 built on 2012-02-26 19:26:25
17/016/2013 20:16:47 - INFO - You can drag and drop ftf files here to start flashing them
17/016/2013 20:16:52 - INFO - Device disconnected
17/016/2013 20:16:55 - INFO - Selected E15_nAa-13_2.6.29.6-nAa-13.ftf
17/016/2013 20:16:55 - INFO - Preparing files for flashing
17/016/2013 20:16:55 - INFO - Please connect your device into flashmode.
17/017/2013 20:17:06 - INFO - Device connected in flash mode
17/017/2013 20:17:06 - INFO - Opening device for R/W
17/017/2013 20:17:07 - INFO - Reading device information
17/017/2013 20:17:07 - INFO - Phone ready for flashmode operations.
17/017/2013 20:17:07 - INFO - Start Flashing
17/017/2013 20:17:07 - INFO - Flashing loader
17/017/2013 20:17:07 - ERROR - ERR_SEVERITY="MAJOR";ERR_CLASS="SECURITY_CLASS";ER R_DYNAMIC="SIN header verification failed"
17/017/2013 20:17:07 - ERROR - Error flashing. Aborted
17/017/2013 20:17:07 - INFO - Device connected in flash mode
17/017/2013 20:17:08 - INFO - Device disconnected
17/017/2013 20:17:11 - INFO - Device connected in flash mode
17/017/2013 20:17:12 - INFO - Device disconnected

I get this from S1TOOL:
Welcome to S1 tool.

TO CONNECT NEXT PHONES
X10 Xperia,E10 Xperia Mini,E15 Xperia X8,U20 Xperia Mini Pro
LT15 Xperia ARC,MT15 Xperia NEO,R800 Xperia PLAY
PRESS AND HOLD "BACK" BUTTON...

PLEASE ATTACH TURNED OFF PHONE NOW

RUNNING S1_EROM VER "R8A029"
SOFTWARE AID: 0001
LOADER AID: 0001
FLASH ID: "0020/00BC"
LOADER VERSION: "R4A045"

MODEL (from GDFS): E15i
SOFTWARE VERSION: 1236-9291_2.1.1.A.0.6
CUSTOM VERSION: 1242-6780_R5B
FILESYSTEM VERSION: WORLD-1-2-5_2.0.1.A.0.47
SERIAL NO: BX902AVHMC

SEMC SIMLOCK CERTIFICATE
Elapsed:10 secs.

Why can't I flash my Xperia X8? How can I fix it?

FlashTool has been updated and is hovering near the 1.0 milestone, dated 5th June 2013, presumably its updated.
That aside, the .ftf image is either corrupted or the incorrect SIN header was accidentally linked in, intending for another Xperia device.

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


text:
Chrome shows black screen when playing video, but performs well when full screen
I have a tablet and an Android TV stick. Both are on Android 4.1 JB.
I have an MP4 video file. On my tablet, the MP4 plays well inside the Chrome browser. But on my Android TV stick, it shows a blank black screen! I could only view the video when it's in fullscreen mode.
I suspect that it's the size of the video or the display. Perhaps it was too small to see in normal mode.
Does anybody have a clue how to deal with it?

What is the resoultion and the format and encoding of the video and the resolution of the tv stick screen?Is it a 4K resolution video format? Try playing another video of same resolution in android tv stick.

If every video behaves this way, it could be a bug in the display driver for your TV stick. When a video plays full-screen, the video decoder writes the decoded video directly into the framebuffer, a special part of memory that holds the image being displayed. When a video is played inside another window, it instead uses an overlay, which is a way of combining the video output and the rest of the screen.
If playing videos works fullscreen but not inside another window, this could be a symptom of a error in the part of the display driver that handles overlays. You could check with the manufacturer to see if an updated ROM fixes the error.

It has to do with the resolution you are trying to play is too high to play in normal mode and hence the blank screen.
Anyways rather than using Google Chrome for videos I'd recommend MX Player which is a very capable media player and supports most videos.

thank you so much for your response!
but I'm actually doing some Android app programming which needs a webview (plus the webchromeclient), thus I have to ensure that the video is working on chrome.......Any work arounds?? thanks!!!


text:
Three (UK telco provider) has blocked my tethering
I have a contract with Three (UK telco provider), which gives me unlimited data. My mobile is Samsung Galaxy S Plus (GT-I9001). Every time I try tethering, I get a pop up saying I can't tether. I have tried several apps but with no joy.
Does anyone know how to by pass Three finding out when I'm tethering?

@Yassar: I imagine that bypassing the tether block would be against their Terms of Service. Are you really asking us to abet you in violating your contract?

Tethering on Three's (or most other UK telco providers) unlimited plans is against their terms and conditions.  You'll have to switch to a plan that allows tethering or use an add-on.  See their Tethering info page for more information.  Also see their Terms and Conditions
However some phones will still allow you to tether, I'm surprised it doesn't work on the GS2.  Did you buy it from Three?  So the tether function still works, but when you do tether a Laptop, they send you a message?
Generally they detect mobile usage that comes from PCs and Laptops and then they ban you.  But tethering to other mobile devices seem to work, and also if you keep your data usage low, they may not bother.
Another possible work-around is to try and spoof the user agent and trick Three into thinking that the data is being sent by a mobile device.  However, this is not fool-proof and they may still be able to detect, for example downloading a windows update.
Just to be clear, I would still recommend you buy an addon or join a different plan which allows tethering.  If you think the Terms and Conditions are unfair, file a complaint or switch telcos.
Update:
Information on Three's The One Plan

SIM plans with All-you-can-eat data do not allow tethering (except for the One Plan). If you would like to tether, you will need to choose a Pay Monthly plan and / or an Add-On that does allow tethering.

So it is possible to get the One Plan, for unlimited data and tethering.
And from Tethering Explained

If your smartphone plan includes all you can eat data, then this is for data consumption actually on your smartphone.  It does not include using your smartphone as a modem to connect other devices such as laptops and tablets – also known as “Tethering”.  Tethering is included in (i) The One Plan; (ii) the One Plan SIM only; or (iii) By purchasing an Ultimate Internet Plan with the Tethering Add on. The add-on can be purchased via My3 on your handset and is also available to customers on our Talk and Text plans.

See their Pay Monthly plans

I bought the phone contract from a third party. Basically I'm asking for a way around it because as I have unlimited data I should be able to do what I like with it. As soon I connect it to my laptop I get a message from three :(

This is not correct, by signing up with them, you are agreeing with their terms and conditions and when you break those terms and conditions, they have the right to ban you

On the contract it does not say you can not tether or that you can,so therefore technically ishould be able to if i choose to. I have not broken the tcs, iv asked to upgrade but they say i cant......

can you provide info on which contract/plan you are on

Unlimited data n tx and 900mins

are you getting this? http://android.stackexchange.com/questions/36313/getting-rid-of-tethering-detected-popup-on-android-ics-4-0?rq=1

I've solved the problem with this app
https://play.google.com/store/apps/details?id=com.tetherunlocker
be careful to have only one apn for mobile traffic and remove the apn for tethering traffic.

Just reset your phone. If the issue persists, call them.

It'd imagine it's not an 'issue', more that it's done deliberately on 3's part.


text:
Undo "marked as spam" on Facebook Messenger
I was texting with my friend, but I didn't lock my keyboard. I marked her as spam. Do you know how I can get back notifications from her messages?

How did you manage to 'mark her as spam'? As far as I can see there isn't an option in the Facebook Messenger app to do that nor is there one in the Facebook app's messaging bit. EDIT: Do you mean you just turned off notifications for her messages?

on my telephone htc evo 3d when i open conversation and i click on 4 lines next to house button (http://www.fony.sk/obr/htc/htc_evo_3d/pic03.jpg) it opens "window" and there is option mark as spam but now it is going. thank you for the assistance

Odd, I have the same '4 lines', the options button. When I click it on a conversation the options I get are Settings, Logout, About, Archive and Delete. Were you using the main Facebook app or the separate Facebook Messenger app?

Based from an edit suggestion by Harry Jackson "If you mean marked as spam, then you have put them somewhere that you can't see them or read old messages, but there is one way you can get this back: on the message app, type the name of the person that you want to unmark as spam and send them a message. This will then unmark them"

I'm not exactly sure what you mean by 'marked as spam' since I can't see this option in either the Facebook app or the Facebook Messenger app. I'm assuming you mean you turned off notifications for her messages since you mention you want to get them back. I'll explain how to turn them back on.
Facebook Messenger

Open up the conversation with person
Press the 'i' in the circle in the top right

Click on Notications and set to 'On'.

Facebook App

Go to your messages and open up the conversation with the person.
Click on the gear icon in the top right

In the Settings tab make sure 'Alerts On' is selected.


text:
Disable ringtone fade-in
My Moto Z2 Play includes a "feature" where call rings and alarm sounds start out nearly silent and increase to full volume over about five seconds. I have been unable to find any setting to change this behavior. Media audio (games, apps, etc.) is not affected.
In the stock clock app settings, I have "Gradually increase volume" set to "Never". I'm seems that there is an OS or hardware level setting or feature that is overriding the clock app setting.
I have found an app that purportedly solves this problem, but it requires an unsettling number of permissions to function. Is there no native way to disable this "feature"?
(I understand that this behavior provides utility for some people. For me, it merely ruins my ringtones and makes me more likely to miss calls.)

Did you try adb shell? Execute settings list system and see if something like increasing_ring exists.

For alarm clock there should be checkbox called "increasing volume" or something like that.

In the clock settings, I have "Gradually increase volume" set to "Never". I'm seems that there is an OS or hardware level setting it feature that is overriding the clock app.

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


text:
The lowest in-call volume level
I have a redmi 4x, lineage os 15 official.
I have the lowest in-call volume level as big as 20%. I can't make it lower and in a quiet room almost everyone can hear my phone conversation. I tried different apps, some of them worked: they could lower the volume to 0% but the effect was temporal. I'm looking for a constant solution. Can anybody suggest a method how to lower the in-call volume below that level?

Welcome to Android Enthusiasts! It seems that you have lost access to your account. To regain access or to merge your multiple accounts, please follow the link here.

The cause is Volume Steps are set to 5 ... At 20% you must have only 5 steps and 20% per step... You need to modify your build.prop and add more in-call volume steps.. Here's an example of 20 steps... 20/100 = 5% volume as minimum..
Soo...
If you MUST Have a minimum of 0 or 1% then set the steps to 100... I recommend 20 however..
Add to build.prop

Go to Development Options
Enable Root Access for Apps
Open a root explorer
Open system / build.prop
Edit this line if it exits, or add it if it doesn't...
ro.config.vc_call_vol_steps=20


text:
How to access PC disk from adb shell?
My emulator can't do adb root. Anyway, I can do adb shell and then do su and get root to do my things. But how to copy some file from my PC to connected device using adb shell? Where can I access my disk? cp Mypc/somefile /Myandroid/comewhere ?
EDIT: I can't also do adb pull :(

Lol, I just set everything to 777 with su:

x86_64:/ $ su
x86_64:/ # chmod 777 /data/mi
misc/     misc_ce/  misc_de/
x86_64:/ # chmod 777 /data/misc
x86_64:/ # chmod 777 /data/misc/
adb/              cameraserver/     media/            shared_relro/     vold/
audioserver/      dhcp/             net/              sms/              vpn/
bluedroid/        ethernet/         perfprofd/        systemkeys/       wifi/
bluetooth/        gatekeeper/       profiles/         trace/            zoneinfo/
bootstat/         keychain/         profman/          update_engine/
boottrace/        keystore/         radio/            user/
x86_64:/ # chmod 777 /data/misc/key
keychain/  keystore/
x86_64:/ # chmod 777 /data/misc/keystore/
x86_64:/ # chmod 777 /data/misc/keystore/user_0/
x86_64:/ # chmod 777 /data/misc/keystore/user_0/*
chmod: /data/misc/keystore/user_0/*: No such file or directory
1|x86_64:/ # chmod 777 /data/misc/keystore/user_0/*
chmod: /data/misc/keystore/user_0/*: No such file or directory
1|x86_64:/ #

And it worked :)))
marat@marat-desktop ~/Desktop> adb push charles-ssl-proxying-certificate.cer /data/misc/keystore/user_0/charles-ssl-proxying-certificate.cer
charles-ssl-proxying-certificate.cer: 1 file pushed. 5.4 MB/s (1348 bytes in 0.000s)
marat@marat-desktop ~/Desktop>

Fix the permissions afterwards or else you just opened up a vulnerability on your devices data partition.

@Cookie you are in a sense making fun of Discretionary Access Control, like Windows did with UNIX and now they are fighting with malware. If everything is to be chmodded to 777, why there other permission modes exist! Instead of changing permissions of directories, do adb push to some writeable directory like /data/local/tmp and then use cp or mv from su shell.

Yeah, cp is more elegant way to do this. But i was using anbox and it cant even set pin code for ssl by android'd os requrement :(


text:
How can I check that my Samsung phone is original and hasn't been modified?
How can I check that the mobile device that I am using has not been altered after leaving the factory?
By this I mean no changes whatsoever have been made to the device. Whether it's the whole OS (firmware)or just a single malicious app installed on system partition.
Is there some way I can check the md5 or sha256sum of the device? And if the firmware for my phone is available on the internet I could compare. Would this work? How could I do this on ubuntu?
Or is there some other way?

The simplest answer is you can't check if they have changed your hardware or not with comparing build numbers. But the easiest way if something is changed or not will come up in an app called CPU-Z it show all the software and hardware informations that the device has.
I recommend everyone to give it a try before buying a device because it helps too much. I also realized in settings it has validation option you might give it a go. It will probably ask your details to the vendor and email it back to you

I edited and added some details to the question. I meant to say hardware and software. I think you could check software with some thing like sha1 or sha256.


text:
If I buy a used and infected android phone, will flashing a new custom recovery and custom ROM make it safe to use?
If I buy a used and infected phone with a expensive spyware on it that the antivirus does not detect or is unable to remove than will flashing a new custom recovery and custom ROM make it safe to use?
What would be the proper way of doing it?
Connect to computer and install new recovery first and then the rom or some other way?
Once I have done these two steps, can I be assured that my phone is clean?
And should I be worried about getting my computer infected?
Edit: If this is not enough then what other actions should I take to be sure that the phone is clean?

the proper way is find the right flash tool and stock rom before buying. custom rom depends on stock rom firmware

No, you can't be sure. The recovery and the system partition are the two most important partitions but not the only one. There are also Bootloader, RIL, plus device specific partitions.

@Robert : So what would be the proper way to rewrite all the partitions?

as i said just flashing stock ROM and you will be fine. it will not harm your pc

@Linux_user0987 That is device dependent. There is no general way to flash a Android partition respectively system image.

@Robert : 1) How can I find out how many partitions my device has? 2) Is it possible to rewrite all partitions for a device. And by that I mean is there any brand which has images of all partitions available on the internet?

partitions explained Mediatek very good explanation of android partitions on xda-developers Qualcomm

if you download full stock ROM it comes with all required partitions except device unique calibration data, carrier sim lock, imei, mac address, ... you must not wipe these (nvram, persist, protect, seccfg, ...) you can list partitions from fastboot getvar all (in fastboot mode) or from adb shell ls -l /dev/block/*/*/*/by-name/* (with usb-debugging)


text:
Chromecast with Google TV: No HDMI-CEC entries in Logcat
Trying to get as much control as it's possible from the TV's (LG LF630V) remote for the connected Chromecast with Google TV.
The HDMI-CEC definitely works on Chromecast, as e.g., → ← ↓ ↑ [OK] [Back] buttons are received from the TV remote. The problem is that I need even more (e.g. [Home] button is not implemented), so I've tried to intercept HDMI-CEC commands from Logcat entry, using Tasker. But absolutely no [HdmiCecControl] entries do appear in Logcat, unless (rare) CEC errors.
What I'm doing wrong? Should I explicitly enable HDMI-CEC entries in Logcat? If so, how sould I enable it? Or there is a missing permission here? Any help would be welcomed.

Android TC contains an HDME CEC service. I assume the log messages you see are from this service. I don't think it is configurable what is logged and what not. Thus the only way would be to change the service or to try to access the HDMI-CEC service using the app API which requires to develop an own app respectively Tasker plugin. But that seem to require a bit reverse engineering as the HDMI-CEC API doesn't seem to be documented. See e.g. https://stackoverflow.com/q/47892639/150978

So, as I understand there are low chances to make HDMI CEC logging more verbose. Reverse engineering is out of question, as there are smart remotes (IR + BT) as low as €50 (SofaBaton U1) for controlling both the CC and the TV. I hoped there was an easy workaround. Thanks!


text:
Device does not boot
I have a OnePlus 6T i disabled my magisk hide and rebooted but it gets stuck in the animation of a red dot and two white dots revolving around it after sometime it boots in twrp.
i have uninstall.zip for magisk but the names on my sdcard are weird and when i try just putting the magisk uninstall via mtp among the crypted files using my pc it says "this device has either stopped working or been disconnected"
sideloading modules says magisk not installed
thanks

You could also wipe data via TWRP.
This had happened to me as well, just select reboot in TWRP, then change current slot to a and then click system.

I have already done this and it has worked. thanks


text:
Get Android activities and sub activities path programmatically
This is my first question on AE forum, so excuse me for my ignorance.
I'm searching for a method to get the complete path through the system apps like Music, Video, Settings, etc...
The goal is to prepare a checklist for manual testers to browse through the checklist and do sanity/functional tests
Currently, I'm using :
adb logcat | find "ActivityManager"

Then I record the path manually to prepare the script for launching the activity, for example:
adb shell am start -n com.android.settings/.Settings\$WifiSettingsActivity

The problem I can't go through all the forms of the system apps this way because it's time-consuming
Is there any tool, idea to help me automate the process of launching system apps activities one by one to create a full checklist ?
Regards

Not programmatically: There are apps for this. This one is just for browsing, but sure you will find one with record mode https://play.google.com/store/apps/details?id=com.sika524.android.quickshortcut

@alecxs Thank you for the suggestion, but is there something else which makes me gain in productivity? an automated way to get all launchable activities with their intents ?

I've edited the question, Thanks!

See https://stackoverflow.com/questions/33441138/how-to-find-out-activity-names-in-a-package-android-adb-shell

Based on this question from StackOverflow, you can try the following:
adb shell dumpsys package | grep -i "com." | grep Activity

It will list all activities from packages whose names start with com.. You can apply the same command for packages that start with net. or org. or whatever by substituting com.


text:
"Screenlock didn't work" error message on "Verify it's you" for Google Password Manager
My passwords are kept in https://passwords.google.com.  When I am on my Android 12 / Pixel 5a, I need one of my passwords, and I go to Google Password Manager to get it, Android asks me to "verify it's [me]."  I understand that I need to get past "use [my] screen lock" so Google knows it's me.
I want to use my fingerprint to authenticate - that is fast and simple.  But when I click on the "Continue" button, it says "Screenlock didn't work."  I can click on the "Try Again" button, but the screen lock doesn't work again, and I get caught in an endless loop of being denied.  (There is a login with password option, but my password is long and very random and very slow and tedious to type.) This is very frustrating and keeps me from getting my passwords stored by Google on my Google phone.
What is the solution/fix for this?

I am able to log in from my account using Chrome // I just downloaded this app and it works fine //

Maybe network issue? Try clearing the app cache and see

I don't understand the hype of fingerprint, police can force you to unlock so easy. all they need is a finger. I guess when google ask for screen lock PIN/pattern is expected, fingerprint is insecure

@alecxs I wasn't clear.. doesn't ask for fingerprint, only account password. That's why I downloaded app to verify what OP is saying that it asks for fingerprint. Only password on both web and app

Related: Reddit - Screenlock works for everything but passwords.google.com, Google Support - "Screenlock didn't work" error when logging intk Google account from Samsung S20 Ultra


text:
How to get data off a completely dead Android phone?
Phone worked perfectly. Then one day completely dead, nothing at all. It may have been that "one day" was after some time of laying around, cannot recall.
Model: Android AT&T Samsung Galaxy S3 (SGH-i747 SKU S9255)
Already tried;

Charging phone: no visual output at all, no leds
Removing battery while charging: no visual output at all, no leds
Removing SIM and SD card: no visual output at all, no leds
Attempt to turn on: no visual output at all, no leds

I need to get our family photo's off this phone (stored on internal memory). I care less about the hardware/phone itself.
Thank you for any help you can offer!

Try this: Take off the back of the phone, then look for the chip that holds all your data. If that doesn't work I don't know what will.

If you are talking about the SD card, it was already removed, and it does not hold the data.

I assume Jeffrey was talking about soldering out the flash memory chip. In detail the Samsung KMVTU000LM in the S3 teardown. Once you have the chip it can be theoretically be connected to a flash memory reader that can handle such chips for reading out the content.

Have you looked at your battery state of charge? If its relatively high, then you could just try to charge it up with test probes (very carefully) with a TP4056 module up to 3.7 or 3.8V. That may get you into a position where you can turn the phone on.

You mean if the battery charge is relatively low? The battery in this model is just a replaceable one.

@Robert thank you for that reference. Do you have detail about 1) how to get the chip off, 2) how to connect it to a flash memory reader, 3) how to read the data? (Please provide full answer below to go in the run for the bounty...)

perhaps this could help? sorry this isn't that good: https://www.youtube.com/watch?v=uMoVqoVuPns

the chip off method is pretty useless when userdata is encrypted. what if just the usb connector is broken? did you try another battery or did you charge the battery outside of phone (universal external charger)?

@alecxs the userdata is not encrypted. USB connector + other battery - great ideas. Will test more. Thank you

It seems like a hardware issue (not directly related to storage), better try to get fixed. Unless the device boots at least to some bootloader stage (like fastboot or odin or edl) you can't access its memory. Or if the data is extremely important, contact some professional data recovery service which usually do one of the two:

Access eMMC directly using some low level protocol like JTAG. Special equipment - usually called some kind of box e.g EasyJtag - is used to make communication with eMMC.
Or using a chip-off method i.e. by removing eMMC chip from board.
Most devices built in the last few years use eMMC flash devices as their persistent storage. Usually eMMC and RAM are bundled in a single package; eMCP. So a compatible eMMC/eMCP reader can be used to recover data by connecting it to PC. A range of such readers/sockets is available on online stores from a number of chinese manufacturers - e.g. Allsocket and KZT - to match with different sizes and shapes of BGA packages.

Please note that there are other factors as well which may define the destiny of data recovery through JTAG or a chip-off method. Data recovery is very less probable or impossible if:

eMMC is dead i.e. it has reached the limit of E/P cycles it was designed for.
You were using encryption (FDE/FBE) on your device. Starting with Android 5.0 encryption is hardware-backed. Quoted from here:

By default, the decryption key is stored in the hardware-backed storage
  ...
  bear in mind that extracting the decryption key via chip-off or any other low-level method is not possible, so if you do a chip-off you won’t get the decryption key and won’t be able to decrypt the data.

RELATED:

Why Android devices are more brickable than PCs?
How to recover a deleted file from /data partition?

Hypothetical: would it be worth it for a person to somehow manage to get data out of emmc (encrypted it is), wait for a couple of years or probably a decade to have serious advancements in affordable parallel processing hardware (like gpu), and then brute force the way out of that encrypted data? I see bruteforce the only method (unless social engineering gives us the result) if decryption key cannot be chipped off.

@Firelord interesting. To decrypt the whole partition (FDE) or whole filesystem (FBE), master key is required which is encrypted with another middle key, and stored at crypto footer or in /data/misc/vold/user_keys/[ce|de]/<User_ID>/. An encrypted private RSA key is also stored along with master key, which is provided to KeyMaster, which decrypts RSA key and then uses it to sign the middle key. Middle key in turn is derived from user credentials and a random salt also stored along with master key. So we need two things: user credentials and unencrypted RSA key; later only known to KeyMaster.

KeyMaster module runs in a secure environment, e.g. TEE, which uses main CPU but is completely isolated from main OS. ARM's TZ is an implementation of TEE. Qcomm's implementation of TZ is QSEE in which KeyMaster runs. Ideally KeyMaster should not leak any cryptographic information, but it's been hacked, though only useful if device is working. For off the device attacks user password as well as RSA key is to be brute forced. And the later seems impossible. So this approach doesn't look like a matter of time. That's what my understanding is.

I see. I didn't know about RSA key. I only thought that user credentials with a random salt were processed into a key for encryption, hence asked about brute force. Now it all makes sense that if the device is encrypted and dead all hope is lost to recover data from it.

@Firelord yeah that was the actual story behind famous Apple vs. FBI case.


text:
Sharing internet from android to PC over LAN
Is it possible to share my mobile connection with a PC over a LAN cable?
Anyway, My scheme is OTG micro USB and then OTG USB ethernet adapter and then LAN cable to Windows (Bootcamp Mac).
Any help would be appreciated.

By LAN you mean WLAN or intend to use an OTG Ethernet adapter?

Use OTG Ethernet adapter

so did you try and it didn't work?

How to make Ethernet work on Android over OTG?


text:
Why can't I sign into google map when being away from my apartment and using mobile data?
My phone is Kyrocera Hydro Icon, with Android 4.4.2. I am in US and using Sprint network.
When I am in my apartment, google map will automatically log into my google account, no matter whether my phone is using mobile service or wifi.
When I am away from my apartment and my phone is using mobile data service, google map app will say that something link "can't sign in using my google account". The result of that is I can't retrieve the history of places which I have looked up, and I can't access the places which I have saved.
Why is the problem, and how can I solve it?
Thanks.

At least tell us the country & carrier name that you are using. Metro region or state/province may be helpful as well.

Is mobile data working at all? Can you visit websites that offer HTTPS? Sounds like a networking issue.

@G mobile data is working. I can visit https websites. Can it be a problem of account management by Android?


text:
How can I move installed apps from the old microSD card to a new one, as I swap the cards inside my phone?
In my Android phone, I have moved some installed apps from the internal storage to a MicroSD card. Now I swapped the microSD card with another microSD card inside the phone. How can I move the installed apps from the old to the new microSD card?
My phone is Kyocera Hydro Icon with Android 4.3. It seems to only have one microSD card slot and a SIM card slot inside. I can't find a second microSD card slot.
I can't move installed apps from old microSD card to my internal storage, because my phone doesn't have enough space.
Will it work if I copy the files from one sd card to the other, file by file, by connecting both microSD cards to a computer simultaneously:

inserting one microSD card to a computer, via microSD-to-SD adapter, and
inserting the other microSD card to the same computer, via keeping it inside the phone and connecting the phone to the same computer via USB cable?

Update: copy file by file from a sd card to another by connecting both to a computer doesn't make the phone work with the new sd card.

You said you swapped the microSD cards. Then later said you didn't find any microSD card slot on the phone. You are contradicting yourself. To move the apps: put the old card back on the phone. Move the apps from SD card to phone. Insert the new SD card, then move the apps from phone to SD card.

I can't move installed app from old microSD card to my phone, because my phone doesn't have enough space.

You could try Win32 Disk Imager to read an image from one MicroSD card and write it to another.
First, specify image name and press Read button:

Then change sd card and press Write button:

Moreover, if there is more storage space on the second SD card, try using free Paragon Partition Manager Community Edition to resize partition (note, FAT32 limited to 32GB):


text:
Sd card and its directory
My phone (a refurbished Kyocera Hydro Icon running non-rooted Android 4.3) shows storage info of a sd card in picture 1. What's the path of its mounting point?
The size matching in picture 1 and 2 suggests its directory is /storage/sdcard0.
But ES File Explorer shows the content of /storage/sdcard0 isn't empty after I unmount the sd card. Picture 3 and 4 are before and after I unmount the sd card.
I can't find the sd card in the back of the phone. See picture 5. Where is it? (Update: I found the 2GB sd card, it is a little black thing, a little vague to see in the picture 5)
Thanks.

Storage as shown in Settings (left) and ES file manager

sdcard0 with both cards mounted (left, note the internalSD folder) and with the external card removed

There's an SD card inserted. Click the image for a larger variant if you don't believe
I've checked with mount and df while both cards are mounted, and with the external card umounted:

output of mount with the external mounted (left) and unmounted (click images for larger variants)

output of df with the external mounted (left) and unmounted (click images for larger variants)

SD card on newer Android phones, when referring to /storage/sdcard0, is meant in the sense of internal storage usable as an SD card. You should not attempt to unmount it, because it automatically gets remounted, because it's needed by many apps as their secondary storage to store large amounts of data (/data/data/ is the primary but smaller one).

Checking your pics again: that device seems to have a weird mounting set up, which I've never seen before on an Android device. /storage/sdcard0 indeed is your internal SD. But as soon as the external card is mounted, some kind of "overlay file system" seems to be initialized, blending it in with the internal card as if it were a single device. You can see that by the fact that, when unmounting, some entries from pic#3 disappear (pic#4; of course the files from the external card) while some remain (those on the internal card).
To find out where the external card is mounted physically, you can use the mount or df command at a terminal prompt: no root required for that, a simple terminal app will do or, alternatively, access via adb shell (see: adb and its tag-wiki).

Edit: After having collected df output with and without the external card mounted, the situation looks a bit more confusing. Here's what's happening in your case:

the internal SD card gets mounted to /storage/sdcard0, as it should be.
when the external card is inserted,

the internal one gets unmounted
the external card gets mounted to /storage/sdcard0
the internal card gets mounted to /storage/sdcard0/internalSD

when the external card is unmounted, things reverse again

So /storage/sdcard0 never shows "empty", but the content "changes". Relevant parts of df output to confirm this:

# df run with the external card mounted:
/storage/sdcard0              1.9G …
/storage/sdcard0/internalSD   1023.7M …
# df run after unmounting the external card:
/storage/sdcard0              1023.7M …

Check with the sizes to confirm. Another proof is the mount output:

# mount with both cards mounted:
/dev/block/vold/179:65 /storage/sdcard0 vfat
/dev/block/vold/179:30 /storage/sdcard0/internalSD vfat
# after unmounting the external card:
/dev/block/vold/179:30 /storage/sdcard0 vfat

Here you clearly see the device (first column) mounted to /storage/sdcard0 changes (which explains why I wanted the mount output in the first place). So no UnionFS: the output also clearly shows both cards using VFAT. Changing contents in the /storage/sdcard0 directory are easily explained by the SD cards being "interchanged".

Thanks. Where Is the internal sd card? How to remove it?

Fixed into your device, and not without destroying it (SoC).

Internal storage: /data. SD cards are using vold (see output of mount). Useful reading: Android Folder Hierarchy, our storage tag-wiki.

Sorry, copy in my phone is bad. The picture in my last commend should be https://i.sstatic.net/02mtp.png. What Is "phone"? Is it the same as the internal sd card? So my last comment should be "(1) Is the internal sd card "internal storage", or "phone" in https://i.sstatic.net/02mtp.png, or something else? The first has similar name, but unmatching space. The second has similar space. (2) Do the outputs of mount and df show "internal storage", and "phone" as partitions and file systems? "

Did you follow the links? If so: "device storage" (sometimes called "internal storage"). If not: Now is the time :) And again: This is no chat, and also not a forum. We've got a chat room for things like this, you've got the required rep to join. I'll stop responding here now, as this kind of discussion violates our rules, sorry.

/storage/sdcard0 is usually an "emulated SD card", in other words, your internal storage. Newer phones always have that "internal storage" which can't be physically removed from the phone, and serves as its "SD card", in a way that it stores apps and user data.

While I agree, the second screenshot clearly shows separate entries for sdcard0 and internalSD – which are neither duplicate (different sizes reported). What device has 2 internal/emulated cards?

thanks. (1) I found there is indeed a 2GB external SD card, probably too vague to see in the last picture. (2) The matching in size in picture 1 and 2 implies /storage/sdcard0 is the mounting point of the external SD card or its symbolic link . (3) My question is when I unmount the external SD card, /storage/sdcard0 isn't empty. See picture 3 and 4 for before and after I unmount the external sd card.

When running console under TWRP, external microSD card is: /system/sdcard1  works fine, but I just couldn't get to it through ADB. I'm using MIUI 8.5.3.0.  Finally found it:
I suspect the name will vary, so do ls in /storage
it should show up something like
2ABC-1XYZ   <<< this is it
emulated
self

You probably have been mistaken - it should never be under /system. It's a user-accessible directory after all. That "2ABC-1XYZ" stuff is the volume serial number of that storage and will be completely different across different storage, or the same storage after formatting.

@AndyYan not exactly sure what you mean, I'm logged in in TWRP console right now, and I can create folders (for example) on microSD card via cd /system/sdcard1

SD card is user accessible; /system is not (unless you're rooted). Therefore, SD card shouldn't be mounted inside /system, else it would be inaccessible through that route for the majority of unrooted users. This got me curious though... Can you still see and manipulate /system/sdcard1 after you boot into the OS? It might be a mount point unique to TWRP.

I'm rooted. I have full access to microSD via /system/sdcard1 but only through TWRP console. Once booted into OS that path is gone. So through OS I access it using that volume serial. I couldn't find any other (more normal) way.

I assumed so. Starting Android 6.x the volume serial is the only reliable entry left in the OS. /system/sdcard1 is likely created by your device's TWRP to make things easier. I emphasized that part because I've never seen that entry point there on any device I've owned, despite I load them all with TWRP and custom ROMs. Probably the maintainer of your device's TWRP likes this way... Can you tell me what your device is, so I could take a look at it later (for curiosity only)?

Ah, I see, thanks for the info! I was going to search more thoroughly for a "normal way" to access microSD from OS, so this will have to do then. My device is Redmi 3S+ running MIUI. Features/Price of it is very nice, but unlocking bootloader was a bit not so straightforward.

It was such a pain that the SD mount point is often different across android devices that I wrote this awk one-liner (works on my 3 android devices) :
adb shell mount | awk '/emulated|sdcard0/{next}/(Removable|storage)\//{if($2=="on")print$3;else print$2}'


text:
Using wlan1 instead of wlan0 in Android Nexus 6
I am trying to use a WiFi dongle with Android Nexus 6 with custom ROM and kernel. I have installed drivers of USB WiFi dongle on Android phone that appears at wlan1 network interface in adb shell. Whereas, the default WiFi appears at wlan0. However, I am unable to access or even ping the devices available on wlan1.
I have connected the USB dongle to it's WiFi and assigned an IP address:
iw dev wlan1 connect -w WiFi-XC
ip addr add 172.16.0.120/16 broadcast 172.16.255.255 dev wlan1

The dmesg show that the association to the WiFi AP is successful:
[  242.667204] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[  245.599269] wlan1: authenticate with 70:b3:d5:95:94:6e
[  245.599934] wlan1: send auth to 70:b3:d5:95:94:6e (try 1/3)
[  245.603278] wlan1: authenticated
[  245.604767] wlan1: associate with 70:b3:d5:95:94:6e (try 1/3)
[  245.606292] wlan1: RX AssocResp from 70:b3:d5:95:94:6e (capab=0x421 status=0 aid=2)
[  245.609720] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
[  245.616657] wlan1: associated

The routing table looks like:
10.10.0.0/16 dev wlan0  proto kernel  scope link  src 10.10.10.108
172.16.0.0/16 dev wlan1  proto kernel  scope link  src 172.16.0.120

Whereas, the output of ifconfig looks like:
wlan0     Link encap:Ethernet  HWaddr 44:80:eb:30:e5:03
          inet addr:10.10.10.108  Bcast:10.10.255.255  Mask:255.255.0.0
          inet6 addr: fe80::4680:ebff:fe30:e503/64 Scope: Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3670 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4500 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:854154 TX bytes:1080264
wlan1     Link encap:Ethernet  HWaddr 70:b3:d5:95:85:f1  Driver wifidongle
          inet addr:172.16.0.120  Bcast:172.16.255.255  Mask:255.255.0.0
          inet6 addr: fe80::72b3:d5ff:fe95:85f1/64 Scope: Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:487 errors:0 dropped:0 overruns:0 frame:0
          TX packets:29 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:30055 TX bytes:6051

When I try to ping the router at 172.16.0.10, or ping the device from router, the ping doesn't succeed. However, when I try to run nmap -sn 172.16.0.0/24 on the router to see the devices it can see, surprisingly it shows that it can see the device:
Starting Nmap 7.60 ( https://nmap.org ) at 2019-07-11 12:56 UTC
Nmap scan report for 172.16.0.120
Host is up (0.0017s latency).

I have a suspicion that both wlan0 and wlan1 cannot work at the same time. If this is the case, how can I take down wlan0. If this is not the case and both wlan0 and wlan1 can work at the same time, can someone suggest a solution?

You are looking at only main table in routing table. Android uses many other tables as well, particularly 97.

As indicated in the comments, there are multiple routing tables that Android uses. The routing table that is shown by ip route show is the main routing table, which is not added to ip rule list by default in android. Do add the main routing table to ip rule, you need to execute command ip rule add from all lookup main pref 1.


text:
I can't unlock bootloader on fly fron linux
My OS is majaro linux.
My phone is fly nimbus 8.
I tried to unlock bootloader on it.
I followed the instruction.
First I go to the Dev mod then enable OEM unlock and USB debugging.
Second I typed:

adb devices

output:
List of devices attached
56090913288827  device

Then I typed:

adb reboot-bootloader

It became like this:

Then I checked again:

fastboot devices

output:
56090913288827  fastboot

It seems all works out good!
But then I entered:

sudo fastboot oem unlock

And then nothing. I mean absolutely nothing: it does not throw an error, not answers, not completes.
By the way, the phone does the same - absolutely nothing!
if I plug off the device it writes:
FAILED (Status read failed (No such device))
fastboot: error: Command failed

I tried it already ten more times but it doesn't want to work!
Does anyone know what the problem?
Did somebody have the experience in flash the fly(in particular nimbus 8)?
I'll de be waiting for an answer!
Thanks!

I don't know why but Mediatek devices (which your device is) do not have bootloader support via fastboot. If you are looking to install a custom recovery or a ROM, you need to use SP Flash Tool. Visit its site to know about is usage.

@Firelord This is the case! If I wanna install custom recovery I need to unlock bootloader! I already tried SP flash tool, but again, when I click download it do nothing. However, when I start it from the terminal it sees when i plug in or plug out the device. PS. Sorry for my grammar!

try fastboot flashing unlock from windows with latest platform tools, linux platform tools have issues sometimes. SP Flash Tool can flash boot/recovery with locked bootloader. Do a readback first! Then try to flash stock boot/stock recovery first. if you can flash boot only, you can root with Magisk and write recovery with dd. if your device have MTK secure boot you need to find Secure Boot Download Agent

btw you have not installed Mediatek preloader VCOM drivers, you really need Windows for it. device must switched off for readback/flashing (flash with removed battery if possible)

I found out what the matter!
Fly nimbus 8  delivers in two kinds: with MTK and with spreadtrum!
In my case it was with spreadtrum.


text:
How to fix "Socket creation in UltraProbe...Permission denied" error when using nmap?
I have a pre-compiled nmap binary for Android that was working properly and without error in LineageOS 14.1. The phone is a One Plus One.
Since upgrading to Lineage 15.1 (Android 8), the specific error I get is:
Socket creation in UltraProbe* sendConnectScanProbe(UltraScanInfo, HostScanStats, u16, u8, u8): Permission denied (13).

This is when nmap is run as the standard user, as root the phone becomes unresponsive and immediately crashes. I read somewhere over on SO that someone who was also attempting to open a socket was running into a permission issue as well, but successfully circumvented it by adding the user into these groups: aid_bt, aid_bt_net, aid_inet, aid_net_raw, aid_admin
It doesn't seem like this version of LineageOS has either groupadd or usermod, so that solution doesn't help me.
Did any changes occur between the two versions of Lineage that could cause this problem?
And how can I make nmap work again?

Did any changes occur between the two versions of Lineage that could cause this problem

I don't have any experience with nmap and can't be sure why it worked with Android N, but Android has always been restrictive when it comes to socket access. I have been facing same issues at least from Marshmallow and onwards. ping is the common example.

It doesn't seem like this version of LineageOS has either groupadd or usermod

Android's users and permissions management is quite different than Linux. Bionic libc doesn't support many sycalls provided by standard glibc, particularly related to NSS. Also, the related files /etc/passwd, /etc/group, /etc/shadow and others don't exist on Android the way they exist on Linux. So, the standard Linux utilities groupadd and useradd etc. cannot be used on Android unless the source is modified and environment is modified accordingly.

how can I make nmap work again?

If you want to use a program compiled  for standard Linux which needs capabilities CAP_NET_BIND_SERVICE, CAP_NET_ADMIN, CAP_NET_RAW etc., the program needs to be run by a user who is member of Android groups aid_inet, aid_admin and aid_net_raw.  Even though the root user has apparently CAP_NET_* capabilities, socket syscall fails if it is not added to these groups explicitly. Most of the times only aid_inet suffices.
For instance, let's view capabilities of wpa_supplicant (process responsible for making wi-fi connections) on Android:
~$ su -c "getpcaps $(pidof wpa_supplicant)"
Capabilities for `21224': = cap_net_admin,cap_net_raw+ep

So, nmap won't work unless executed with its required capabilities. A capability is a subset of root permissions.
Terminal apps are usually already member of aid_net group (android.permission.INTERNET). However if it's not the case or you want to create a Linux type user on Android, follow on.
ADD LINUX USER ON ANDROID
NOTE: Device must be rooted.
On Linux, capabilities are assigned to a user (a user is a process id in fact, usually a shell) by some login mechanism, PAM modules being the most common. But there is no user login on Android, so we need to replicate that somehow. Lets create a Linux user, say "irfan" on Android.
Better is to use the UID of terminal app assigned at the time of app installation or you can use any unused UID like 6000.
Modify or create the files as below:
# /etc/passwd
irfan:x:10129:10129::/sdcard:/system/bin/sh
root:x:0:0::/data/local/tmp:/system/bin/sh

# /etc/group
aid_inet:x:3003:irfan,root

To login as user "irfan" with aid_inet as secondary group, use a Linux aware busybox su binary which regards /etc/passwd and /etc/group:
~$ id
uid=10129(u0_a129) gid=10129(u0_a129) groups=10129(u0_a129),9997(everybody)

~$ su -c 'busybox su - irfan'

~$ busybox id
uid=10129(irfan) gid=10129(irfan) groups=10129(irfan),3003(aid_inet)

Please note the usage of su twice. First su is the one you get when you root your device. It's because su must be executed with CAP_SETUID capability. But normal Android apps run without any capability:
~$ capsh --print | grep Bounding
Bounding set =

The first su grants us that capability (and all other capabilities) as well as avoids the need to setuid on busybox  su binary.
In the same way you can add yourself to as many groups as you want, everybody, sdcard_rw and so on.
SOURCE:

How Linux capabilities work
Root User and Linux Capabilities: Linux vs. Android


text:
How do certain apps show new notifications when internet access is restricted to them?
I have disabled WhatsApp's access to Internet by disabling both WLAN-usage and mobile network usage.
I thought this should block WhatsApp from accessing the internet. But miraculously WhatsApp gives me a message with ominous content: "You might have new messages"
When I open WA it does not show any messages. When I then give it back it's access rights wonder what, there are messages I received the same day!
So to me it looks as if this app has found its way to sneak around my network restrictions.
So the following questions arise:

Is my assumption about the effectiveness of restricting the "data usage" for apps wrong?
Does WhatsApp hack around the standard restrictions?

This question about firewalls is related: Receiving App Notifications from apps that are blocked by a network firewall

App developers can tell better but what I perceive is that many modern apps use Firebase Cloud Messaging - a proprietary service from Google, not part of AOSP - for push notifications. In fact developers are forced to use Google's proprietary products unnoticeably. Quoted from here:

The Doze restriction on network access is also likely to affect your app, especially if the app relies on real-time messages such as tickles or notifications. If your app requires a persistent connection to the network to receive messages, you should use Firebase Cloud Messaging (FCM) if possible.
  ...
  FCM is optimized to work with Doze and App Standby idle modes by means of high-priority FCM messages.

FCM is a part of Google Play Services (1):

FCM SDK's only hard dependency is Google Play Services

Play Services is a set of apps which are injected to Android devices with highly privileged permissions, so they aren't subject to data/battery restrictions.
Since you have blocked only the app and not Play Services, app may receive push notifications (though the actual data may not be delivered to the app).
So block GMS in order to block push notifications. Or choose the apps which aren't fond of Google.
RELATED: What is the exact functionality of Google Play Services & Services Framework?

See also: https://github.com/Telegram-FOSS-Team/Telegram-FOSS/blob/master/Notifications.md#notifications

@LucasRamage yeah, gradually taking control.

As you have denied direct network access, WhatsApp can't access the Internet for directly sending/receiving data. However push notifications on Android are mostly not received by the apps. Instead all configured push notifications are received via Google Play Services. The Google Play Service is a different app on your device that still has Internet access.
Those push messages mostly don't contain the actual message and instead are just used as a notification that new data is available. Whenever such a push notification message arrives WhatsApp knows that there are new messages and tries to contact the WhatsApp server to retrieve it.
In your case the connection to the WhatsApp server fails and WhatsApp only displays you the message "You might have new messages".

No, WhatsApp does not hack around the network restrictions.
The app, after a certain amount not being able to connect to its server because you have disabled internet connection, is just guessing. That's why you get the message: "You may have new messages" from its Failure notifications channel.
From How to stop WhatsApp 'You may have new messages' notification:

As such, though WhatsApp is running and mobile data is turned on, it may not be able to access the internet.
  It's only recourse is therefore to throw this notification as a guess since I suspect it can’t tell the difference when a poor network is to blame and when its network rights are being micromanaged by the OS.

WhatsApp uses FCM push notifications to notify the app when there are new messages. FCM is part of Google Play Services and so works even if the app itself has no network access. Normally, the WhatsApp server pings the WhatsApp app via FCM, the app wakes up and checks for new messages, decrypts them, and shows a notification. But in this case, it's unable to check for new messages, so it just reacts to the ping by saying "you may have new messages".


text:
How does an app reads an OTP SMS without SMS permission?
I have recently installed an Android app from the Play Store.
While registering in it, I realized that it was able to read my message of OTP without even asking for my permission to read the message.
I have AOSP Extended 5.8 with the August security patch.
It's an Android Oreo 8.1 based custom rom.

Verification by OTP uses a different API which doesn't need read SMS permission. You can read more here Perform SMS Verification on a Server
Hence, the app isn't reading your SMS but using a separate channel to read specially formatted text messages
I learnt of this when an Xposed module to block permissions did not work as I expected (similar case) and the developer explained the reason

How it is decided that which app can use api to read which text?
There must be something that prevents X app to read text of Y app by using API's.

Also, if you read the linked API it talks about hash and coding which means only the authorized app can read


text:
"Screen Recording" in LG Android
I have an LG V40, and in both Android 9 and 10, it seems that the "Screen Recording" app is always running, and not possible to keep it Stopped.
Greenify shows it as running in "Foreground":

If I force hibernation, seconds later it will be running in Foreground again.
It is not possible to disable this app, and it requires access to Camera and Microphone:

These permissions cannot be removed either:

Should I be concerned?
Is there any way I can fully disable this app?
My OS is European.

Hello. Unlike forums, our site follows a Q&A approach, and we also allow self-answering the question. You can choose to tick the check mark on the answer below if it has helped you out, or you can post a solution "as an answer below" that has worked for you. :-)

@Firelord - I know that... I was simply adding the output of the commands for reference, since I can't add to the comments below. Was it really necessary to remove it?..

@Firelord - and I don't agree with marking the question as Duplicate. The other question is about disabling apps downloaded in Google Play, without uninstalling them. That's NOT what I'm asking here. I wish there was a way to report these unnecessary changes by moderators..

Your edit about the error in the command was in response to the suggestion you received from user Aayush. However, in the comments on the answer, you later was able to resolve the issue with that suggestion. Since Aayush edited his answer to reflect your findings (the correct command that would not give the error and would work, that is), there is no value in keeping the error related info in your question.

I disagree with your disagreement about duplicate question. Whether an app is third party or a system app the answer to the linked question works equally on them. For what it is worth, one can just edit the title there from 'third party' to 'system' apps and the answer would remain applicable, valid and useful.

Use adb to disable the app. And download a trusted  screen recorder.
For installed apps:
adb shell pm list packages should list all the packages on your device. Then use adb shell pm disable <package_to_disable>
to disable an installed app.
For system apps:
For system apps just the disable command is different  adb shell pm disable-user --user 0 <package_to_disable>
if you want to see the disabled apps use adb shell pm list packages -d
Take a look at this https://www.xda-developers.com/disable-system-app-bloatware-android/

Thank you. Unfortunately, that doesn't seem to work. adb shell pm disable com.lge.gametools.gamerecorder : "Security exception: Shell cannot change component state for com.lge.gametools.gamerecorder/null to 2". I put the whole output at the end of my question above.

Aah - this worked: adb shell pm disable-user --user 0 com.lge.gametools.gamerecorder : "Package com.lge.gametools.gamerecorder new state: disabled-user". Exactly as per what the article says :) -- if you edit your question to put "disable-user" instead of "disable", I'll mark it as accepted. Thanks!!

Glad to help  ;)


text:
My Android phone screen is unusable, how do I transfer all my data to a new phone?
My current phone (Samsung Galaxy POP) running Android 2.2 has all its data including contacts and messages stored in the SD card + SIM card. However, the touch screen of that phone has been damaged, so the phone is unusable now on its own.
I have purchased a new phone (Sony Xperia SL) online which runs Android 4.0 and does not have an SD card slot, it only has an internal memory. Since my old phone is practically unusable, I'll probably have to connect it to my PC, back up my data, and transfer it to the new phone.
How do I transfer all my data including contacts and text messages from my old phone to my new phone? Could somebody guide me on how to back up my data between phones by using the PC as a medium? I tried looking up on Google for help and could not find any good solutions for this issue.

Check this out. You can copy all your data even if the display does not work. https://www.android-recovery.net/recover-samsung-data-with-blank-screen.html

This is one of the reasons a Smartphone without a SDCard slot is an absolute no-go for me: If you cannot access the device anymore (e.g. the device no longer powers up), and don't want your data "in the cloud" -- you can say Good-bye to your data...
But to your issue:
SIM card
As you state all your contact data are on the SIM card -- no worries for those. As soon as you stick the SIM card into the new device, those contact data are there. Unless you've used a miniSIM until now and the new device only supports microSIM (or any other reason you cannot simply put the SIM card into the new phone). So in case of that, you can...

open your contacts app on the old phone
tap the menu key
select Export/Import
Export all contacts to your SDCard

Then, we handle those data together with the other SDCard stuff.
Text messages
They are a completely different issue. Here you would need a special backup app to retrieve them. As with the contacts "export", this would also require you to at least be able to use your old phone somehow.
If your PC runs Windows, you might want to take a look at MyPhoneExplorer, which comes with an Android Client (the link points there) and a PC component. Not running Windows myself, I can only report hear-say -- but it should be able to synchronize your Android device with your PC, including contacts, text messages, and more. It even lets you remote-control your device to a degree, according to the comments. A similiarly powerful tool for Windows users is Moborobo, also worth a look (see AddictiveTips for a description).
Not being on Windows, but being able to use your old device's screen at least basically, Message Sync can export your messages on the old and import them on the new device; SMS Backup & Restore would be an alternative choice.
SDCard

Take out the SDCard from the old phone, put it into a card reader, and attach it to your PC. Your PC should show this as a new drive.
Attach your new phone to your computer using a USB cable. It should offer you to select a connection mode. Depending on what's available, chose either USB Mass Storage or MTP. Again, your PC should now offer this as a new drive.
Use your favorite file explorer on the PC to copy all the data from the SDCard to your new device
Safely remove and disconnect both devices from your PC
If you had to export your contacts on the old phone via the contacts app, use the same procedure to import them to your new device

I don't know if you have tried it or not, but use Kies mobileGo. I think your phone will be automatically detected; no need for touch screen. Then, backup all the things you want. Then, unplug it and connect the new phone and restore the data.

Or just use an OTG cable and plug in a mouse


text:
Local files revisited: Opening local HTML files (file:///path/to/file) in Chrome on Android 4.x
There are other questions on this same topic, but I'm finding that on 4.0.4 with my HTC One, I can open file:/// URLs just fine with Firefox, but not with Chrome or the Android browser. Those two simply report a security error and show no content.
Is this something that changed since the 2.x era when it was apparently possible? (edit well I realize there was no Chrome for 2.x but ...)

On 4.2.1 the URLs work fine on Chrome and Chrome Beta, but not the builtin browser.

Hmm let me try my Nexus 7 - thanks for the info.

Possibly it is disallowed to prevent hijacking?

For Android 10 or later: Local files revisited: Opening local HTML files (file:///path/to/file) in Chrome on Android 10.x

The issue was user error stemming from the less-than-obvious way the Android OS file system works. Everything visible in the file system is under a top-level (the real top) directory called "sdcard".  Thus, file:/// URLs only work for paths like file:///sdcard/foo/bar.
I'll add with questionable relevance that if you haven't installed the app "AirDroid", you should. I found it while looking around for answers to a related problem.

I get: "Access to the file was denied" for the extSdCard.

what path must one use for internal storage??

@FedorSteeman it's in the answer above.

thanks. I was getting confused over the fact that my unit didn't have an sd card, so it didn't make sense to me to go to the "sdcard".

Is this still  relevant? It seems that it is /storage/emulated/0.


text:
GPS location log
I had GPS enabled on my phone one night and I'm trying to find a log on my phone of where I was and when. I didn't have WiFi or data on, so the cache.wifi and cache.cell files are incomplete. Google Location history turns up nothing either.
My phone runs Android 2.3. Are precise GPS data logged anywhere in the system (I didn't have any GPS logging apps installed at the time)?

If your device is rooted, you might want to take a look at Location Cache or (if your Android version is lower than 2.3.3) also Android Location Cache Viewer. Both apps give you insight into Google's location cache, the first even permits you to clean or disable it.

Location Cache (source: Google Play)
Note that those apps stopped working with Android 2.3.3 (Cache Viewer) resp. Android 4.0 (Location Cache).

It looks like both these apps are just frontends for the cache.wifi and cache.cell files unfortunately. From what I can see android doesn't seem to log GPS activity unless you have an app that explicitly does this, unless it's hidden somewhere no-one knows about.

As far as I remember, at least Location Cache also shows GPS locations (I've used this app a while ago).


text:
Android 2.3.3 tablet can't find external SD card
I have a no-name Chinese tablet. When first purchased, I took three pics and everything seemed fine. The problem is when I went to use the camera later and it requested I to insert or mount an SD Card. Gallery would say no pictures. Application Manager would not move apps to the SD card.
I reformatted the SD card and everything worked for 10 minutes taking pictures. Gallery would show taken pics. Application manager would move apps to SD card. Then bam, everything back to "Please insert SD card". In Application Manager, tapping on an application/Move to SD card would not work. Camera asks for SD card to be inserted, Downloaded apps from Google Play would not install asking for an SD card.
I emailed the problem and was told by Factory to Format Nand and so I did. Things work for a while then back to the same thing, "please insert SD card". Apps won't download or move. Reformatting Nand erases Gallery and many downloaded apps so I lose all my pictures and programs.
Does anybody have any ideas?

I think the only solution you have there is to reformat your tablet. If there's a way you could connect your tablet to a computer, then try to back up everything like your photos. The apps will really be deleted so you have to manually download them again from the app store.
Your problem shows that there's a problem with recognizing the SD card. There's also another option which is to check if the SD card you used was really okay and not broken or damaged. Try to insert it into another device and see if it will be recognized or if you could save anything to it. If yes, then the problem is with your tablet that needs reformatting. If not, then try to replace your sd card and try again.

Seems that the ext SD card is not mounting after a while, it could be a hardware failure.


text:
Google location history shows me driving 700 miles when I only drive for 30 miles
I'm not exactly sure when it happened. Originally my location history was accurate. About a month ago my location history map looked close to being correct but the mileage was ridiculous!
For example, I drive about 30 miles one way to work. Most of the time lately the mileage shows me driving about 700 miles! It looks like it might be making multiple trips but I can't tell because I can't expand the history map.
I have a Nexus 4 with a straight talk SIM using AT&T.
Any ideas what could cause this strange behaviour -- or even better, how to fix it?

What was same issue another user had and the entry was labeled too vague and closed that referring to?

@t0mm13b I guess Eric refers to this one: inaccurate location history

Has there been any change in the way you use your phone's location services? Obviously disabling use of GPS will throw off location history, but remember that apps like Tasker or Locale can be set to disable and re-enable location services based on context.

See also: Google Maps Location History is showing an incorrect location

Not sure if this really qualifies as an answer, but since I don't have enough points to comment and I do want to contribute what I've discovered about this problem, it'll have to do...
I've had a very similar sounding problem for the last 2 weeks or so with no obvious trigger in terms of app or firmware updates. My location history has gone crazy with some days getting reported travel distances of 10 - 20 thousand miles in spite of me just going to work and back (60 miles each way).
What is happening is that while I am at work, or travelling (or anywhere away from home), location points are being recorded for where I actually am, then for a point very close to my home location, then back where I am again, then back at home, etc. The system seems to be seeing me travelling home and back roughly once per minute, and all those journeys quickly add up!
So far I have tried switching off wifi/cell location services, but that gives you basically no location history and Google Now is largely disabled, so that's no help.

Turning wifi/cell location services back on and then turning wifi off when away from home does help - it gets rid of the 'home and back' in one minute journeys, but the location history is less accurate when away from home. I am using an app called 'Llama' to do this automatically at the moment.
My conclusion from this is that for some reason wifi location reporting is giving a bogus result of 'near home' constantly throughout the day. The only sensible reason I can think of for this would be if I was carrying around another device acting as a wifi access point and that Google location services had learned to location of that wifi point as being at my home. However, I'm not actually carrying around such a device.
Next steps I am considering trying :

wipe the data associated with the maps app on the device
wipe the data associated with the wifi app on the device
do a factory reset on the device and restore

As suggested by GAThrawn below, the most likely cause of this problem is having a second Android device set to report location in addition to your primary device. You take your phone with you, but your tablet sits at home. Both report their location once per minute, or thereabouts, and your location history goes crazy.
The solution in my case was simply to turn off location reporting in the Google maps settings on the secondary device.
I also have a Nexus 4, on T-mobile UK

A partial answer is better than no answer.

How many Android devices do you have using your Google account? I was getting the same thing with location bouncing to and from work at one point, until I realised that Location History was being recorded by my phone (which was with me at work) and also my tablet (which rarely leaves my home). Once I disabled location reporting on the tablet things started looking much more realistic.

GAThrawn, I think you are absolutely correct - I have a tablet at home that I'd recently installed CyanogenMod on and I had turned on location reporting on it. My experiment with no wifi simply coincided with the battery on the tablet running flat, therefore the phone location was the only one again. I will edit my answer to remove the misleading bits and point to your comment. Thanks!

I had the same issue. I have a second device at home which was intermittently causing my location to jump back to home multiple times a day.
Disabling reporting on the device seems to have fixed the issue.


text:
How to make Opera Mini the default browser?
I have tried many times to change my phone browser from the stock android to Opera mini... As you all know the stock browser is slow and unresponsive.
Before I get overloaded with comment: YES I HAVE CLEARED THE DEFAULT FOR THE STOCK BROWSER THEN TRIED CLICKING ON A LINK. And: NO it has not asked me what browser I want to use. IT just opens in stock.
I then tried installing Firefox. I did the whole process again. I went to open a link and hit "open in browser" and what do you know, it opened up in firefox! This was great to see.
Unfortunately I can't get this to work for opera. Although firefox mobile is great I have a preference towards opera. If anyone knows of a solution to this I would apreciate it greatly.

It works fine with Opera Mobile.

It works with Opera Mobile, it should be the same for Opera Mini.
You can try this:

go to the default Android browser apps settings and click on "Clear defaults"
if settings in Opera Mini has a "Set as default" check box, select it
open a link with a browser and select Opera Mini as default

If the above doesn't work:

uninstall Androids default browser

For Android users, it's simple. Go to:
Settings › Applications › Manage Apps, chose All Apps, scroll to the Browser, tap that entry, and hit the button to Clear Default settings.
Then as you use the message links, select Opera as the default browser.

One can't simply uninstall android stock browser. Because it should be installed as a system app. If you are rooted, then you can.

OP didn't ask to delete the stock browser – so this does not answer the question, sorry.


text:
Rooting/unlocking Android Nexus One with broken power button using Linux terminal tools
I am attempting to get Cyanogenmod onto my Nexus One, but am running into far more problems than expected.  The information on rooting Android devices seems heavily fragmented across the web and the tools unreliable.  At least in my case, SuperOneClick has proven a complete misnomer.  So I'd like to go back to basics - executing as many of the commands as possible from a Linux terminal to get the phone rooted/unlocked/whatever else has to happen to get Cyanogenmod installed.  The two constraints I'm working with here are as follows:

The device is running Android 2.2.1 (I downgraded from 2.3.x using the PASSIMG method).
The power button on the device is broken, so any method which requires pressing/holding it is ruled out.

The problem I am having is that even after following Linux-centric guides, I get to the point of installing the SuperUser app followed by the ROM Manager app, but I'm never prompted to give ROM Manager superuser permissions and so can't flash the ClockworkMod recovery.
Below I describe the steps I've been taking so far, based on the How To Root Nexus One Running Android 2.2.1 From Ubuntu Linux guide.

Download/extract/move Nexus One Softroot files to same directory as adb
From adb directory, execute the following commands:
sudo ./adb push psneuter /data/local/tmp/psneuter
sudo ./adb push busybox /data/local/tmp/busybox
sudo ./adb push su /data/local/tmp/su
sudo ./adb shell chmod 755 /data/local/tmp/psneuter
sudo ./adb shell chmod 755 /data/local/tmp/busybox
sudo ./adb shell chmod 755 /data/local/tmp/su
sudo ./adb shell cd /data/local/tmp ./psneuter
sudo ./adb shell

After executing sudo ./adb shell as above, I get the # prompt, which is purported to indicate that rooting was successful.

Still following the guide, I then execute the commands which purportedly make root permanent:
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
cd /data/local/tmp
./busybox cp busybox /system/bin
chmod 4755 /system/bin/busybox
busybox cp su /system/bin
chmod 4755 /system/bin/su
exit
exit
Again, still following the guide, I execute the commands which purportedly set the /system partition back to read-only:
sudo ./adb shell
su
mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system
exit
exit
Now, I download the SuperUser app from the Android Market and open it to make sure it's running.
Next, I download the ROM Manager app from Google Play (looks like it pulled a sneaky and upgraded from Android Market to Google Play here).
I run ROM Manager and choose Flash ClockworkMod Recovery.  I'm prompted to confirm the phone is a Google Nexus One and then ROM Manager runs for about 30 seconds (yellow program bar goes all the way) before spitting out An error occurred while attempting to run privileged commands!.  And this is the point I am stuck at.

I should note that at no point am I prompted by the SuperUser app to give the ROM Manager app super user permissions.  I don't restart the phone or do anything else throughout all of the steps I've described above, so I can't see any reason for root to have been lost at any point.  In fact, if I execute the command sudo ./adb shell after all this, I still get the # prompt indicating root.  And when I execute id afterwards, I get uid=0(root) gid=0(root) -- further confirmation of root.  I really am stuck on this one.  I've spent a lot of time digging through forum posts and online articles, but the signal to noise ratio is poor and I haven't been able to find anything that actually works.  Can someone suggest where I am going wrong?


text:
How to prepare touchscreen-based Android device for [emergency] calling using only hardware buttons?
If my touchscreen Android phone gets smashed I expect that it can happen that only touchscreen is broken (as it seems to be the most fragile part) while the device itself able to function somehow; and I maybe need to call somewhere using only hardware buttons (without screen at all).
Are there any programs to place and/or answer [emergency] calls by entering some pattern of hardware buttons without using screen as input or output? This can also be helpful when you are using the device in frost, in gloves, etc. so using touchscreen becomes problematic.
Having wet/cold/cracked_screen phone and not being able to call for help just because of touchscreen is not working can be unpleasant. With hardware buttons you can type the "sos code" sometimes even if both your and your phone's HP is low...
My device is SE Xperia X10, but I expect the thing to work one way or another with all devices with at least 1 hardware button.

Maybe try to implement the application for rooted devices that will monitor /dev/input/... ? Is it easy to call 112 (directly, not showing any 'press here to call') from API?

This blog has a simple way of initiating a call via the command line. service call phone 2 s16 "+18001231234". Combine that with Vi0's answer, and you could have a script to dial a phone number by pressing the button. I haven't tested this to see if dialing 911 would work, but I don't see why not (unless Android specifically disallows that).

I'll try (with neutral number).
How to really test an emergency 112 call without actual emergency? Is aborting a 112 call immediately when you see it is not rejected by Android (before the beeps even started) OK?

How do you think: will an normal installable "apk" program that sets up this scheme (my "andrhard" program + this method) be useful for other users?

I would say it is useful. Even if someone doesn't want to use it for 911, they could use it for something else. If you had a simple program that lets the user define button presses, then define a command to run, it would be very useful.

Currently I just create scripts with special names, like "73" (volume up) - turn on LED; "72" (volume down) - turn off LED; "9ee59ee5" (back, menu, back, menu) - do something more tricky, like calling somewhere. Numbers are hex codes from /dev/input/ file. File not found => no action assigned. If it'll be an android application, it will be more user-friendly, of course.

I started implementing my own solution for my device.
Here (source) is a program that (started as root) will allow you to start shell scripts using series of button presses. Currently having started this monitor ( andrhard 66 /h/andrhard < /dev/input/event2&) I can easily toggle the flashlight without unlocking the phone (using /sys/class/leds/lv5219lg:fled/brightness)
Now the problems is how to call/answer from shell scripts...

In phones with cyanogenmod ROM you have voice dialer facility. Launching it will vibrate the phone with a beep informing you that it is ready to receive your voice input. Speaking to it like "Call John" or "Call 911" etc will make the device to call.
To enable this to work without the touchscreen you may have to configure the hardware keys. To do so, go to Settings->System->Hardware keys.  Enable the custom actions and you can configure the search key's long press event for launching voice dialer.

Both not convenient and not reliable in case of emergency. (BTW will this work with locked screen?). Also can't start a call preserving silence... I think the Plain Old Hardware Button is the best and most reliable way sometimes.

Nope, sorry this will not work with screen locked - didn't realize it :(


text:
Problems connecting to IMAP email account on 3G/4G
Ever since I got the JRO03O OTA from Verizon on my Galaxy Nexus, I've been having problems retrieving email over a 3G/4G connection.  After the sync times out (I assume it times out, because it takes awhile to give up) I get the message "Couldn't connect to server."  When I'm on a WiFi network, email retrieves without problems.
The account in question is on my own IMAP server, running on Ubuntu 12.04 server on a VPS.  The server configuration has not changed in any way since long before I started having these problems - this started when the OTA came through.  My server listens on the newer non-standard ports, 587 and 993, so Verizon doesn't block them - they no longer allow the standard ports 143 and 25 in my area, and more and more ISPs and coffee shop hotspots are blocking them now in favor of the secured IMAP ports.
I do have a secondary account on this phone - a corporate Exchange account, which has no problems retrieving email regardless of what network it's on.
This leads me to two conclusions:
1) The problem isn't in the server or the network. I'm not seeing it with my tablet (Nexus 7), only on my Galaxy Nexus - and only when on the Cell tower networks. Even if I have my tablet tethered off the GNex, indirectly using the cell networks, the tablet has no problems connecting to my IMAP server, but the phone fails to connect.
2) The problem is not related to Exchange, as my corporate account has no problems over either WiFi or 3G/4G. The problem is restricted to my personal IMAP account, which is set as the default email account on this phone.
I'm not sure if it's relevant, but the company Exchange account is not configured on the Nexus 7, just the IMAP account, and of course, my Google account, but that's through the GMail account.
I've done a lot of searching, but can't seem to find a solution.  Does anyone have any ideas?
Cheers!
Lou

I did submit a bugtracker issue, as this is an question noone will be able to solve at stackexchange: https://code.google.com/p/android/issues/detail?id=56219

Running into the same problem....adding more info:
I just had my Droid 4 upgraded to 4.1.2.  When trying to configured IMAPS, I'm getting the same error.  I run the IMAP server I'm connecting to, so I can do some additional troubleshooting.
I'm running dovecot as an IMAP server.  Here are the log messages:
dovecot: imap-login: Disconnected: Inactivity (no auth attempts): rip=x.x.x.x, lip=x.x.x.x, TLS handshaking
dovecot: imap-login: Disconnected: Inactivity (no auth attempts): rip=x.x.x.x, lip=x.x.x.x, TLS handshaking
dovecot: imap-login: Disconnected: Inactivity (no auth attempts): rip=x.x.x.x, lip=x.x.x.x, TLS handshaking

I also ran a packet capture.  The phone goes through the TCP 3-way handshake (SYN, SYN-ACK, ACK), and then does nothing.  No packets after the last ACK.  That probably explains the inactivity message in the dovecot log.
In the configuration, I told the client to use TLS (Accept all certificates), use port 993.  I have tried multiple 'Authentication Methods' (auto, plain, etc).  Nothing worked.
These settings (IMAPS, 993, auto) worked fine on 4.0.4

This is not an answer to the question. If you have the same problem, wait for an answer. If not, do a search. If none of the results solves your problem, create a new question. :)

While not directly an answer to the question, knowing what things haven't worked can be equally valuable. Even partial answers can have value. I think this is fine to stay.


text:
What protocols are involved in the modes of USB connection from an Android phone to a computer?
When I link a phone (HarmonyOS 2.0.0, Honor 10) to a Linux laptop, the phone pops up the following options:

transfer photos,
transfer files,
charge only,
reverse charge,
input MIDI.

When I link a phone (Android 12, Moto G Pure) to a Linux laptop, the phone pops up the following options:

file transfer,
photo & video transfer

I was wondering what protocol (e.g. MTP, PTP) is involved in each option for the two phones?
Is MTP enabled by file transfer, or photo (& video) transfer?
What is the protocol involved in the previous "USB Massive Storage" mode?

Photo and video transfer should be PTP. USB mass storage mode isn't supported by Android anymore. In that mode the whole sdcard partition was dismounted on the phone and instead connected as emulated USB stick to the PC. At that time the sdcard partition was therefore formatted FAT32. AFAIR this mode was abandoned in Android 3 or 4 and instead we now have the "emulated" sdcard folder.

HarmonyOS 2.0.0

Photo & Video Transfer: This lets user to move photos
and videos between to phone & computer using Picture Transfer Protocol.
File Transfer: Allow user to transfer any
type of files using Media Transfer Protocol.
Charge Only: It's only for charging phones but need be aware before plug-in to unkown device.
Reverse Charge: Lets phone charge another device through the USB
connection.
Input MIDI: Used for connecting musical instruments or MIDI devices.

Note - It's same for android 12

USB Mass Storage Mode
Like a USB stick directly on your computer. It's been replaced by MTP, which is more flexible and make phone to be used normally while connected
Summary of Protocols

MTP: Used for transferring files between devices.
PTP: Used for transferring photos and videos between devices.
USB Mass Storage: Old method that directly exposed phone storage as a
USB drive. Not commonly used anymore.

Mostly in modern phones used MTP for file transfers because it works well with different computers and operating systems.


text:
Is `mv` in adb shell limited in moving a directory?
I enter a shell on Android by
sudo adb shell

Now I want to move a directory (of files) in Android into another, but why does it fail
$ mv english/ ../mydata/
mv: bad 'english/': Directory not empty

It says the source directory is not empty.
This problem seems to happen regardless of whether either or both of the source and destination is in the internal memory of a phone or a SD card connected to the phone.
It also seems that the existence of / after a directory name makes difference. When it is specified, the files in the directory are moved; when not, the directory is moved.
Is it because the shell doesn't support such moving? What can its mv do only? What can I do if I want to move a directory of files?
$ echo $SHELL
/system/bin/sh


text:
Where is the battery animation called when charger connected to phone (OFF)?
I have Moto E (Rooted) which turn on when connected with USB via Laptop but not when connected to Wall charger instead it shows Battery animation. I got to know that battery animation is at framework-res.apk.
Now I want to know from where it is called so that i can change it as required.

At last I got the solution, you can achieve this by deleting system/bin/charge_only_mode file. Please do that at your own risk and before deleting have backup of that file. I got the desired result that was boot when its connected to wall charger and now its working fine. All the best!


text:
What are android folders myrecord/acrosspromote?
Moto G, android 4.4.4
What are the folder and its subfolder:  myrecord/acrosspromote/? which app creates them?
in the subfolder I have some weird files like cachedAcrossPromotespec.txt, in its text this file makes references to "u.best.sex".
Must be publicity for a free app.

These are distinct folders and a single response may not satisfy all your queries. Please separate them into unique questions.

Whole tree is myrecord/acrosspromote/cachedAcrossPromotespec.txt