Создать "Использование батареи" намерение Android - PullRequest
7 голосов
/ 09 сентября 2010

На моем Nexus One есть удобное приложение, доступное из Настройки> О телефоне> Использование батареи.

Я бы хотел, чтобы StartActivity () это приложение из одного из моих действий.

Я вижу в журнале, что когда программа запускает его, это намерение регистрируется:

Starting activity:
  Intent { act=android.intent.action.MAIN
           cmp=com.android.settings/.fuelgauge.PowerUsageSummary }

У меня проблемы с привязкой к чему-либо в Android-источнике Java. Я даже не могу найти "датчик топлива" в источнике GIT. Может кто-нибудь указать мне правильный файл или что-нибудь еще полезное, например, как создать правильный вид намерения?

Спасибо

Peter

Ответы [ 2 ]

18 голосов
/ 02 марта 2012

Код выглядит следующим образом:

Intent powerUsageIntent = new Intent(Intent.ACTION_POWER_USAGE_SUMMARY);
ResolveInfo resolveInfo = getPackageManager().resolveActivity(powerUsageIntent, 0);
// check that the Battery app exists on this device
if(resolveInfo != null){
    startActivity(powerUsageIntent);
}
0 голосов
/ 19 марта 2015

Основываясь на нескольких кодах @Chris Lacy, я обернул код статическим методом, который вы вызываете, чтобы открыть этот экран:

public static void openBatteryUsagePage(Context ctx){
    Intent powerUsageIntent = new Intent(Intent.ACTION_POWER_USAGE_SUMMARY);
    ResolveInfo resolveInfo = ctx.getPackageManager().resolveActivity(powerUsageIntent, 0);
    // check that the Battery app exists on this device
    if(resolveInfo != null){
        ctx.startActivity(powerUsageIntent);
    } else
        Toast.makeText(ctx, R.string.not_found, Toast.LENGTH_LONG).show();
} 
...