PhoneGap中文网

标题: ionic中ngcordova调用calendar问题 [打印本页]

作者: Bourne    时间: 2015-7-14 16:38
标题: ionic中ngcordova调用calendar问题
platform是 android

想调用日历,用这个插件 http://ngcordova.com/docs/plugins/calendar/ ,但是报错了,
TypeError: Object #<Object> has no method 'openCalendar'  
这个是怎么回事呢   

我看 http://ngcordova.com/docs/plugins/calendar/ 这页里面没有介绍openCalendar这个方法,但是我看
https://github.com/EddyVerbruggen/Calendar-PhoneGap-Plugin.git 这里面说android里有openCalendar方法,
在controller里面是这样调用的  $cordovaCalendar.openCalendar();  报下面这个错误:

$cordovaCalendar.openCalendar();       controller中就是这么调用的  

如果不用openCalendar,android下可以用createCalendar这个吗,比如我用下面这样调用,



$cordovaCalendar.createCalendar({
                    calendarName: '日历',
                    calendarColor: '#B0E2FF'
                  }).then(function (result) {
                    // success
                  }, function (err) {
                    // error
                  });


报错如下:

07-14 15:17:59.619: E/ActivityThread(11802): Failed to find provider info for com.android.calendar
07-14 15:17:59.619: E/AndroidRuntime(11802): FATAL EXCEPTION: pool-1-thread-2
07-14 15:17:59.619: E/AndroidRuntime(11802): java.lang.IllegalArgumentException: Unknown URL content://com.android.calendar/calendars
07-14 15:17:59.619: E/AndroidRuntime(11802):         at android.content.ContentResolver.insert(ContentResolver.java:862)
07-14 15:17:59.619: E/AndroidRuntime(11802):         at nl.xservices.plugins.accessor.AbstractCalendarAccessor.createCalendar(AbstractCalendarAccessor.java:514)
07-14 15:17:59.619: E/AndroidRuntime(11802):         at nl.xservices.plugins.Calendar$4.run(Calendar.java:159)
07-14 15:17:59.619: E/AndroidRuntime(11802):         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
07-14 15:17:59.619: E/AndroidRuntime(11802):         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
07-14 15:17:59.619: E/AndroidRuntime(11802):         at java.lang.Thread.run(Thread.java:856)


【我在manifest里添加权限了
    <uses-permission android:name="android.permission.READ_CALENDAR" />
    <uses-permission android:name="android.permission.WRITE_CALENDAR" />】

请问我想调这个插件,该怎么写,谢谢



作者: 你懂的    时间: 2015-7-14 20:50
他那个好像确实有问题   试试这个

http://plugins.cordova.io/#/pack ... es.plugins.calendar
作者: Bourne    时间: 2015-7-15 00:09
测试一把 发表于 2015-7-14 20:50
他那个好像确实有问题   试试这个

http://plugins.cordova.io/#/package/nl.x-services.plugins.calendar ...

也不行,你给的这个插件和我发的其实是同一个

真机调试报以下错误:
07-14 23:47:39.450: E/BroadcastQueue(2859): processNextBroadcast log test
07-14 23:47:39.500: I/CalendarProvider2(11978): Sending notification intent: Intent { act=android.intent.action.PROVIDER_CHANGED dat=content://com.android.calendar }
07-14 23:47:39.500: W/ContentResolver(11978): Failed to get type for: content://com.android.calendar (Unknown URL content://com.android.calendar)
07-14 23:47:39.500: E/BroadcastQueue(2859): processNextBroadcast log test
07-14 23:47:39.520: E/BroadcastQueue(2859): processNextBroadcast log test
07-14 23:47:39.540: E/BroadcastQueue(2859): processNextBroadcast log test
07-14 23:47:39.540: I/CalendarSimpleUiPRovider(12015): onReceive[intent]Intent { act=android.intent.action.PROVIDER_CHANGED dat=content://com.android.calendar flg=0x10 cmp=com.android.calendar/.simpleui.CalendarSimpleUiPRovider }
07-14 23:47:39.540: I/CalendarSimpleUiPRovider(12015): onConfigurationChanged
作者: 你懂的    时间: 2015-7-15 10:27
http://www.webhek.com/html5-date/

直接用 input type=date 试试 不需要任何插件 就可以调用手机日期




欢迎光临 PhoneGap中文网 (http://bbs.phonegap100.com/) Powered by Discuz! X3.2