如何在 android 中将数据从 1 个应用程序发送到另一个应用程序

How to send data from 1 app to another in android

我有 2 个应用程序,A 和 B,我想从应用程序 A 发送 2+2 到 B,在 return 我想从应用程序 B 接收 4,请告诉我过程和完整代码基地.

1.From app A 用你的两个号码触发 broadCast1。

Intent intent = new Intent("com.myapps.appA");
intent.putExtra("num1",2);
intent.putExtra("num2",2);
sendBroadcast(intent);
  1. 现在在应用程序 B 中为 broadCast1 注册接收器,您可以在其 Main activity 的 onCreate 中执行此操作activity。

    私有 BroadcastReceiver broadcastReceiver1;

...

broadcastReceiver1 = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {

        }
    };
    registerReceiver(broadcastReceiver1, new 
                             IntentFilter("com.myapps.appA");
  1. 在 onRecieve 内部从意图中获取数字并触发另一个广播结果即

    int num1 = intent.getIntExtra("num1",0);
    int num2 = intent.getIntExtra("num2",0);
    
    Intent intent2 = new Intent("com.myapps.appB");
    intent2.putExtra("sum",num1+num2);
    YourActivity.this.sendBroadcast(intent2);
    
  2. 现在注册 Broadcast2 的接收者在你的 App A 中,你可以在它的 Main activity.

  3. 的 onCreate 中执行此操作

私有广播接收器 broadcastReceiver2;

...

broadcastReceiver2 = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {

        }
    };
    registerReceiver(broadcastReceiver2, new 
                            IntentFilter("com.myapps.appB");
  1. 在其OnRecive()里面得到结果

    int sum = intent.getIntExtra("sum",0);

  2. 最重要的是不要忘记在 activity

  3. 上的 onStop 中注销接收器