2016-07-10 22 views
0

私は自分のアプリケーションを使ってカレンダーを読み書きしようとしています。だから私はandroid developer guideからのコードを使用しています:なぜAndroidのスタジオはカレンダーの代わりにCalendarContract.Calendarsを使用しますか?

私はこれをコピーした:

// Run query 
Cursor cur = null; 
ContentResolver cr = getContentResolver(); 
Uri uri = Calendars.CONTENT_URI; 
String selection = "((" + Calendars.ACCOUNT_NAME + " = ?) AND (" 
        + Calendars.ACCOUNT_TYPE + " = ?) AND (" 
        + Calendars.OWNER_ACCOUNT + " = ?))"; 
String[] selectionArgs = new String[] {"[email protected]", "com.google", 
    "[email protected]"}; 
// Submit the query and get a Cursor object back. 
cur = cr.query(uri, EVENT_PROJECTION, selection, selectionArgs, null); 

を私はエラーがシンボルカレンダーを解決することはできません取得しますが。 Androidスタジオのソリューションのご提案は、CalendarsCalendarContract.Calendarsに変更することです。

私はちょっと違いますか?そしておそらくなぜ開発者ガイドに欠陥が含まれているのでしょうか?

+0

これには欠陥がありません。 'import'文は表示されません。 – CommonsWare

答えて

4

唯一の違いはimportです。

import android.provider.CalendarContract.Calendars; 
// Use Calendars 
Calendars.ACCOUNT_NAME 


import android.provider.CalendarContract; 
// Use CalendarContract.Calendars 
CalendarContract.Calendars.ACCOUNT_NAME 
+0

ああ、ありがとう、何らかの理由でアンドロイドスタジオが私に自動的にインポートを追加するオプションを提供しない – Mischa

関連する問題