2016-06-22 11 views
0

マイLocalBroadcastManagerコールバック関数dosenメッセージを受信しませんでした」messegesを受けます。誰かが私の理由を教えてくれますか?LocalBroadcastManagerが

私は私のサムスンギャラクシーS3ミニ(4.1.2 -Jellyビーン、API 16)でそれをやろう。

SenderClass:

public static final String BROADCAST = "com.android.SOME_BROADCAST"; 
private Context context; 

public SenderClass(Context context) { 
     this.context = context; 
     //... 

    Intent intent = new Intent(BROADCAST); 
    //intent.putExtra(EXTRA_SOMEEXTRA, "some extra"); 
    LocalBroadcastManager.getInstance(context).sendBroadcast(intent); 
    //just to keep it simple i do it here 
} 

MainActivity

private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() { 
     @Override 
     public void onReceive(Context context, Intent intent) { 
      Log.d(TAG, "onReceive"); //this is never called! 

     } 
    }; 

@Override 
    protected void onResume() { 
     super.onResume(); 
     Log.d(TAG, "onResume()"); 

     LocalBroadcastManager.getInstance(this).registerReceiver(
       broadcastReceiver, 
       new IntentFilter(SenderClass.BROADCAST) 
     ); 
    } 

    @Override 
    protected void onPause() { 
     super.onPause(); 
     Log.d(TAG, "onPause()"); 

     LocalBroadcastManager.getInstance(this).unregisterReceiver(broadcastReceiver); 
    } 

編集:ここマニフェスト

マニフェスト

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.android...."> 

    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme"> 
     <activity android:name=".Activities.MainActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <service 
      android:name=".Services.MyService" 
      android:enabled="true" 
      android:exported="false"></service> 
    </application> 

</manifest> 
+1

あなたはAndroidマニフェストを投稿できますか? –

+1

は間違った質問かもしれません、MainActivityが見えるときにイベントを受け取っていますか? –

+0

ブロードキャストはどのように送信しますか?あなたの 'SenderClass'がどこから呼ばれていますか? – g4s8

答えて

-1

は、この手順をお試しください: - 活動のonDestroyでのonCreateと登録解除放送であなたの放送を登録します。

おかげで、それはあなたのために役立つかもしれ 。

+0

私はこれをしました、それはあまりにも機能しません。 –

+0

送信者クラスを正しく呼び出すかどうかを確認してください –

関連する問題