2017-06-25 23 views
0

我有一些BroadcastReceiver名为LocalTokenRequestReceiver在我的应用程序。 我试图从另一个应用程序发送广播。BroadcastReceiver不能通过AndroidManifest工作

这种方法工作得很好:

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     /* ..... */ 
     LocalTokenRequestReceiver localTokenRequestReceiver = new LocalTokenRequestReceiver(); 
     IntentFilter localTokenRequestFilter = new IntentFilter(getString(R.string.local_token_request)); 

     localTokenRequestFilter.addCategory(getString(R.string.broadcast_category)); 
     registerReceiver(localTokenRequestReceiver, localTokenRequestFilter); 
    } 
} 

但它不以这种方式工作:

<receiver 
    android:name=".LocalTokenRequestReceiver" 
    android:enabled="true" 
    android:exported="true"> 
    <intent-filter> 
     <action android:name="@string/local_token_request" /> 

     <category android:name="@string/broadcast_category" /> 
    </intent-filter> 
</receiver> 

为什么这可能是这样?我正在Android 4.2上测试我的应用程序。

回答