我的应用程序因NullPointerException崩溃,因为android日历不会从dc.getCalendars()返回日历名称集合;来自CN1 Calendar Lib的功能,即使它在iOS iphone版本上工作到这一点。
Device Calendar dc = DeviceCalendar.getInstance();
Collection<String> calNames = dc.getCalendars();
String [] nameArray = calName.toArray(new String[calName.size()]);
它为第三行抛出一个NullPointerException,因为calName是一个空对象,我不能使用size()。同样,代码IS在iPhone上工作,所以似乎android有问题。
提前致谢。
答案 0 :(得分:1)
该方法的javadoc表示,如果您没有权限,getCalendars()
将返回null
您需要使用android.xpermissions
构建提示添加权限。
codename1.arg.android.xpermissions=<uses-permission android:name="android.permission.READ_CALENDAR"/> <uses-permission android:name="android.permission.WRITE_CALENDAR"/>
看起来您还需要设置android.targetSDKVersion=21
有关相关问题,请参阅this SO thread。