text:
Touchscreen inputs without user interaction?
Consider the following system:

Stock Android 9, unrooted
USB and wireless debugging unavailable
screen permanently turned off

So basically a headless Android device.
Question: Is it possible to programmatically execute touchscreen inputs without any user interaction, e.g. in order to automatically force-stop selected apps?
Example: The default method to do this manually is from the app info menu, i.e.

Similarly, inactive/background apps can be closed from the developer settings:

Note: A purely programmatic solution is required. Connection to a debugging device is allowed only once for initial setup, otherwise: No external devices.

If all you're trying to do is kill apps, you can use ADB commands: https://android.stackexchange.com/questions/45202/terminal-or-adb-command-to-force-stop-applications

@jlehenbauer How can you use adb on a headless Android device without remote debugging?

I'm going to assume that this restriction:

USB and wireless debugging unavailable

...is specifically referring to USB debugging, and that the USB port is still functional for general-purpose use.
Judging from your example navigation flows, I'm also going to assume that the Android device screen is in some semblance of a PIN-"unlocked" and usable state at the software level, even if the physical display is off.
Per the official documentation, Android has had support for USB mice since 3.1:

In USB host mode, the Android-powered device acts as the host. Examples of devices include digital cameras, keyboards, mice, and game controllers.
[...]
USB accessory and host modes are directly supported in Android 3.1 (API level 12) or newer platforms.

So, you can use some form of USB-connected hardware emulation device (often referred to as a "rubber ducky") to simulate mouse activity and navigate to the relevant menus. This blog post has more information on how that can be accomplished.

Sorry, but it seems you didn't understand the question text, which reads: "Is it possible to programmatically execute touchscreen inputs without any user interaction [...]?" The goal is to automate touchscreen inputs such that no user input is required. Connecting and using an external HID (such as a USB or WiFi keyboard, mouse, or touchpad) precisely constitutes a form of user input, which we want to avoid!

Connecting a USB device one time to run some automation in an infinite loop only requires user input to the same extent as, e.g., installing some software that might have the same effect (unfortunately not really possible on Android with your restrictions). There obviously needs to be user input to set up a solution.

After re-reading your comment, I'm not convinced that you actually read my original solution correctly. I'm referring to using an HID emulation device, i.e., something that automatically sends simulated "user inputs" to the phone. This would not require any user interaction after being plugged in.

I perfectly understand your suggestion. Again, please read the question and my comment below your answer carefully: 1.) USB is not available, 2.) a programmatic solution is required. I will certainly not carry around an "additional device" permanently attached to my mobile phone - this is a ridiculous suggestion. Please stop insisting on your hardware solution, we need a programmatic solution.

Also, your definition of user input seems intentionally distorted. Obviously, we're not excluding any form of physical interaction with the device, as this would render everything impossible. Obviously, the script/app needs to be installed initially. "User input" here as well as in 99% of all other use cases means manual touchscreen inputs by the user during normal runtime, after initial setup.

For the third time, my solution did not require any manual inputs during normal runtime. You've laid out an absurd situation with your question. I can assure you, there is no solution that won't be equally absurd to fit the requirements you laid out. Why on earth would anyone carry a mobile phone around if the screen was permanently off? In such a ridiculous scenario, obviously strange solutions like a small hardware peripheral would have to be considered. But seeing as you don't like that answer, I doubt you'll ever have a solution to your extremely contrived situation.

Thanks for your input


text:
How to recover files from a healthy microSD card in Android?
I accidentally deleted important documents (about 100 PDFs) that weren't backed up yet from a 64 GB microSD card, which is used as the primary storage in my unrooted Android 9.0 smartphone. The microSD card is not encrypted and quite new, but for some reason, I've never been able to access the card from any PC when plugged into a card reader - only through the smartphone or when the phone is connected to the PC via USB and only using the MTP protocol. Under Windows, I always get the error message that the card needs to be formatted first.
After the accidental deletion, the microSD card was immediately removed from the phone, so I'm fairly certain that the files are still "healthy". I hope Android and SD cards work the same way as other OSs and common file systems in that normal deletion does not physically remove the data from the storage device, but only from the file table (please correct me if I'm wrong).
QUESTION: How can I restore my deleted files? Also, is there a way to get RAW access from a PC?
Any idea why I can access the card only via the MTP protocol from Windows?
For hard drives/storage devices accessible from a Windows or Linux PC, I've been using several recovery programs with mixed success in the past, e.g. Piriform's Recuva, CGSecurity's PhotoRec, and recently also RecuperaBit. I do have the Android SDK platform tools installed and have used ADB before to uninstall apps etc. if that helps. But I have zero experience with this data recovery problem on Android - and I'm also confused why e.g. Windows won't read the card's contents when connected via a card reader.

Small correction: My poor choice of words seems to have caused some confusion. By

used as the "primary storage"

I didn't mean to say that Android is running the system partitions (boot, system, data etc.) on the SD card instead of the internal memory. Rather, all apps are set to store their data on the SD card if possible in order to prevent irretrievable data loss in case of a phone brick. This is due to very bad past experiences with Android's security architecture, which is basically a trap waiting to lock users out of their own data.
Furthermore, I can confirm that SD card encryption is an optional setting in my Samsung's Android 9.0 and has not been turned on. Hence, the SD card ought to be unencrypted!
Sorry for not being clearer.

Here is a screenshot of DMDE showing relevant partition information:

Also posted on Super User: https://superuser.com/q/1774626/356789

Most likely issue your PC doesn't see the SD card is your SD card reader doesn't support SDXC... 64GB and larger cards require a reader capable of SDXC, where anything smaller capacity only requires SD (up to 2GB) or SDHC (SD version 2.0, up to 32GB) to work. Many older readers or ones built into older equipment only support SDHC, and even though SDXC (SD version 3.01) became a standard in 2009, it wasn't common in readers for many years, even into the mid to late 2010's many budget readers didn't support SDXC.
Getting a new card reader that supports SDXC would likely resolve this issue, something line Kingston FCR-HS4 or similar device would likely do the trick.

source: Stack Exchange

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

sort: votes


text:
Check and fix SD card errors within Android itself?
Sometimes my SD card gets "corrupted" and this leads to many read/write errors. Usually, connecting the SD card to the windows 7 and selecting the "Error Checking" (Right click the drive > Tools > Error Checking) option finds the corruption and fixes it.
How do I check SD cards for drive errors and fix the same from within the android itself?
I'd also like to mention that I'm on rooted froyo with busybox installed.

If you repeatedly have errors on your SD card, you should make sure that it is really of the stated capacity using H2testw (link only in German, software in German and English. I believe this is the official home despite appearances to the contrary). Bad SD cards will automatically corrupt.

You can fix this with the help of root and a terminal emulator (e.g. Android Terminal Emulator (or, alternatively, using adb shell). The binary to do the job is called fsck, and usually located in either /system/xbin or /system/bin. Sometimes you need a special variant of it, which might e.g. be called fsck.exfat or the like. So first let's make sure we find the right binary:
cd /system/xbin
ls fsc*

If not found, repeat with /system/bin. I will assume here it was found in the first place, and is simply called fsck (adjust the following correspondingly if that's not the case).
As fsck comes from the "Linux core", we can consult its man page for the syntax. Though there might be some options not working on Android, the most basic ones should. See the linked man page for details (or run a Linux VM and use man fsck in case that page disappears) -- I will stick to the basics here:
First we need to find the device your SD card is bound to. If it's mounted, the mount command will assist us:
mount

That's it, basically: Check the output and see where your SD card sits. Usually this is something using vold, but it's different between devices. Output may include something like /dev/block/vold/179:17 on /mnt/storage/sdcard -- in that case, the first part of my quote is our device. In order to repair the "drive", you need to unmount it first. This can be done via the settings menu, or, as we're just in the terminal, by issuing
umount /dev/block/vold/179:17

Now we can go for the repair job. Basic syntax is:
fsck [options] [-t fstype] <filesystem> [fsoptions]

So we first try the simplest approach and hope fsck figures out everything itself:
fsck -C -r /dev/block/vold/179:17

Which basically means: Show progress (-C), and always ask the user to repair (-r) any errors on /dev/block/vold/179:17. If this does not work out, check with the linked man page for further options.

You can also save yourself the cd steps if you want by using ls /system/bin/fsc* and ls /system/xbin/fsc* from whatever your current working directory is. You could even combine the two into one command with ls /system/xbin/fsc* /system/bin/fsc*.

on some systems the command may also be named e2fsck, such as on my stock Australian Galaxy Nexus.

@LieRyan Sure you don't confuse things? e2fsck is the file system checker for extFS. So if it has a different name, it's rather fsck.fat or fsck_msdos (the latter a real world example from an old 2.2 ROM off my Moto).

No, I don't confuse things, what I wasn't aware of is that this question is actually about SD card. So yeah, I actually did confuse some things. Well strictly speaking, you can format your SD card as ext as well, so that might apply to people that does that.

Point taken. Though the "average user" (or the one "in doubt") might better stick with FAT, at least for interoperability. At least until ExtFS is supported on the majority of OSs easily and by default without additional drivers required (guess Windows is and will remain a pitfall here, as usual).

I only got unknown option -- C but tried running it with just fsck.exfat /dev/block/vold/179:9.
Worked like a charm!

Thanks for this answer, I think it is what I need. I got an error on the umount, do you have to be root?

@OrganicMarble yes, of course – for all the above commands, or you don't get access to devices (everything starting with /dev) that way.

Thanks! I was confused about root on the PC vs on the tablet.(I tried to do adb shell su). This answer and the one about fsck_msdos helped me fix my tablet.

While other answers are correct (at least partially), just to add some extra notes. On recent Android releases you don't need to run filesystem check manually as vold handles this automatically. See When should I run a consistency check on my removable MicroSD card?
If you want to do this manually, you need a rooted device because it's not possible to access block devices on un-rooted devices. Also you need to un-mount the filesystem before checking for errors. Since Android 6 external SD card is mounted at /mnt/media_rw/[UUID] and then emulated on /mnt/runtime/[VIEW]/[UUID]. A VIEW is then bind-mounted to /storage/[UUID]. See details in How to save files to external SD card?.
After un-mounting SD card fully, run respective fsck.* binary on the block device. Usually init enumerates SD card block device as /dev/block/mmcblk1p* (p* denotes partition number, usually it's only 1) while vold creates another device node in /dev/block/vold/[MAJOR:MINOR]. You need to find the correct block device (may also check by mount | grep /mnt/media_rw before un-mounting filesystem).
For FAT[N] family of filesystems you can use fsck_msdos (or fsck.fat), and fsck.exfat for exFAT. If these aren't built with your ROM (exFAT was closed source until recently, so there could be license issues), you can use external binaries. Or build from (dosfstools or exfat) source code.
To run filesystem check:
~# fsck.exfat /dev/block/mmcblk1p1

thank for this, it saves my day :)
root@android:/ # mount | grep -i sdcard
/dev/block/nandk /mnt/sdcard vfat rw,relatime,fmask=0000,dmask=0000,allow_utime=0022,codepage=cp437,iocharset=ascii,shortname=mixed,errors=remount-ro 0 0

root@android:/ # /system/bin/fsck_msdos -y /dev/block/nandk

I've found an app called AParted on the market that can "repair some damaged sdcard and scan for bad blocks" etc.

If I'm not mistaken you can force Android to fsck both the internal and external storage on reboot by doing the following depending on your ROM.
run terminal app and type
su
touch /forcefsck

Then reboot.
If your phone is not rooted, this will definitely fail.
Source: XDA Forums - [Q]How to fsck /data or /system?

What do you mean by "depending on your ROM"?

That trick might not work on all phones. different phones may fail to do anything. Also your phone needs to be rooted.

Once I've rebooted, how can I know whether or not fsck actually ran or not?

I'm not sure is andoid has a /var/log/fsck you can check but you can guess that it is workign if the bootup takes a little longer then normal

-1. I have downvoted your post. Here's why: I've spent more time looking into the matter. Your suggested technique is probably 100% mistaken. It may deceive readers into thinking that it helps, but the technique actually does nothing.

touch /forcefsck will only work on a device with an init script which checks for the presence of a /forcefsck file. I don't know of one single Android device which has such an init script. So, although your technique will likely work on Debian, Ubuntu, and Mint devices, I highly doubt that it will work on any Android device. If anyone ever finds even one single Android device with an init script which checks for /forcefsck, please let me know! Simply reply to this comment.

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

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


text:
Scan Barcode and QR code from the mobile screen itself
How to scan barcodes from the mobile screen itself?
Edit on Mar 10, 2020: I am also looking to do the same for QR codes.

You could possibly try the solutions in App that reads images of QR codes? I'm not sure if they work on other barcodes as well.

As already described in the above comments, this would require taking a screenshot and saving it as an image file. Having done that, there are several barcode scanners available in the Play Store supporting "loading" of barcodes from image files, as e.g. QR BARCODE SCANNER. QR Droid also seems to be capable of what you're looking for:

Scan QR codes from your camera, browser, SD card, or saved image

This is another one QR Scanner. https://play.google.com/store/apps/details?id=com.teacapps.barcodescanner

An open-source, ad-free alternative QR & barcode scanner and generator is SecScanQR.
It's free, high-quality, and user-friendly.
Though there is no button to load images within the app itself, sharing an image to it from any other app, e.g. your photo gallery, will make it scan the image for QR codes.
If the QR is on a website or other app, taking a screenshot an immediately sharing that to SecScanQR works perfectly.
The result is the same as if you had just scanned it in the app.

I'm frequently using Manatee Works 'Barcode Scanners' app for such a purpose. Here's the Google Play Store link to the demonstration application.
The app supports a wide variety of 1D/2D codes, scans very fast, and is free. The only downside is that the option to manipulate the results is few, namely either copy or email, because it's a mere demonstration.


text:
How can I get apps from the Amazon app store from an unsupported region?
Currently, the Amazon app store appears to be US-only.  Similar to How do I use the US Android Market from Europe?, I want to know: How can I use the US Amazon Appstore?
Market Enabler doesn't seem to work, and it's not IP-based like I previously thought.  Any suggestions?

Just curious: what can you do in the Amazon store that you can't using the regular Android market ?

Not much but they give one paid app away for free every day.  Today is Angry Birds Rio. Edit: Turns out there's more.

As far as I can tell, it's not Amazon who's giving away the app, it's just the developer who doesn't get paid. With Angry Birds Rio, that will be different because want to attract people and therefore will certainly have invested in this game, but other developers may not be so lucky.

Note that bypassing regional limitations is actually more serious offense then just pirating the app straight up. At least in EU.

@Let_Me_Be Can you provide any reference to support your statement?

You have to "prove" to be a US resident by accessing the store with a US based IP once. It's sufficient to use a US proxy.
Additionally, you need a US credit card with a US billing address to buy apps; to download free apps, you can fake the number (all 0's will work) and address.  Then ensure 1-click ordering is turned on in your Amazon.com account (the Appstore will prompt you to do this and provide a link).  A prepaid credit card in USD might be a good way to do this for people outside the US, I'm not sure.
Some users seem to be reporting that Amazon is now blocking non-US IP addresses.  This isn't 100% accurate, since I access the app every day from Canada with no issues.  It may block specific countries though, in which case you'll need a US-based proxy/VPN.  Make sure you trust it, so that your account credentials aren't compromised; don't use Tor / Orbot!

I was just typing this up as an answer when you posted it.  One way to make the transactions more secure would be to get a prepaid credit card and only charge it up with funds when you need to.  If you just put $10 in at a time the most the thieves will get is a couple cups of coffee worth.

Yeah, it's fine if you only want free apps.  The issue is if you try to buy apps with a fake address; Amazon and your credit card company are sure to be unhappy.  Interesting that all 0's worked though!

"Simply connect to the Internet via your smartphone an American proxy and already Amazon are satisfied. After a single authentication as "American" users we were able to use, even without the IP-US Amazon Appstore future. " Here's a Google Translate link to original article.

This from MoDaCo worked for me:
Using the Amazon Appstore from outside the US (including paid apps)
The gist is you need..

An account with amazon.com (rather than .co.uk or whatever)
A valid US address and phone number to attach to this account
A US registered credit/debit card number for the account attached to account's 1-Click settings

Legal and 'non-illegal' methods given in the link.
Update
This method no longer works as Amazon seem to have started checking your region (IP address presumably). So looks like you'd need to use a US based VPN now.

I'd just like to let everyone know that initially I registered my Fire with an account that had a US address and a fake AMEX credit card, and then I added my (Australian) bank account number and it works just fine. I haven't bought anything on my Fire yet, but I did successfully purchase Quickoffice Pro from the Amazon website. =D

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

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


text:
AVD doesn't work after installing Android Studio
I installed Android Studio, but when I try to run, the emulator is not working. When I googled, I find some instructions in which the

Open SDK Manager and Download Intel x86 Emulator Accelerator (HAXM installer) if you haven't.
Now go to your SDK directory (C:\users\username\AppData\Local\Android\sdk, generally). In this directory Go to extra > intel > Hardware_Accelerated_Execution_Manager and run the file named "intelhaxm-android.exe".
In case you get an error like "Intel virtualization technology (vt,vt-x) is not enabled". Go to your BIOS settings and enable Hardware Virtualization.
Restart Android Studio and then try to start the AVD again.

but I don't know where is BIOS setting of my computer. I have HP desktop CPU and try to find the BIOS from start, F10 as well as from change PC setting in Windows, but all in vain.

PC/Mac/Linux-based questions are off-topic here at Android Enthusiasts, as this is an end-user site for Android, as long as it does not have any direct implication on an Android device. Please consider asking your question on SuperUser.

I'm voting to close this question as off-topic because it's more related to general computing (PC BIOS) and not about Android.

I faced a similar problem recently on my windows 10 laptop and found out that the Intel virtualization technology (vt-x) was disabled from BIOS.
In case you are using a new laptop which comes per-installed with Windows 8/8.1/10 then chances are that you cannot enter the BIOS manually while booting. Reason being they have changed BIOS to UEFI which is no longer accessible through boot but instead you need to do the following steps:
Go to Windows > Settings > Update and Security > Recovery.
Then under Advanced startup, click Restart now. The system will restart and show the Windows 10 boot menu.
Select Troubleshoot > Advanced options > UEFI Firmware Settings.
Click Restart to restart the system and enter UEFI (BIOS).
from here you can access the UEFI menu (which is similar to BIOS)
Search for the VT-x setting (It may be named as Intel VT or Vanderpool or Virtualization Extensions or something similar depending on your OEM and BIOS.)
Please refer to this link for screenshots on how to access the UEFI from windows 10: http://www.howtogeek.com/213795/how-to-enable-intel-vt-x-in-your-computers-bios-or-uefi-firmware/

If your new Mac M1 is having this problem, as of Android Studio Arctic Fox patch 4, I resolved the issue by adding a new virtual device (for the simulator) which was for ARM architecture.
Here are details with screenshots about the steps on ConfessionsOfAnAgileCoach.

When you switch on your device, it starts to boot as your preferences (HDD, Removable drive, Optical drive etc.) set in the BIOS. Before the OS boot starts, if you press a particular key,your device will show a window with options like Boot menu, BIOS settings etc. You can find the buttons beside each option, by pressing which you can enter those options. For example,
Acer - F2
Asus - Del
DELL - F2
HP - F10
These keys may be changed.
After you enter the BIOS set up goto the Advanced tab and enable the Intel virtualization technology, which may be aliased/called as Intel VT-x or AMD-V.
Hope this will help.

for Lenovo pc u can use Fn + F2 key to go into bios setting.After changing bios setting i am sure your AVD will work


text:
Tilting Huawei Ascend Mate 2 just right displays a gray screen with a clock
I can be in a game or any other up, but when I tilt my phone back a little to avoid glare, this notification thing comes up with a clock. If I hold it just right and scroll right it shows me the weather and the status of my internet, data, bluetooth and GPS.
It is really annoying and I have no idea how to stop it from happening. I am trying to snap a screenshot of this and if I manage to, I will upload it.
Any ideas?

Are you using a cover, or near a magnet? Seems an issue related to [tag:smart-cover] (example: http://android.stackexchange.com/questions/109346/phone-switches-to-watch-interface-when-put-against-a-specific-side-of-my-laptop)... does the notification look like this?


text:
Chrome failed during startup with an unexpected error
When starting Chrome on my Samsung Galaxy Ace 3, I just get the following error message, and no error code.

Chrome failed during startup with an unexpected error.

Googling the above phrase gives me one result.  I have no idea how to approach this. I have cleared all application data, restarted my phone multiple times, and no luck.
Any insight and fix for this?

I would recommend logcat to do the [tag:logging] when you start chrome and until you see the error. See what does it tell, and post the log to Pastebin so that we can also see it.

Update: I removed chrome and re-installed it, so I guess we'll never know what it was...

I can reproduce this error if I go into setting>apps>chrome ....
and then select move to sd card. Of course you then have to open Chrome to get the error. If I move the app back to internal memory the error goes away. Uninstall/Reinstalling Chrome installs it to internal memory by default so that would also make the error go away and sense of what happened.

Go to Manage Apps -> Chrome -> Clear cache, and also Move it to phone memory, in case it is on the SD card.

please try clearing you profile, local state, and flags? Android Settings > Apps > All Apps > Chrome > Clear app data
@This way worked for me@

Can you elaborate on your answer giving details ? In the present state, it looks more like a comment

OP wrote: "I have cleared all application data".

I have MediaPad 10 FHD and this setting worked for my tablet i have cleared chrome app data and worked correctly @ if you have cleared and don't work correctly you can install chrome beta app from google play here : https://play.google.com/store/apps/details?id=com.chrome.beta&hl=en

authors: วีรินทร์ ลมหนาวดาวเดือน


text:
CM 10.1.3 randomly freezes, and stock ROM phone does the same
Using a Samsung Galaxy Tab 2 (P3110) on CM 10.1.3 RC3, and a Sony Xperia E (C1505). My tablet randomly freezes with no reason. Sometimes it's 9 or 10 hours after it's last turned-on, sometimes it's 10 minutes. I would just put it as "normal side effects" if it weren't for that fact that my phone freezes at the same time.
They freeze within 3 seconds of each other, until reboot (remove and reinsert battery on phone, hold power for 10 seconds on tablet) and this seems to always happen on the same WiFi. However, this sometimes happens when "separated" (not linked via WiFi or Bluetooth), though a lot rarer.
Please help, I don't understand what is going on, or why.

As a side question, suggestions for tags? I can't really think of enough.

Could you be more specific as to when the devices freeze? Do they freeze at the same time, and for how long? Do they eventually become operational again or do they both require resets? Also, are the devices connected somehow? (same Wifi network, bluetooth, etc.) having them both freeze at the same time consistently means something is going on - but we need more detais.

@ZeroPaladn I'll add this to the question. They freeze until reboot (remove and reinsert battery on phone, hold power for 10 seconds on tablet)  and this seems to always happen on the same WiFi. However, this sometimes happens when "separated" (not linked via WiFi or Bluetooth), though a lot rarer.


text:
Nexus 10 - Android 5.0.1 OTA upgrade, "no command" and suggested steps failed
I was trying to install the OTA upgrade on my Nexus 10 running Lollipop 5.0.1. Got the "no command" problem. I tried the steps below from this link.

I suggest you try the following:
Press and hold Power button until your device powers off (it could take 30 seconds).

Press and hold Power and Volume Down buttons simultaneously until you see something other than Google on the screen.
You should see a large arrow at the top of the screen.
Tap Volume Down repeatedly until you see Recovery in the arrow. Then tap the Power button
You should see an android on his back, chest open with a red triangle and exclamation mark.
While holding Power button tap Volume Up once then release Power.
You should now see a list of items at top of screen.
Tap Power Down until the item to erase or wipe the cache partition is highlighted. Then tap Power button to initiate.
Status messages will appear at ths bottom of the screen. Be patient - it can take 10-15 minutes to complete. When done restart the Nexus.

Wiping the cache partition does not impact any of your data, but it may take a while before your apps repopulate their cache values. During this time some may appear a bit slower than previously.

I can't get past step 1, as when I do that, it keeps saying, "download in progress. do not close target ( or similar)".
I tried the Power + Volume up + Volume down buttons, and get the menu, but don't see as below.
I also tried Nexus Root Toolkit flash + restock, and that also shows "finished", but reboot goes back to "no command".

What to do?

Problem solved.  Called google support.  Had to press Power + volume UP to get to second level menu, then select clear cache option.  Re-booted and 5.0.1 upgrade continued.

Was using Nexus 10 and stuck at "No command.." message. Had to use "Power+ volume down" buttons simultaneously to Stock Recovery mode.

Power + Volume-up = Downloading mode
  Power + Volume-down = Recovery mode

authors: امينه على ال ساري


text:
Do android roms with only boot.img file available in fast boot rom don’t have separate recovery.img
I have phone named Vivo Y83 /(vivo1802)
I wanted the stock recovery image of my device to port twrp recovery since it’s not officially available for my device.
But after getting hands on my fastboot rom…. There is only boot.img present in rom So my question is is the recovery image is part of boot image in my rom?
And if yes….how would I proceed to build twrp for myself?

Some ROMs have recovery integrated in their main image.

Do you mean no separate recovery image? If so then how can I proceed to build custom recovery for myself

Also my firmware neither have vbmeta image?….strange

I have just recognized that your device is Mediatek based. Usually for those type of phone fastboot isn't used, instead some proprietary Mediatek flash tool is used. Are you sure you have the correct image? As I wrote on older images the recovery was included in main partition. E.g. on some Nexus devices and on booting the image the recovery was flashed if it was different than the installed one. On newer devices AFAIK there is no longer a separate recovery partition but your phone is not that new.

I can very much confirm. firmware I have is fully correct image….as I have grabbed it from official site of phone…..and when I received Bootloop while experimenting with patched boot images, I flashed the stock boot.img from that firmware file to recover without data losses. (And yes my phone is mediatek device-I have successfully unlocked it, but due to weird firmware I not being able to experiment on it)

you should be able to extract recovery.cpio.gz from .ofp with this script https://github.com/bkerler/oppo_ozip_decrypt/blob/fc6aba6/ofp_libextract.py


text:
Android stuck in Boot animation after flashing GSI
I flashed Pixel Expirience GSI with TWRP by pushing it to the storage and flashing it as system img(with TWRP).
The problem, it’s now stuck in a Google animation which came after the Sony logo.
I would like to shut it down.
I already tried
adb reboot but
error: device unauthorized

And pressed the power off button 1 min and nothing happened.
EDIT:
I tried to install some GSIs, but they were stuck at the costum Romes Loading animation.

I installed the Firmware with Emma
Locked it to update to Android 11 and unlocked it again
Installed TWRP and booted into it
Wiped system and userdata
Pushed to system.img file from the custom rom to my device into /sideload/
In TWRP install-System Image—> Pressed on the folder and on the system.img
It installed successfully
Rebooted
Stuck in Loading animation\

(PixelExpirience == A Google G with loading bar, LineageOs == The blue line with the bubble)\
No crashes or so what, it just hangs in there for ~20 min and than I turn the device off with volume(+) and Power button.\
I know Sony Xperia 1 is not officially supported for project treble, but since this thread(https://forum.xda-developers.com/t/mars_soms-v220313-pixel-expierence-android-12-gsi-patches.4097433/) requires Pixel Experience GSI I thought it should be possible to run GSI on Sony Xperia 1.
Any idea what I might have donne wrong or are there other GSI roms I could try.\
PixelEX = PixelExperience_Plus_arm64-ab-12.1-20220613-UNOFFICIAL.img 3.7 GB
LineageOS = lineage-19.1-20220613-UNOFFICIAL-arm64_bvS.img 2.0 GB

I was able to power it down again by pressing Volume(+) and Power button 5sec

I final solved it.
Sony Xperia 1
Exactly what I did:
Installing stock firmware, will be different from device to device

Power the device off
Plug it in while holding Volume(-) until a green light appeared.
Open Emma(Sony Xperia Firmaware flash Application)
Flashed Android 9
Boot until I got to the welcome screen( just to check if the Firmware flashed successfully

Installing the important Files

When there https://developer.android.com/topic/generic-system-image/releases
Downloaded the right files for my device (Arm64)
Unzipped it —> system.img and vbmeta.img

Installing the files

Powered my device off and booted into fastboot
went to the download directory and
I don’t know why but these two commands, error the first two times when I tip them. Important(when the command errors, press the fast boot button, because my device at leased, tried to escape into a green light mode, but just because it switches to the green light mode does not mean that you should stop it, only if it errors and wants to go into the green light mode.) \

fastboot flash system_a system.img
fastboot flash system_b system.img
(both)
fastboot --disable-verity --disable-verification flash vbmeta_a vbmeta.img
fastboot --disable-verity --disable-verification flash vbmeta_a vbmeta.img
3. Wipe the phone
fastboot -w
4. Restart
This worked for me


text:
Turn on screen without using any button on the phone
All buttons on the device are broken, device is on but the screen is off.
Is there any way to turn on the phone using USB or any other  way?
My phone is a moto e20 with no removable battery and no removable case. I need to use my phone once before sending it to repair and since Google's "Find my device" tool lets you play sounds, lock your screen and erase all data, it might be possible to send the power button signal from external sources.
Edit: Fingerprint sensor won't work either since the device doesn't have any finger registered.

What about the fingerprint sensor? Is it working and is at least one finger learned? Besides that may be able to connect a simple USB mouse via USB and use the mouse buttons to wake the screen.

The device doesn't have a lock screen password and the fingerprint sensor has no finger learned.

Warning: This solution only works if your phone is already on. Otherwise, your device will get locked and you'll have more difficulties.
After 2 hours of trial and error I discovered that using the Lock With Password"  otion on this link will activate your screen once. Don't forget to inmediatly unlock your device or it will get locked since it logs out from your Google Account.

Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.


text:
Is there a quicker way to turn on WiFi Hotspot?
is there a way to automate (or at least reduce the number of steps) to turn on or turn off the WiFi hotspot on my Galaxy 3.
I have to

unlock
press the menu button
press settings
press More Settings
Tethering and portable hotspot
Slide portable hotspot on.

Don't bother with these 3rd party apps.
Go to "Widgets" in your app drawer. Long-press the "Settings" icon and drag it to your main home screen and the shortcut settings menu for all your settings automatically appears.

Errm... the "hotspot" setting is not in there on the Galaxy S3.

Awesome stuff - works great on my Nexus. Thanks!

Goto Apps (long press an empty spot on your home screen)
Find "Mobile Hotspot" press and hold, drag onto your home screen.
That's it!

Its easy!  Drag down from the top edge to reveal the "Notification Panel." Within the customization options for the Notification Panel there's a mobile hotspot shortcut (on my phone).

Looks like nowadays, Mobile Hotspot is available on Quick Settings, so it's not an issue on modern Android anymore. Back then in Android <4.0 though...

Old question is missing an up-to-date answer: Meanwhile, the solution is built-in to Android and called "Quick Settings".

Go to Settings › Notifications › Quick Settings
Tap the entry to chose/arrange tiles
if "WiFi Hotspot" isn't shown on a tile:

tap the + symbol
scroll to the end of the list
tap the corresponding entry to add (WiFi-Hostpot)

optionally: move the tile where you like to have it

Now, toggling the hotspot is as simple as

pull-down the notification bar from the right corner (this should immediately show Quick Settings)
if Quick Settings aren't shown (but your notification area is), tap the top-right corner to switch over
tap the hostpot tile

Some ROMs (such as CyanogenMod) even allow you to have the very same stuff "synced" to quick toggles placed on top of the notification area, for even easier access.

This doesn't work for the Samsung flavor of Android, right?  Maybe you have pure android on a Nexus?

@JessRiedel I'd never buy a Nex (not unless they give it an SD slot). Not sure about Sammy either. Currently I only have two devices here running Kitkat with CM-flavor.

I don't see "Quick Settings"

@AndrewMacFie I can't help that. Especially without more details. If you're eg. running an older Android version, there simply might be no QuickSettings (which were, IIR, introduced around Android 4.4/Kitkat).


text:
Can I run Samsung apps (app market from Samsung) without a SIM and mobile connection?
I have a Samsung Galaxy S with Android 2.2.
I have read that now there is a "Kies" app available from Samsung which would allow to upgrade the OS on the phone without connecting it with the USB cable to another computer.
That article said I have to install it through the "Samsung apps" app. So I started it, but it said it won't work without a SIM card.
But I intended to use only WiFi, I don't need the SIM card and the mobile connection.
Why this problem? Is it solvable (without a SIM card)?

Can you give a link to the source that says you can update the phone over the air with Kies? It's not supposed to be possible with Android versions prior to 2.3.x (can't remember exactly)

@onik Yes, what I read sounded similar to what you say. And I didn't read any "success strories" with Android 2.2. But I supposed one could try to somehow get Kies on Android 2.2 and then use it, although officially Kies is only for Android 2.3.x.

I've never seen Kies on Android, and it's not found on Samsung's update pages or Samsung Apps website. The only possibilities officially supported are FOTA (Firmware Over-the-Air, on newer Android versions) and Kies on PC.

@onik: Now I think I might have been mistaken about this...

No, the Samsung apps market won't start without a SIM card, because the card is used to determine the country of the user.
There is an App called "Kies Air" which allows you to connect your device to the Kies App installed on your PC over WiFi. But I doubt that you are able to upgrade the OS this way. It's more meant for synchronization (calendar, email, ...) use.
IMHO you need a USB cable to update the SGS, either with Kies or Odin/Heimdall.

There is probably no Kies app for Android, as @onik notes in the comments.
I was mistaken probably when I thought that there is one.

Im able to get Samsung apps market app on my phone with no sim card it can etect country via wifi, works on Galaxy s3

How does this answer the question?


text:
WiFi not working on Samsung Galaxy S3: "WifiStateMachine( 2240): Failed to load driver"
Problem description:
I have a WLAN problem with my Samsung Galaxy S3 (GT-I930). I cannot activate WiFi. Logcat shows me that the driver could not be loaded (detailed WiFi logging has been activated via the developer options):
D/WifiService( 2240): setWifiEnabled: true pid=3142, uid=1000

E/WifiService( 2240): Invoking mWifiStateMachine.setWifiEnabled

E/WifiStateMachine( 2240):  InitialState !CMD_START_SUPPLICANT 0 0

E/WifiStateMachine( 2240): Failed to load driver

The netcfg command does not list any wlan0 interface:
lo       UP     127.0.0.1/8   0x00000049 00:00:00:00:00:00
sit0     DOWN     0.0.0.0/0   0x00000080 00:00:00:00:00:00
ip6tnl0  DOWN       0.0.0/0   0x00000080 00:00:00:00:00:00
rmnet0   DOWN       0.0.0/0   0x00001090 00:00:00:00:00:00
rmnet1   DOWN       0.0.0/0   0x00001090 00:00:00:00:00:00
rmnet2   DOWN       0.0.0/0   0x00001090 00:00:00:00:00:00

In the WLAN advanced settings, there is no MAC address available.
The WiFistatus that can be reached via the **#*#*4636#*#*** service code on the phone number pad lists the following information:
Wi-Fi state: Disabled
Network state:
Supplicant state: UNINITIALIZED
RSSI: -127
BSSID:
SSID:
Hidden SSID: false
IPaddr: 0.0.0.0
MAC addr:
Network ID: -1
Link speed: -1 Mbps
Scan results:
Android version:
The phone is rooted, ClockworkMod Recovery (CWM) is installed. I tried different custom ROMs (see next point "history"). The current Android version is 5.0.2 (ROM: Liquid Smooth Lollipop, Kernel-Version: 3.0.31-CM-gdd7ad6a)
History
At first, I rooted my phone and flashed Cyanogenmod 10.2 cm-10.2.0-i9300 (Stable Version, Android 4.3)). Everything worked fine (including WiFi) and I was pleased with the smoothness and beauty of the Cyanogenmod.
Out of curiosity, I tried a Cyanogenmod cm-11-20150614-NIGHTLY-i9300 (Android 4.4) and faced the problem the first time. After returning from airplane mode, the WiFi was broken. I assumed the nightly build to be still buggy and reflashed the Cyanogenmod 10.2. However, I was not able to get the WiFi back.
After that, I returned to a stock ROM but no luck. The WiFi was still dead.
I started to consider that it might be a hardware issue and got a new WLAN antenna as well as a new WLAN-speaker-thingy. I changed the parts and tried again with Cyanogenmod 10.2. Guess what, the WiFi was working again. But unfortunately not very long. I am not quite sure but I assume the WiFi went away again after returning from airplane mode.
Well, I then tried two other custom ROMs:  SlimKat 4.4. Slim-i9300-4.4.4.build.9.0-OFFICIAL-8312 and Liquid Smooth Lollipop (5.0.2) which is still on the phone.
On Liquid Smooth, I was able to get the WiFi back a couple of times (meaning I could see local networks in range and even connect to one of them) but never really long and in the end, it died again forever.
I am really confused about the question: Is it a software or a hardware issue? I sent the WLAN speaker module back to the merchant and tried another one but was not able to revive the WLAN since then.
Other things I tried
I tried some WLAN fixer apps (without success):

Wifi Fixer
Blade Wifi Fix
FXR WiFi fix and rescue 1.5.0

I tried some useless stuff with the wpa_supplicant.conf file that I have read about in another forum.
In addition to that, I also did googling and I think I got through the whole first page of search results for a lot of search terms.
Logcats
I pasted the detailed logcats in Pastebin:

Liquid Smooth boot on the day WLAN was working for a short period of time: https://pastebin.com/dT9Ucbs5
Liquid Smooth successful WLAN activating (search for "banana" that is the SSID I connected with): https://pastebin.com/yQsgkQiV
Liquid Smooth boot and failed WLAN activation (freshest log): https://pastebin.com/ikDr9vJi
The dmesg output: https://pastebin.com/0caXAPAd. There is a message: "failed to power up DHD generic adapter"

I would really appreciate any kind of help or advice. What can I still try? What could be the cause of the problem? Anything I have overlooked?

+1 for doing your due diligence! It's not a hardware challenge I think, it's rare for a flash to murder a single part in your phone. Could it be a kernel challenge? Do you know if it was modified during your CM11.2 flash?

Ramona, hi, please post the output of
mount | grep efs
Also link me to the rom you flashed when this started?

@ZeroPaladn Unfortunately, I don't know if the kernel was modified during the flash.
@moonbutt74 Output of mount | grep efs is /dev/block/mmcblk0p3 /efs ext4 rw,nosuid,nodev,noatime,user_xattr,acl,barrier=1,journal_async_commit,data=ordered 0 0. I got CM 10.2 from here, CM 11 from here. Thx to both of you for your comments.

Ramona, okay i'm getting both now, iwant to compare the boot.img's , quick question, if you can , backup current rom and do a clean flash of cm-10.2.0-i9300, meaning factory reset and/or clean to install new rom.

I dug up a forum post that goes through a similar challenge, it also mentions a botched kernel. You could try replicating the steps from post #8 and #12 (read them both first).

After looking at your dmesg, if I am understanding it right, your WiFi device is identified as mmc2 and an external card
<6>[   18.525295] c1 mmc2: card inserted.
<4>[   18.525962] c1 wifi_platform_set_power = 1
<4>[   18.525970] c1 ------------------------------------------------------------------------------------------------
<4>[   18.525978] c1 brcm_wlan_power Enter: power on
<6>[   18.525983] c1 111brcm_wlan_power Enter: power on
<4>[   18.525988] c1 gpio_table = [2]

<7>[   18.526198] c1 WLAN: GPIO_WLAN_EN = 1
<4>[   18.730036] c1 wifi_platform_bus_enumerate device present 1
<4>[   18.730044] c1 gpio_table = [6]

And is cycling on and off because it is having the wrong/excessive voltage being pumped into it.
<6>[   16.407671] c1 mmc2: card inserted.
<3>[   16.635241] c0 mmc2: cmd 52 command index error error
<3>[   16.636109] c0 mmc2: cmd 52 command index error error
<3>[   16.641166] c0 mmc2: cmd 8 command crc error
<3>[   16.641729] c0 mmc2: cmd 5 command end bit error
<3>[   16.642015] c0 mmc2: cmd 5 command end bit error
<4>[   16.642068] c0 mmc2: host doesn't support card's voltages
<3>[   16.642080] c0 mmc2: error -22 whilst initialising SDIO card
<3>[   16.643112] c0 mmc2: cmd 55 command end bit error

With new hardware, you require a new kernel build with correct device support compiled into the kernel. Whether or not this "cycling" is damaging your new hardware I can't be sure. It wasn't really clear in your question but I am assuming these were internal changes to your phone's hardware? You will likely need to get the specifics of that new hardware and find the driver/kernel-source/support and port it into your current source and compile a new build, modules, and all.
Basically, any room you flash on this "new" device is likely going to fail in the WiFi department, and flashing even back to stock via the/an official firmware release is not likely to fix it.

Yes, OP's hardware has changed - they replaced the WiFi "antenna and speaker-thingy" after the stock ROM flash didn't remedy the challenge. If the hardware isn't exactly the same as the original then yes, a kernel recompile with the proper driver would be required.

thx for the insights! Fortunately, I did not throw away the original hardware. I now put it back into the phone and flashed the Android Revolution HD 53.0 ROM which is based on stock kernel. The flash should be clean, I did wipe data (factory reset), wipe cache and wipe dalvik cache. At least I now do not see any wifi related messages in the dmesg anymore and I got my mac address back. However, logcat now tells me Wi-Fi driver is unstable. Haha, this is really driving me crazy....

Renaming the data\misc\wifi\wap_supplication.conf file has fixed the problem for some people.
The Android system by default will recreate the wap_supplication.conf file after renaming or removing it. In my case, either way, it did work but for a short amount of time. Finally, I just relapsed the wireless adapter, so it's likely a hardware problem.

Rename data/misc/wifi/wpa_supplicant.conf to what? I have seen solutions to remove this completely but not rename it.


text:
Disable touchscreen input via console
I'm looking for a way to disable and enable the phone's touchscreen via console, and possibly the physical buttons, so to prevent finger touches from being processed. The phone is a Samsung Galaxy Fame, Android 4.1.x.
Background:
I'm configuring an old Galaxy Fame to serve as a sat navigator fixed on my car dashboard, aiming at using the up-to-date and free OpenStreetMap.
When I turn the key, the phone's USB is powered at 5V, when I turn off the car, the USB has no power. The phone is able to detect these events and I scripted some actions upon them, aiming at providing an instant-on and instant-off navigator service.
The phone remains always on and just switches to a power-save status when the car is off. The navigator app – OsmAnd – starts automatically at boot, but the boot does not occur between a car-on / car-off cycle, because the phone remains on to detect the mentioned USB changes.
Currently, what happens when I start the car and the USB gets powered:

Display is lit (echo 200 >/sys/class/backlight/panel/brightness)
Sat receiver is activated
CPU frequency set to max

What happens when I turn off the car and USB loses power:

Display's backlight off
The sat receiver goes off, along with WiFi and Bluetooth, in case they might have been active
CPU frequency set to minimum

Up to this point, everything is working. My problem now is that, when the car goes off and the phone enters this quasi-standby mode, the touchscreen still accepts input and, if the phone is handled or touched for whatever reason, it will stealthily react to those touches while the screen is unlit.

what is the model id of this device? meaning sm-blahblah , also can you post your init.rc to a pastebin? You have this device rooted?, grep your ramdisk *.rc's the perms/chown entries should tsp-ish, touch screen panel

run cat /sys/class/sec/sec_touchscreen/set_module_off
if it comes back 0 then echo it to 1 and see what happens.
Also how do i wrap code in comments?

This is a "Samsung Galaxy Fame gt-s6810p"; /init.rc is here: https://pastebin.mozilla.org/8842877 ; the device is rooted and I can execute su; grep results look interesting but I have not yet experimented with these control files: https://pastebin.mozilla.org/8842878 . My fiddlings with /sys/class/sec/sec_touchscreen/set_module_off are here: https://pastebin.mozilla.org/8842879

okay, that's a classic mistake, it's a good thing anything you do at the moment is temporary, cat FIRST to find out if it's  a 0 or 1 type of setting.

cat your init.rc and under # Permissions for InputDevices.
chown system radio /sys/class/sec/tsp/cmd
chmod 0660 /sys/class/sec/tsp/input/enabled  <--your device may differ
chown system system /sys/class/sec/tsp/input/enabled <--your device may differ

Add to your scripting setup after verifying, for my device, a Samsung Galaxy Tab 4
echo 0 > /sys/class/sec/tsp/input/enabled

Touchscreen disabled.
echo 1 > /sys/class/sec/tsp/input/enabled

Touchscreen re-enabled.

Cool to hear! My phone however doesn't have that control file. The closest things I can approach to by grep-ping under /sys for the strings enable and tsp are: /sys/devices/virtual/sec/tsp/power/autosuspend_delay_ms — which I ignorantly overwrote to 1000, to no avail, and /sys/module/hid_prodikeys/parameters/enable, which I overwrote to N,N,N,N,N,N,N,N attempting to disable the touchkeys, to no avail. Write permissions were set before each write, and no errors prompted. I was probably deceived by the name of those control files.

I also tried fiddling with /sys/class/sec/sec_touchscreen/set_module_off and /sys/module/hid_magicmouse/parameters/report_touches.

I found a solution from https://android.stackexchange.com/a/193667
rm -rf /dev/input/event0

Does "delete" my touchscreen input. The other events disable/delete my other hardware buttons like volume etc. After restart of the phone, they are back.
You need root / su for this.

On Google Nexus 4 (mako, LineageOS 14.1) and Xiaomi Mi5 (gemini), you can give
rm /dev/input/event2

to disable the touchscreen at runtime. You will still be able to control the device through scrcpy.
On Google Nexus 5 (hammerhead, LineageOS 14.1) you can give
rm /dev/input/event1


text:
Where are music files downloaded from the Google Play Store stored on an Android device?
I am wondering how music files, downloaded from the Google Play Store, are stored on an Android device.
In other forums on this site, I found that they are located in the /sdcard/Android/data/com.google.android.music/cache/music directory. However, I am wondering how the files are named, or organized.
Are they named based on the song name, so for example, would the song "Style" be named under "style.mp3"? Also, are the files organized in a certain file based on a playlist, etc?

I suppose by music files organized in Google Music you meant the music files downloaded from Play Store. Right?

Yay for DRM, if you do find them, I would expect them to be encrypted, and disorganized.

Yes, I am referring to music files downloaded from the Play Store. Thanks everyone for your replies.

If you are downloading something you have physically purchased from the Play Store, it should be under /sdcard/Music in MP3 files, unless Google has changed their policy recently.
If you have downloaded it with All Access, then it is not available for you to copy. It would be saved in the app's data encrypted, so it would be completely useless to you.

If you set in the settings of Google Play Music, if you have set to cache on the external SD card, your songs can be found in,
/external_sd/Android/data/com.google.android.music/files/music/
If you have used the internal storage or do not have any sd card inserted the songs can be found in /sdcard/Android/data/com.google.android.music/files/music


text:
Logged in from friend's tablet but the Android device manager shows current device as my cell phone
I logged into my Google account from my friend's tablet. Went to my account info page. Looked at my recent activities and it shows all devices I've logged in from. The top one says My Cell Phones name and says it's my Current Device.
How can that be? I'm across town from my cell phone at the moment and I'm on a friend's tablet for the first time ever! Does this mean these two devices are linked in some weird way? Spy app or? I can even go to Google Play and click on My Apps and it shows the apps that are actually installed on my cell phone!

Apps you install from Google Play are linked to your account. This way, if you've paid for an app, uninstall it, and want to reinstall it again, you can easily do so without paying twice.
If you have logged in to your friend's tablet, this device is now connected to your Google Play account as well. It's a feature meant for when you buy a new tablet. This means you can download all apps you have bought or installed on your previous (own) cell phone. Being able to see your installed apps is actually what's supposed to happen when logging into your Google account.
It's very strange that Google thinks you're currently on your cell phone while you're actually using a different device. Your friend's tablet might have received the login token from your phone if you use the synchronisation features in Google Chrome, confusing their website.
It could also be possible that your device was doing something with your Google account (like updating apps) while you signed in.
Google can only really guess the exact device you're using when you log in to Google. Their current device indicator works most of the time but I wouldn't rely on it.
Try clearing the history, cookies, and login sessions from your friend's tablet, or go incognito in Chrome and see if the website still says you're on your phone. There isn't any spy app active and the indicator probably took a wrong guess on what device you were using.


text:
Update Samsung Galaxy Note 2 to Android Lollipop
Is it possible to update further Samsung Galaxy Note 2 from Android 4.4.2 KitKat to Android 5.0 Lollipop?

If you're open to using custom ROMS: How do I Install a custom ROM/recovery on a Galaxy Note 2? Samsung itself is unlikely to ship such an update (device too old).

Yes it is possible, but it involves installing a custom recovery (TWRP or CWM) and to download and install an AOSP-based ROM. Note that the following links refer to the N7000 model of the Note 2.
Possible Recovery - TWRP
Possible AOSP based ROM


text:
My Samsung phone just keeps restarting
I have never been in a situation like this. I was developing some widget app on my Samsung A12 with Android 12 and all of a sudden, while building and running the app, the system just shut off. It restarted, then after I typed the PIN code, while trying to load the home screen, it does it again. Then it loads again, this time it shuts off just in the lock screen.
And it keeps doing this forever. I cannot even shut it down, I tried hard booting it with volume down and power button but it only goes as far as to the home screen (after PIN). It restarts again
This phone has a few months, it is not rooted, battery is at 70%, never did this to me before. I was setting an attribute for a widget android:maxResizeWidth="@dimen/widget_min_width", then when testing it this started happening.
I am watching the wretched thing doing restart after restart. Is there anything I can do before trying to remove the (unremovable) battery?
New info: I managed to get in Safe Mode and it looks like it works, so it's some app, I guess

Looks like I figured it out. First, that Samsung is the worst at developing software.
Secondly, yes, indeed, using android:maxResizeWidth="@dimen/widget_min_width" sent One UI into a crazy coma. I had to remove the app and rebuild it without that line


text:
How can I install a user CA certificate from a .pem file?
I have a .pem file and -key.pem. I'm on a Pixel 4a with Android 13, and when I go to Settings -> Security -> Advanced Settings -> Encryption -> Install certificate -> CA certificate, I can select one file. When I select the .pem file it just goes back to the Install certificate screen, and when I choose the -key.pem file it says that I need a private key to install it.
I don't know much about SSL certificates so help would be very much appreciated :)

Edit: I am using mkcert to generate a certificate for a certain IP address in my network. I am using KDE connect to send the files to my phone.

For what purpose do you want to install the certificate? Wifi WPA enterprise auth or VPN or just a custom root CA e.g. for traffic interception?

@Robert I'm developing a mobile website that requires https to function. I want to host it locally for testing, but when I do it says the site is not secure, so I want to give a certain IP an ssl certificate.

Have you checked if your certificate has been added in the Trustworthy Login Data -> User list? If the certificate is present make sure to use the full DNS name in Chrome addressbar that is saved in the certificate.

It is not there, I don't think it's installing. Just for conformation, is this how installing a certificate works?

Yes, this is the way it is supposed to work. I just tried to with an example custom ROOT CA certificate from a large insurance company and it works, you get a toast message "Certificate installed". May be the chosen certificate you are trying to install is invalid? Where does this certificate come from, how was it generated?

I am using mkcert to generate a certificate for a certain IP address, and I sent it to my phone with KDE connect, I will add this info to my question.

@Robert I was able to successfully install the example CA, but I can't find any difference between it and my CA, when I changed my .pem file to a .cer file there was different behavior but it still didn't work.


text:
ADB (in recovery-mode) gives "adb server out of date. Killing..." followed by "error:closed"
I connect my device to my PC in recovery-mode, when I write adb devices I get:
 List of devices attached
 4d00ededbeaca0bd        sideload

However, when I try to adb shell I get:
error: closed

Most places online suggest to adb kill-server and adb start-server (to re-start the adb), but it doesn't work. adb usb doesn't work either.
   > adb kill-server
   > adb start-server
  adb server is out of date.  killing.
  * daemon started successfully *
  >  adb shell
  error: closed
  >  adb usb
  * daemon not running. starting it now on port 5037 *
  * daemon started successfully *
  error: closed

Also, most online places comment that ADB has issues with each other. However, I only have a single instance of ADB, so I guess that's not the issue. Do you guys have any idea?

You are probably using a stock Recovery. It's obvious you would see such message (error:closed) since adb shell in Recovery means getting full control of the device which OEM wouldn't want, that's why they limit the device to "sideloading". That's just my theory based on three Mediatek devices; I could be proven otherwise. Also, if you want adb shell in Recovery then try a custom Recovery.

Thanks for the answer. Excuse me for my ignorant question, but how do I try an alternative Recovery mode? My cellphone has a screen shattered, so I am trying to "activate the debbug mode" via ADB shell as described in a few pages (just a few shell commands to change a few text files and you are done). I am guessing those people were using rooted phones, which would explain why they never encountered this problem. I know there is the option to compile a whole new kernel (with the debbug mode enabled by default) and then sideload it, but that sounds like way too much work for me to handle.

I see. Which Android version and device do you have? As for the Recovery is concerned, there is no alternate Recovery mode but the Recovery only. If only your device can be flashed with a custom Recovery you can access adb shell. For that, we need to know is the bootloader unlocked, does your device has a support for flashing from fastboot mode, what are other ways to flash custom Recovery in your device without booting into Android OS? // Some terms might be new to you I suppose.

[A] I have a "Samsung Galaxy S4 19500" with "android 4.42".  [B] Fastboot is already installed in my PC (it came with Android Studio). I have no idea if the device has support from fastboot, I will have to google that. [C] However, there is a "bootmode" to install custome OS on the device (is that the same as fastbootmode?) that can be accessed via a  "secret handshake" (downvolume+start+power) [D] To enter recovery mode I use a different "secret handshake" (upvolume+start+power), but I am unaware if there are other ways possible.

Sorry! because I have no experience with Samsung devices. I could try to guide you but that would be shooting in the dark, and you're already in a mess, so it would be best in our interests if I leave now. // I'm aware of some users here who would probably help you out, and for sure resolve this issue. So please wait patiently, and good luck. :)

Ok, no problemo. I appreciate the help.


text:
Turning off "charging" sound effect on Xperia Z3 Compact
Is it possible to turn off the sound when the charger is connected? I have got the answer from Sony Support that this is a "feature".

No. Assuming your phone is updated to Lollipop, the sound is just always on now.

Maybe not the best answer but, try to change the ROM.
I'm using Resurrection Remix, so I can disable this sound and many other things. Like RR, other custom ROMs also have this option, such as Carbon ROM, AOKP, CyanogenMod, etc.
Some links:

Official Resurrection Remix site
Unofficial release for Z3C on XDA

You can switch to vibrate or silent/priority mode prior to connecting power to your device, it will vibrate or do nothing accordingly.


text:
Why are certain songs on Google Play Music greyed out on my phone but not on PC?
Here's one that's been driving me crazy: The other day, I noticed songs on my phone's "Thumbs Up" playlist, songs that were both bought from Google Play or from elsewhere, were greyed out on my phone.
This seems to be a problem with Google auto-matching songs to their own songs offered on the Play Store. The songs that are greyed out and were uploaded have an option to "Fix Incorrect Match", but songs that were purchased from Google are greyed out anyway. Songs that can't be matched are left alone. This is also only limited to the "Thumbs-Up" playlist.

(Click the image for full-size)
This issue does not persist on Windows and does persist on Android regardless of internet connectivity or playlist downloading.

? DRM not being honored consistently between the music apps on the different devices?

I don't think it's a DRM issue. Some of the greyed out songs are songs I've actually purchased from Google. In fact, EVERY greyed out song in the picture is from Google except for Thriller, which I uploaded myself from the This Is It album, ripped myself way back when I used iTunes.

Maybe a silly thought, but on my phone the songs are only greyed out if I'm offline. Only songs that are available offline are not greyed out. Maybe try to select "downloaded only" in your menu and see if they disappear completely. This would also explain why the songs are still available on your PC.

As you can see, "Downloaded Only" is not turned on, and even though I appear to have no or very little signal, the songs would not be greyed out.

I managed to fix it by checking my settings, "stream only on wifi" was turned on some how.. once I turned that off, everything available as before

It's actually quite simple. Those songs aren't available because you have no internet connection, and Google never cached them on your phone for offline music.
To test this out, try this: Connect to WiFi, and you'll notice that all your songs are available. Try playing a song all the way through. Now turn off WiFi/your data connection and you'll notice you can still play that particular song, while others might be grayed out.
Note: This also happens for songs on a data connection as well when the "Stream on WiFi Only" toggle is checked.

Oddly enough, this fixed itself on it's own.

(Click the image for full-size)
Thanks for nothing, Google.

It probably is about license issues

It may be due to the device thinking it is offline as the grayed out portion is that of songs not in Cache or songs not downloaded for offline listening

I had this issue. I force stopped the app and cleared the cache. All good now.

This fixed the problem for me on my S7. I did a Clean All from Smart Manager, then force stopped Google Play Music from Applications -> Application Manager.


text:
Can't connect to WiFi after spoofed MAC address
I'm changing the MAC address on my Android device; however, once I change it I get disconnected from the WiFi network that I'm connected to and then I'm unable to reconnect to the WiFi.
I realized that I can connect to unsecure WiFi but not secure. I know the MAC address is changing properly because I did packet capturing with WireShark and the spoofed MAC shows as the MAC address of the packets.
I have tried forgetting and reconnecting to the secure WiFi network, but it still doesn't connect. When I changed back the MAC to the original value, it works fine. I can only connect with the real MAC address, but not the spoofed one.
Is there something missing?

Make sure MAC filtering is disabled on your router or your spoofed address is allowed to connect to the network and try again.

Perhaps the router is smarter than you thought or the Mac address isn't spoofed properly....you need to format your Android phone to be able to reconnect to other WiFi

That seems pretty extreme... can you explain and justify that as to exactly why this is the correct answer?


text:
Creating and flashing image to Android device
I have created an image of my Android device (Lenovo A6000) using the command
adb shell -c su 'dd if=/dev/block/mmcblk0p23 > data.img'

Now I would like to flash this image to the same device, and I am trying to accomplish this using fastboot in the following way
sudo fastboot flash data data.img

I am using the latest version of fastboot shipped with Android's SDK.
Doing the above command I get the error
target reported max download size of 268435456 bytes
Invalid sparse file format at header magi
error: write_sparse_skip_chunk:
don't care size 4894735982 is not a multiple of the block size 4096
fastboot: ../libsparse/sparse.c:143:
           write_all_blocks: Assertion `pad >= 0' failed.

I suspect it has something to do with the sizes, the image appears to have size ~5GB while the reported max download size appears to be ~2GB.
But I am not sure what the real error is and how to fix it?
Can someone tell me where the mistake is and how to solve it? It seems that if I make a smaller image I can flash it properly.

Just asking: Why are you trying the hard way if the device is rooted? Isn't Nandroid backup good for the needs?

Invalid sparse file format -- you didn't create a sparse file.

Apart from that: if you created the image with dd, what keeps you from restoring it the same way (from within recovery mode, of course)?

Also you should try the -S option, to split the file while sending. fastboot loads the file over USB into RAM, not directly to the memory (NAND/SD/eMMC) etc...

try using this sparse converter. http://forum.xda-developers.com/showthread.php?t=2749797

Android fsutils (on Ubuntu) comes with tools you need. You can also find them on GitHub. You need: simg2img, simg2simg, img2simg, make_ext4fs, and some terminal knowledge.
sudo simg2simg ./data.img ./data.raw.img
This gives you an image that can be mounted on Linux. To mount it, create an empty folder, then issue command...
sudo mount -t ext4  -o loop ./data.raw.img [new_folder_name]/
You can the find all the files in the folder you created. When you're done with the changes you want to make. Use this to make an Android image for fastboot.
sudo make_ext4fs -s -l [size_of_partition_in_bytes] -a data ./data data_new.img
The output will be the file data_new.img. Then you just use fastboot to flash like you normally would.

You can try this command from adb shell:
cat /proc/partitions

But mount lets you see /dev/block/bootdevice/by-name/ (in my case).
So if you do:
ls -al /dev/block/bootdevice/by-name/

You have all blocks you want to add.
But I'm still searching for how to add straight to a computer instead of an SD card.


text:
Process 'system/bin/installd' causing memory leak
When reviewing my running tasks, I've noticed a memory leak in process system/bin/installd. On boot completed, it begins running in the background, consuming 20-30MB RAM. Over time, its RAM usage gradually increases, going as high as 400MB at which time it causes a random reboot.
I am able force kill this process with no noticeable effects. However, it does restart itself and continue to leak memory.
Before I can attempt to remedy this issue, I need to know exactly what system/bin/installd is/what it does - something I cannot seem to find any information on.
Can anyone help?
Specs:

OnePlus One (rooted)
Mahdi ROM (CM11 base), Android 4.4.4 KitKat
Build # KTU84Q
Kernel 3.4.0-Mahdi-One-kk
Running multiple Xposed modules, init tweaks, etc.

May I know how did you detect that process was leaking memory? I never know if it's possible to check memory usage for non-APK.

@AndrewT. I am using "3C Toolbox Pro"; it's task manager displays all running processes. I highly recommend it- it's a great app with tons of tools for power users.

/system/bin/installd is a system daemon that is involved in the installation of applications. System classes like PackageInstaller use it in their execution.
This article from DZone dates back to 2013, but it gives some pointers that can put on track:

PackageInstaller is the default application for Android to interactively install a normal package. PackageInstaller provide user interface to manage applications/packages. PackageInstaller calls InstallAppProgress activity to receive instructions from the user. InstallAppProgress will ask Package Manager Service to install package via installd. Source code is available at  /packages/apps/PackageInstaller.

Today's Android code states (for example: services/core/java/com/android/server/pm/Installer.java):
 public void onStart() {
    Slog.i(TAG, "Waiting for installd to be ready.");
    mInstaller.waitForConnection();
}

The same file comments on checking out frameworks/native/cmds/installd/installd.h (I did not look further for now).
In short, you may need to look at the source code to know more about installd, depending on what you are up to.


text:
what to do with this japanesed android system
So I received a phone as a gift but it turns out that at boot up is perfect japanese. We manage to set it up and change the language settings.
Yet, most of the applications are hard-installed (you can't remove) and even the keyboard is "japanese English(US)".
The phone barely connects to the network (low signal, -111DBm) and the mobile network state is Disconnected even though mobile data is on.
I am thinking of flashing a new Android Operative system. The phone is LG ISAI and the company that hard installed software (apart from Google) is Au.
Any help on what to do about it? (I won't sell it.)

Check the supported LTE bands and compare them to the bands used by your MNO in your country. If they don't match it doesn't matter which software you install, the reception will always be your problem.

@Robert would a hard reset help ? https://techviral.net/android-secret-codes/

@Robert  couldnt get a single code to work and show me any information. idk how to check the LTE bands

LTE bands are usually documented at some hardware spec collecting sites like GSMArena. Not sure if there is a way to query them in the phone.


text:
VNC over USB tether?
Edit:  I want to connect to a vnc server on  a PC from an Android client via usb tethering.
I'm trying to use my phone as a way of interacting with a headless linux box.  I can't get VNC or connectbot to work with usb tethering - they just time out.  Work as expected when I connect the phone through wifi.  Is there something I need to do to make this work? Open some ports or something?  I could get primitive ftp working through a USB tether.
Anyway I'm in need of suggestions of where to start looking - or if it is at all possible.
Wifi and bluetooth don't suit my use-case
Cheers

Opening ports in the tethering network is always a problem on Android. If you already have USB connection why don't you just use adb. Using adb you can forward ports in both directions. But you could even skip that by simply using scrcpy which works like VNC (IMHO even better) but simply requires and adb connection.

Thanks for the info . To clarify I want to control my linux desktop with my phone. Will scrcpy work in that direction? A cursory read of the README leads me to believe it's geared in the other direction.

No scrcpy is only for remote controlling Android. You should edit your question and make it clear that the VNC server is running on the PC side.


text:
Recover user data (photos videos) from a Poco X3 Pro forgotten pattern
So, I decided yesterday to change my pattern to something more complicated for terms of privacy. For my bad, I had such an awful day yesterday and I honestly don't remember the whole pattern. My fingerprint is also registered on the device, but it won't use it since I have my pattern set too. The related Google account and Mi account belong to me, and I have the users/passwords.
I've been taking pictures and videos for over a year without syncing in the cloud (dumb me, really). I've been trying to find my pattern by drawing what I remember for almost eight hours. I have an important amount of information that I care in my phone, like a concert I went with my brother and so on.
Initially my personal computer had the usb-debugging allowed and I tried some stuff with adb, like trying to pull my gesture.key from my device for trying a brute-force attack for my pattern, but I was unable get my key since my phone is not rooted. I also tried to pull all my personal data from adb but I needed to grant the permissions from my device, which I couldn't do.
I downloaded some of those trash-software that promise you to get away the pattern (by deleting the data, which is something that I don't want to do) and constantly updated my usb drivers it seems like in some point my PC got unauthorized for the usb debugging. So, some of the adb stuff that I could try is discarded now.
I also tried to boot in recovery mode (stock recovery) and activated the safe assistant mode, but the mi desktop software did not recognise my phone. I tried to boot some custom recovery, but I don't have my bootloader unlocked. I took my phone to different mobile care centers, and they told me that only way to get away the pattern is by deleting my data, which again is something that I don't want to happen.
For now, I'm trying different patterns that kind of come in mind and registering theme to keep track of those which are not the right ones.
I'm desperate and running out of ideas. I'm a developer with knowledge on C, C++, JavaScript, TypeScript, Python and some others, so any developer-approaches are welcome. Also, I'm willing to offer rewards or pay for overcoming this.
My Device is a Xiaomi Poco X3 Pro.

Most likely you will lose all data, but worth a try: flash eng firmware to get adb root access. if you are lucky your device comes with broken encryption and don't need pattern

This seems like the extreme solution I was looking for. Thank you so much for the info.

Xiaomi phones doesn't support you to transfer the data of a locked out device as it can be used by anyone if found a lost phone. You can try the forgot password option on the phone and change it through the mi account if it supports that. Or you can check if it's backed in the mi cloud using the same account and checking on your device. You can always contact the mi service centre's nearby for further informations.

I appreciate the answer, but I think it describes what I already know and tried.


text:
Why does Google Play Store show installed apps in the "Previously installed apps" section?
When I go to the Previously installed apps section of Google Play Store, some apps that are currently installed on my phone are also shown. I thought that may be all of the currently installed apps shown were not updated, but that not the case for some of them.
Should it not be only apps that were removed or not installed that should appear?
I have checked the issue with phones using Android 6.0.1 & 8.1. As you can see on the image below, VLC is installed, yet it is listed on previously installed apps.

I don't have that section at all, there's only Installed and Library which are self explanatory.

Check the picture from the edit

Well any app on your device and any app that was once on your device both classify as "previously installed", otherwise how else would they be there in the first place?

It might be semantics, but I expect to only see apps that are not installed on that section. I already know the apps that are installed on the phone

Sure, but the line "give one a go" probably suggests that the app has been downloaded but rarely/never used. I don't see any issue here.

I use VLC on a daily basis, and yet it is listed

you may need to scroll down to find that section, @trishmapow

I surmise that because you can have multiple devices with the same account. It puts apps that were installed on a device in that section, regardless of them being installed on the current device or not. Though I do not see why they could not filter out apps that are installed on the device.
I would suggest that if you think it is an issue, you can report it using the feedback. Aside from that action, I do not think there is anything that could be done on the user side to fix this.

Your explanation seems probable +1


text:
Cannot install Google Camera on Nexus 5 running CM 12, neither from Play Store, nor with ADB
I need to reinstall Google Camera, and I tried to remove it via Settings -> Applications. Everything went fine, but when I tried to install it back via Play Store, it said:

Unknown error code during application install: -505.

I've then attempted to install it's APK via ADB. It showed the error  INSTALL_FAILED_ALREADY_EXISTS. But I'm pretty sure it's removed, I've checked /system/app, /data/app, and /data/data for any residual files, but there's none.
Installing APK with -r key yields INSTALL_FAILED_UPDATE_INCOMPATIBLE.
Package manager  pm list packages doesn't list Google Camera, which is only logical, since it's removed. But then how could it "already exist"? I wonder what to do and how to bring Google Camera back.

Ah, yes. Uninstalling via pm also fails with internal error, probably because there's no such package.

Was Google camera a system app? Did you install it at first along gaps in a fresh cyanogenmod install or before from Google play?

No, it was installed via Google Play after CM installation.

Have you seen How do I deal with unknown installation error code -505? (hint: our google-play-store tag-wiki has a list of errors with links to the corresponding questions ;) Running CM you've got root, try a pm uninstall <package_name> to get rid of potential remains – and also check your SD card (yes, the internal, I know it's a Nex) for such.

Yeah, I've already tried to remove it via pm, but it fails with an internal error (as far as I understand, that means such package is not installed, which is confirmed by pm list packages that doesn't list Google Camera).

Actually, I've just rolled back to last backup and there's both good and bad news. Good - camera app has returned. Bad - I've checked Play Market and Google Camera appears to be not installed. But it's actually there. Trying to install it results in same Error -505. I won't try to remove it any more, but I wonder what could cause such behavior and whether it could be fixed completely.


text:
Can I force a WiFi connection retry after x minutes?
The Wifi SSID in my home is the default SSID of the used router. (I have no means to change it, unfortunately). The problem is, if I travel around my city, my Android phone inevitably finds a network with the same SSID but the password doesn't match. Since then, the network is stuck in "Authentification failed" until I manually force a reconnect.
Is there a way to force my phone to retry connection attempts to known networks e.g. every 5 minutes?

There are numerous applications on Google Play Store. I had a similar problem a couple of months ago. I used an application named WiFi reconnect as I recall.

WiFi Automatic
WiFi Reconnect


text:
How do you enable Hotspot Wifi Sharing on Nexus 5 Android M version on Sprint, Tmobile, and AT&T?
I just loaded the Android M preview version as of July 2015. I'm also on the Sprint network and my phone is rooted. How can I enable wifi hotspot ability on Android M?

I just tried it, and this worked for me:
(Nexus 6, Android M Preview 3, Sprint)

With root browser go to /system/ and open build.prop in a text editor.
Add net.tethering.noprovisioning=true to the bottom.
Save and reboot.

In Android L, I also had to do the tether_dun_required thing, but now that database just doesn't show up for me in Android M.

After Android M (Mashmallow) Preview 3 -- You need to do the following to get tether / wifi hotspot to work:

On your Windows computer open up a terminal and type: adb shell
In the terminal window, type: " su - " (check your phone to approve)
echo "net.tethering.noprovisioning=true" >> /system/build.prop
Run this command: content insert --uri content://settings/global --bind name:s:tether_dun_required --bind value:i:0
Reboot

Verified; working on Android M preview 3 as of 9-21-2015.

cant get it working on nexus 6 with android M stock rom. the content command fails when trying to do an insert. this is for sprint too.

You can easily do this by connecting your rooted Nexus 5 phone to a computer and run the command in the command prompt or terminal: adb shell
After it connects to your phone run the command:
settings put global tether_dun_required 0
Then reboot and it should work!

does not work on android m preview 3 -- i get this error: Tethering or Hotspot Error -- Unable to connect to data network; You may not be subscribed to Tethering or Hotspot service; please contact your phone company.

authors: زهرا حق شناس


text:
Missing photos from Google Photos app
My son uploaded about 1000 photos, but when he got home from holiday and logged onto the app, the photos simply weren't there even though when he did the upload, he got a backup successful message.
Is there any way of contacting Google to retrieve them? Could they be sitting on the Google servers somewhere but he just can't see them on his account? He deleted the photos from his phone some days after the upload, but surely this wouldn't sync to the app and remove them from the cloud?

Try looking for them on the bin folder or here.


text:
Bottom right and left page curl that shows shortcuts when swiped?
My friend and I both have Samsung Galaxy Rugby Pro (SGH-I547) on Android 4.1.2, both fully updated OS and software.
His phone has a bottom right and left page curl effect accessed with a swipe from bottom left or right corners. This will reveal recent apps, swipe again and it reveals favorites, swipe again and it reveals tools.
I can't for the life of me figure out what app or setting makes this happen. I can't even find an image on Google to show you what I mean.

I figured it out. Omni Swipe gave me most of the options that I was referring to.
The page curl effect comes with an app called Clean Master. It has the option to have the page curl swipe with tools, favorites and recent apps.

Yes you may accept your own answer, but you will have to wait, my last information was 48 hours.

I had the same problem, caused by Clean Master as well, as it turned out.

It is a real shame that android does not let you find out where this weird widget is coming from so that you can disable it

This sounds alot like I tool I have just run across on Google Play. OmniSwipe, which is a productivity tool that allows for specifying favorites, tools, and settings. If it is not this, it must be something incredibly similar.
From Google Play:
Omni Swipe allows convenient access to your favorite apps, contacts, settings, and incoming notifications using just one hand.
Just swipe from your screen's bottom left or right corner on any screen to instantly open a customizable radial menu that keeps what's important and most useful to you always within a thumb's reach. Unlike other accessibility tools, Omni Swipe stays hidden and out of your way until you swipe it into view to use it.
I'm not the developer, and I've never used it, but it sounds interesting enough a tool, that I have just installed it! Without this question I may never have been aware of it.

That is very close to what it was but still doesn't have a page curl option. Thanks for input! Anyone else?


text:
How do you check if your phone has IR blaster?
I downloaded some apps from the Play Store for controlling my TV using my phone. One of the requirements for it to work is that your phone must have an IR blaster in it. How do I check if my phone has an IR blaster?

Generally you can just look at it - they're usually not hard to spot. Alternatively, have you looked up your phone's specifications online?

What is your phone model?

If your phone has a hardware IR blaster, then it would be quite unusual if you don't have a built in application that uses the IR blaster. It's unlikely that the manufacturer would bother installing a unique hardware like IR that can't be used with the built in application (these kind of unusual hardwares are generally touted as selling points).

You can check if your phone has it on Smartphones with IR blasters (Wikipedia)
Note: the list may not be exhaustive.

2013

HTC One
HTC One Max
LG G2
LG G Flex
LG G Pro Lite
LG Optimus F6
LG Optimus G Pro
LG Optimus L9 II
Samsung Galaxy Note 3
Samsung Galaxy S4
Samsung Galaxy S4 Mini
Samsung Galaxy Mega
Sony Xperia Z (Japanese version only)
Sony Xperia Z1 (Japanese version only)
Sony Xperia ZL (Discontinued)
Samsung Galaxy J
ZTE Nubia Z5S

2014

HTC One (M8)
Huawei Honor 6
Huawei Honor 6 Plus
LG G Pro 2
LG G2 Mini
LG G3
LG G3 S (Vigor)
LG L90
LG G Vista
LG Volt
Samsung ATIV SE
Samsung Galaxy Note 3 Neo
Samsung Galaxy Note 4
Samsung Galaxy Note Edge
Samsung Galaxy S5 Active
Samsung Galaxy S5 Duos
Samsung Galaxy S5 Mini
Xiaomi Mi 4
ZTE Grand Memo II LTE
ZTE Grand X Max
ZTE Nubia X6
ZTE Nubia Z7
ZTE Nubia Z7 Max

2015

HTC One (M9)
HTC One M9+
LG G4
LG G Flex 2
Oppo Mirror 3
Samsung Galaxy S6
Samsung Galaxy S6 Edge
Samsung Galaxy S6 Active
Xiaomi RedMi Note 2
ZTE Grand X Max+
ZTE Nubia Z9
Samsung Galaxy A8 Duos

I'd never trust a list to be complete :) But yes, if it's on that list, it will have it. If it's not on the list, you need to search further :)

authors: חוליו סזאר קרדוסו


text:
Power Efficiency: Network mode 4G LTE vs 3G GSM/WCDMA?
Which network mode is more power efficient: LTE 4G or GSM 3G?
I assume using a 4G network uses more power even if you don't use the data connection, as from the little I understand about mobile networks - the frequency/encoding is completely different to 3G.
When I have "LTE/WCDMA/GSM (auto connect)" network mode active on my phone, I typically get 0-1 bars signal. But with "WCDMA/GSM (auto connect)" mode, my phone consistently has 4 bars signal.
Does the way Android handles network connections require less power when there is a stronger network signal - whether the connection is LTE or WCDMA or GSM - (I am thinking something like the network connection refresh rate might be dependant on the signal strength?!), or does the technology behind 4G simply require more power to keep connected and it doesn't matter what OS version you are using?
In case it's relevant, I'm using Samsung Galaxy Note 4 (SM-N910C) on stock Android 5.0.1.

This is a big one which is tough to give a complete definitive answer.
There are a ton of variables involved that could easily change the the end data as per you. A few of things are involved are conditions like theory, optimal, or real world environment:

The carrier and their network, the technology they utilize.
The data type itself and whose definition of what is really needs to be met to be considered truly that type.

To give you an idea in your question about refresh rate, first, whose definition of efficiency should you go by meaning? Is it solely based on an acceptable signal strength? Like, one data type refreshes at an exact unit of time because there's just maybe a chance of a better signal even if it's already at a super strong level, then add the tower hand-offs, oh my. Wow that grew fast.
Check out this excerpt from a book reference by O'Reilly which includes references to reports and papers to go deeper if wanted.

Wow, so its a lot more complicated than I thought! That book link was really helpful too @bo-lawson! Thank you :D


text:
Disable automatic screen turn-off during call
I use Gingerbread.
My Android phone has feature, that turns off display during call when I put the phone to my ear. However, the sensor is probably over-sensitive in my device, so it often turns off during call even when I don't keep it next to my face.
This is an issue if I want to use keyboard during call when the screen turns off. Can I disable this feature?

Screen turn off is managed by proximity sensor, so you will have to disable that. There seem to be some applications that will help you do that. Check
Screebl Lite - Save Power!

Plug in a headset. It's the only answer!

I've tried that. Even with headset/earphones plugged in, or set to speaker, the screen blanks (black) within a few seconds from when a call connects. If I press the power button, the screen will come back active but only for a few seconds, only enough time to press 1 or 2 keys (sometimes 3). It's "impossible" to check voicemail.

In gingerbread 2.3.6, you can turn it off in Call Settings>Additional Settings then uncheck the "Turn on proximity Sensor".
Here is a screenshot:

Option not present in 5.1

I have v. 6.0.1. I contacted support with this problem, since I do not have any proxy setting. Go to settings - > apps -> phone or dial app -> memory -> clear cache and memory and restart your device. This worked for me. Hope this helps, good luck.

I think that is "storage", not "memory".

doesn't help for those of us with hardware problems :|

In Gingerbread you can find it in Advanced Settings in the Call Settings: go to Settings -> Calls-> Advanced. I'm not sure where exactly but it's where you have the options of call waiting, etc.

That's extremely dependent on the ROM, looking here on GB 2.3.7, that does not exist! What ROM is that are you referring to?

thats 2.3.6! im sure its somewhere there. or press options in the keypad screen and check everywhere in preferences!

check everywhere in preferences.... hummm... could do better than that! Enclose a screenshot of it, and should have stated GB 2.3.6 in your answer ...

For those who found this answer, and are looking for the answer on a newer android version, I found this on my Samsung Galaxy S 3, running Android 4.1.1, this is how I turned off that feature. Enter the dialer (the "Phone" icon", as if you wanted to make a call). Bring up the menu, and click "Call Settings". Uncheck "Auto Screen off during calls"

Use "Screen On Call" app to keep screen on during call. There is no need to turn proximity sensor off. It will keep working and if you move you phone to your ear, screen will go off, but if you keep it on the table or away from any blocking objects, screen will stay on, so you will be able to use keypad to punch more numbers or for whatever reason you want screen to stay on.

There is a free app named Screebl, that will keep your phone on during a call. In fact, you will have to physically shut your phone off/place it in standy, after you install this app by tapping the on/off button on a Samsung Galaxy Proclaim 2.3.6 Gingerbread OS.


text:
Using Android device as a loudspeaker
I have a class of 100 students, and I have an idea to use my mobile as a loudspeaker so I don't have to shout.
Alternatively, it should work like an amplifier system. The difference is that the input is the mobile, the amplifier is the mobile and the output is a USB speaker connected to it.
Is it possible to do that?

You can use a microphone app like Microphone by Gaz Davidson.
There is a lag, but then again your phone isn't a full blown stereo mixer.


text:
Turn the speakerphone on a call using ADB shell
I'm trying to find a command in adb shell that lets me turn on the speakerphone when I start a call.
First I make the call
adb shell service call phone 1 s16 "" s16 "#####"

the call starts and I try to start the speakerphone with something like this:
adb shell input keyevent <keycode>

You can use combination of keyevents to achieve the goal. The important ones you would need are:
19 -->  "KEYCODE_DPAD_UP"
20 -->  "KEYCODE_DPAD_DOWN"
21 -->  "KEYCODE_DPAD_LEFT"
22 -->  "KEYCODE_DPAD_RIGHT"
23 -->  "KEYCODE_DPAD_CENTER"
24 -->  "KEYCODE_VOLUME_UP"
25 -->  "KEYCODE_VOLUME_DOWN"
66 -->  "KEYCODE_ENTER"

See ADB Shell Input Events for more.
According to the interface of your dialer, the combination would vary. E.g.:
adb shell input keyevent 20
adb shell input keyevent 21
adb shell input keyevent 21
adb shell input keyevent 66

It may take more steps, and sometimes, you won't get to see whether it affected the interface or not, but continue combining them, and you would get the result.

That aside, the technique mentioned by Bo Lawson here and taken from this answer by Omar

adb shell service call audio 7 i32 3 i32 0 i32 1

isn't working on my Lollipop at all. Neither it is switching the call into speaker, but adjusting the volume of the earphones only in my Kitkat 4.4.2.
Also, if you intend to use a service call method and the linked answer isn't working, then you may wanna take a look at the source code of the audio service to figure out the things. Find it here.


text:
HP Slate 7 will not charge
My sister got a quite new HP Slate 7 running Android 4.1.2, but the tablet won't charge. When I charge it while it's running, the charging is flickering between charging and not charging. If I charge while it's turned off, it displays the battery with a triangle and an "!" (exclamation mark).
It has been a permanent problem, but we used to be able to workaround it by tilting the device, sometimes that got it charging.
Any ideas?

Would it not charge when the Android is running or not running or on both cases? 2) Since when did it start happening? 3) Did you or your sister do something which result in some unknown behavior or an issue? 4) Is the battery fine? Please try to answer all of them.

@Firelord your answers will come as asked, 1)  It would not charge in either case.  When on, it would flicker between charge and not charge.  When off,  it displays the battery  with a triangle and a!   2) It has been a permanent  problem,  but we used to be able to workaround it by tilting the device, sometimes that got it charging 3) No she didn't. She would not meddle,  I have warned her.  She also wouldn't  th8nk about it regardless.  4) It's a newish device (no warranty,  all components no older than 9 months)

You would have figured or got it fixed but IMO your symptoms point to bad CONNECTION most likely on the device USB and possible problems with USB Port / card

@besshyams Oh. This. Yeah, ive just got it out to have a look, and pin in the tablet is, well, not there.