All Projects → dirkam → Backgroundable Android

dirkam / Backgroundable Android

Licence: mit
Collection of stock apps and mechanisms, which might affect background tasks and scheduled alarms.

Projects that are alternatives of or similar to Backgroundable Android

Update Background Locations
A sample iOs example that tracks background locations.
Stars: ✭ 7 (-97.17%)
Mutual labels:  background, battery
Launchscreensnapshot
Protects sensitive data in your app snapshot.
Stars: ✭ 209 (-15.38%)
Mutual labels:  background
Xamarin.forms.backgroundkit
🔨 A powerful Kit for customizing the background of Xamarin.Forms views
Stars: ✭ 167 (-32.39%)
Mutual labels:  background
Battery Level
Get current battery level
Stars: ✭ 185 (-25.1%)
Mutual labels:  battery
Neph
A modern command line job processor, similar with make command
Stars: ✭ 174 (-29.55%)
Mutual labels:  job-scheduler
Sapic
A useful tool to crop your Steam profile background for showcases.
Stars: ✭ 189 (-23.48%)
Mutual labels:  background
Airpodsbattery Monitor For Mac
Simple Widget to display your AirPods battery levels from the Mac Status bar
Stars: ✭ 165 (-33.2%)
Mutual labels:  battery
Dalga
⏰ MySQL backed Job Scheduler with a HTTP interface
Stars: ✭ 230 (-6.88%)
Mutual labels:  job-scheduler
Cronsun
A Distributed, Fault-Tolerant Cron-Style Job System.
Stars: ✭ 2,493 (+909.31%)
Mutual labels:  job-scheduler
Webgradients
A curated collection of splendid gradients made in CSS3, .sketch and .PSD formats.
Stars: ✭ 2,197 (+789.47%)
Mutual labels:  background
Node Windows
Windows support for Node.JS scripts (daemons, eventlog, UAC, etc).
Stars: ✭ 2,311 (+835.63%)
Mutual labels:  background
Useworker
⚛️ useWorker() - A React Hook for Blocking-Free Background Tasks
Stars: ✭ 2,233 (+804.05%)
Mutual labels:  background
I3 Battery Popup
A script that shows warning messages to the user when the battery is almost empty. For i3wm users.
Stars: ✭ 190 (-23.08%)
Mutual labels:  battery
Battery
cross-platform, normalized battery information library
Stars: ✭ 170 (-31.17%)
Mutual labels:  battery
Bclm
macOS command-line utility to limit max battery charge
Stars: ✭ 207 (-16.19%)
Mutual labels:  battery
React Native Background Geolocation
Sophisticated, battery-conscious background-geolocation with motion-detection
Stars: ✭ 2,110 (+754.25%)
Mutual labels:  background
Hellodaemon
Android 服务保活/常驻 (Android service daemon using JobScheduler)
Stars: ✭ 2,183 (+783.81%)
Mutual labels:  job-scheduler
Battery State Card
Battery state card for Home Assistant
Stars: ✭ 184 (-25.51%)
Mutual labels:  battery
Jobs
jobs 分布式任务调度平台
Stars: ✭ 245 (-0.81%)
Mutual labels:  job-scheduler
Android Upload Service
Easily upload files (Multipart/Binary/FTP out of the box) in the background with progress notification. Support for persistent upload requests, customizations and custom plugins.
Stars: ✭ 2,593 (+949.8%)
Mutual labels:  background

Backgroundable Android

Collection of stock apps and mechanisms from various manufacturers, which might affect background tasks and scheduled alarms with AlarmManager, etc., or apps in background in general. Also focusing on those, which prevent 3rd party apps from auto start after device boot.

Why?

Most of modern Android devices come with an app or mechanism, which automagically tries to figure out how to save battery and as a result might kill certain 3rd party apps. This might result in removing scheduled tasks and jobs, (e.g. alarms not going off, push notification not working, etc.). In many cases this happens completely independent from battery saving mechanisms of Android (such as Doze, which can be controlled correctly).

How?

Though battery saving is important and 3rd party apps should be designed with this in mind, if the basic function of an app requires it to be kept running in the background then there should be a way to add it to exception lists. Unfortunately, in most cases, this is not possible from within the app itself. However, in many cases, there are white lists where users can manually add certain 3rd party apps. This list is a repository of known battery saving apps and mechanisms along with an Intent (or at least a Step-by-step guide), which can be started/shown to navigate the user to the relevant settings menu directly.

How to contribute?

Open an issue or pull request if you found something wrong or have a new one to add. Please try to follow the following structure:

Name of the app or mechanism

Manufacturer: Name of the manufacturer.

Build.MANUFACTURER: Sometimes the device returns a completely different manufacturer name from what one would expect.

Build.MODEL: Sometimes it is only related to certain devices (or not related to certain devices).

Known restrictions: If there is any known restriction (e.g. SDK version)

Steps: Step-by-step guide how one can find it in on the device.

Intents: Intents that can be started from the app to navigate the user directly to the settings.

Information below or in any other part of this repository might be incorrect or not 100% accurate. Always try to double check it and use at your own risk.

What's known

Samsung Unmonitored Apps (7.0+)

Manufacturer: Samsung

Build.MANUFACTURER: samsung

Build.MODEL: Applies to all

Known restrictions: Android 7.0+ only

Steps:

  1. Settings
  2. Device maintenance
  3. Battery
  4. Unmonitored apps list

Intents:

new Intent().setComponent(new ComponentName("com.samsung.android.lool",
                        "com.samsung.android.sm.ui.battery.BatteryActivity"))

Huawei Protected Apps (EMUI < 5)

Manufacturer: Huawei

Build.MANUFACTURER: huawei

Build.MODEL: NOT nexus

Known restrictions: Not applies to Huawei Nexus devices (which run stock Android). Up to Android 7.

Steps:

  1. Settings
  2. Advanced Settings
  3. Battery Manager
  4. Protected Apps

or

  1. Settings
  2. Privacy and Security
  3. Protected Apps

Intents:

new Intent().setComponent(new ComponentName("com.huawei.systemmanager",
                        "com.huawei.systemmanager.optimize.process.ProtectActivity"))

Huawei Phone manager (EMUI 5)

Manufacturer: Huawei

Build.MANUFACTURER: huawei

Build.MODEL: NOT nexus

Known restrictions: Not applies to Huawei Nexus devices (which run stock Android). From Android 7.

Steps:

  1. Phone Manager
  2. Lock screen cleanup
  3. Make sure App is NOT enabled (unchecked)

or

  1. Settings
  2. Battery
  3. Lock screen cleanup
  4. Set App to 'Don't close' (unchecked)

Intents:

getPackageManager().getLaunchIntentForPackage("com.huawei.systemmanager")

Sony STAMINA

Manufacturer: Sony

Build.MANUFACTURER: sony

Build.MODEL: Applies to all

Known restrictions: Some old Android (4.something) versions don't have this feature.

Steps:

  1. Settings
  2. Power management
  3. STAMINA mode
  4. Apps active in standby

Intents:

//TODO

Xiaomi Auto Start and Battery usage monitoring and Power settings

Manufacturer: Xiaomi

Build.MANUFACTURER: xiaomi

Build.MODEL: Applies to all (running MIUI)

Known restrictions: Applies to devices running MIUI (not the ones with Android One)

Steps:

  1. Settings
  2. Additional Settings
  3. Battery & Performance
  4. Manage Apps Battery Usage
  5. Choose Apps
  6. No restrictions

and

  1. Settings
  2. Permissions
  3. Auto-run management

and

  1. Settings
  2. Additional Settings
  3. Battery & Performance
  4. Power
  5. Settings button
  6. Disable internet -> Never

Intents:

new Intent("miui.intent.action.POWER_HIDE_MODE_APP_LIST").addCategory(Intent.CATEGORY_DEFAULT)
new Intent("miui.intent.action.OP_AUTO_START").addCategory(Intent.CATEGORY_DEFAULT)
new Intent().setComponent(ComponentName("com.miui.securitycenter", "com.miui.powercenter.PowerSettings"))

Elephone background task clearer

Manufacturer: Elephone

Build.MANUFACTURER: elephone

Build.MODEL: Applies to all

Known restrictions: Not known

Steps:

  1. Settings
  2. Background task clear
  3. White list

Intents:

//TODO

ASUS auto start

Manufacturer: ASUS

Build.MANUFACTURER: asus

Build.MODEL: Applies to all

Known restrictions: Asus mobile manager app installed

Steps:

  1. Asus Mobile Manager
  2. Auto-start Manager

Intents:

getPackageManager().getLaunchIntentForPackage("com.asus.mobilemanager")

OPPO Auto Start

Manufacturer: OPPO

Build.MANUFACTURER: oppo

Build.MODEL: Applies to all

Known restrictions: ColorOS 3+ (Android 7+)

Steps:

  1. Phone Manager
  2. Privacy Permissions
  3. Startup Manager

Intents:

getPackageManager().getLaunchIntentForPackage("com.color.safecenter");
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].