今天开发一个小应用需要添加一个响应事件实现跳转到闹钟和日历,在遍访网上各种回答后得出了最简单答案,现记下来供自己与网友共享。
1.跳转到闹钟:
在对应的响应事件中添加:
Intent alarms = new Intent(AlarmClock.ACTION_SET_ALARM);
startActivity(alarms);
别忘了在AndroidManifest.xml文件中添加权限:
<uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
2.跳转到日历:
Intent i = new Intent();
ComponentName cn = null;
if(Integer.parseInt (Build.VERSION.SDK ) >=8){
cn = new ComponentName("com.android.calendar","com.android.calendar.LaunchActivity");
}
else{
cn = new ComponentName("com.google.android.calendar","com.android.calendar.LaunchActivity");
}
i.setComponent(cn);
startActivity(i);
这个不用添加权限。
/***************************分割线***************************/
下面是对上面一些代码的解释:
1.
ComponentName是用来打开其他应用程序中的Activity或服务的。
用法:
Intent i=new Intent();
i.setComponent(new ComponentName(String packageName,String activityName ));
startActivity(i);
2.
Build.VERSION.SDK 系统版本获取
尽管Android向下兼容不好,但是一个程序还是可以在多个平台上跑的。向下兼容不好,接口改变,新的平台上不能用旧的API,旧的平台更不可能用新的API,不等于一个平台需要一个APK。可以在高SDK上开发,并在程序中作版本判断,低版本运行环境使用旧的API。【最后吐槽一下这个编辑器,太难用了!】