2012-01-26 16 views
6

Questo è il codice dell'osservatore SMS. Devo controllare solo gli sms inviati. Quando uso lo content://sms/ ottengo il risultato. Ma perché non ottengo risultati quando utilizzo lo content://sms/sent/? Sto usando Android 2.1.contenuto: // sms/inviato/non funzionante

import android.app.Service; 
import android.content.ContentResolver; 
import android.content.Intent; 
import android.database.ContentObserver; 
import android.database.Cursor; 
import android.net.Uri; 
import android.os.Handler; 
import android.os.IBinder; 
import android.util.Log; 

public class smsSentService extends Service 
{ 
    ContentResolver contentResolver; 
    Uri uri=Uri.parse("content://sms/sent"); 
    Handler handler; 

    @Override 
    public IBinder onBind(Intent arg0) 
    { 
     return null; 
    } 

    @Override 
    public void onCreate() 
    { 
     contentResolver=getContentResolver(); 
     contentResolver.registerContentObserver(uri, true, new contentObserver(handler)); 
     super.onCreate(); 
    } 

    @Override 
    public void onStart(Intent intent, int startId) 
    { 
     super.onStart(intent, startId); 
    } 

    @Override 
    public void onDestroy() 
    { 
     super.onDestroy(); 
    } 

    public class contentObserver extends ContentObserver 
    { 
     public contentObserver(Handler handler) 
     { 
      super(handler); 
     } 

     @Override 
     public void onChange(boolean selfChange) 
     {     
      Cursor cursor = contentResolver.query(uri, null, null, null, null); 
      cursor.moveToFirst(); 
      String content = cursor.getString(cursor.getColumnIndex("body")); 
      Log.d("!!!!!!!!!!!!!", content); 
      super.onChange(selfChange); 
     } 
    } 
} 
+0

Non intende essere contenuto: // sms/out? – giggsey

+1

contenuto: // sms/out non funziona anche. – XXX

+3

@XXX come hai risolto il tuo problema stesso contenuto del problema: // sms/inviato non funziona anche in lollipop – Erum

risposta

4

Date un'occhiata a http://gbandroid.googlecode.com/svn-history/r46/trunk/MobileSpy/src/org/ddth/android/monitor/observer/AndroidSmsWatcher.java

Che il codice in ascolto per le modifiche a tutto il contenuto: // sms e controlla il tipo per vedere se si tratta di un messaggio inviato.

+0

grazie mille! – XXX

+0

@giggsey Perché non è possibile osservare il contenuto: // sms/inviato? – gonzobrains

+0

@gonzobrains Puoi, e ho. Sebbene nessuno dei due sia un modo ufficiale per farlo. – giggsey

Problemi correlati