android - एंड्रॉइड कैसे घटनाओं से उपस्थिति का नाम और ईमेल प्राप्त करने के लिए




events calendar (3)

इसे आपको इसी तरह करना होगा:

final String[] attendeeProjection = new String[]{
    CalendarContract.Attendees._ID,
    CalendarContract.Attendees.EVENT_ID,
    CalendarContract.Attendees.ATTENDEE_NAME,
    CalendarContract.Attendees.ATTENDEE_EMAIL,
    CalendarContract.Attendees.ATTENDEE_TYPE,
    CalendarContract.Attendees.ATTENDEE_RELATIONSHIP,
    CalendarContract.Attendees.ATTENDEE_STATUS
};
final String query = "(" + CalendarContract.Attendees.EVENT_ID + " = ?)";
final String[] args = new String[]{"YOUR_EVENT_ID"};
final Cursor cursor = contentResolver.query(CalendarContract.Attendees.CONTENT_URI, attendeeProjection, query, queryArgs, sortOrder);
cursor.moveToFirst();

while (cursor.moveToNext()) {
    // process the cursors
}

चूंकि इन प्रश्न IO परिचालन हैं, इसलिए उन्हें गैर- UI थ्रेड पर कॉल करने की सलाह दी जाती है; मेरी टिप RxJava के साथ जाना होगा

यदि आप कर्सर और क्वेरीज़ (और बहुत अधिक बॉयलरप्लेट कोड) के साथ काम नहीं करना चाहते हैं, तो कैलेंडर वेपर लाइब्रेरी पर एक नज़र डालें इसमें मैपिंग ऑब्जेक्ट्स और डेटाबेस पंक्तियों का ध्यान रखा जाता है, सीआरयूडी संचालन ऑब्जेक्ट विधियों के साथ किया जा सकता है। उदाहरण के लिए, इस तरह से आप इवेंट ID के लिए सभी उपस्थितियों को पूछते हैं:

final String query = "(" + CalendarContract.Attendees.EVENT_ID + " = ?)";
final String[] args = new String[]{"YOUR_EVENT_ID"};
final List<Attendee> attendees = Attendee.getAttendeesForQuery(query, args, null, getContentResolver());

मैंने belwo कोड का उपयोग करते हुए उपस्थिति का नाम और ईमेल प्राप्त करने की कोशिश की है, लेकिन अभी भी काम नहीं कर रहा है

Cursor cur = contentResolver.query(CalendarContract.Attendees.CONTENT_URI, new String[]{Attendees.ATTENDEE_STATUS, Attendees.ATTENDEE_RELATIONSHIP, Attendees.ATTENDEE_EMAIL}, Attendees.EVENT_ID +"= "+Long.parseLong("10"), null, null);
            if(cur!=null){
                SapGenConstants.showLog("cur size: "+cur.getCount());  
                while(cur.moveToNext()){                                
                    attendee_status = cur.getString(cur.getColumnIndex(Attendees.ATTENDEE_STATUS));
                    attendee_name = cur.getString(cur.getColumnIndex(Attendees.ATTENDEE_RELATIONSHIP));
                    attendee_Email = cur.getString(cur.getColumnIndex(Attendees.ATTENDEE_EMAIL));
                    SapGenConstants.showLog("attendee_status 2: "+attendee_status);  
                    SapGenConstants.showLog("attendee_name 2: "+attendee_name);  
                    SapGenConstants.showLog("attendee_Email 2: "+attendee_Email);
                }
                cur.close();
            }   

मैं एक ही मुद्दे में बस गया - और यह उदाहरण आईडी और इवेंट आईडी, दो अलग-अलग तत्वों के बीच मिश्रण के कारण था।

महत्वपूर्ण बात यह है कि अटेंडीज़ तालिका ईवेंन्ट आईडी पर आधारित होती है - और उदाहरण आईडी नहीं - इसलिए यह आपकी समस्या की व्याख्या कर सकता है। आप "10" को कड़ी मेहनत से कहां प्राप्त करते हैं?

अगर यह एक इंस्टेंस आईडी है, तो उस इवेंट श्रृंखला का ईवेंट आईडी निकालें जो इसे से संबंधित है, और उस ATTENDEES तालिका पर पास करें। देखें कि क्या मदद करता है


Gestures are those subtle motions to trigger interactions between the touch screen and the user. It lasts for the time between the first touch on the screen to the point when the last finger leaves the surface.

Android provides us with a class called GestureDetector using which we can detect common gestures like tapping down and up, swiping vertically and horizontally (fling), long and short press, double taps, etc . and attach listeners to them.

Make our Activity class implement GestureDetector.OnDoubleTapListener (for double tap gesture detection) and GestureDetector.OnGestureListener interfaces and implement all the abstract methods.For more info. you may visit https://developer.android.com/training/gestures/detector.html . Courtesy

For Demo Test. GestureDetectorDemo





android events calendar