私のアプリケーションで、私は自分のアプリケーションを使用してアラームを追加したいと思います。だから、私は自分のアプリケーションから直接電話のアラームの追加画面を起動したい。では、Intentを使って起動する方法は?Androidでインテントを使用して目覚まし時計の画面を起動する方法は?
3
A
答えて
-1
Package AppManagerを使用してAlarm App Intentを見つけることができます。
hereを参照してください。
com.android.alarm.permission.SET_ALARM
を参照してください:あなたはまた、次のアクセス許可を使用する必要が
Intent i = new Intent(AlarmClock.ACTION_SET_ALARM);
i.putExtra(AlarmClock.EXTRA_MESSAGE, "New Alarm");
i.putExtra(AlarmClock.EXTRA_HOUR, 10);
i.putExtra(AlarmClock.EXTRA_MINUTES, 30);
startActivity(i);
:
5
2
インテントを作成する必要があります。アンドロイドの時計とアラームの意図として
ない明確に事前に定義されたが、私はそれを行うには、次のスニペットコードを使用:このように
PackageManager packageManager = context.getPackageManager();
Intent alarmClockIntent = new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER);
// Verify clock implementation
String clockImpls[][] = {
{"HTC Alarm Clock", "com.htc.android.worldclock", "com.htc.android.worldclock.WorldClockTabControl" },
{"Standar Alarm Clock", "com.android.deskclock", "com.android.deskclock.AlarmClock"},
{"Froyo Nexus Alarm Clock", "com.google.android.deskclock", "com.android.deskclock.DeskClock"},
{"Moto Blur Alarm Clock", "com.motorola.blur.alarmclock", "com.motorola.blur.alarmclock.AlarmClock"},
{"Samsung Galaxy Clock", "com.sec.android.app.clockpackage","com.sec.android.app.clockpackage.ClockPackage"} ,
{"Sony Ericsson Xperia Z", "com.sonyericsson.organizer", "com.sonyericsson.organizer.Organizer_WorldClock" },
{"ASUS Tablets", "com.asus.deskclock", "com.asus.deskclock.DeskClock"}
};
boolean foundClockImpl = false;
for(int i=0; i<clockImpls.length; i++) {
String vendor = clockImpls[i][0];
String packageName = clockImpls[i][1];
String className = clockImpls[i][2];
try {
ComponentName cn = new ComponentName(packageName, className);
ActivityInfo aInfo = packageManager.getActivityInfo(cn, PackageManager.GET_META_DATA);
alarmClockIntent.setComponent(cn);
debug("Found " + vendor + " --> " + packageName + "/" + className);
foundClockImpl = true;
} catch (NameNotFoundException e) {
debug(vendor + " does not exists");
}
}
if (foundClockImpl) {
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, alarmClockIntent, 0);
// add pending intent to your component
// ....
}
、私はデフォルトのクロックやアラームマネージャを実行することができます。 frussoに ありがとうございます。
私はこれと似たようなことをしています! http://stackoverflow.com/questions/13523350/android-alarm-clock-ui – toobsco42
http://stackoverflow.com/questions/13523350/android-alarm-clock-ui –