Android应用互通的实现
16lz
2021-01-26
Android应用互通的实现。
游戏à第三方登录sdkà第三方app
多个Activity页面间相互传递数据
调用sdk登录时,开启第三方app的指定页面。
第三方页面配置
android:name=".SecondActivity"
android:exported="true">
开启方式,intent传递数据
Intent intent = new Intent();ComponentName comp = new ComponentName("com.example.mytestopenotherapp", "com.example.mytestopenotherapp.SecondActivity");intent.setComponent(comp);intent.putExtra("info", "second");intent.putExtra("package_info",getApplicationInfo().packageName);
intent.putExtra("back_class", GyyxBackActivity.class.toString());startActivity(intent);
回调实现方式
游戏应用创建一个activity,当第三方app数据处理完成后。开启这个传递的页面。
在这个新页面中处理返回的数据
ActivityForResult方式
在开启的时候使用
startActivityForResult(intent,0);
第三方数据处理完成后
Intent intent = new Intent();intent.putExtra("back_info", "backInfo");setResult(0,intent);
在游戏的页面中onActivityResult中处理返回数据
@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); LogUtil.e("result.......data = "+data.getExtras().getString("back_info")); listener.onComplete(null);}
Adroid:eported
设置值时:
当exported为true时,表示可以被其它应用打开·。
为false,不能被其他应用打开。
不是设置值时:
当activity包含intent filter时,默认为false。
无intent filter时,默认为true
注意:设置值并且有intentfilter时,以设置的值为准。
android:name=".SecondActivity" android:exported="true">
Intent filter
待续...
更多相关文章
- Android页面之间进行数据回传
- Android(安卓)ActionBar和ToolBar的使用
- Android(安卓)CoordinatorLayout实战案例学习《一》
- android画图----ShapeDrawable和shader
- Android(安卓)MenuItem 设置文本颜色-TextColor设置
- android-ProgressBar
- Android中visibility属性详解
- Android动态壁纸解析
- android中多语言的设置