Как отправить данные из одного приложения в другое в android - PullRequest
0 голосов
/ 18 марта 2020

У меня 2 приложения, A и B, и я хочу отправить 2 + 2 из приложения A в B, а взамен я хочу получить 4 из приложения B, скажите, пожалуйста, процесс и полную базу кода.

1 Ответ

1 голос
/ 18 марта 2020

1. Из приложения A Запустите broadCast1 с обоими номерами.

Intent intent = new Intent("com.myapps.appA");
intent.putExtra("num1",2);
intent.putExtra("num2",2);
sendBroadcast(intent);

теперь зарегистрируйте получателя для broadCast1 в приложении B. Вы можете сделать это в onCreate своей основной активности.

private BroadcastReceiver broadcastReceiver1;

. ..

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

        }
    };
    registerReceiver(broadcastReceiver1, new 
                             IntentFilter("com.myapps.appA");

Внутри 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);

Теперь зарегистрируйте приемник для Broadcast2 Внутри приложения A вы может сделать это в onCreate своей основной активности.

private BroadcastReceiver broadcastReceiver2;

...

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

        }
    };
    registerReceiver(broadcastReceiver2, new 
                            IntentFilter("com.myapps.appB");

Внутри OnRecive () получим результат

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

Самое главное не не забудьте отменить регистрацию получателей в onStop для активности

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...