由于各个Android硬件和软件开发商多会对闹钟进行定制和开发,所以不同的设备上系统闹钟不一定相同,这就给想调用系统闹钟的同学带来一定的困扰。
比如三星的平板P7510 上的系统闹钟 包名为 “com.android.deskclock“,类名为:"com.android.deskclock.AlarmClock ",
三星N810上系统闹钟 包名为:"com.sec.android.app.clockpackage",类名为:"com.sec.android.app.clockpackage.alarm.Alarm",
小米V5上系统闹钟 包名为:"com.android.deskclock",类名为:"com.android.deskclock.DeskClockTabActivity"
可以发现,大部分的系统闹钟包名都包含了 clock, 而类名包含了 Alarm或者DeskClock ,所有,大部分的系统闹钟可以通过这种方式来启动,亲测,在三星,华为,小米设备上是可用的。
代码如下:
public class MainActivity extends Activity
{
/**
* 所有应用
*/
private List allPackageInfos;
/**
* 系统应用
*/
private List sysPackageInfos;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button bt = (Button) findViewById(R.id.bt);

本文介绍了在Android设备上调用系统闹钟和日历的方法,针对不同品牌如三星、华为、小米等设备提供了相应的包名和类名。通过识别包含'com.android.deskclock'和Alarm或DeskClock的类名,可以实现大部分设备的系统闹钟启动。而调用系统日历的代码则相对简单。
3065

被折叠的 条评论
为什么被折叠?



