2011-05-22 124 views
11

我想在自己的Android應用中閱讀Gmail郵件。反正有沒有使用android sdk做到這一點?如果不是,還有什麼其他選擇?解析Gmail的原子?使用android SDK閱讀Gmail郵件

+5

發展問題是題外話這裏。 – 2011-05-22 04:18:23

回答

1

它使用GMail的API是可能的,這裏有一些步驟,我發現有幫助。

  1. 先從官方樣片拿到GMailAPI開始,看到here
  2. ,才能在正確的樣品拿到步驟1 + 2以下我發現它有助於瞭解應用程序簽名here的說明當。
  3. 通過運行示例,您可以使用信息here來訪問消息。你可以例如替換MakeRequestTask.getDataFromApi中的實現
  4. 請務必添加至少只讀範圍以獲取適當的權限。在該樣品中的範圍在陣列中定義:

    private static final String[] SCOPES = { GmailScopes.GMAIL_LABELS, mailScopes.GMAIL_READONLY };

  5. 我的目的是讀出所有受試者。我用下面的代碼(這是從官方樣品適應getDataFromApi法):

    private List<String> getDataFromApi() throws IOException { 
        // Get the labels in the user's account. "me" referes to the authentized user. 
        String user = "me"; 
        List<String> labels = new ArrayList<String>(); 
    
        ListMessagesResponse response = mService.users().messages().list(user).execute(); 
    
        for (Message message : response.getMessages()) { 
    
         Message readableMessage = mService.users().messages().get(user, message.getId()).execute(); 
         if (readableMessage.getPayload() != null) { 
          for (MessagePartHeader header : readableMessage.getPayload().getHeaders()) { 
           if (header.getName().compareToIgnoreCase("Subject") == 0) { 
            labels.add(header.getValue()); 
           } 
          } 
         } 
        } 
    
        return labels; 
    }