android

xiaoxiao2021-02-28  108

发送者布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.android_sender.MainActivity"> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入发送的内容" android:id="@+id/et_main_content"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:text="发送" android:onClick="send"/> </LinearLayout> Activity:  package com.example.android_sender; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.EditText; public class MainActivity extends AppCompatActivity { private EditText et_main_content; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_main_content = (EditText) findViewById(R.id.et_main_content); } public void send(View view){ String content=et_main_content.getText().toString(); //两种类型广播 //有序广播 无序广播 Intent intent=new Intent(); //制定广播的名字 intent.setAction("com.example.android_sender.hug"); //指定广播的内容 intent.putExtra("content",content); //发送无序广播 sendBroadcast(intent); } } 1号接收者静态:manifests:<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.android_recriver01"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:name=".MyReceiver01"> <intent-filter> <action android:name="com.example.android_sender.hug"> </action> </intent-filter> </receiver> </application> </manifest>接收,新建一个类:package com.example.android_recriver01; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; /** * Created by Administrator on 2017/7/11 0011. */ public class MyReceiver01 extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //获取广播的名字 String action=intent.getAction(); if ("com.example.android_sender.hug".equals(action)){ //获取广播的内容 String content=intent.getStringExtra("content"); Log.i("text","广播接收者1号:"+content); } } } import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; /** * Created by Administrator on 2017/7/11 0011. */ public class MyReceiver01 extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //获取广播的名字 String action=intent.getAction(); if ("com.example.android_sender.hug".equals(action)){ //获取广播的内容 String content=intent.getStringExtra("content"); Log.i("text","广播接收者1号:"+content); } } } 2号接收者动态:Activity:package com.example.android_receiver02; import android.content.IntentFilter; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { private MyReceiver02 myReceiver02; private IntentFilter intentFilter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myReceiver02 = new MyReceiver02(); intentFilter = new IntentFilter(); intentFilter.addAction("com.example.android_sender.hug"); } @Override protected void onResume() { super.onResume(); //注册广播 registerReceiver(myReceiver02,intentFilter); } @Override protected void onDestroy() { super.onDestroy(); //取消注册 注销 unregisterReceiver(myReceiver02); } }接收,新建一类:package com.example.android_receiver02; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; /** * Created by Administrator on 2017/7/11 0011. */ public class MyReceiver02 extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //获取广播的名字 String action=intent.getAction(); if ("com.example.android_sender.hug".equals(action)){ //获取广播的内容 String content=intent.getStringExtra("content"); Log.i("text","广播接收者2号:"+content); } } }
转载请注明原文地址: https://www.6miu.com/read-80439.html

最新回复(0)