为什么我的广播没有收到此代码?

时间:2015-09-07 15:37:14

标签: android receiver

为什么我的广播没有收到此代码? 我在下面发布我的代码。当我运行它时,我可以看到发送者广播意图。 但接收方没有回应。 我在棒棒糖AVD上进行了测试。

  • Receiver Manifest
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="kr.co.company.mybroadcastreceiver" >

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <receiver android:name=".MyBroadcastReceiver">
            <intent-filter>
                <action android:name="kr.co.company.START_WEB" />
            </intent-filter>
        </receiver>
    </application>

</manifest>
  • 收件人代码

    public class MyBroadcastReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
            Uri uri = Uri.parse("http://www.google.com");
            Intent intent1 = new Intent(Intent.ACTION_VIEW, uri);
            intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            context.startActivity(intent1 );
        }
    }
    
  • 发件人代码

    public class MyBroadcastSender extends Activity {
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my_broadcast_sender);
    
    Button click = (Button) findViewById(R.id.click);
    click.setOnClickListener(new Button.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent();
            intent.setAction("kr.co.company.START_WEB");
            sendBroadcast(intent);
        }
    });
    }
    }
    

1 个答案:

答案 0 :(得分:0)

如果另一个应用程序正在发送意图,您应该将其添加到清单中的接收器定义:

{{1}}