1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

BroadcastReceiver funktioniert nicht

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von rufux, 10.12.2010.

  1. rufux, 10.12.2010 #1
    rufux

    rufux Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    84
    Erhaltene Danke:
    5
    Registriert seit:
    11.11.2010
    Hallo ich versuche eine eingehende SMS über mein eigenes Program zu empfangen und später dann auch das ganze auszuwerten.

    Nun habe ich eine Klasse:

    info.java
    Code:
    package com.test.info;
    import android.app.Activity;
    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;
    import android.os.Bundle;
    import android.telephony.SmsMessage;
    import android.util.Log;
    import android.widget.TextView;
    import android.widget.Toast;
    import com.test.main.R;
    
    public class info extends Activity{
     public static final String LOG_TAG = "debug";
     String msgBody="";
     
     public void onCreate(Bundle savedInstanceState){
      super.onCreate(savedInstanceState);
      Log.v(LOG_TAG, "Bis hierher gehts");
     
     
     
     BroadcastReceiver smsreceiver = new BroadcastReceiver() {
     @Override
     public void onReceive(Context context, Intent intent) {
      Bundle bundle = intent.getExtras();
      SmsMessage[] msg = null;
      
      
      if (null != bundle)
      {
       Object[]pdus = (Object[])bundle.get("pdus");
       msg =new SmsMessage[pdus.length];
       
       for (int i=0;i<=msg.length;i++){
        msg[i]=SmsMessage.createFromPdu((byte[])pdus[i]);
        msgBody +=msg[i].getMessageBody().toString();
       }
       Toast.makeText(context, msgBody, Toast.LENGTH_SHORT).show();
       
      }
      
     }
     };
     }
    }
    das ganze habe ich in meinem manifest wie folgt eingebunden:

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="[URL]http://schemas.android.com/apk/res/android[/URL]"
          package="com.test.main"
          android:versionCode="1"
          android:versionName="1.0">
        <application android:icon="@drawable/icon" 
        android:label="@string/app_name" 
        android:theme="@drawable/background">
        
            <activity android:name=".main"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
           
                    <category android:name="android.intent.category.LAUNCHER" />
                    
      
                </intent-filter>
            </activity>
      <activity android:name="com.test.smssending.sms_sending" android:launchMode="singleInstance"></activity>
      
      <activity android:name="com.test.info.info"></activity>
      <receiver android:name="com.test.info.info">
       <intent-filter>
        <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
        <data android:scheme="sms"/>
       </intent-filter>
      </receiver>
        </application>
        <uses-permission android:name="android.permission.READ_SMS"></uses-permission>
        <uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
        <uses-permission android:name="android.permission.RECIEVE_SMS"></uses-permission>
        
        <uses-sdk android:minSdkVersion="4" />
     
    
    </manifest> 
     
    
    ich komme zwar in die Info aber die sms wird nicht ausgegeben!

    Hat jemand eine Idee, woran es liegen könnte?

    vg
     
  2. rufux, 14.12.2010 #2
    rufux

    rufux Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    84
    Erhaltene Danke:
    5
    Registriert seit:
    11.11.2010
    ich schiebs nochmal hoch, vielleicht hat ja doch jemand eine idee
     
  3. Sydneyfunnel, 01.07.2011 #3
    Sydneyfunnel

    Sydneyfunnel Neuer Benutzer

    Beiträge:
    6
    Erhaltene Danke:
    0
    Registriert seit:
    01.07.2011
    Hi,
    schade, dass sich hierzu niemand gemeldet hat. Genau dieses Problem habe ich nämlich auch und wäre über Lösungen (Ansätze) sehr interessiert.

    Auch ich möchte in meiner eigenen App SMS abgreifen und diese dann in meiner App als Textdatei oder in einer Datenbank speichern, um sie später wieder aufrufen zu können.
     
  4. the_alien, 01.07.2011 #4
    the_alien

    the_alien Android-Lexikon

    Beiträge:
    1,559
    Erhaltene Danke:
    184
    Registriert seit:
    04.05.2009
    Der BroadcastReceiver ist ja gar nicht registriert und exisitiert nur anonym in der Klasse, kein wunder das es nicht geht.
     
  5. heitech, 01.07.2011 #5
    heitech

    heitech Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    5
    Registriert seit:
    26.05.2011
    Hallo zusammen,

    ich fange auch gerade erst an mich in Java und in der Android Programmierung zu recht zu finden, aber ich versuche mich mal an einer Aussage (wenn ich hier Bockmist erzähle, dann bitte ich um Korrektur :)

    Wenn du einen Reciever im AndroidManifest deklarierst, muss dann die entsprechende Klasse auch nicht von BroadCastReciever ableiten? Im Moment leitet deine Klasse von Activity ab
     
  6. the_alien, 01.07.2011 #6
    the_alien

    the_alien Android-Lexikon

    Beiträge:
    1,559
    Erhaltene Danke:
    184
    Registriert seit:
    04.05.2009
    Sein BroadcastReceiver hängt da so als anonyme Klasse rum die nie genutzt wird...
     
  7. Sydneyfunnel, 01.07.2011 #7
    Sydneyfunnel

    Sydneyfunnel Neuer Benutzer

    Beiträge:
    6
    Erhaltene Danke:
    0
    Registriert seit:
    01.07.2011
    Hi zusammen,

    also bei mir funktioniert das SMS empfangen in Form von einem Toast.
    Das senden mit einer vorgegebenen Nachricht und Empfänger sollte ich bald auch hinbekommen.

    Was ich jedoch haben möchte ist eine SMS, die ein Datum enthält, die das Datum in eine Liste speichert um es später wieder in Form einer Liste aufrufen kann.

    Kann mir dazu jemand einen Tipp oder Snippet geben?

    Gruß
     
    Zuletzt bearbeitet: 01.07.2011

Diese Seite empfehlen

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. android broadcastreceiver funktioniert nicht