2010-09-09 20 views
7

Benim nexus birinde, Ayarlar> Telefon Hakkında> Pil kullanımı ile ulaşılabilir kullanışlı bir uygulama var.Oluşturmak "Pil kullanımı" niyet Android

StartActivity() uygulamasını Etkinliklerim'den birinden almak istiyorum.

I Ayarlar bunu çalıştırdığında, bu niyet giriş yaptığından günlüğüne görebilirsiniz:

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

sorun ilişkin yaşıyorum o Android Java kaynağındaki bir şeye. GIT kaynağında "fuelgauge" bile bulamıyorum. Biri bana doğru dosyaya nasıl işaret edebilir, ya da başka bir işe yarayan, doğru bir Niyetin nasıl yaratılacağı gibi? aşağıdaki gibi

Teşekkür

Peter

cevap

18

Kod geçerli: @Chris Lacy avuç koduna

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

Tek bir uygulamanın pil istatistiklerine de gitmek mümkün mü? Ayrıca, mobil veri kullanımının istatistiklerine nasıl ulaşacağınızı biliyor musunuz? –

+0

Pil istatistiklerini görüntüleyen ve uygulamanın pilini/veri kullanımını getiren Etkinliği başlatmak çok farklı sorulardır. Yeni sorular sormalısın. –

+0

Bunlar kinda: http://stackoverflow.com/questions/23312038/how-to-get-battery-mobile-data-usage-of-specific-apps. Uygulamayı kullanarak bu istatistikleri nasıl alacağımı öğrenmek istedim ve yeterli bilgiyi bulamadığım zaman, (yorumlarda) bu tür şeylerin amaçlarını nasıl alacağımı sordum. –

0

Base, seni bu ekranı açmak için çağrı statik yönteme kod sarılı :

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(); 
}