你好,我现在做关于安卓广播的问题。现在有如下代码
这是MainActivity的代码
public class MainActivity extends AppCompatActivity {
Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.activity_main);
btn=findViewById(R.id.btn1);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent();
intent.setAction("android.intent.action.s");
intent.putExtra("yes","yes");
MainActivity.this.sendBroadcast(intent);
}
});
}
这是Main2Activity的代码
public class Main2Activity extends AppCompatActivity {
Button btn;
String yes1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
yes1=getIntent().getStringExtra("yes");
Log.e("我的活动","我的活动2");
btn=findViewById(R.id.btn2);
}
}
这是Manifests清单的代码
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapplication">
<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=".Main2Activity">
<intent-filter>
<action android:name="android.intent.action.s"></action>
</intent-filter>
</activity>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
当我点击MainActivity的按钮时,发现点击后没有任何反应。这是为什么?
我的要求是
1、MainActivity不能跳转到Main2Activity的界面,不能跳转到Main2Activity的界面
2、MainActivity能执行Main2Activity里面的onCreate方法,能把log打印出来,就是那个“我的活动”,“我的活动2”这几个字能打印出来
3、MainActivity能不跳转,将值传到Main2Activity中,Main2Activity的yes1字符串不能为null或“”,也就是空值或者空字符串。而是能传值,将这个yes字符串传到Main2Activity里面
要求就是以上三点
大家认为应该怎么办?怎么做才可以。