2012-06-26 6 views
0

나는 안드로이드 응용 프로그램을 가지고 지금,이 응용 프로그램은 이메일을 읽을 필요가있다. 이 코드를 찾았습니다 :내 자신의 안드로이드 애플 리케이션의 메일을 읽기

 protected ArrayList<Mail> doInBackground(Void... params) { 
    ArrayList<Mail> mails = new ArrayList<Mail>(32); 
     boolean finish = false; 

     try { 
      String direcCompleta = URI_PREFIX + email; 
      Uri a = Uri.parse(direcCompleta); 
      Cursor cCursor = resolver.query(a, null, null , null, null); 

      while (cCursor.moveToNext() && (! finish)) { 
       finish = fromTime.before(new Date(cCursor.getLong(1))); 

       if (! finish){ 
        String conv_id = cCursor.getString(cCursor.getColumnIndex("_id")); 
        Uri uri  = Uri.parse(URI_PREFIX + email + "/" + conv_id + "/messages"); 
        Cursor mCursor = resolver.query(uri, MESSAGE_PROJECTION, null, null, null);      

        while (mCursor.moveToNext() && (! finish)){ 
         long mtime = mCursor.getLong(4); 
         finish = fromTime.before(new Date(mtime)); 
         if (! finish){ 
          mails.add(new Mail(mCursor.getString(0), mCursor.getString(2), mCursor.getString(1), mCursor.getString(4), mtime));        
         } 
        }      
       }    
      } 
     } catch (Exception ex){ 
      Log.e("GmailReadApp", ex.toString()); 
      mails.add(new Mail(null, null, ex.toString(), ex.toString(), 0)); 
     } 

     return mails; 
    } 

그러나 cCursor는 null입니다. 내 메일 계정이 app : "Email"입니다. 왜냐하면 저는 Android SDK를 사용하기 때문에 "GMAIL"앱이 없습니다. 그리고 안드로이드 SDK 시장을 가지고 있지 않습니다.

누군가 나를 도울 수 있습니까? 감사. (상관없이 그것은 ... Gmail은, 야후, 핫메일에 대한 인 경우)

답변

0

나는 안드로이드 응용 프로그램을 가지고, 지금,이 응용 프로그램은 자신의 전자 메일 클라이언트를 작성 이메일

을 읽을 필요 처음부터. JavaMail의 Android 포트가 어딘가에 떠 다니고 있습니다. 또는 기존 오픈 소스 이메일 클라이언트 (예 : K9)를 잡고 수정하십시오.

는이 코드

문서화 및 안드로이드에서 사용할 수 있도록 지원 URI_PREFIX의 어떤 가능한 값은 없습니다를 발견했다. 문서화되지 않은 값과 지원되지 않는 값의 경우에도 해당 메시지를 읽는 데 필요한 권한을 보유 할 수 없습니다.

+0

매우 감사합니다 !!!! – Nobelisco

관련 문제