我正在尝试获取默认安卓时钟(股票时钟)的包名称。
这是我用来打开股票时钟的意图。
Intent i = new Intent(AlarmClock.ACTION_SHOW_ALARMS);
我试过了
i.getPackage();
但是这会返回null。有没有办法在Android手机中获取默认时钟的包名?
答案 0 :(得分:3)
但是这会返回null
这是因为您尚未在Intent
中设置包名称。
有没有办法在Android手机中获取默认时钟的包名?
不是真的,因为Android中没有“默认时钟”的概念。
但是,您可以使用PackageManager
和queryIntentActivities()
查看哪些活动会对您构建的Intent
做出响应。
答案 1 :(得分:0)
希望这对您有帮助:
final PackageManager packageManager = this.getPackageManager();
Intent intent = new Intent(AlarmClock.ACTION_SHOW_ALARMS);
List<ResolveInfo> packages = packageManager.queryIntentActivities(intent,0);
for(ResolveInfo res : packages){
String package_name = res.activityInfo.packageName;
Log.w("Package Name: ",package_name);
}