Sample Header Ad - 728x90

Android Enthusiasts

Q&A for enthusiasts and power users of the Android operating system

Latest Questions

2 votes
1 answers
3041 views
How to disable "dreams" system service?
Some Android 5.0 users often complain about some system service constantly executing, so they just want to get rid of it *at any cost* to avoid battery drain. In my scenario, it's `DreamManagerService` which is unimportant right now. Since this is a system service (`service list | grep -i dream`), I...
Some Android 5.0 users often complain about some system service constantly executing, so they just want to get rid of it *at any cost* to avoid battery drain. In my scenario, it's DreamManagerService which is unimportant right now. Since this is a system service (service list | grep -i dream), I can't find it in the process list (ps -x | grep -i dream), and interestingly also not seeing it in init.rc or similar. This internal service is not listed anywhere in the app -- I've already investigated with the "disable service" app. So my question is more about: **how to stop a system service?** (specifically on Android) Note: it has been reported by other users that in Android 6, apparently, this service is visible and can be handled much better. --- As a short introduction (bonus FYI), the so-called DreamManagerService , namely DayDreams or simply screensaver, makes sense for OLED screens, which turn off black pixels, but some LCD IPS phones also allow this functionality (unreasonably). Obviously, I have already checked that the configuration is okay (disable screensaver ), but the service is still running and somehow preventing the CPU from sleeping, thus eating up the battery. This fact can be diagnosed by using the Wakelock Detector app or a similar one.
JCM (230 rep)
Aug 19, 2016, 10:30 AM • Last activity: Apr 16, 2025, 12:01 PM
3 votes
2 answers
7953 views
Disable service permanently
I would like to disable some services/apps on Android. I do not want some of them to run. I do not want to stop the service every time I turn off the phone for obvious reasons. I used Titanium Backup to freeze the apps. Not optimal, but I didn't have that many to do.
I would like to disable some services/apps on Android. I do not want some of them to run. I do not want to stop the service every time I turn off the phone for obvious reasons. I used Titanium Backup to freeze the apps. Not optimal, but I didn't have that many to do.
Archival (171 rep)
Mar 20, 2013, 10:12 AM • Last activity: Apr 15, 2025, 01:39 PM
1 votes
0 answers
87 views
How to "re-odex" services.jar?
On an Android 9 ROM, I deodexed the services.jar and added signature spoofing support. But after deodexing, the UI is stuttery. How do I "re-odex" the services.jar, i.e extract/compile services.odex and/or services.vdex from the current services.jar?
On an Android 9 ROM, I deodexed the services.jar and added signature spoofing support. But after deodexing, the UI is stuttery. How do I "re-odex" the services.jar, i.e extract/compile services.odex and/or services.vdex from the current services.jar?
IsHacker (334 rep)
Jan 8, 2025, 02:15 PM • Last activity: Feb 27, 2025, 03:38 PM
0 votes
0 answers
105 views
What to do with Speech Recognizer Service not available or disabled
When I tried to use speakometer , it keeps saying Speech Recognizer Service is not available or disabled in your phone. Where is the service located or where can I install it? I am on Honor 10.
When I tried to use speakometer , it keeps saying Speech Recognizer Service is not available or disabled in your phone. Where is the service located or where can I install it? I am on Honor 10.
Tim (513 rep)
Jan 9, 2025, 12:34 AM
1 votes
3 answers
16768 views
"Notification ranker" - what does it do, and what happens if I disable it?
After staying for so long on Marshmallow, today I finally made the decision to upgrade one of my secondary devices with Nougat (LineageOS 14.1 to be precise). Everything went smooth and most things stayed familiar... except this weird entry in Settings - Developer options - Running services. [![scre...
After staying for so long on Marshmallow, today I finally made the decision to upgrade one of my secondary devices with Nougat (LineageOS 14.1 to be precise). Everything went smooth and most things stayed familiar... except this weird entry in Settings - Developer options - Running services. screenshot screenshot screenshot Screenshots (click images for larger variants) I'd keep the running process list as clean as possible (habit, don't question why), but when I clicked into this "Android Services Library" and tried to stop it, it says it runs a "Notification ranker service" (second screenshot). Clicking "Settings" there takes me to an app preference screen (third screenshot; likely the same as in Settings - Apps) that contains nothing about the service or the app: Furthermore, I can't find any reference on how this "notification ranker" mechanism works, or even what it is. Note that I also flashed stock Nougat on my Nexus 6P before, and from what I remember, that one also has this service running, so it's not specific to LineageOS. Can anyone with sufficient knowledge tell me what it does, and what will happen if I disable this service via external means, e.g. will notification functions be affected?
Andy Yan (9687 rep)
Feb 17, 2017, 05:30 AM • Last activity: Jul 16, 2024, 01:57 AM
1 votes
2 answers
427 views
Primary Zygote (64-bit) only starts the System Services? And all Android apps are 32-bit?
As far as I know Zygote is started by `app_process64` and `app_process32` where 64 is for primary zygote that starts system services because of `start-system-server` flag. As we can see below in `static void main` method of `frameworks/base/core/java/com/android/internal/os/ZygoteInit.java`, it chec...
As far as I know Zygote is started by app_process64 and app_process32 where 64 is for primary zygote that starts system services because of start-system-server flag. As we can see below in static void main method of frameworks/base/core/java/com/android/internal/os/ZygoteInit.java, it checks for start-system-server flag, run the forked System Server and exits due to return; statement below it, and never running the runSelectLoop that actually goes into infinite loop listening to connections that request to launch new applications. Only app_process32 without start-system-server flag will not enter the control statement to run the forked System Server, and instead, runs the runSelectLoop. Does it mean that all system services are inherently 64-bit while all Android apps are inherently 32-bit? This code is from AOSP branch: Android-14.0.0_r21:
// redacted above code

zygoteServer = new ZygoteServer(isPrimaryZygote);

if (startSystemServer) {
    Runnable r = forkSystemServer(abiList, zygoteSocketName, zygoteServer);

    // {@code r == null} in the parent (zygote) process, and {@code r != null} in the
    // child (system_server) process.
    if (r != null) {
        r.run();
        return;
    }
}

Log.i(TAG, "Accepting command socket connections");

// The select loop returns early in the child process after a fork and
// loops forever in the zygote.
caller = zygoteServer.runSelectLoop(abiList);

// redacted code below
Wei Minn (113 rep)
Jan 21, 2024, 07:28 AM • Last activity: Mar 18, 2024, 02:21 PM
0 votes
0 answers
330 views
How to run my service on a rooted Android 10 as a root?
I have a rooted Android 10. And I've written a service which I want to run under too, in background. A service uses a microphone and location. I've not found any information of how to run a service on a rooted device **under root.** I've found some about running some commands in a service under root...
I have a rooted Android 10. And I've written a service which I want to run under too, in background. A service uses a microphone and location. I've not found any information of how to run a service on a rooted device **under root.** I've found some about running some commands in a service under root, though, but it may be only a part of what I need. How to do it? *update #1* * By "service" I mean "a class inherited from Service" * I am not aware about the differencess **in my case** in regards to an init service, a framework service, or just a normal background process. However, I need it to run forever. I guess that it'd be an init service. * It should be be restarted if it fails, or it it gets, for some reason, killed by the system. * It's written in Kotlin. Which is to say, in Java * As I've mentioned, I've rooted my device
barugaggi (1 rep)
Feb 14, 2024, 09:27 PM • Last activity: Feb 15, 2024, 01:22 PM
2 votes
0 answers
531 views
Run init rc script after package manager have loaded
I'm writing an init service which make sure a package is installed and if not, it will install the apk. The problem is, that currently I'm using a boot trigger with `on boot` but when I run pm install from there it doesn't seem to work. I've used a sleep command to wait for the package manager servi...
I'm writing an init service which make sure a package is installed and if not, it will install the apk. The problem is, that currently I'm using a boot trigger with on boot but when I run pm install from there it doesn't seem to work. I've used a sleep command to wait for the package manager service to load but I would like to find a proper solution. I've had three ideas which all seems to lead to me to a dead end: 1. wait for a prop to show up, but the package manager service doesn't create any. 2. wait for a file to show up, again no such file exist 3. set my service in a class but it seems to be relevant for the service itself and not the trigger or am I misunderstanding something? My current service definition is like so: on boot exec_background -- /vendor/bin/install.sh
yotamN (121 rep)
May 8, 2023, 01:53 PM • Last activity: May 9, 2023, 06:22 AM
1 votes
4 answers
5211 views
Unable to access Gmail, Play Store, YouTube. Basically all google apps
I'm having an issue where I can't access pretty much any of my google services on my Samsung Galaxy S7 edge (running Android 6.0.1 currently). I don't have general internet connectivity issues as my wifi and mobile connections are fine and other apps are running without issue. My google account info...
I'm having an issue where I can't access pretty much any of my google services on my Samsung Galaxy S7 edge (running Android 6.0.1 currently). I don't have general internet connectivity issues as my wifi and mobile connections are fine and other apps are running without issue. My google account information doesn't seem to be the problem as I've successfully signed into the account on my PC and even on my phone through my web browser, it's just the apps which are a problem. When I try refreshing my gmail account, I get a system notification saying login failed. When I click that message, the phone tries to take me to a screen which says "Enter account information" at the top, but the rest of the screen is blank white. I also have another system notification saying Account Action Required for my gmail account but when I click that one, it takes me to a Google Play screen where it says "Checking info" but immediately closes. When I go to Google Play manually, I get the same screen then it asks me to choose an account. My existing account is listed but when I select it, I just keep getting taken back to the same screen asking me to select an account. If I choose add account, I get an error message stating "Couldn't sign in. There was a problem connecting to accounts.google.com" I've done some fairly extensive research already online and tried several steps from various sites, none of which have worked. Listed below is what I've seen and tried: 1. Verified 2 step authorization is not active 2. Cleared Cache and Data from Google Play and Google Play Services. Tried disabling Google Play and reinstalling the factory version. 3. Checked Date and Time settings and they are set to automatic. Turn them off then back on again for good measure. 4. Downloaded ES File Explorer and tried checking the Host file. Apparently the phone is not rooted and I was unable to figure out how to enable rooting even after enabling Developer Options. 5. Downloaded and installed what I believe to be the newest APK for Google Play Services. 6. Plenty of rebooting along the way. Any help would be greatly appreciated as I'm really at a loss to the cause of this issue and I'm not finding anything more to try online. Thanks!
Stephen Birmingham (19 rep)
Feb 25, 2017, 02:44 PM • Last activity: Jan 28, 2023, 06:07 AM
0 votes
1 answers
140 views
Shut down the Android OS partially into a "recovery mode"/recovery runlevel
Android fundamentally still is a Linux system which have runlevels/targets intended for recovery purposes. Is it possible to stop the Android OS far enough so that Apps, the UI and most system services aren't running anymore but I still have adb access?
Android fundamentally still is a Linux system which have runlevels/targets intended for recovery purposes. Is it possible to stop the Android OS far enough so that Apps, the UI and most system services aren't running anymore but I still have adb access?
Atemu (609 rep)
May 27, 2022, 02:47 PM • Last activity: Jan 11, 2023, 03:47 PM
1 votes
1 answers
3113 views
How to start service 'package' with ADB
Using adb, I uninstalled some system apps on my device. Sadly, I uninstalled something important, and now the device is in a bootloop. During boot there is a window of time which I'm able to login with adb. But when I try to reinstall the system apps: adb shell cmd package install-existing --user 0...
Using adb, I uninstalled some system apps on my device. Sadly, I uninstalled something important, and now the device is in a bootloop. During boot there is a window of time which I'm able to login with adb. But when I try to reinstall the system apps: adb shell cmd package install-existing --user 0 com.xyzname I get this error: Can't find service: package I used to be able to run install/uninstall commands in this bootup window, but now the service 'package' isn't being started. I tried looking up how to run services with adb, and I found [some commands using am](https://stackoverflow.com/questions/7415997/how-to-start-and-stop-android-service-from-a-adb-shell/18703083) , but nothing pertaining to specifically running 'package'. I need to get service 'package' to run. Begging for help here.
Rucent88 (141 rep)
Aug 8, 2021, 07:31 PM • Last activity: Sep 6, 2022, 04:25 PM
69 votes
2 answers
305916 views
How can I stop applications and services from running?
When my phone starts up there are several application/services running in the background that I would rather not. And when I press the Home button while using an app, that app usually goes into the background without exiting. How can I stop these apps from running?
When my phone starts up there are several application/services running in the background that I would rather not. And when I press the Home button while using an app, that app usually goes into the background without exiting. How can I stop these apps from running?
Matthew Read (50797 rep)
Oct 3, 2012, 11:09 PM • Last activity: Aug 31, 2022, 11:39 AM
4 votes
1 answers
6951 views
How to permanently disable mediaserver service?
I am trying to permanently disable the notorious power hogging `mediascanserver` or `mediaserver` (whatever it's better known) service on a rooted Jiayu S3. Here are my ADB commands: su pm disable com.android.providers.media/com.android.providers.media.MediaScannerReceiver top > /mnt/sdcard2/toplist...
I am trying to permanently disable the notorious power hogging mediascanserver or mediaserver (whatever it's better known) service on a rooted Jiayu S3. Here are my ADB commands: su pm disable com.android.providers.media/com.android.providers.media.MediaScannerReceiver top > /mnt/sdcard2/toplist.txt #Polling the output of top Now getting the file here on my PC: adb pull /mnt/sdcard2/toplist.txt c:\adbf\toplist.txt MediaServer process on line 242 in below o/p. So, my questions are: 1. Why pm disable did not work for Mediaserver? 2. Is there any other Android service in the below o/p which is running as a hack or resource hog and deserves to be disabled? 3. For a specific process I see below, how do I go about finding out the **corresponding service** name, so that the same can be disabled. E.g. the line # 241 drmserver. What is that process? How do you get the service name for it? ---- User 2%, System 1%, IOW 47%, IRQ 0% User 13 + Nice 0 + Sys 11 + Idle 304 + IOW 299 + IRQ 0 + SIRQ 0 = 627 PID PR CPU% S #THR VSS RSS PCY UID Name 9627 1 2% S 13 1031512K 49716K bg u0_a8 com.google.android.gms:snet 9751 1 1% R 1 1492K 488K root top 9578 1 0% S 87 1287976K 88152K fg u0_a8 com.google.android.gms 971 0 0% S 39 1065904K 207896K fg u0_a12 com.android.systemui 796 0 0% D 1 0K 0K root jbd2/mmcblk1p2- 129 1 0% S 1 0K 0K root mmcqd/1 177 1 0% S 1 0K 0K root kworker/1:1H 10 0 0% S 1 0K 0K root rcu_sched 11 1 0% S 1 0K 0K root migration/1 12 1 0% S 1 0K 0K root ksoftirqd/1 14 1 0% S 1 0K 0K root kworker/1:0H 15 2 0% R 1 0K 0K root migration/2 16 2 0% R 1 0K 0K root ksoftirqd/2 18 2 0% S 1 0K 0K root kworker/2:0H 19 3 0% R 1 0K 0K root migration/3 20 3 0% R 1 0K 0K root ksoftirqd/3 22 3 0% S 1 0K 0K root kworker/3:0H 23 4 0% R 1 0K 0K root migration/4 24 4 0% R 1 0K 0K root ksoftirqd/4 26 4 0% S 1 0K 0K root kworker/4:0H 27 5 0% R 1 0K 0K root migration/5 28 5 0% R 1 0K 0K root ksoftirqd/5 30 5 0% S 1 0K 0K root kworker/5:0H 31 6 0% R 1 0K 0K root migration/6 32 6 0% R 1 0K 0K root ksoftirqd/6 33 6 0% S 1 0K 0K root kworker/6:0 34 6 0% S 1 0K 0K root kworker/6:0H 35 7 0% R 1 0K 0K root migration/7 36 7 0% R 1 0K 0K root ksoftirqd/7 37 7 0% S 1 0K 0K root kworker/7:0 38 7 0% S 1 0K 0K root kworker/7:0H 39 1 0% S 1 0K 0K root khelper 40 5 0% S 1 0K 0K root fs_sync 41 1 0% S 1 0K 0K root suspend 42 5 0% S 1 0K 0K root writeback 43 1 0% S 1 0K 0K root bioset 44 5 0% S 1 0K 0K root crypto 45 5 0% S 1 0K 0K root kblockd 46 2 0% S 1 0K 0K root khubd 48 1 0% S 1 0K 0K root pool_reload_wor 49 1 0% S 1 0K 0K root cmdq_auto_relea 50 1 0% S 1 0K 0K root cmdq_task 51 5 0% S 1 0K 0K root kworker/5:1 52 5 0% S 1 0K 0K root cfg80211 53 0 0% S 1 0K 0K root cfinteractive 54 0 0% S 1 0K 0K root pmic_6325_threa 55 1 0% S 1 0K 0K root bat_percent_not 56 5 0% S 1 0K 0K root emi_mpu 57 1 0% D 1 0K 0K root hps_main 58 0 0% S 1 0K 0K root mt_gpufreq_inpu 59 1 0% S 1 0K 0K root kswapd0 60 2 0% S 1 0K 0K root fsnotify_mark 79 5 0% S 1 0K 0K root uether 80 0 0% S 1 0K 0K root ion_mm_heap 81 5 0% S 1 0K 0K root binder 90 1 0% S 1 0K 0K root MD32_CUST_PIN_W 91 0 0% D 1 0K 0K root hang_detect 92 0 0% S 1 0K 0K root btif_rxd 93 5 0% S 1 0K 0K root sensor_polling 94 2 0% S 1 0K 0K root conn-md-thread 95 5 0% S 1 0K 0K root md1_cldma_worke 96 1 0% S 1 0K 0K root md1_tx0_worker 97 5 0% S 1 0K 0K root md1_tx1_worker 98 1 0% S 1 0K 0K root md1_tx2_worker 99 5 0% S 1 0K 0K root md1_tx3_worker 100 1 0% S 1 0K 0K root md1_tx4_worker 101 5 0% S 1 0K 0K root md1_tx5_worker 102 1 0% S 1 0K 0K root md1_tx6_worker 103 5 0% S 1 0K 0K root md1_tx7_worker 104 1 0% S 1 0K 0K root md1_rx0_worker 105 5 0% S 1 0K 0K root md1_rx1_worker 106 1 0% S 1 0K 0K root md1_rx2_worker 107 5 0% S 1 0K 0K root md1_rx3_worker 108 1 0% S 1 0K 0K root md1_rx4_worker 109 5 0% S 1 0K 0K root md1_rx5_worker 110 1 0% S 1 0K 0K root md1_rx6_worker 111 5 0% S 1 0K 0K root md1_rx7_worker 112 5 0% S 1 0K 0K root ccci_ctrl 113 1 0% S 1 0K 0K root ccci_sys 114 1 0% S 1 0K 0K root ccci_poll 115 2 0% S 1 0K 0K root ccci_rpc 116 0 0% S 1 0K 0K root ccci_ipc_3 117 5 0% S 1 0K 0K root ccci_ipc_4 118 1 0% S 1 0K 0K root accdet 119 5 0% S 1 0K 0K root keyEvent_send 120 6 0% S 1 0K 0K root accdet_disable 121 5 0% S 1 0K 0K root accdet_eint 122 1 0% S 1 0K 0K root mtk_vibrator 123 5 0% S 1 0K 0K root hall_eint 124 1 0% S 1 0K 0K root MD32_REBOOT_WQ 125 1 0% S 1 0K 0K root mmcqd/0 126 2 0% S 1 0K 0K root mmcqd/0boot0 127 1 0% S 1 0K 0K root mmcqd/0boot1 128 1 0% S 1 0K 0K root mmcqd/0rpmb 130 5 0% S 1 0K 0K root pmic_6311_threa 131 1 0% S 1 0K 0K root ddp_irq_log_kth 132 5 0% D 1 0K 0K root display_esd_che 133 0 0% S 1 0K 0K root display_check_a 134 0 0% S 1 0K 0K root fence_worker 1 0 0% S 1 940K 796K root /init 136 0 0% S 1 0K 0K root frame_update_wo 137 1 0% S 1 0K 0K root disp_switch_mod 138 5 0% S 1 0K 0K root kthermp 140 0 0% S 1 0K 0K root PTP_CTRL_MCUSYS 141 0 0% S 1 0K 0K root PTP_CTRL_GPUSYS 142 1 0% S 1 0K 0K root PTP_CTRL_SOC 143 1 0% S 1 0K 0K root deferwq 144 5 0% S 1 0K 0K root f_mtp 145 1 0% S 1 0K 0K root file-storage 146 0 0% D 1 0K 0K root wdtk-0 147 1 0% D 1 0K 0K root wdtk-1 148 1 0% D 1 0K 0K root wdtk-2 149 0 0% D 1 0K 0K root wdtk-3 150 1 0% D 1 0K 0K root wdtk-4 151 0 0% D 1 0K 0K root wdtk-5 152 0 0% D 1 0K 0K root wdtk-6 153 0 0% D 1 0K 0K root wdtk-7 154 0 0% D 1 0K 0K root bat_thread_kthr 155 1 0% S 1 0K 0K root mtk charger_hv_ 158 0 0% S 1 0K 0K root kworker/6:1 159 0 0% S 1 0K 0K root synaptics-tpd 160 7 0% S 1 0K 0K root dsx_exp_workque 162 0 0% S 1 0K 0K root kworker/7:1 163 2 0% S 1 0K 0K root kworker/2:1 164 7 0% S 1 0K 0K root kworker/7:1H 165 6 0% S 1 0K 0K root kworker/6:1H 166 5 0% S 1 0K 0K root kworker/5:1H 167 4 0% S 1 0K 0K root kworker/4:1 168 3 0% S 1 0K 0K root kworker/3:1 169 2 0% S 1 0K 0K root fwu_workqueue 170 0 0% S 1 748K 456K root /sbin/ueventd 172 4 0% S 1 0K 0K root kworker/4:1H 173 0 0% S 1 0K 0K root kworker/0:1H 174 2 0% S 1 0K 0K root jbd2/mmcblk0p16 175 1 0% S 1 0K 0K root ext4-dio-unwrit 181 0 0% S 1 0K 0K root jbd2/mmcblk0p18 182 0 0% S 1 0K 0K root ext4-dio-unwrit 186 0 0% S 1 0K 0K root jbd2/mmcblk0p17 187 0 0% S 1 0K 0K root ext4-dio-unwrit 193 2 0% S 1 0K 0K root jbd2/mmcblk0p3- 194 0 0% S 1 0K 0K root ext4-dio-unwrit 200 2 0% S 1 0K 0K root jbd2/mmcblk0p4- 201 0 0% S 1 0K 0K root ext4-dio-unwrit 221 2 0% S 1 0K 0K root loop0 225 1 0% S 1 2480K 164K fg root /sbin/healthd 226 0 0% S 1 1208K 424K system /system/bin/servicemanager 227 0 0% S 3 5088K 1160K root /system/bin/vold 229 4 0% S 1 1084K 424K system /system/bin/logwrapper 230 0 0% S 2 3852K 2036K system /system/bin/autokd 231 0 0% S 1 1564K 716K ccci /system/bin/ccci_fsd 233 1 0% S 1 1592K 640K system /system/bin/ccci_mdinit 236 1 0% S 8 10700K 1904K root /system/bin/netd 238 1 0% S 28 180600K 11524K system /system/bin/surfaceflinger 239 0 0% S 1 1096K 476K system /system/bin/6620_launcher 240 1 0% S 4 972332K 36120K root zygote 241 0 0% S 3 17368K 3060K fg drm /system/bin/drmserver 242 1 0% S 20 104900K 21488K fg media /system/bin/mediaserver 243 1 0% S 1 1204K 572K install /system/bin/installd 244 4 0% S 2 4816K 664K fg system /system/bin/nvram_backup_binder 245 0 0% S 1 4700K 1252K fg keystore /system/bin/keystore 248 1 0% S 2 2456K 668K shell /system/bin/mobile_log_d 249 3 0% S 1 0K 0K root kworker/3:1H 250 2 0% S 1 1408K 288K system /system/bin/drvbd 251 1 0% S 2 3176K 636K shell /system/bin/netdiag 254 0 0% S 2 5132K 1012K fg system /system/bin/dm_agent_binder 255 0 0% S 2 4828K 800K fg system /system/bin/ppl_agent 257 0 0% S 2 4600K 712K fg radio /system/bin/vtservice 260 2 0% S 34 38864K 1324K gps /system/bin/mtk_agpsd 261 0 0% S 1 1092K 448K wifi /system/bin/wifi2agps 262 2 0% S 1 0K 0K root kworker/2:1H 266 1 0% S 1 3256K 552K gps /system/xbin/mnld 268 1 0% S 4 6836K 768K fg system /system/bin/nvram_agent_binder 270 0 0% S 3 3172K 480K system /system/bin/thermal 271 0 0% S 1 1072K 392K system /system/bin/thermald 274 0 0% S 1 1076K 408K shell /system/bin/batterywarning 275 2 0% S 2 4904K 660K fg media /system/bin/MtkCodecService 276 1 0% S 4 18472K 4664K fg system /system/bin/guiext-server 285 0 0% S 5 20092K 5368K bluetoot /system/bin/mtkbt 286 2 0% S 3 4012K 1180K media_rw /system/bin/sdcard 287 2 0% S 1 1268K 556K root /system/bin/sh 288 1 0% S 2 29888K 5024K nvram /system/bin/em_svr 289 0 0% S 1 688K 88K root /system/xbin/su 290 0 0% S 5 4720K 336K shell /sbin/adbd 413 2 0% S 1 1520K 376K system /system/bin/qmc6983d 565 3 0% S 1 0K 0K root kbase_event 695 1 0% S 1 0K 0K root mtk_stp_psm 696 2 0% S 1 0K 0K root mtk_stp_btm 698 0 0% S 1 0K 0K root mtk_wmtd 699 4 0% S 1 0K 0K root fm_timer_wq 700 1 0% S 1 0K 0K root fm_eint_wq 762 2 0% S 2 2768K 736K shell /system/bin/emdlogger1 763 0 0% S 15 15484K 608K radio /system/bin/gsm0710muxd 769 0 0% S 87 1110380K 109204K fg system system_server 797 3 0% S 1 0K 0K root ext4-dio-unwrit 842 1 0% S 27 30892K 884K radio /system/bin/rild 914 0 0% S 29 1037980K 93056K fg u0_a12 com.android.keyguard 946 0 0% S 12 987640K 37592K fg system com.mediatek.security 1010 0 0% S 1 3924K 1760K wifi /system/bin/wpa_supplicant 1047 1 0% S 60 1055124K 54124K fg radio com.android.phone 1076 6 0% S 1 0K 0K root kbase_event 1163 0 0% S 16 1074896K 75084K fg u0_a76 com.mediatek.voicecommand 1176 0 0% S 12 988264K 31588K fg bluetoot com.mediatek.bluetooth 1191 0 0% S 10 994012K 27928K fg system com.mediatek.voiceextension 1204 0 0% S 28 1010356K 39268K fg nfc com.android.nfc 1226 3 0% S 2 2112K 448K system /system/bin/fotabinder 1250 0 0% S 15 994204K 42948K fg u0_a82 ace.jun.simplecontrol:remote 1304 1 0% S 12 12980K 744K fg nfc nfcstackp 1430 1 0% S 1 0K 0K root kbase_event 1480 0 0% S 14 990396K 40752K fg u0_a8 com.google.process.location 1845 3 0% S 3 4132K 1264K media_rw /system/bin/sdcard 2083 1 0% S 30 1012772K 43020K fg bluetoot com.android.bluetooth 2599 1 0% S 12 987356K 33744K fg u0_a71 org.simalliance.openmobileapi.service:remote 2678 1 0% S 14 997032K 46344K fg u0_a51 com.android.inputmethod.latin 2914 0 0% S 48 1075680K 59368K bg u0_a8 com.google.android.gms.persistent 3168 0 0% S 1 1808K 688K root /system/bin/debuggerd.bin 4761 1 0% S 2 2124K 400K bg u0_a79 /data/data/com.estrongs.android.pop/files/libestool2.so 5721 2 0% S 1 0K 0K root kworker/2:2 5948 0 0% S 20 1004756K 41372K bg u0_a3 android.process.acore 6038 0 0% S 55 1060916K 76220K fg u0_a124 com.google.android.inputmethod.latin 6061 1 0% S 1 0K 0K root kbase_event 6140 1 0% S 49 1057276K 157788K bg u0_a167 com.gau.go.launcherex 6212 1 0% S 12 993280K 28296K bg u0_a167 com.gau.go.launcherex:remote 6232 1 0% S 1 0K 0K root kbase_event 6453 0 0% S 1 0K 0K root kworker/0:2 6564 0 0% S 21 1005012K 38684K bg u0_a167 com.gau.go.launcherex:com.jiubang.commerce.service.IntelligentP 6998 1 0% S 1 0K 0K root kworker/u17:2 7777 1 0% S 10 986336K 27864K bg u0_a33 com.android.deskclock 8016 0 0% S 1 0K 0K root kworker/3:2 8028 0 0% S 1 0K 0K root kworker/0:0 8381 0 0% S 1 0K 0K root kworker/4:2 8510 1 0% S 1 0K 0K root kworker/u17:0 8676 0 0% S 10 984768K 28552K bg system com.adups.fota.sysoper 8811 0 0% S 23 1006572K 34660K bg u0_a134 com.stackexchange.marvin 8889 0 0% S 1 0K 0K root kworker/u16:2 9047 1 0% S 66 1087948K 58556K bg u0_a120 com.google.android.youtube 9130 0 0% S 15 996944K 45700K bg u0_a163 com.fsck.k9 9154 0 0% S 51 1053048K 54072K bg u0_a117 com.whatsapp 9197 0 0% S 35 1028400K 49308K bg u0_a16 com.android.vending 9284 2 0% S 23 1078192K 104912K system com.android.settings 9305 1 0% S 1 0K 0K root kbase_event 9329 0 0% S 40 1041464K 50512K bg u0_a169 com.amazon.mShop.android.shopping 9401 1 0% S 12 987404K 29980K bg u0_a96 com.opera.mini.android 9416 1 0% S 11 993256K 30976K bg u0_a108 com.chrome.beta 9431 0 0% S 12 995316K 39588K bg u0_a79 com.estrongs.android.pop 9478 0 0% S 1 0K 0K root kworker/5:2 9485 0 0% S 1 0K 0K root kworker/u16:4 9533 1 0% S 10 989156K 37696K bg u0_a126 com.quoord.tapatalkxda.activity 9644 2 0% S 11 1027560K 34304K bg u0_a8 com.google.android.gms.wearable 9668 0 0% S 24 1042860K 52900K bg u0_a8 com.google.android.gms.unstable 9699 1 0% S 1 0K 0K root kbase_event 9715 0 0% S 1 0K 0K root kworker/0:1 9718 1 0% S 1 1268K 580K shell /system/bin/sh 9723 0 0% S 1 688K 4K shell su 9724 1 0% S 3 2748K 36K shell su 9727 1 0% S 1 692K 40K root /system/xbin/su 9729 1 0% S 1 692K 48K root /system/xbin/su 9730 1 0% S 1 1052K 508K root sh 10812 0 0% S 30 1020908K 56760K bg u0_a158 com.truecaller 13675 0 0% S 1 0K 0K root kbase_event 15254 1 0% S 11 993728K 28416K bg u0_a129 com.android.gallery3d 15424 0 0% S 1 0K 0K root kworker/u17:3 15624 1 0% S 36 1075904K 67664K bg u0_a149 com.google.android.googlequicksearchbox:search 18905 1 0% S 1 0K 0K root kworker/1:2 19367 1 0% S 1 0K 0K root kworker/u16:3 26457 1 0% S 14 988616K 28116K bg u0_a17 com.svox.pico 28050 0 0% S 1 0K 0K root ksdioirqd/mmc2 28051 0 0% S 1 0K 0K root stp_sdio_tx_rx 28061 1 0% S 1 0K 0K root kworker/1:3 28075 2 0% S 1 0K 0K root tx_thread 28076 1 0% S 1 0K 0K root hif_thread 28077 1 0% S 1 0K 0K root rx_thread 28502 0 0% S 35 1068580K 58328K fg u0_a8 com.google.process.gapps 29545 1 0% S 11 986236K 35432K bg system com.android.fallen 30218 0 0% S 13 1002492K 43340K bg u0_a139 com.google.android.apps.photos 31306 0 0% S 14 992248K 39544K bg u0_a6 android.process.media 32104 0 0% S 1 1088K 436K dhcp /system/bin/logwrapper 32105 1 0% S 1 1204K 644K dhcp /system/bin/dhcpcd 32567 3 0% S 1 688K 4K u0_a79 su 32569 1 0% S 1 692K 32K u0_a79 su 32571 3 0% S 1 692K 36K root /system/xbin/su 32572 3 0% S 1 692K 44K root /system/xbin/su 32573 3 0% S 1 1040K 324K root sh 32609 3 0% S 1 1020K 272K root /data/data/com.estrongs.android.pop/files/libestool2.so 135 0 0% D 1 0K 0K root present_fence_w 2 1 0% S 1 0K 0K root kthreadd 3 0 0% S 1 0K 0K root ksoftirqd/0 5 0 0% S 1 0K 0K root kworker/0:0H 7 0 0% S 1 0K 0K root migration/0 8 1 0% S 1 0K 0K root rcu_preempt 9 0 0% S 1 0K 0K root rcu_bh
user1874594 (527 rep)
Jul 13, 2015, 10:23 AM • Last activity: Aug 28, 2022, 03:45 PM
6 votes
2 answers
4339 views
How to make SELinux injected rules persistent without unpacking-packing boot.img?
I am working on an application that needs root access and I have a device which is rooted but not with Magisk. This device has only `adb shell` root available. So, I need an alternative to call the required functionality without the use of Magisk or other tools. I did it by placing my executable ins...
I am working on an application that needs root access and I have a device which is rooted but not with Magisk. This device has only adb shell root available. So, I need an alternative to call the required functionality without the use of Magisk or other tools. I did it by placing my executable inside system directory and run it as a daemon. This daemon required access on some location which is restricted by SELinux policies. I have injected the required policy with following commands:
sepolicy-inject -s init -t su -c process -p transition -l
    sepolicy-inject -s su -t system_file -c file -p entrypoint -l
    sepolicy-inject -s init -t su -c process -p rlimitinh -l
    sepolicy-inject -s init -t su -c process -p siginh -l
    sepolicy-inject -s su -t shell_exec -c file -p read -l
    sepolicy-inject -s su -t shell_exec -c file -p execute -l
    sepolicy-inject -s su -t shell_exec -c file -p getattr  -l
    sepolicy-inject -s su -t vendor_toolbox_exec -c file -p execute_no_trans -l
    sepolicy-inject -s init -t su -c process -p noatsecure -l
    sepolicy-inject -s su -t toolbox_exec -c file -p getattr -l
    sepolicy-inject -s su -t toolbox_exec -c file -p execute -l
    sepolicy-inject -s su -t system_file -c file -p execute_no_trans -l
    sepolicy-inject -s su -t storage_file -c dir -p search -l
    sepolicy-inject -s su -t storage_file -c lnk_file -p read -l
    sepolicy-inject -s su -t tmpfs -c dir -p search -l
    sepolicy-inject -s su -t mnt_user_file -c dir -p search -l
    sepolicy-inject -s su -t mnt_user_file -c lnk_file -p read -l
    sepolicy-inject -s su -t sdcardfs -c dir -p search -l
    sepolicy-inject -s su -t sdcardfs -c file -p append -l
    sepolicy-inject -s su -t toolbox_exec -c file -p read -l
    sepolicy-inject -s su -t toolbox_exec -c file -p open -l
    sepolicy-inject -s su -t sdcardfs -c file -p read -l
    sepolicy-inject -s su -t sdcardfs -c file -p write -l
    sepolicy-inject -s su -t sdcardfs -c file -p open -l
    sepolicy-inject -s su -t media_rw_data_file -c file -p read -l
    sepolicy-inject -s su -t media_rw_data_file -c file -p write -l
    sepolicy-inject -s su -t media_rw_data_file -c file -p open -l
    sepolicy-inject -s su -t media_rw_data_file -c file -p append -l
The problem is that they are not persistent after reboot. I know I can extract boot.img and ramdisk, replace /sepolicy with new policy file copied from /sys/fs/selinux/policy, repack boot.img and flash back. I want to do it without reflashing boot.img. Is there any way with which I can execute above commands after Android finishes with generating SELinux files? I have tried following rc files:
#/etc/init/custom.rc

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

    # don't start unless explicitly asked to
    disabled

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

# start the service when boot is completed
on property:sys.boot_completed=1
    sepolicy-inject -s init -t su -c process -p transition -l
    sepolicy-inject -s su -t system_file -c file -p entrypoint -l
    sepolicy-inject -s init -t su -c process -p rlimitinh -l
    sepolicy-inject -s init -t su -c process -p siginh -l
    sepolicy-inject -s su -t shell_exec -c file -p read -l
    sepolicy-inject -s su -t shell_exec -c file -p execute -l
    sepolicy-inject -s su -t shell_exec -c file -p getattr  -l
    sepolicy-inject -s su -t vendor_toolbox_exec -c file -p execute_no_trans -l
    sepolicy-inject -s init -t su -c process -p noatsecure -l
    sepolicy-inject -s su -t toolbox_exec -c file -p getattr -l
    sepolicy-inject -s su -t toolbox_exec -c file -p execute -l
    sepolicy-inject -s su -t system_file -c file -p execute_no_trans -l
    sepolicy-inject -s su -t storage_file -c dir -p search -l
    sepolicy-inject -s su -t storage_file -c lnk_file -p read -l
    sepolicy-inject -s su -t tmpfs -c dir -p search -l
    sepolicy-inject -s su -t mnt_user_file -c dir -p search -l
    sepolicy-inject -s su -t mnt_user_file -c lnk_file -p read -l
    sepolicy-inject -s su -t sdcardfs -c dir -p search -l
    sepolicy-inject -s su -t sdcardfs -c file -p append -l
    sepolicy-inject -s su -t toolbox_exec -c file -p read -l
    sepolicy-inject -s su -t toolbox_exec -c file -p open -l
    sepolicy-inject -s su -t sdcardfs -c file -p read -l
    sepolicy-inject -s su -t sdcardfs -c file -p write -l
    sepolicy-inject -s su -t sdcardfs -c file -p open -l
    sepolicy-inject -s su -t media_rw_data_file -c file -p read -l
    sepolicy-inject -s su -t media_rw_data_file -c file -p write -l
    sepolicy-inject -s su -t media_rw_data_file -c file -p open -l
    sepolicy-inject -s su -t media_rw_data_file -c file -p append -l
    start custom
but it is not working because I think Android generates SELinux files after my custom service has been triggered. Also tried above commands on onrestart option of init service but failed. Any suggestion?
Vatish Sharma (1101 rep)
Jul 22, 2019, 11:20 AM • Last activity: Aug 22, 2022, 11:36 AM
0 votes
1 answers
1039 views
How do I turn on Carrier Location Services?
I have found a similar question about this, and it kind of makes me wonder what this service is. In the description it says you can turn it on and off in the apps if you look for Carrier Location Services. Now I had the request pop up after I updated to android 12. And after I denied the request on...
I have found a similar question about this, and it kind of makes me wonder what this service is. In the description it says you can turn it on and off in the apps if you look for Carrier Location Services. Now I had the request pop up after I updated to android 12. And after I denied the request on reflex I changed my mind and it seems like the app doesn't exist. Not even in the app store. What is that all about? https://youtu.be/SLKc2DLNi4k Not my video, but it shows the pop up and the text if you click on it.
Felix H. (1 rep)
Apr 23, 2022, 09:37 PM • Last activity: Apr 25, 2022, 08:20 PM
0 votes
0 answers
2091 views
How to repack Magisk boot image? (Magisk installed)
everyone. I have a OnePlus 5t, updated to Android 9 and Project Treble. I have my own Magisk module for my own tweaks, but I am not satisfied. I found that I need a patched init.rc in order to have one script of mine run when I need it. There is an official howto chapter dedicated to an "overlay.d"...
everyone. I have a OnePlus 5t, updated to Android 9 and Project Treble. I have my own Magisk module for my own tweaks, but I am not satisfied. I found that I need a patched init.rc in order to have one script of mine run when I need it. There is an official howto chapter dedicated to an "overlay.d" directory that can modify files on the root of the filesystem, say /init.rc, https://topjohnwu.github.io/Magisk/guides.html#root-directory-overlay-system , however, this "howto" is terse and hard to understand for people not familiar with Magisk's internals. There is also a script that should help to repack the boot image https://github.com/topjohnwu/Magisk/blob/master/scripts/boot_patch.sh , but it is relying on certain commands not in that directory. By trial and error I have found a way to extract "magiskboot" from the magisk's install Magisk-*.zip, and I also found that this magiskboot can unpack the /dev/disk/by-name/boot partition. (I know, that is probably insane, a partition is not a file, but somehow magiskboot manages to navigate it by itself.) But that requires running that command on the phone itself (with magisk's su), and I am not sure how valid this is. Trying to run the "boot_patch.sh" by first copying it to the phone, and using the extracted rootfs.cpio seems way beyond my ability, and I am also very unsure whether this can be done with the system booted, or I should do it from TWRP, or whatever. So, a decent guide (for dummies) on how to patch the boot image would be appreciated. I only need to add two files: custom.rc, with the service description, and a custom.sh with the service code itself. Help would be appreciated!
user10732 (46 rep)
Apr 13, 2022, 09:15 AM
2 votes
1 answers
2274 views
Un-register service from hwservicemanager
I have disabled the fingerprint sensor on my phone by setting the device tree node status to disabled. When I boot up, the fingerprint menu options are gone, but dmesg shows that `hwservicemanager` is trying to start a fingerprint sensor over and over, but init can't find the service: [ 625.488742]...
I have disabled the fingerprint sensor on my phone by setting the device tree node status to disabled. When I boot up, the fingerprint menu options are gone, but dmesg shows that hwservicemanager is trying to start a fingerprint sensor over and over, but init can't find the service: [ 625.488742] init: Could not find 'android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint/default' for ctl.interface_start [ 625.502583] init: Received control message 'interface_start' for 'android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint/default' from pid: 669 (/system/bin/hwservicemanager) [ 625.502658] init: Could not find 'android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint/default' for ctl.interface_start [ 625.523352] init: Received control message 'interface_start' for 'android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint/default' from pid: 669 (/system/bin/hwservicemanager) [ 625.523427] init: Could not find 'android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint/default' for ctl.interface_start [ 625.538080] init: Received control message 'interface_start' for 'android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint/default' from pid: 669 (/system/bin/hwservicemanager) [ 625.538545] init: Could not find 'android.hardware.biometrics.fingerprint@2.1::IBiometricsFingerprint/default' for ctl.interface_start How do I tell hwservicemanager to stop trying to start this now non-existent service? I saw [here](https://groups.google.com/forum/#!topic/android-porting/dEc5fJALiqI) that there is an option to remove the hidl definitions from a manifest file, but I would like to enable or disable the fingerprint sensor at runtime. I can enable and disable the service with start vendor.fps_hal and stop vendor.fps_hal, but I can't stop hwservicemanager from trying to start it.
Drew (21 rep)
Dec 19, 2019, 10:59 PM • Last activity: Mar 18, 2022, 10:05 PM
4 votes
2 answers
2945 views
Invoke /system/bin/sdcard manually via terminal
I am trying to mount an EXT4 formatted SD card under Cyanogenmod 13.1 (Android 6.0.1). So far, I have setup scripts to mount the card at `/mnt/ext_sdcard` during boot. My current understanding is that the "sdcard" service must then be invoked to create a FUSE mount pointing to the real mount point w...
I am trying to mount an EXT4 formatted SD card under Cyanogenmod 13.1 (Android 6.0.1). So far, I have setup scripts to mount the card at /mnt/ext_sdcard during boot. My current understanding is that the "sdcard" service must then be invoked to create a FUSE mount pointing to the real mount point which will eventually lead the media scanner to the newly mounted disk. Following some older older documentation and forum threads lead me to this command in terminal:
service sdcard /system/bin/sdcard /mnt/ext_sdcard /mnt/test 1023 1023
    class late_start
When I run the command (as root of course), it fails with an exit status of 1 and no output/error messages. My question: Am I doing something wrong, or is this command deprecated in 6.0.1 (the documents/forum thread seemed to relate to KitKat)? What is the correct syntax/arguments for using this command?
Jake (41 rep)
Jan 11, 2017, 11:39 AM • Last activity: Mar 6, 2022, 09:01 AM
1 votes
1 answers
2718 views
WhatsApp MessageService is always killed shortly after exiting the app
A couple of days ago I noticed that I no longer receive WhatsApp messages until I manually start the app, which is when the pending messages get delivered all at once. I started my investigation by monitoring the `com.whatsapp.messaging.MessageService` in the Application Manager. Here's what it look...
A couple of days ago I noticed that I no longer receive WhatsApp messages until I manually start the app, which is when the pending messages get delivered all at once. I started my investigation by monitoring the com.whatsapp.messaging.MessageService in the Application Manager. Here's what it looks like at first, after I exit WhatsApp: enter image description here And here's what it looks like a few minutes later: enter image description here It looks like the MessageService either quit, or it was terminated. To verify this, I checked with adb. I can see the service at first: $ adb shell dumpsys activity services | grep wh * ServiceRecord{43deec28 u0 com.whatsapp/.messaging.MessageService} intent={act=com.whatsapp.messaging.MessageService.START cmp=com.whatsapp/.messaging.MessageService} packageName=com.whatsapp processName=com.whatsapp baseDir=/data/app/com.whatsapp-1.apk dataDir=/data/data/com.whatsapp app=ProcessRecord{42d19f90 10037:com.whatsapp/u0a10187} But then this service disappears, even though the main process is still running: $ adb shell ps | grep wh u0_a187 10037 215 988084 78996 ffffffff 00000000 S com.whatsapp The service does not get terminated at the same time. I have seen it killed as early as 6 minutes after exiting WhatsApp, and as late at 11 minutes. But in the vast majority of cases, it is terminated some time on the 8th minute. I have carefully examined the logcat during the moment of service termination with the following logcat query, which I believe silences only the stuff I don't care about: adb logcat -v time LightSensor:s LightsService:s SensorService:s SensorManager:s STATUSBAR-BatteryController:s BatteryService:s HeadsetStateMachine:s android.widget.GridLayout:s MP-Decision:s SignalStrength:s McClient:s McDaemon:s QcrilMsgTunnelSocket:s | grep -v ss_tz_mobicore | grep -v ss_daemon I was not able to see anything in the logs that would hint at what happened to the service. Did it quit? Did something kill it? How can I find out? I thought that maybe the service was terminated b/c the OS was low on RAM, but this does not appear to be so. Here's the RAM at the moment of termination: $ adb shell free -m total used free shared buffers Mem: 1821 1587 234 0 75 -/+ buffers: 1511 310 Swap: 399 134 265 While working on this issue, I have used Titanium Backup to freeze all apps that might interfere with normal operation of WhatsApp, so these are the apps I froze: - Greenify - Amplify - XPrivacy I also turned off "Per App Hacking", which is an Xposed Module. Any ideas on how I can learn more about why MessageService is being terminated? **EDIT 1**: Is it possible that MessageService is supposed to get terminated, and that WhatsApp relies on GCM to be notified when there are new messages?
Val Blant (153 rep)
Sep 28, 2016, 10:42 PM • Last activity: Mar 5, 2022, 12:04 PM
0 votes
1 answers
1433 views
Show all running services on Samsung Galaxy S3
How can one show all running services on Samsung Galaxy S3? In system-menu Tinder service for example wasn't shown.
How can one show all running services on Samsung Galaxy S3? In system-menu Tinder service for example wasn't shown.
chris (101 rep)
May 23, 2016, 06:29 PM • Last activity: Mar 5, 2022, 07:07 AM
Showing page 1 of 20 total questions