text:
Meaning of abbreviations (DP, KP, NP, RP) concerning POWER OFF RESET REASON in logcat / bugreport
I have a Samsung Galaxy A7 2018 phone, and it is subject to frequent unexpected reboots/shutdowns. To try and pinpoint their cause, I extracted bugreports using adb bugreport.
In the main bugreport log file (bugreport-yyyy-MM-dd-hh-mm-ss.txt), the POWER OFF RESET REASON part lists all shutdowns and reboots, like so:
------ POWER OFF RESET REASON (/data/log/power_off_reset_reason.txt: 2018-12-06 13:16:36) ------
18/11/29 18:20:28
reason : userrequested
java.lang.Exception: It is not an exception!! just save the trace for process which called shutdown thread!! ShutdownThread.shutdown
    at com.android.server.power.ShutdownThread.shutdownInner(ShutdownThread.java:590)
    at com.android.server.power.ShutdownThread.reboot(ShutdownThread.java:1755)
    at com.android.server.statusbar.StatusBarManagerService.lambda$-com_android_server_statusbar_StatusBarManagerService_30308(StatusBarManagerService.java:921)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.$m$0(Unknown Source:2)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.run(Unknown Source:0)
    at android.os.Handler.handleCallback(Handler.java:789)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:164)
    at com.android.server.SystemServer.run(SystemServer.java:728)
    at com.android.server.SystemServer.main(SystemServer.java:547)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
2018-11-29 18:21:12 |RP| reboot,userrequested

18/11/29 20:04:10
reason : userrequested
java.lang.Exception: It is not an exception!! just save the trace for process which called shutdown thread!! ShutdownThread.shutdown
    at com.android.server.power.ShutdownThread.shutdownInner(ShutdownThread.java:590)
    at com.android.server.power.ShutdownThread.reboot(ShutdownThread.java:1755)
    at com.android.server.statusbar.StatusBarManagerService.lambda$-com_android_server_statusbar_StatusBarManagerService_30308(StatusBarManagerService.java:921)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.$m$0(Unknown Source:2)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.run(Unknown Source:0)
    at android.os.Handler.handleCallback(Handler.java:789)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:164)
    at com.android.server.SystemServer.run(SystemServer.java:728)
    at com.android.server.SystemServer.main(SystemServer.java:547)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
2018-11-29 20:04:55 |RP| reboot,userrequested

18/11/30 09:05:54
reason : userrequested
java.lang.Exception: It is not an exception!! just save the trace for process which called shutdown thread!! ShutdownThread.shutdown
    at com.android.server.power.ShutdownThread.shutdownInner(ShutdownThread.java:590)
    at com.android.server.power.ShutdownThread.reboot(ShutdownThread.java:1755)
    at com.android.server.statusbar.StatusBarManagerService.lambda$-com_android_server_statusbar_StatusBarManagerService_30308(StatusBarManagerService.java:921)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.$m$0(Unknown Source:2)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.run(Unknown Source:0)
    at android.os.Handler.handleCallback(Handler.java:789)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:164)
    at com.android.server.SystemServer.run(SystemServer.java:728)
    at com.android.server.SystemServer.main(SystemServer.java:547)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
2018-11-30 09:06:42 |RP| reboot,userrequested

2018-12-01 12:42:11 |KP|
2018-12-01 13:57:04 |KP|
2018-12-02 19:09:10 |KP|
2018-12-03 10:41:29 |KP|
2018-12-04 00:49:28 |KP|
2018-12-04 13:57:20 |DP|
2018-12-04 14:58:17 |KP|
2018-12-04 21:49:20 |DP|
2018-12-05 09:08:20 |KP|
2018-12-05 09:25:19 |KP|
18/12/05 09:26:58
reason : userrequested
java.lang.Exception: It is not an exception!! just save the trace for process which called shutdown thread!! ShutdownThread.shutdown
    at com.android.server.power.ShutdownThread.shutdownInner(ShutdownThread.java:590)
    at com.android.server.power.ShutdownThread.shutdown(ShutdownThread.java:423)
    at com.android.server.statusbar.StatusBarManagerService.lambda$-com_android_server_statusbar_StatusBarManagerService_29827(StatusBarManagerService.java:901)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4.$m$0(Unknown Source:0)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4.run(Unknown Source:0)
    at android.os.Handler.handleCallback(Handler.java:789)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:164)
    at com.android.server.SystemServer.run(SystemServer.java:728)
    at com.android.server.SystemServer.main(SystemServer.java:547)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
2018-12-05 09:28:37 |NP|
18/12/05 10:43:09
reason : userrequested
java.lang.Exception: It is not an exception!! just save the trace for process which called shutdown thread!! ShutdownThread.shutdown
    at com.android.server.power.ShutdownThread.shutdownInner(ShutdownThread.java:590)
    at com.android.server.power.ShutdownThread.reboot(ShutdownThread.java:1755)
    at com.android.server.statusbar.StatusBarManagerService.lambda$-com_android_server_statusbar_StatusBarManagerService_30308(StatusBarManagerService.java:921)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.$m$0(Unknown Source:2)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.run(Unknown Source:0)
    at android.os.Handler.handleCallback(Handler.java:789)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:164)
    at com.android.server.SystemServer.run(SystemServer.java:728)
    at com.android.server.SystemServer.main(SystemServer.java:547)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
2018-12-05 10:44:37 |RP| reboot,userrequested

2018-12-05 12:07:33 |KP|
2018-12-05 12:22:23 |KP|
2018-12-05 14:38:07 |KP|
2018-12-05 15:58:46 |KP|
2018-12-05 20:04:40 |KP|
2018-12-05 21:23:00 |DP|
2018-12-05 21:39:37 |DP|
2018-12-06 00:49:24 |DP|
2018-12-06 01:29:54 |KP|
2018-12-06 01:45:55 |KP|
2018-12-06 03:52:06 |DP|
2018-12-06 04:03:02 |KP|
2018-12-06 04:06:40 |KP|
2018-12-06 04:16:19 |KP|
2018-12-06 05:11:56 |DP|
2018-12-06 05:34:23 |KP|
2018-12-06 05:46:28 |KP|
2018-12-06 06:36:42 |KP|
2018-12-06 06:44:33 |KP|
2018-12-06 07:17:01 |DP|
2018-12-06 07:37:15 |KP|
2018-12-06 08:09:17 |DP|
2018-12-06 08:15:15 |KP|
2018-12-06 09:36:32 |KP|
2018-12-06 10:16:25 |KP|
2018-12-06 10:25:01 |KP|
18/12/06 11:26:37
reason : userrequested
java.lang.Exception: It is not an exception!! just save the trace for process which called shutdown thread!! ShutdownThread.shutdown
    at com.android.server.power.ShutdownThread.shutdownInner(ShutdownThread.java:590)
    at com.android.server.power.ShutdownThread.reboot(ShutdownThread.java:1755)
    at com.android.server.statusbar.StatusBarManagerService.lambda$-com_android_server_statusbar_StatusBarManagerService_30308(StatusBarManagerService.java:921)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.$m$0(Unknown Source:2)
    at com.android.server.statusbar.-$Lambda$-TUoAzP8agiJJX9P4eGDtNXdVZ4$2.run(Unknown Source:0)
    at android.os.Handler.handleCallback(Handler.java:789)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:164)
    at com.android.server.SystemServer.run(SystemServer.java:728)
    at com.android.server.SystemServer.main(SystemServer.java:547)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
2018-12-06 11:27:30 |RP| reboot,userrequested

2018-12-06 13:16:36 |DP|

------ 0.005s was the duration of 'POWER OFF RESET REASON' ------

From this log, we can see 4 different "types" of shutdowns:

DP: ?
KP: Kernel Panic?
NP: ? Seems to correspond to user (or system)-requested shutdowns.
RP: ? Seems to correspond to user (or system)-requested reboots.

What is the meaning of those acronyms, and what do they correspond to?


text:
Android Auto works with out a WiFi or data connection
On my mobile phone, I have the WiFi and data connection disabled.  Yet, I still get  google maps via my Android Auto as seen on vehicle display.  How is this possible?

For me at least, my local area has been automatically downloaded to be used offline. Has yours?
In "normal" Google Maps, outside of Android Auto, go to the hamburger menu, then Offline maps. Mine's currently set to "Home, 52MB, expires 21 April 2020", which corresponds to a square about five miles across.
There's loads of settings in there for you to tweak.

Your reply does explain what's happening.  I do believe that my local area has been loaded, as Maps doesn't include anything beyond.

source: Stack Exchange

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

sort: votes


text:
Can I rotate between stock and/or live wallpapers?
I like the Living Universe wallpapers that come with android. I want to rotate between several of them. I tried setting up the Wallpaper Changer app, but I see no way to add them to its list (or any other stock wallpaper, for that matter). Is there a similar app or setting that works for stock and/or live wallpapers?

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


text:
Android Phone - Can I set a 3rd Party Dictionary as the Default Dictionary?
New to the Android ecosystem.
My phone has a default dictionary: 'Collins English' which I downloaded and installed.
I also have installed a 3rd party dictionary which is superior in many ways (for example has spoken pronunciation, thesaurus, etc)
Is it possible for me to assign the 3rd party dictionary as the default dictionary.
It would be nice if I could also use the 3rd party dictionary in my kindle-App.  But I have a feeling that Kindle uses a proprietary dictionary.

There are some tutorials online that show how to replace the dictionary file used by the Kindle app by a custom file. Not sure if this trick still works, and anyway it does not allow to use an external dictionary app.


text:
How to automatically normalize loudness system-wide?
I have to constantly adjust the volume, especially to turn down ads and loud action scenes or dramatic soundtrack swells in video, but turn up to keep dialog audible, etc.  I need something that does this automatically, like a dynamic compressor/limiter/normalizer. If apps are available for this, I prefer those that are free and don't require root.
I have searched the Google Play Store and found nothing with this feature system-wide. Some media players/streamers have it built-in just for their own content (probably excluding ads, usually to handle songs mastered to different levels), sometimes called something like "smart volume." There are many apps that process audio files offline and add a "replay gain" to their metadata, which some media players respect. I'm looking for the same kind of thing, but applied to all media audio output in real-time, including ads.
Windows has "loudness equalization" option built-in to their sound manager, and VLC has it as an effect in the desktop version.
Googling indicates that ViPER4Android may work, but it requires root and I can't find a definitive statement that it has this feature, and it looks like it doesn't easily install on some devices. If it does and is the only option, I would consider rooting.
A great option would be if Android could run LADSPA plugins like Linux.
Is this possible?

I am trying to solve the exact same problem on an Android TV device that can't be rooted and my various searches on Google have brought up this question in the top results over and over. I don't think there is a solution. I would consider looking for a separate bluetooth or USB audio device with a "dynamic range compression" or "loudness equalization" feature built-in.

Related on XDA Forums - Loudness equalization (volume normalization) app/mod for android? which suggests Dolby Atmos, a Magisk module (needs root)

Related on Reddit: How to normalize audio volume in Android? (Automatically boost volume in quiet videos to prevent hearing damage from loud YouTube advertisements.)

Try this https://github.com/ThePBone/RootlessJamesDSP.
The "Output control" is exactly the option you want, but it has other things to.

As on April,  2023 there are following methods:
The avialble applications can be categorised as follows'
I) Real Time Normalization
(a) Across the system: Viper4Android-Android, Realtek driver v6.0.1.6767, Date 30-10-2012-Windows, Realtek-Dolby Audio
(b) Application level: AIMP-Android, AIMP-Windows, double Twist v3.2.1-Android, Cloud Player v1.8.5-Android, many online streaming services
II) Replay Gain identification, linking and saving as separate file without even disturbing meta data: Neutron Audio Player - Android
III) Replay Gain Normalization (Replay gain writing at Meta Data it can be undone, if player is not compatible it will ignore Replay gain): mp3gain, foobar2000, R128Gain_1.0.11_win64_gui.
IV) Loudness conversion (can not be undone to original, such processes generally cannot be lossless): Audacity, etc many apps for windows as well as android.
Note: Perceived volume level or Digital “loudness” is measured as LUFS and it’s negative. Mp3gain 89dB = -18LUFS
I.a.1 The following is experience sharing of Android with Viper4Android 2.7.2.1 on spare phone Xiaomi mi5  lineage 17.1 (Android 10) (Phone Volume 40 to 70%)
i)  Enable "Master limiter"
Output -0db
Output pan 50:50
Threshold limit 0dB
ii)Enable "FET Compressor" with the following settings
operator threshold to -60dB (or -50 to -60dB)
Compression ratio to 10.00:1, (or higher like 20:1 upto infinite)
Automatic Knee untick it,
inflection: 10.8dB
inflection point gain 2.00x,
Automatic Gain-Untick,
Automatic Gain 25.6dB (or 20 to 40dB it will be more effective but in relation with operator threshold )
Automatic attack, untick
Attack to 10ms. (0.1 to 12ms)
Max attack 200ms, (10 to 250ms)
Automatic Release untick
Release 20 ms (0.2 to 25 ms)
Max Release 250 ms (2 to 300ms)
Crest 20dB,
Adapt 2639
Clipping prevention Tick
it is able to normalize loudness automatically tested qith audio volume 88.8dB (-14LUFS) and 105.2 db (-3LUFS), -36LUFS (dB as identified by MP3Gain PC software).
As normalization standard is available so many parameters are not required for audio normalization, once selected it can target -18 LUFS like Foobar plug in /double Twist.
Note:
(i) Even after Audio Modification libraries (AML) is installed, a4v needs SoundFX to be disabled. It is working on Legacy Mode. it works along with Dolby Atmos also.
(ii) James DSP is having Dynamic Range Compressor, but not having options to provide necessary inputs /it is not having them built in, it is not able to work as auto volume normalizer.
(iii) Any DSP expected to impure or introduce artifacts to the audio, we may not be able compensate by tweaking with v4a  etc to the original. If you enjoy your own way, you may like it. Further if the function of Auto loudness / Auto volume  level /auto volume normalization is at top priority , it succeeds to great extend android across the system. Tested with pink noise with digital loudness from -3LUFS to -23LUFS. It is noticed if  bass is very high in original the above settings may not be suitable or difficult to adjust to universal setting.
(iv) There is no auto loudness normalization in "Dolby Atmos" in current versions. Dolby Audio is effective which is available at speaker control panel on windows 10.
in my case:
The Viper4Android 2.7.2.1 rootless type installed from TWRP (as magisk module is infinitely trying for installation of driver) even after installing Selinux 11, AML 4.2, Lineage's SoundFX disable or all in one type available at Github.
at present UNINSTALLER for above rootless type is not readily available.
There is noticeable deterioration in sound quality of low frequency with fet compressor of v4a.
I.a.2. or If you are on windows 10 with Realtek audio , install 2012 driver v6.0.1.6767, Date 30-10-2012 (old driver) it will give options “Enhancements" select loudness equalization ’ (sometimes it miss few milliseconds at start of track). This is real-time type as well as across the system, but it's effectiveness cannot be checked with pink noise. It is also noticed that later drivers having Dolby Audio , when made it on , it is also acting as loudness normalizer. However Dolby Atmos is not having any such feature.

I.b.1 or use "double Twist v3.2.1.apk" (i.e classic) Android {for real-time normalization: Settings>Loudness Normalization>on} but it is not able to recognize all folders / audio files.
I.b.2. or "Cloud Player v1.8.5" for Android  by double Twist Corp {for real-time normalization: Settings>Loudness Normalization>on (after buying)} but it is not able to recognize all folders / audio files.
I.b.3. Or use "AIMP" for Android or PC  {for Real-time auto loudness normalization: options >sound effects > options > Volume Normalization> Replay Gain > select / Tick Replay Gain, Untick at  Use values from tags (as not required for real time mode) , Tick on the fly  Analysis> tick (=ok)}. Some times it misses by a few milliseconds at new track.(PC version's UI is not user friendly at present)
I.b.4 or Jet Audio HD Player Android {for Real-time auto loudness normalization: Menu > Preferences > Playback> select "Adjust Replay gain with AGC"}
I.b.5 Foobar2000 PC
Use "EBU or R128 Normalizer" plugin for Real-time auto loudness normalization ( install the plug in , add the same at DSP from preference. It is working ok. Tested with pink noise with digital loudness from -3LUFS to -33LUFS. Working perfectly when started with -33LUFS and going up , it's output was normalized to -18LUFS and verified with Youlean_Loudness Meter 2 vst3 plug-in installing to Foobar.
I.b.6 PC through installation of VST adapter: adding this adapter to DSP compnent to Foobar and using available VST plug in. At present volume normalizer for play purpose yet to be developed.
I.b.7 Many online streaming services

II.1 "Neutron Audio Player" Android It writes replay gain information to a separate file with a reference for location and file name, so even meta data is also preserved. However getting into folder browsing is outdated {Neutron v2.12 Menu (3 horizontal lines) icon> Sources (do not select folders available in options, the following folders will linked /show up at the folders of neutron at later stage )> + > File system > Devices > SD card> now it will come to nearly  modern browser mode..browse to required folder having music files...., select folder > select Tick > it will scan files}
(i) Addition of music folder to Neutron
{Neutron v2.12 Menu (3 horizontal lines) icon> Sources (do not select folders available in options, the following folders will linked /show up at the folders of neutron at later stage )> + > File system > Devices > SD card> now it will come to nearly  modern browser mode..browse to required folder having music files...., select folder > select Tick > it will scan files
, if not hold on folder to get option to scan.(The files inside above folder is not responding/not scanning , delete above folder in above settings of neutron click and hold to get delete option (it is not real deletion at internal drive) , make back and forth , to get refreshed and re-create. If required
select other than previously used folder or super folder or some other sub folder. For using any other than sub folder you have to repeat above process.
{Neutron v2.21.9 Menu , just after fresh installation : select Audio Source as Manual>File System> + > Audio files folder or subfolder (as per your plan and scheme how you want them appear later) >Use This folder > ALLOW >select this folder > click on Tick Icon> Folder on drive will be added to folders of Neutron, if not successful add another folder or subfolder consisting audio files.
if above skipped  or at later stage some more folders to be added : (3 horizontal lines with arrow) icon> Sources > + > File system > + > now it will come to nearly  modern browser mode..browse to required folder having music files...., select folder > >Use This folder > ALLOW > select Tick >.....
(ii) (i) Deletion of music folder to Neutron
To delete folder in neutron app (No physical deletion on inernal drive) : (3 horizontal lines with arrow) icon> Sources > tap and hold on the folder > delete
(iii)Normalize the volume level all files in a folder to -18LUFS
{Menu> Sources> Folders > Click and hold on the required folder to get normalize option >+EQ Preset> Normalize > select Tick}
(Source file will not be affected , even metat data)
(iv) To remove above normalization
To delink above Neutron assigned Replay Gain through Normalize: {Menu> Sources> Folders > Click and hold on the required folder >click again on +EQ Preset}
Note: Some times icons /menu are relocated, please  find them to get navigation options.
III.1 mp3gain.exe {It is the most compatible with Windows as well as Android apps, it is a defacto standard for Replay Gain, until mp3 normalization standard is formed}
or III.2  Foobar2000 v1.6.16 {compatible with Foobar2000 player v.1.16.16, AIMP v3.30.1250 and VLC player v3.5.4 , Jet Audio HD v11.2.3, both windows / Android , USB Audio player pro trial 6.0.3 (Android) but not v6.1.0.0, Power Amp v3b957 (Android), FIIO Music v3.1.7 (Android) }
or III.3 R128Gain_1.0.11_win64_gui {compatible with AIMP and VLC player both windows / Android, USB Audio player pro trial 6.0.3 (Android) but not v6.1.0.0, Power amp v3b957 (Android)} program on PC (freeware) to write replay gain data at meta data of track (or album) without changing any music data i.e music will be as original. If the player is compatible with this replay gain,  data stored at metadata will play the music file with normalized volumes.

IV.1 Normalization open freeware DAW like Audacity etc.
Procedure to Loudness Normalization by Audacity
1)file>Browse to the required files > Open all required files,
2)Select all files,
3)Effect > Volume & Compression>Loudness Normalization>Perceived Loudness (Digital)>.....LUFS>Apply
4)File > Export >...... (processed file will be outlet folder)
IV.2 PC through VST3 for 5.1
Install VST3 plug-in e.g The Normalizer by FinalLoud by TBPro Audio VST3 manager. They are in  advanced audio creation (DAW) etc. It will do permanent changes to music.
In case of real time loudness normalizer, if it is not programmed to know track to track to information or analysis of sufficient length of buffer etc , it may intervene in between / intermittently causing a feeling of unnaturalness or distortion. Same difficult is similar with across system loudness normalizer.

Due to any reason , if you don't want to listen to full length of song, but initial few seconds (like 30 sec or 120 sec or 180 sec or any) , automated preview  of various varieties are available at "Automate Community" a forum of Automate by llamalab.


text:
Emojis sent from a Samsung device appear as "two question marks" on the recipient's device
I recently switched from my iPhone 7 to a Samsung Galaxy S10. However, for some reason when I send emojis, the recipient receives two question marks.
I've exchanged my phone, but the problem remains.
How can I fix this?

If the recipient doesn't use a device that supports the specific emoji, this happens.
Example:

All the emoji on Android Oreo (8.0) aren't on Android Lollipop (5.0)
Not every emoji on iOS is supported on Android or vice versa

If you are sure that their device supports the emoji, I don't know then.


text:
How to change status bar icon color Android 9 [Pie]
I have a rooted oneplus 3t phone running Android 9 on a Lineage OS that I wish to style after the Fallout game franchise. I have many details figured out, except that the status bar color only seems to have the option of black or white. I would like the status bar icon colors to be green. This would especially be helpful as I've noticed that these white icons burn into the screen when a phone is old enough.
I first tried GravityBox which took forever to install only to find that they removed the status bar color tweaking features out of respect for other android releases that gave us this option by some other means... but Pie took them back.
I also tried Substrathum which gives an error page saying "Could not fall back to rooted mode. There are no other theme engines able to be utilized on this device at this current time." I found some sources which claimed to have it working on Pie, but their instructions were unclear or not specifically useful for getting past this error in Pie.
Can anyone help?

Sub surely works, but v1015+ requires Magisk (LOS built-in SU will not work), and you will need to reboot after building your desired overlays for them to show up in the Manager section.

@AndyYan If you mean Substrathum, I did install it with Magisk. This issue of it being blocked despite being rooted is specific to Pie.

I have ~10 devices on LOS16 on my hand, and only one of them gives issues with Sub (and even then that's the device's fault). I know for a fact that Sub should work, unless yours is also a device with special traits...

@AndyYan I followed these instructions: https://forum.xda-developers.com/xposed/modules/app-gravitybox-v9-0-0-beta-1-android-9-t3908768
to get gravitybox installed. Then these instructions to install substrathum:
https://www.xda-developers.com/substratum-hub/


text:
SELinux Policy from Permissive to Enforcing
Using Nexus 5 with AospExtended ROM (Android 9) 19/04/05
The ROM, by default, has the SELinux policy set to Permissive instead of Enforcing.
Is there any way, perhaps using TWRP Recovery, to change the SELinux policy to Enforcing? perhaps a similar Android 9 ROM
Some apps such as Google Pay will not work if the phone is rooted or the SELinux policy is not set to Enforcing. Also, feel slight safer if the NSA SELinux security policy was enforced.
Advice appreciated

SELinux is set Enforcing by init during boot process on user builds of a ROM. If you are on eng or userdebug build, you need to set SELinux enforcing manually. You can use an init.d script or directly create an init service (.rc) file for the purpose. Make sure you have a working SELinux policy file before setting Enforcing. Related: https://android.stackexchange.com/a/209374/218526

If a custom ROM has SEL set to enforcing, it means the dev is confident that features are working under strict SEL, and you can safely change it to permissive knowing that things will continue to work under a more lax SEL environment.
On the other hand, however, if he chooses to release with SEL permissive (especially if he lists it in the "bugs" section), it means some critical features doesn't work yet under strict SEL, forcing the dev to use permissive for the time being. Under this circumstance you shall not change it to enforcing.
Regarding Google Pay, it's common practice to just use Magisk and let it hide root/BL/SEL status for you instead.


text:
SD Card not mounting after reboot
My Android doesn't mount my SD Card after reboot. I need to get out the SD Card slot and put it back in. Can I fix this?
By the way I have a Samsung Galaxy J7 (2017).

How large is the SD-card and is it formatted with FAT32 or exFAT format. Some devices have problems with exFAT file system. In such a case you can reformat (deletes all data) by the phone itself. Therefore the phone can decide which format is preferred.

It works just fine, I have a lot of apps on it. The problem is that android doesnt detect it. It detects it only after I reinsert it

Try inserting another SD card in your phone if it does that means there is problem with your SD card
Try opening the same SDcard in your laptop and see if opens copy the data and format...if it doesnt open try formatting it and then insert in your phone

It does the same for another SD Card. I tried to go into settings to mount it manually there and it says that I dont have any sd card in my slot

I have a lot of apps that I cant move on my phone because I dont have enough storage.

That means either there is a problem with your card slot or your software. Are u running any custom ROMS or the stock rom ? Try backing up your files to desktop and resettting your phone

I am running the original Android 8.1.0 that my phone came with.


text:
Will my wake up alarm ring all day? I left it at work
I left my phone at work in my locker, Im not in work today, will my wake up alarm (that I have on repeat mon-fri) sound off all day on repeat or does it stop after a few attempts?

It probably depends on the app you're using, but Google's Clock app will stop ringing after a while and leaving "missed alarm" notification instead.


text:
Can't reinstall an app uninstalled through ADB
I recently got a Huawei P30 and used adb to remove some preinstalled apps I didn't want to use. I went a bit too far and removed the system gallery app (com.android.gallery3d) which turns out to be problematic for multiple things, such as opening taken pictures directly from the camera app.
I've tried reinstalling it but I'm facing multiple issues:

When trying to install the APK that's still on the phone in /system/priv-app/Gallery2, I get a INSTALL_PARSE_FAILED_NO_CERTIFICATES error. The full error:

Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Failed to collect certificates from /data/app/vmdl30820468.tmp/base.apk: /data/app/vmdl30820468.tmp/base.apk: File res/drawable-xxxhdpi-v4/img_patten_7.jpg in manifest does not exist]

When trying to install a version I found online, I get a INSTALL_FAILED_VERSION_DOWNGRADE, which is odd as the app is supposed to be uninstalled. It doesn't appear in pm list packages, however running dumpsys package com.android.gallery3d does give a result, and the version is indeed more recent than the one I'm trying to install (9.1.1.309 vs 9.0.15.355). Using the -d flag when installing doesn't help as it's not a debug app. I couldn't find a more recent version online.

Is there a way to reinstall this app that doesn't involve a factory reset? Alternatively, is there a way to install a different version of it? It seems like com.android.gallery3d is a generic package name, I wouldn't be against having the "stock" Android one.

When the APK is still in /system/priv-app/*, the app isn't uninstalled. Are you sure you didn't just disable it? What command did you use to uninstall via ADB?

I used adb uninstall -k --user 0 com.android.gallery3d. Trying to run it again results in a not installed for 0 error (with or without the -k flag). Not specifying the user also gives an error, DELETE_FAILED_INTERNAL_ERROR

That only uninstalled it for that one user, but leaves the APK there (theoretically, a second user could still run it). Have you tried adb shell "pm install -r <package.apk>" (replacing <package.apk>by the path to the installed APK file) or, if you have it on your PC,adb install -r ? The important thing is the -r` (re-install even if its there).

The -r flag doesn't help, same issues with both methods (apk left on the device and the one I downloaded)

That's ugly. Just guessing: what happens when you introduce the --user 0 here as well? Then it can neither claim a wrong version nor that it's already there. If that doesn't work either, please try pm default-state app.name (taken from this XDA post). I've never had that situation.

Specifying --user 0 when installing didn't help. I added the full error to the question when trying with the app on the phone as it doesn't seem to be related with the current state of the app but rather with the apk itself. pm defaul-state says Package com.android.gallery3d new state: default but doesn't seem to have any effect (app still isn't visible anywhere, even after rebooting the phone)

Can you please upload the APK that resides in /system/priv-app/Gallery2 somewhere and share the link with us? I want to try if this could be a problem with the APK.

Sure: https://send.firefox.com/download/69b457af2b74203a/#N9qa8vc7beaD67xCnc_lDQ (expires after 7 days or 100 downloads, I can reupload it if needed). Note that this APK is the one that was already residing in the phone, not the one I downloaded. I just tried signing it but I get the same error as before (INSTALL_PARSE_FAILED_NO_CERTIFICATES because a file is missing in res/drawables...). I also tried bumping the downloaded one's version code using apktool and signing it myself but I get rejected as the signature isn't the same as the "existing" version.

@Jukurrpa looks like your problem is the same as: Reinstall System app which is uninstalled for the current user? Unfortunately, that is not solved there either, and overlaps with what I asked you to try here (Firelord pointed me to that one, thanks again!)

Wow thanks for the link to this question, adb shell cmd package install-existing com.android.gallery3d worked! I wasn't aware of that command. Could you post this as an answer so I can accept it?

Great! And thanks for reporting back. Now that you confirmed, I've made that an answer. Though the comment chain here now is obsolete for you I suggest we leave it stay. All those "possibilities" might come in handy for someone else. Enjoy!

The solution can be found in the question Reinstall System app which is uninstalled for the current user? (which is unanswered):
adb shell cmd package install-existing com.android.gallery3d

Note this doesn't work in Android 5 (hence the other question), as the cmd command was only added later (I don't remember exactly when, but it's available in Android 7 at least).

And you can uninstall it with adb shell cmd package uninstall com.android.gallery3d


text:
How to Remove Old Email Accounts
So I just bought a new phone last week and I'm in the process of downloading all my apps and setting it up. I was trying to log into the Slack app when this pop-up appeared with a list of all the emails that I've ever used.
Half of them were old email accounts that I haven't used in a while and they ranged from Gmail to Yahoo to Outlook and even my old college email address showed up. Where are these emails stored and how can I remove them from my device?
I've wrecked my brain and could not figure this out. Any help would be appreciated!

Most likely Slack has stored them and they are connected to your phone number. Check your Slack account.

Hmm, I can't see how it could be tied to my Slack account since I only started using Slack last year. Some of the email addresses on that list are from 5 years ago. My phone number is also not tied to Slack.

From your screenshots, it looks like old logins saved in Chrome. If you've used Chrome to remember your login details for websites, that's what they'll be. They're synced across desktop as well as mobile Chrome installs via your Google account. The UI for selecting which login to use has changed recently, so it's natural that you might be surprised by it.
You can delete old login details from the Chrome settings, on PC or mobile. On Android, the steps are:

In Chrome, click the three dots button in the top-right
Choose Settings from the menu
Choose Passwords
Either turn off Save passwords to disable the feature entirely, or:

Click a site in the list
Click the bin/trashcan icon in the top-right to delete that password
Repeat that for all the old login details you want removed

You are a genius! I'm not logged into Chrome on my phone but I did go to Passwords Manager in my Google account and found the list of saved emails and passwords. Erased everything and viola!


text:
Can apps bypass permissions and just use Google Play Services?
I was reading this answer, and the first comment under it, and wondered if apps can bypass their own app permissions and just get whatever data they want from Google Play Services.
What got me started with this was when I removed a bunch of permissions from Google Play Services and I started getting a notification saying "Accupedo is having trouble with Google Play Services. Try again." Clicking this notification brings up a screen saying "This app won't work properly unless you allow Google Play Services' request to access the following: Calendar; Camera; Contacts; Microphone; Phone; SMS. To Continue, open Settings, then Permissions, and allow all listed items."
As I search on the web and this site, I see everyone, seemingly blindly, saying "Oh, just give Google Play Services all the permissions possible and don't question them." But why? The whole point of having control over app permissions is to have control. This advice is simply giving up and letting Google do whatever they want.
As a concrete example, this one app does not request app permissions to my contacts, microphone, sms, camera, etc. However, Google Play Services' notification makes me think that this app is trying to get my SMS and camera and microphone. Since a simple step-counting app has zero reason to know my contacts or have access to my mic or camera, I would really like to know if they are trying to bypass even requesting app permissions and just getting everything they want from Google Play Services. If this is not the case, why would Google Play Services be sending me this notice?
By the way, originally, it included in the Google Play Services notification's permission list "body sensors." Since this made sense for a step-counting app, I went to Google Play Services and turned on that one permission. Now, "body sensors" is no longer in the list. This lends support to my idea that Google Play Services is receiving a request specifically for access to my camera and microphone (and others) from Accupedo while Accupedo has no such permission requested in the app permissions.
To be clear, this post is not about Accupedo. This question is about whether or not apps in general can simply hide from the user that they are collecting certain data or accessing certain parts of my phone without my awareness by getting everything from Google Play Services.
Any insights would be greatly welcomed.

Even I have noticed something similar in the past and unfortunately I could do nothing about it. So, I installed an app (firstly the Google Pay; then another regional food delivery app). I denied SMS permission to both. because I prefer entering OTPs myself. Surprisingly, both apps got OTP from SMS without SMS permission. Realized that it given from Play Services because the same didn't happen when I removed permission from Play Services. So, I believe the answer to your question is a YES.

Just a short remark (not enough research for a full-fledged answer), but as an Android app developer, the answer is yes. And to confirm @singhnsk 's comment about SMS, that's actually what Google recommends to read SMS directly to the app, to prevent SMS permission being misused instead. However, I haven't researched much more what Play Services can do and their related permissions.

@AndrewT. Interesting. I see in that link the technique you mention will give access to only SMS destined for that app (using reasonable criteria). So, going through Play Services to read SMS would not allow access to all SMS. So there is some safety there.

There are still lots of questions about the aspects (other than SMS).

Long story short - Android is a Google built OS and they have access to system privileges for Play Services and some other components. Play Services are meant to allow sanitized access to certain system features (location, geofences, SMS OTP auth and several others).
If you don't trust Google to protect your data on device, then you have fundamentally chosen the wrong device and operating system - since they're the ones that have developed most of the code and have the ability to update root privileged parts of the OS.


text:
Massive increase in data usage with no change in behaviour
The primary purpose of data connectivity on my phone is checking email. I don't surf the Web when I'm "bored" (I occasionally look up something that I absolutely have to know that can't wait until I get home or to the office), and I don't watch videos. I also have the following configured:

Data Saver: on.
Wi-fi always connected at home, work and other places where I am routinely located.
Images turned off in my browser of choice.
Background data turned off for almost everything except my email app.
"Wi-fi only" mode in Maps.
Apps and updates only downloaded over wi-fi.
Back-ups off.
And possibly more, but the point is I have turned off everything that I can find.

For the past two years I was using Ting in the US and Lollipop (5.1), and was routinely using less than 100 MB of data a month. One month I used 112 MB -- one month! -- and I was shocked.
A couple of months ago I opened an account with Freedom Mobile (formerly Wind Mobile) in Canada. (I actually live in Canada, but was permanently roaming on an American network for philosophical reasons and because it was actually cheaper.) In switching to the ironically named Freedom Mobile (I have unrelated issues with their service), I also got a new phone running Oreo (8.0.0).
As I was compiling data for this email I realised that my problems didn't actually start with Freedom Mobile, as I have had two different phones with them in the almost three months I have been with them. For the first two months I had a Motorola E5 Play, bought unlocked from Best Buy. I then gave that phone to my wife and bought a Motorola G6 Play from Freedom. She now uses the E5, and as far as data is concerned only very occasionally uses the Web and no email at all, so she is not a factor in my tale of woe.
But since switching to the G6 my data usage has absolutely gone through the roof, by more than ten times. It may not be much data as far as some power users are concerned, but for me it's massive, and I want to get back below the 250 MB per month included in my plan. This is what my usage has been this year:

January: 56 MB (Ting)
February: 42 MB (Freedom, E5)
March: 35 MB (Freedom, E5)
April: 659 MB (Freedom, G6)
May (so far): 433 MB (Freedom, G6)

(The month is the date of my bill for the previous month.)
When I leave a location with wi-fi, and look at my data usage, I can use 20 MB within five minutes -- that's five literal minutes -- and I will have downloaded absolutely nothing!
I have checked the data usage of all my apps and it is my email app that is chewing through mobile data. It's the same app (K-9) I have used for over two years on all three of the phones I have noted above, and it blasts through data on my latest phone even when it is not actually downloading anything. I know that an email check with no new email still uses a few bytes, but not dozens of MEGAbytes! Even if I'm checking every few minutes, 288 checks a day (every five minutes) is not going to use hundreds of megabytes.
Given everything I have noted above, does anyone have any idea why a Motorola G6 Play phone would be using massive amounts of data/bandwidth? It doesn't seem reasonable to assume it's the email app, considering it's the same version of the same app I've used on previous phones where this behaviour was not evident, but I also can't believe that the hardware would make a difference. However, on the face of it that is the only thing that has changed.

How large is the difference between the data usage shown on your phone and the one on your bill?

@Robert Thanks for your question. There is no appreciable difference. Just the small differences that one would expect.


text:
adb shell get text from clipboard

After I copy text in emulator I want to get this text in adb shell
I found a reference:
// API < 11
static final int TRANSACTION_getClipboardText 1
static final int TRANSACTION_hasClipboardText 3
static final int TRANSACTION_setClipboardText 2
// API >= 11
static final int TRANSACTION_setPrimaryClip = 1
static final int TRANSACTION_getPrimaryClip = 2
static final int TRANSACTION_getPrimaryClipDescription = 3
static final int TRANSACTION_hasPrimaryClip = 4
static final int TRANSACTION_addPrimaryClipChangedListener = 5
static final int TRANSACTION_removePrimaryClipChangedListener = 6
static final int TRANSACTION_hasClipboardText = 7

And I did service call clipboard 1
root@iX101T1:/ # service call clipboard 1
service call clipboard 1
Result: Parcel(
  0x00000000: fffffffc 00000069 00740041 00650074 '....i...A.t.t.e.'
  0x00000010: 0070006d 00200074 006f0074 00690020 'm.p.t. .t.o. .i.'
  0x00000020: 0076006e 006b006f 00200065 00690076 'n.v.o.k.e. .v.i.'
  0x00000030: 00740072 00610075 0020006c 0065006d 'r.t.u.a.l. .m.e.'
  0x00000040: 00680074 0064006f 00270020 006e0069 't.h.o.d. .'.i.n.'
  0x00000050: 00200074 006e0061 00720064 0069006f 't. .a.n.d.r.o.i.'
  0x00000060: 002e0064 006f0063 0074006e 006e0065 'd...c.o.n.t.e.n.'
  0x00000070: 002e0074 006c0043 00700069 00610044 't...C.l.i.p.D.a.'
  0x00000080: 00610074 0067002e 00740065 00740049 't.a...g.e.t.I.t.'
  0x00000090: 006d0065 006f0043 006e0075 00280074 'e.m.C.o.u.n.t.(.'
  0x000000a0: 00270029 006f0020 0020006e 00200061 ').'. .o.n. .a. .'
  0x000000b0: 0075006e 006c006c 006f0020 006a0062 'n.u.l.l. .o.b.j.'
  0x000000c0: 00630065 00200074 00650072 00650066 'e.c.t. .r.e.f.e.'
  0x000000d0: 00650072 0063006e 00000065          'r.e.n.c.e...    ')

I tried other indexes from 1-7 the clipboard not changed. I read this question from StackIverflow
but installing additional .apk is not a solution for me

This answer from StackOverflow should be hepful. It requires to use of the input command and keyevent.
adb shell input keyevent 279

For older Android versions until 9, you can read the clipboard with the command line using an app like https://github.com/PRosenb/AdbClipboard.
You don't need to use the Python script, you can directly install Adb Clipboard from Google Play at https://play.google.com/store/apps/details?id=ch.pete.adbclipboard.
Then you can use this command to read the clipboard with or without adb (command taken from the Python script):
am broadcast -n ch.pete.adbclipboard/.ReadReceiver

Adb Clipboard app is not available in Play Store for Android 13 devices.


text:
How to make wifi list show duplicate SSID when different mac address
I have a home modem and a repeater, both have the same SSID. at some cases  want to connect to one and not the other, but android automatically chooses the one with the highest signal strength which is not what I always want.
Is there anyway to make android display different wifi networks based on mac address instead of just SSID so that I can choose to which one I connect ?
I use android 7.1.1. and my phone is rooted.
Thanks.

Have you tried using 3rd-party apps which priotise wi-fi networks for example: WiFi Prioritizer


text:
How to turn off offering to turn on Google Assistant?
I know how to turn off google assistant. But many times when I make some move at the bottom of phone screen it show me the dialog to turn on Google Assistant. I do not want to turn in Google assistant. Never ever. I do not want to see that screen asking me if I want to turn on Google assistant on my phone. Is there a way how to stop that?

What worked for me on Android Version 12 was to set the default digital assistant app from Google to None.
This is under Settings >> Apps >> Choose default apps >> Digital Assistant App >> Device Assistant app >> Default digital assistant app
Set to None and the prompts should stop coming up.

Yes! Thank you. It is non obvious you can change the choice "Google".

In Settings, select Apps and notifications. Click Google Assistant, then click Disable.

I have it disabled already. I am sorry but I think you do not understand my problem.

See image in edit please

@boucekv See edit.

Go to Settings >> Apps >> Settings gear or 3 dotted menu on top right >> Default Apps >> Assist and Voice Input or Device Assistance app>> Assist App or Device assistance app >> Choose Assist App (none)
source:
https://support.google.com/assistant/thread/273692/stop-google-assistant-from-asking-to-be-turned-on?hl=en

CHOOSING ASSIST APP TO NONE doesn't help either.


text:
Lg Aristo 2 Fastboot flash recovery - FAILED (remote: 'unknown command')
I've recently been trying to flash twrp on my Lg Aristo 2, when I ran the code to OEM Unlock a device it came out with the same "FAILED (remote: 'unknown command')".
I started my phone back up and it came to a set up screen, I set up my phone and it said it was OEM Unlocked. When I try to flash a custom recovery, or run any command with fastboot at the beginning  i get "FAILED (remote: 'unknown command')" and it doesn't work. Can someone please help?

adb devices and fastboot devices does show the phone serialno?

Seems fastboot is broken or disabled since Oreo.
First you have to downgrade ROM to Nougat. You can flash *.KDZ files with LGUP or LG Flash Tool.

Then it should work as usual:

Make sure you have enabled
System Settings > About Phone > Developer Options > Enable OEM unlock,
and
System Settings > About Phone > Developer Options > Enable USB debugging
check adb is working
adb devices

check fastboot is working
adb reboot bootloader
fastboot devices

WARNING: Factory reset, all data lost!

unlock the bootloader (one of these should work)
fastboot oem unlock
fastboot flashing unlock

if unlocking was successful, you can test recovery without flashing
fastboot boot <path>/recovery.img

then reboot into bootloader and flash recovery
adb reboot bootloader
fastboot flash recovery <path>/recovery.img

if you fail on one of these steps, make sure you have installed latest drivers and platform tools https://dl.google.com/android/repository/platform-tools-latest-windows.zip

fastboot flashing unlock comes out to:                                                                              (bootloader)                                                          Device already : unlocked!
OKAY [  0.003s]
Finished. Total time: 0.008s                                                                                fastboot boot recovery.img comes out to:            Sending 'boot.img' (16954 KB)                      OKAY [  0.555s]
Booting                                            FAILED (remote: 'unknown command')
fastboot: error: Command failed

check path is quoted correctly for example fastboot flash recovery "C:\Users\My Name\Downloads\twrp-recovery.img" edit: ok then your recovery.img might be corrupt, try a different one

Did that got same error, also downloaded the recovery.img again

Downgrade your firmware to the LMX210MA https://forum.xda-developers.com/showthread.php?t=3805141

Well I need TWRP to do that and the comment to flash TWRP fails, I also couldn’t find any app to root, and I cant use TWRP to root

use LGUP see page 2 XDA scroll down post #20

So, after an eternity of research, I was able to get LGUP to recognize my device. I flashed a stock KDZ file, and booted it into fast boot mode, I got the same FAILED (remote: ‘unknown comamnd’). I just need a KDZ file with the correct partition layout, would you be able to tell me which firmware update/downgrade will let me do this from the link you provided?

tecknight recommend 10K or earlier
http://lg-firmwares.com/lg-lmx210ma-firmwares/#tab=firmwares
X210MA10c_00_MPCS_US_OP_1207.kdz is oldest available on this site


text:
Single SMS won't delete from Messaging app
I have a phone (HUAWEI Y6 2018) that recently received a text message claiming to be from a postal company (AusPost). However, the subject for the message simply says '(No subject)', and when I try to open the message, it just won't open. With this in mind, I tried to delete the text, only to see it not delete and stay on the page. I've tried a few things to delete this text, such as:

Clearing both data and the cache for the messaging app
Trying to locate the folder where the messages are stored (I can't seem to find it)
Downloading apps such as Handcent and Backup & Restore to use their delete SMS features
Installing the latest system update and trying again
Adding a contact called "AusPost" and deleting the message

All to no prevail... the SMS just seems to be stuck in the inbox.
So what do I do now? I don't want to root my phone and I want this message gone.

is it really inbox or do you mean notification bar

@alecxs it is most definitely in the inbox

"...the subject for the message simply says '(No subject)'" - This sounds more like an MMS, as opposed to an SMS?

Well, it could be an MMS, but how would I be able to tell?

What turned out being the solution was to just factory reset the phone and ensure that everything was backed up - - thankfully, there wasn't too much that was deleted.

You can install MyPhoneExplorer for PC and remote administrate your messages

Will definitely look into this in the morning.

Tried it out just now but the SMS didn't show up on the messages page, despite the fact it is still in the inbox


text:
Power button no longer turns screen on/off - apps don't fix this properly, cannot turn off phone to root it, help!
I dropped my phone into water the other day and the power button has stopped working. What is odd though is that I can force restart the phone by holding power+volume down, it's just the power button on its own that doesn't seem to work.
I have tried various apps to remap the function to the power button but they are insufficient in one way or another (usually that it just stops working after a couple minutes of inactivity).
I have seen methods to remap the power button to the volume button directly, but this requires root access. Of course, this is a problem because I need to power down the phone completely (which I could do with the Tasker app), but I'm not sure if I will be able to turn it back on again after that.
Is there then a way to force the phone to boot into Download mode with the Tasker app? I can see that I can reboot with the types "Normal", "Recovery", "Bootloader" and "Shutdown". Is the "Bootloader" type just another name for Download mode?
Forgot to mention to phone - it's a Samsung A6

Most likely not. The bootloader should typically issue the standard reboot bootloader command. However, in case of Samsung, the command needs to specify the reboot download instead. An XDA thread mentions that the following adb command brings to the download mode - adb reboot download. Maybe you can use that instead?
As per this answer, Samsung phones do not support Fastboot mode. Most of the times you'd be living off ODIN, but can also use heimdall. Don't forget to follow its commands cheatsheet as it does seem to not support the standard fastboot commands.
Also, I just wanted to remind you that if you are able to reboot the device with the Power + Volume Down combo, the same should also work when you shut down the phone but then fail to turn it back on.


text:
Flashing andriod roms and kernals
If you have rooted an android phone and flashed a different kernel can you just flash over another rom or will it brick your phone.
Is it necessary to go back to a google factory rom before you flash another rom?

If you have a ROM you are simply updating with a newer version of that ROM, you will need to re-install the custom kernel though. It's usually not recommended to flash one ROM over another different one without wiping. I have not had any experience with my phones being bricked; however, it can cause your ROM & the apps/settings within your new ROM to crash or not act as intended. Dirty flashing is usually only done with updates from the same custom ROM.
best practice is usually to do a clean install, which would mean wiping data, cache, and system data. This would mean losing all of your personal data, and may also include internal memory depending on device. I would go to your devices' dedicated forum for more details on properly wiping and installing these things, though.
To answer your other question, you do not need to install a Stock ROM each time before flashing a new custom ROM.


text:
Error when using DirtyCow
I get an error when launching an exploit CVE-2016-5195. The work of the exploit is completed, without getting root rights. I checked my phone for this vulnerability with make test, as a result I received that the phone is affected by this vulnerability.

I will be grateful for the help.

Did you use this ADB Exploit specifically for Android ?
$ make root
ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./Android.mk APP_PLATFORM=android-16
make[1]: Entering directory '/home/user/dev/git/exploits/CVE-2016-5195'
[arm64-v8a] Install        : dirtycow => libs/arm64-v8a/dirtycow
[arm64-v8a] Install        : run-as => libs/arm64-v8a/run-as
[x86_64] Install        : dirtycow => libs/x86_64/dirtycow
[x86_64] Install        : run-as => libs/x86_64/run-as
[mips64] Install        : dirtycow => libs/mips64/dirtycow
[mips64] Install        : run-as => libs/mips64/run-as
[armeabi-v7a] Install        : dirtycow => libs/armeabi-v7a/dirtycow
[armeabi-v7a] Install        : run-as => libs/armeabi-v7a/run-as
[armeabi] Install        : dirtycow => libs/armeabi/dirtycow
[armeabi] Install        : run-as => libs/armeabi/run-as
[x86] Install        : dirtycow => libs/x86/dirtycow
[x86] Install        : run-as => libs/x86/run-as
[mips] Install        : dirtycow => libs/mips/dirtycow
[mips] Install        : run-as => libs/mips/run-as
make[1]: Leaving directory '/home/user/dev/git/exploits/CVE-2016-5195'
adb push libs/armeabi-v7a/dirtycow /data/local/tmp/dcow
[100%] /data/local/tmp/dcow
adb push libs/armeabi-v7a/run-as /data/local/tmp/run-as
[100%] /data/local/tmp/run-as
adb shell '/data/local/tmp/dcow /data/local/tmp/run-as /system/bin/run-as'
dcow /data/local/tmp/run-as /system/bin/run-as
warning: new file size (5544) and destination file size (17944) differ

[*] size 5544
[*] mmap 0xb536b000
[*] currently 0xb536b000=464c457f
[*] madvise = 0xb536b000 5544
[*] madvise = 0 0
[*] /proc/self/mem 5544 1
[*] exploited 0xb536b000=464c457f
adb shell /system/bin/run-as
uid /system/bin/run-as 2000
uid 0
0 u:r:runas:s0
context 0 u:r:shell:s0
/system/bin/sh: can't find tty fd: No such device or address
/system/bin/sh: warning: won't have full job control
shamu:/ # id
uid=0(root) gid=0(root) groups=0(root),1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats),3009(readproc) context=u:r:shell:s0
shamu:/ #

Because it Only Gains Root Access,...
You need to install a Root Access Manager yourself...
After getting UID = 0 ( Root Access )
Push SU Binary & Super User Application to the device..

This repository demonstrates the vulnerability on vulnerable Android devices attached via ADB. It does not disable SELinux (see https://github.com/timwr/CVE-2016-5195/issues/9) or install superuser on the device.

You need to disable SE Linux Also...


text:
Disable automatic system updates in Android One?
Is there some hack which I can use to disable automatic check and installation of system updates on an Android One device? I have my device rooted and the automatic installation attempt breaks my Magisk > Restore images functionality as the partitions are locked for editing when the system_updater puts it to use. And then does not leave them free until reboot.
The developer options do have a setting regarding "Automatic System Updates". I did diable it, but all it stops is the Automatic application of the update when I reboot. That is, it does check for the updates, it does the verification and installation and then asks me to reboot. The only difference the toggle makes is that the device does not automatically change to the new slot when I reboot normally.
I am looking for something which can help me in postponing the check for updates until I manually tap on it. If that is too much, at least the update should not download and install without my permission. Google seems to be copying the annoying Windows 10 kind of update process for Android One now.

Have you tried of using a firewall app? I don't know which UID/app would be updating the phone, so I suggest using the firewall in whitelist mode and whitelisting absolutely only those items which you want to be connected to internet. May be this can atleast filter out the UID, after which you could try uninstalling or disabling the component. All of this is rather laborious though.

@Firelord Android One, hence updates are managed by Google Play Services app. I do not think I can keep it blocked via Firewall for long enough :( Plus my Firewall app will probably just get killed by some sorta battery saver :P


text:
With Google's Family Link, how to grant unlimited access to select apps?
I just have set up Google Family Link parental control. It very nice and seems to work well for the most part.
However, I want to allow some apps (e.g. Wikipedia) without screen time restriction. I have found ways to give app permissions selectively, but not usage restrictions selectively.
How to exclude some select apps from the screen time limit?
Additionally, is there a way to exclude/allow select apps from the device lock? (E.g. I would like to allow to play music even at bedtime, but nothing else)

Have you checked the following link? https://support.google.com/families/answer/7101025?hl=en

@KennethM Yes I have, among other explainers, mostly from google themselves. It's quite clearly written but does not say anything about individual app usage. The usage restrictions seem to apply regardless of what app was used, which I am asking specifically about here.

Your first request is now possible.  Set the app(s) to "Always allow".  (Source.)
Your second request is still impossible.  After bedtime, "Always allowed" apps can no longer be used.  (Source.)  If necessary, consider giving your child an old MP3 or CD player which can play music.  Or, you could simply allow your child to fall asleep without music.

Since you mentioned Wikipedia:
Wikipedia is not censored.  It includes some graphic material relating to sex, and other graphic material relating to violence.  This material includes text, photos, and videos.  Do you really want your child to be able to access this material in the middle of the night?
Please consider blocking Wikipedia on your kid's phone completely.  The kid can still use Wikipedia on a computer in your living room, or in the school library; these are probably safer places to use Wikipedia.

Thanks for the update about "always allow". I consider Wikipedia one of the more curated pages out there, so no, I do not intend to block it at all.


text:
Odin Flash error: SW REV CHECK FAIL : [lk]Fused 2 > Binary 1
I've been trying to flash stock ROM on my Samsung J7 Max. Briefly, these are the steps I followed :

Enable Developer Options
Disable OEM lock
Reboot phone and open into Download Mode (Power+Home+Down)
Open Odin 3.12 on PC (with latest samsung drivers installed)
Connect phone via original data cable
Load the four *.tar.md5 files into respective slots (BL,AP,CP,CSC taken from here)
Until now the message at top in Download Mode is:
    ODIN MODE (HIGH SPEED)
    PRODUCT NAME: SM-G615F
    CURRENT BINARY: Custom
    SYSTEM STATUS: OFFICIAL
    FRP LOCK: OFF
    OEM LOCK: OFF
    WARRANTY VOID: 0x1 (0x30d)
    MTK SECURE BOOT: ENABLE
    AP SWREV: B2 K0 S0
    SECURE DOWNLOAD: ENABLE

Disable Auto-reboot and Click Start. The process runs for about two minutes and then following two errors occur-
On the phone: this line is printed-
    SW REV CHECK FAIL : [lk]Fused 2 > Binary 1

On Odin: Here's the complete log:
<ID:0/004> Removed!!
<ID:0/004> Added!!
<ID:0/004> Odin engine v(ID:3.1205)..
<ID:0/004> File analysis..
<ID:0/004> SetupConnection..
<ID:0/004> Initialzation..
<ID:0/004> Get PIT for mapping..
<ID:0/004> Firmware update start..
<ID:0/004> SingleDownload.
<ID:0/004> preloader.img
<ID:0/004> lk.bin
<ID:0/004> trustzone.bin
<ID:0/004> param.bin
<ID:0/004> efuse.img
<ID:0/004> RQT_CLOSE !!
<ID:0/004>
<ID:0/004> Complete(Write) operation failed.
<OSM> All threads completed. (succeed 0 / failed 1)

Note that this same error happens if I try to upload a random tar file. So it seems an invalid BL file is causing the issue, but I've re-downloaded and verified the md5 hash of the BL file.
Also, I cannot open the recovery mode. Even when FRP Lock is off, the phone is showing a screen similar like this:

The message at the top on this screen says Rollback version is not matched (md1rom). Can anyone explain what this error is?
Before flashing, my phone had Android 8.1 and the firmware was also last updated on 21 Mar 2019 (Android version:  8.1, code: G615FXXU2BSC1).
Edit :
I've also tried to upload individual tar.md5 files to device and found that files other than BL file upload successfully and the above error is generated when I try just the BL file.

any update?....

yes. The update is I changed my phone xD


text:
Android massive background data usage 38 GB month
I have Mediatek Smartphone with stock Android 7.0 and suddenly it increases data usage. Tracked it down to /data/data/com.android.email/cache which is occupying 1.6 GB. I have cleared cache many times which maybe explains the massive data usage 38 GB this month. The question is why it happens just now and not the months before?
How can i prevent increasing cache?

Edit: I use the stock email app for about 1 year without problems. I have 2x IMAP accounts connected. Recently I updated security patches to latest available Dec 2018 _V22. But after firmware update the battery drain increases too fast, so I decided to revert back to May 2018 CUBOT_KING_KONG_7081C_V16_20180517 (both still 7.0, no updates 7.1.2 available).
The phone is rooted so I can see that it downloades many files body1009174325.tmp in cache folder each with size 44,76 KB. I have inspected this file and it turns out it is a corrupt PDF which is downloaded a million times again and again. I found the responsible email and the App says attachment download has failed. After I pressed "save" the attachment was successful downloaded. After I cleared cache, the tmp files are gone. Now it starts repeating with next message (different tmp files, all the same). This time it is not a PDF and its hard to find the related email.
How can I avoid this behavior?

I guess that is some Chinese smartphone with good load of bloat on it, so disable that app and use different one from store. Do you even use that app?

Do you use the E-Mail app? What is your device? How old are the installed security patches?  May be there is malware on your system that runs code inside the E-Mail app for e.g. advertisement video fraud.

It is Cubot phone with known stock spy malware com.adups.fota + com.adups.fota.sysoper. i have recently re-enabled (to update security patches) but its disabled now and before

If you need to access email from this phone, and are open for an alternative, head over to our sister site Software Recommendations, describe your requirements, and install the outcoming email app (e.g. k-9 mail). Then disable the one that shipped with the device, and be done with. I'm using k-9 for almost 10 years now, never had such an issue with any of the 3 configured accounts.

fyi: solved by - clear data - from settings - email app

Please consider accepting the answer if it solved your problem.

@alecxs Ok, thanks!

Netguard can be an amazing choice in this situation. You can block apps from taking up unnecessary data, and can also allow apps of your choice to use data. I would most probably uninstall that email app since it's not secure. Give Netguard a try. (:

authors: Једноруки Крстивоје


text:
How to restore Google Accounts from a local backup in MIUI 10?
Lately, I reset my Redmi Note 6 Pro and even backed up everything.
Now, my question is that if I restore the local backup file will my multiple G-Mail or Google accounts get restored too?

No, it won't restore automatically. You have to manually sign in all the accounts even after back


text:
Is there a way to create a history of TCP/UDP sockets opened in android?
Is there a log with this info? I know proc shows the ones opened at the moment but I need to see the ones that are already close

I don't think there is a log. Go for packet sniffing instead to create history. What information do you need e.g. port number, uid?

i want to know which socket is being used by a certain port, i want the inode of the network socket of a given port. tcpdump did not provide me this information. Maybe /proc/net/nf_confftrack may do it tho. My problem is that the socket is not displayed in /proc/net/udp but it is displayed in netstat plus as a udp connection in port 5353

thanks for the ss bin btw, unfortunaly there really seems to be no socket for these connections, since confftrack do display info about the connections and sockstats shows 0 sockets inuse. Confftrack displays a weird connection between a google ip with an "unavaliable" one: "100.93.255.67"

I wanted the sockets because with them I could write a code to search for the processes and kill them automatically

I'm not a programmer, so can't get into much details, but in my case results from ss, netstat and /proc/net/{tcp*,udp*} for ipv4, ipv6, listening and connected sockets, all are same as expected.

I actually found the problem, made the code i mentioned, still the payload is adapting

I did the final adaptations on my code. Closed all the doors the payload used to connect to other servers before it had a chance to readapt. From now I'll search for the payload itself and will stop making these confusing topics since i have more time and have my phone under control. Again, thank you very much for every comment/answer you gave me


text:
can't access recovery mode after flashing clockworkmod
I flashed clockworkmod through adb and fastboot but after fastboot reboot my phone goes into boot stuck in the logo. after that I turned it off and go to bootloader recovery mode but after selecting recovery it just starts like normal and stops at logo
-I tried resetting my phone through fastboot and nothing happened.
-Tried flashing the recovery again still cannot access recovery mode
Note** fastboot is accessible when connected to pc

Please Help. I am really new to this and this is the first time it happened

Are you sure you flashed the right Clockworkmod image for your device?

yes i followed the rooting guide for my phone and it is exactly the mode and brand from the guide. right after flashing clockworkmod. it stucked on the logo. and when try to get to recovery mode via bootloader it just starts normally. Do I need to flash the whole stock rom?

What phone model do you have? What clockworkmod file did you flash? How?

its a very uncommon phone model firefly aurii secret lite.. tried to root via fastboot and succesfully unlocked bootloader.. after that i tried to flash cwm via fastboot through this link http://baabebiboobu.blogspot.com/2017/03/having-root-access-firefly-mobile-aurii.html?m=1 and boom. its stuck on the logo and wont boot.

Note: Rooting and unlocking bootloader are two different things. Not sure what's best. Did you try commenting on the website you mentioned?

Sorry.. I have flashed the stock rom and its back. it seems the recovery I flashed is really incompatible. Thanks.


text:
System UI won't start after tweaking Quick Setting with System Ui Tuner
I did a stupid mistake this afternoon. I downloaded the System UI Tuner app and tweak the status bar to only show ONE quick setting tile upon first swipe down (obviously wont work but idiot me still think that it is a good idea to give it a try anyway). Upon pulling the slider to 1, the System UI crash immediately and only show black screen and everything stopped working. I am desperate now and really need kind people here to help me troubleshoot this to reset and get System UI working again. I will list down some background and information below.
Device:
Asus Zenfone Max Pro M2
Just updated to Android Pie today
What is working now:
- Power Menu
- Safe Mode
- Google Assistant
- Stock Recovery
- Fastboot
What is not working (Can't find a way to make it work):
- System UI
- ADB (USB debugging was turned on but I cannot authorize my phone without System UI)
- Unlocking the screen
- Boot loader not unlocked
- Internet (Data was not on before crash and WiFi require me to sign in)
What have I tried:
- Turn it off and on
- Boot into Safe Mode
- Wipe Cache in Recovery
- Flashing the same firmware again with recovery
Kindly request if you need more information.
Of course, the last resort is to do a factor system reset but I really wish I can keep my precious stuff in my phone... and also I've set up my phone to act as 2 factor authentication for my Google Accounts which I might be a problem if I reset my phone.
Thanks In Advance!

Given that bootloader is locked (so no access to a custom recovery) and USB Debugging not working, I see no way to solve this without factory reset. As for 2 factor authentication, if you stored recovery/backup codes as an alternative way to authenticate you don't need the phone at all. See https://support.google.com/accounts/answer/185834?hl=en


text:
Change .pdf-file-icon under Total Commander
I have recently installed the Dropbox app and it overwrote the standard pdf-file-icon my file manager was displaying. i don't like the dropbox-pdf-icon and would like to have the previous one back.

Is this possible w/o uninstalling the Dropbox app?

p.s. I have a rooted device

Total Commander (TC will show the first returned icon for that type. It seems.to be impossible to reorder them by hand. TC calls packageManager.queryIntentActivities to find out which apps are associated with a certain file type. If none of them is marked as a default, TC uses the first one in the mentioned list. But there is no clue (yet) in which order these are returned by Android.
You may also choose your own:

Go to: Main menu - Configure - Internal associations
Add new extension: .pdf
Choose an icon via button in the lower left


text:
MicroSD card file system keeps getting corrupt for no obvious reason
Since when I got my current phone (May 2018) I had to reformat my MicroSD card about 3-4 times, probably because of file system corruption. (It's a SanDisk 8GB one, for those who are wondering. And the previous owner had installed it on 2 devices, the first was a tablet and the second was my current phone, no problems with them. Guess I was cursed!...)
One day I turned on my phone and noticed that several apps that had been moved to the SD card were no longer functioning (toast notification saying "The app is not installed"). The other three times it just happened out of nowhere. Even today (at the time of writing), I just moved an app from the SD card back to the phone's internal storage, then the Settings app crashed. I think this also happened because of corruption.
When this happens, I cannot move/copy/edit files to the SD card and a small percentage of my files get corrupt. (Thank God this time only some useless pictures got corrupted!)
Can anyone tell me why my SD card's file system is getting corrupt out of nowhere almost constantly?

probably physical problem. Had same experience with different MicroSD cards. these cards work well on other devices, maybe the slot is too loose

@alecxs Yes, but my issue is that the same card was in the same phone before I got it and there was no issue. And on top of that, I haven't dropped the phone from any absurd height, the max is 50cm or lower I believe.

I have had this issue with some devices and cards, changing the card to a different, quality branded one can fix it sometimes. No matter the device, I have never had a Samsung EVO sd card fail, ever. I would also make sure you enable automatic backup of critical things, a good choice for photos is Google Photo app, it can automatically backup your photos to your Google account.

@acejavelin Thanks for checking out. As for the backup, there is no issue with copying files from the SD card to the PC, so I am covered. The issue is if I try to copy/move/edit any files to/on the SD card.

Do you tend to wear the phone in a [back] pocket? Is that some correlation to the times it becomes corrupted? Phones do not like to be flexed in pockets, since it can loosen relevant connections.

@wbogacz No, I never ever put any device on the back pocket.

Almost 2 years later (because I forgot that this post even exists, sorry).
A week after posting this question here, I ran some tests using h2testw. The microSD card turned out to be faulty. I got a new phone 2 months later and a new Kingston microSD card to go with it. Haven't had a problem since.


text:
How to enable usb debugging on bootloop phone(Lenovo tab yoga 8)?
So... I am having a a hard time to pull my file from internal memory on my bootlooped Lenovo tab Yoga 8. I only know that to pull files from adb I need to enable usb debugging. But, because it is stuck in the boot logo I can't go to setting to enable this. Is there anyway to enable usb debug?
And I also doesn't have any of ClockWordMod nor TWRP Recovery, I only have acces to default recovery mode and fastboot.
Right, I also has tried to install driver from device manager on Windows 10 but I can't even see device which corespond to Lenovo Yoga tab 8 or anything like that, which is also needed to do to pull files from adb, or so if I'm not mistaken.
please help!


text:
Share known WiFi networks between own devices
It happens every now and then that I connect to a WiFi network for the first time on my phone, but not on my tablet. The second time I visit the place I might not have the WiFi access key at hand.
Is there a way to "share" the known network information between own Android devices?

The easiest way, is using a QR code scanner, to scan the generated code from the wi-fi network. (Note with MIUI the code s generated automatically, otherwise you may need to generate the QR code manually before scanning it with the secondary android device

there is way, but you must create your own app for private use. This one is not what you looking for it is for public sharing only. But maybe you find the right one in suggestions. Let us know https://play.google.com/store/apps/details?id=com.ljapps.wifix.password

Is there a way to backup and restore through Google account?

If you want to back up and restore though Google (Drive) then perhaps you  may need to look at some third-party applications such as
WiFi Password Manager or Wi-Fi password manager (whichever you prefer as there are more or less similar)
Basically the following features are present:

Manage your wifi passwords (add, edit, delete)
Backup your passwords to Google Drive or to local storage
Wifi hotspots list sorted by wifi signal strength
Recover wi-fi passwords from system settings (ROOT)
Connect to WiFi hotspot directly from the appplication
Copy password to clipboard
Share wi-fi settings

Pretty straight forward to use simply add the target wi-fi network, then back it up on local or google drive, follow the reverse proceedure to restore:


text:
Xiaomi Redmi Note 5 cannot connect to LG FH2 speaker since there's a Bluetooth profile incompatibility
I have found that my LG FH2 speaker uses the A2DP profile protocol:
http://gscs-b2c.lge.com/downloadFile?fileId=gQHBfK7s0ZXFVKL7CatPeA
...whereas my Android phone is unable to get connected to it, since it has a different profile AVRCP:
https://source.android.com/devices/bluetooth/services
Please note I am not trying to make my phone an audio sink, only audio gateway is totally fine for me.
¿How can I install, push, hack, or sideload via ADB such an A2DP Bluetooth profile so I can connect my mobile to my speaker?
Edit: it's a Redmi Note 5 global version (model M1803E7SH Latin America)

The Bluetooth profiles are an integral part of the Android system installed on your device (like a driver). Therefore usually you can't "install" or "update" the Bluetooth profiles.
Therefore you have only two possibilities:

Buy a different speaker that supports a Bluetooth profile your phone supports.
Search the Internet if there is a different ROM available for your phone that has A2DP support.


text:
An app put made my Status Bar auto-hide and transparent. How to fix? (Nova, System UI)
What I've tried: uninstall the app (Black Pocket) and restart.
Also tried: Google. All search results tell me how to hide the status bar, which is not what I want.
Obviously like most users I want to see all the battery and connectivity icons when I press the power button, then the Home button.
Using Nova and System UI on Android 8.1.0 on a Nexus 6P - as if this would have anything to do with it, when I saw the status bar go transparent and auto-hide upon install of the app...

Try the following:

Open Nova Settings.
Click on Look & feel.
Enable Show notification bar.


text:
How do I upload a 3D Facebook photo from Android?
iOS users can use portrait mode to upload 3D Facebook photos.
This uses a depth map + 2D photo to work.
PC users can do it by naming the files *.jpg & *_depth.jpg and uploading them as a a pair.
Google Pixel phones (and others with ports, see https://www.celsoazevedo.com/files/android/google-camera/ ) can autogenerate a depth map with the Lens Blur camera mode, which can be tested on http://depthy.me
HTC Evo 3D phones have stereo Side by Side pair, which can be converted to a depth map with Stereo Photo Maker on Windows
How can one upload a 3D photo to Facebook from Android?

Google recommends to place depth map in XMP data which then can be embedded into the JPEG image. However I don't know which apps and/or online services support such images.

Take Lens Blur photo in Google camera (ports work)
Upload to depthy.me just to split depth map (optionally edit it)
Use file manager to rename files to *.jpg and *_depth.jpg
Use Firefox Request Desktop Site to load main Facebook new feed page
Upload them one at a time (both together crashes)
Post and view in main Facebook app

https://youtu.be/DOb-CiURqJo


text:
GS4 - Stuck in a bootloop on stock ROM
SGH-I337 I got recently is stuck in a bootloop. Itll post and then attempt booting and stay on the screen forever. As this phone is completely stock and never touched so usb debugging is not enabled. Factory resetting does nothing, the phone will not wipe the cache (it attempts then errors out and restarts itself). Ive tried flashing TWRP via odin but the bootloader is locked. Trying to use ADB logcat does not seem to work. What route should I take from here?

Run adb logcat during boot, record the output and post it here / try to find the cause of the boot loop.


text:
Why do I have Termux and Termux(failsafe)?
Why do I have two Termux applications, and what's the difference? This happened recently, after updating Termux I believe. I've installed Termux from F-Droid, and it mentions (failsafe) in the application name there. Cannnot see that in the Play Store.

Termux (failsafe) is shown on the app drawer since the last update. When you update Termux to the latest version, it is also shown.
From this comment from what is Termux (failsafe)?:

We have made sessions auto-closeable, see #988 for more information.
Auto-closeable sessions may put application into "denial-of-service" condition if user will mess with files like .bashrc - in such case access to files on internal storage will be completely lost. Thus we had to create a separate icon.
It's very unlikely that we will remove it. Easy access to failsafe shell is mandatory but unfortunately there no other reliable variants that will work on all Android versions.

Also based in this comment in Termux github:

This creates a limited shell using only the Android system tools.

If for whatever reason Termux is unable to start, then use Termux failsafe.

Thanks. According to this it won't be removed either, annoying. At least I have Nova Launcher to hide app icons.

Yes, for now one can only hide it or remove Termux (which is not a good solution).

It's just like the recovery mode feature for your Termux environment.
See: Termux Wiki - Recover a broken environment

Scenario
A new user just decided to change their default Termux shell to Fish instead of Bash. The easiest solution they came up with is to add these lines to .bashrc (../usr/etc/bash.bashrc)
fish
exit

It worked, but for some reason, they don't like Fish. They uninstalled/removed it and closed Termux without changing the contents of .bashrc. The next time they opened Termux, they saw this
The program fish is not installed. Install it by executing:
 pkg install fish

[Process completed (code 127) - press Enter]

Now, to fix this, they either need to edit .bashrc or install Fish again. For this, we need a shell that doesn't run .bashrc. Failsafe mode is the easiest and most helpful thing now.


text:
Will google assistant allow the same account in two different phones
I want to know will google assistant allow the same account in two different phones?
Will the messages or any other information will goes to secondary phone where the account is linked

Yes. You can use it on more smartphones at the same time. But you need to connect the other phone with your Google account. And then Google synchronizes everything. Your search history, contacts and more. Hope this helps you.
Sorry for my bad english.


text:
Default text-to-speech (TTS) engine in LineageOS 16.0?
I have recently updated my OnePlus One to LineageOS 16.0 and noticed that there does not seem to be any TTS provider included anymore. In previous versions (LineageOS 15), there used to be Pico TTS as a default.
What happened here? Is there any way to get Pico TTS back?

Pico TTS is unmaintained and dead. At least publicly. Presumably, the fixed version of it is what is now called "Googls TTS", which is no longer open source.
My suggestion, if you're looking for an open source TTS, is to use Flite TTS, which is available via F-Droid repository or from github.
https://f-droid.org/en/packages/edu.cmu.cs.speech.tts.flite/

Link is dead (404), so unfortunately this answer no longer doesn't hold true any longer. It seems to have been unpublished with this repo having the last commits >6 years ago, with the latest APK now most likely being incompatible with recent Android versions: https://github.com/happyalu/Flite-TTS-Engine-for-Android


text:
How to list all the namespaces?
Right now, to list all the settings of System namespace I can do:
platform-tools/adb shell settings list system

To list all the settings from Global namespace I can do
platform-tools/adb shell settings list global

But I want to explore all the settings from all the namespaces currently installed, and for that I need to list all the available namespaces, so how do I do I get this list?

I am only aware of system, global and secure namespaces.

@ReddyLutonadio , for example, there is a setting called 'Instant app' , which allows you to install instant apps, where does it go ? I can't find it in system or global

@Nulik If I'm not mistaken Instant apps is a part of Google play services and not built into Android. So it will not appear in settings.

@SSS , well, I am talking about the switch in the Settings to turn instant apps On or Off (https://www.androidauthority.com/use-android-instant-apps-749544/) , this is part of android installation. And I wanted to turn it on from the adb shell

Yes, that is managed by Google Play services. You will not be able to find it in settings via adb

There are only three namespaces available: system, secure and global.
The settings command prints this information if you execute it without parameter:
adb shell settings

usage:  settings [--user <USER_ID> | current] [--cm] get namespace key
        settings [--user <USER_ID> | current] [--cm] put namespace key value
        settings [--user <USER_ID> | current] [--cm] delete namespace key
        settings [--user <USER_ID> | current] [--cm] list namespace

'namespace' is one of {system, secure, global}, case-insensitive
If '--user <USER_ID> | current' is not given, the operations are performed on the system user.
If '--cm' is given, the operations are performed on the CMSettings provider.

'namespace' is one of {system, secure, global}, case-insensitive

Alternatively if you don't belive the settings help page you can see it in the AOSP source code. The settings command is implemented in the Java class com.android.commands.settings.SettingsCmd where you can see that exactly those three namespaces are accepted.


text:
Modifying etc/hosts file doesn't work for redirecting to something else
I need to do it for security testing purpose of an app. I have a rooted emulator which runs 7.1.1, It is rooted, I changed hosts file by using echo command, root file explorer, adb push and every else way I could. But it doesn't reflect in my chrome or any other browser. I looked into chrome's local DNS cache, I cleared it, still doesn't work. I added new entry like
xx.yy.zz.aa facebook.com
(one space and new line at end)
But after entering facebook.com, I don't get website of xx.yy.zz.aa instead I get genuine one. I have tried all the previous answers but it doesn't work, surprisingly what works is when I put 127.0.0.1 i.e localhost instead of any other websites in place of ip. Then it routes to localhost. I very much need to route genuine website to ip I choose for testing my security jars works or not.
Is there any way to achieve this, if not in chrome any other browser. Or is there any way to disable global DNS and use local DNS only.
Help appreciated very much.
PS : hosts file gets changed successfully. Old answers don't work anymore

Have you cleared the Chrome internal DNS cache? Enter the url chrome://net-internals/#dns into the address bar.

Yea already did that. Doesn't work. But when i enter site from hosts file say for eg here faceboom.com it's there with ip i modified in hosts. Still redirects too original facebook.

@Robert any other way?

@minigeek did you try clearing DNS resolver cache (ndc resolver clearnetdns <interface>) or restarting device? Can you please share what IP address you are trying to reach? Try pinging first from a terminal emulator instead of using a browser.

@IrfanLatif no I didn't try that. Is that command supposed to typed in adb shell. And any ip address I am talking about other than localhost. I will try pinging or traceroute with busybox. I can't restart device because after that it looses root access since it's an emulator and not an device. Also what's interface?

@IrfanLatif yes my lord! Pinging works. It gives ip from hosts file! Why doesn't it do same via browser

Can't tell for sure, but may be browser is bypassing the DNS resolving mechanism of Android'd Bionic libc. I don't use Chrome for privacy issues, so can't test. Look into all DNS cache options (I think there are more than one but can't remember exactly) in browser's hidden configurations, turn off Data Saver (proxy) etc. Or try with some other browser like Firefox (set network.dnsCacheEntries to 0 in about:config).

@IrfanLatif seems like it was network issue by organization. I tried intra Network sites in hosts as domain name and it worked in browser for some of the sites. Still not understanding what happened. It works on specific lan cables too lol.


text:
Sensitive information in the About screen
Which of the following information from the About screen (Settings -> System -> About) is considered sensitive and shouldn't be shared publicly?

IMEI
IP address
Wi-Fi MAC address
Bluetooth address
Build number

I am no security expert, but here are what I have gathered. I urges you to read the source links and visit our sister site Information Security to get more detailed information.
I have listed them from the higest to lowest risk.
IP
From Can your IP address give away your identity to hackers, stalkers and cybercrooks?:

Andrew Lee, CEO of London Trust Media, Inc./PrivateInternetAccess.com (a VPN service that protects users' privacy and identity), says linking users to their IP address is not simple, but it can be done. Many email providers, some IRC networks, extreme tracking sites, poorly configured forums and design flaws in applications such as Skype and AOL (among others) have disclosed users' identities along with their IP addresses.
He adds that email providers have been known to leak IP addresses to advertisers, market researchers, and other such agencies and some emails (like those from mailing lists) are indexed by Google. "Thus, the IP becomes searchable," Lee says. "Programs such as skypegrab.info (now inactive), which reveals users' personal data are developed every day by programmers across the globe. Extreme tracking sites link IPs to Google searches and make them public. And business websites including, but not limited to, Facebook, Twitter, Google, etc. — in addition to ad targeting companies — already have your personal info linked to your IP address in their databases. Anyone with access to those databases, including those with legitimate or illegitimate access (such as hackers), can obtain any and all of that information."

IMEI
About the IMEI, this answer states that:

Knowledge of the IMEI and/or IMSI of some user does not give extra ways to break into the communications of that user; they are not secret values.
However...
There may be a slight privacy concern about IMEI and IMSI, in that they allow to "track" user habits:

An application could generate a random unique identifier each time it is installed on a phone. However, by using the IMEI, the application can tell whether it is re-installed on a given phone; it can also be used to cross-reference the table of known installed application instances with cell phone locations obtained through passive radio listening from some base station.

MAC Address
From this answer:

Disclosing the MAC address in itself shouldn't be a problem. MAC addresses are already quite predictable, easily sniffable, and any form of authentication dependent on them is inherently weak and shouldn't be relied upon.
MAC addresses are almost always only used "internally" (between you and your immediate gateway). They really don't make it to the outside world and thus cannot be used to connect back to you, locate you, or otherwise cause you any direct harm.
The disclosure can be linked to your real identity since it might be possible to track you using data collected from WiFi networks, or it can be used to falsify a device's MAC address to gain access to some service (mostly some networks) on which your MAC address is white-listed.
Personally, I wouldn't really worry about it. However, when it's not inconvenient, I usually try to redact any irrelevant information when asking for help or sharing anything.

The Bluetooth address and build number are low on the list of risks.
Sources:
Can your IP address give away your identity to hackers, stalkers and cybercrooks?
What is the risk of leaking IMEI / IMSI numbers over a network
Is it dangerous to post my MAC address publicly?