ספק תוכן Android ל-Gmail

אפליקציית Gmail ל-Android כוללת ספק תוכן שמפתחים של צד שלישי יכולים להשתמש בו כדי לאחזר מידע על תוויות, כמו שם ומספר ההודעות שלא נקראו, ולהישאר מעודכנים כשהמידע הזה משתנה. לדוגמה, אפליקציה או ווידג'ט יכולים להציג את מספר ההודעות שלא נקראו בתיבת הדואר הנכנס של חשבון מסוים.

לפני שמשתמשים בספק התוכן הזה, צריך להפעיל את השיטה GmailContract.canReadLabels(Context) כדי לקבוע אם הגרסה של אפליקציית Gmail שמותקנת אצל המשתמש תומכת בשאילתות האלה.

חיפוש חשבון Gmail תקף לשליחת שאילתה

כדי לשלוח שאילתה לגבי פרטי התווית, האפליקציה צריכה קודם למצוא את כתובת האימייל של חשבון Gmail תקף. עם ההרשאה GET_ACCOUNTS הבאות, המשתמש AccountManager יכול לקבל את המידע הזה:

// Get the account list, and pick the first one.
final String ACCOUNT_TYPE_GOOGLE = "com.google";
final String[] FEATURES_MAIL = {
        "service_mail"
};
AccountManager.get(this).getAccountsByTypeAndFeatures(ACCOUNT_TYPE_GOOGLE, FEATURES_MAIL,
        new AccountManagerCallback() {
            @Override
            public void run(AccountManagerFuture future) {
                Account[] accounts = null;
                try {
                    accounts = future.getResult();
                    if (accounts != null && accounts.length > 0) {
                        String selectedAccount = accounts[0].name;
                        queryLabels(selectedAccount);
                    }

                } catch (OperationCanceledException oce) {
                    // TODO: handle exception
                } catch (IOException ioe) {
                    // TODO: handle exception
                } catch (AuthenticatorException ae) {
                    // TODO: handle exception
                }
            }
        }, null /* handler */);

שליחת שאילתה לספק התוכן

אחרי שבוחרים כתובת אימייל, אפשר לקבל URI של ContentProvider כדי להריץ שאילתה. סיפקנו מחלקה בשם