一个android app打开另外一个app,并传替数据(个人学习笔记)

有时需要做一个app,用来启动其他app,其他app不显示启动的图标的,并传替数据这样的业务,比如要从Aapp启动Bapp,Bapp在手机桌面上不显示自己的应用图标的,并传替数据。

核心代码:

在Aapp中点击按钮,启动Bapp,核心代码:

private void toPadFeedbackAPP() {
		try {
			Intent intent = new Intent("com.value.padfeedback", Uri.parse("data://"+assembleLoginData()));
			this.startActivity(intent);
		} catch (Exception e) {
			Toast.makeText(this, "启动平板反馈App异常", Toast.LENGTH_SHORT).show();
		}
		
	}
  方法 assembleLoginData()可以设置需要传替的数据。
private String assembleLoginData(){
		String json = "今天天气不错";
		
		return json;
	}

在Bapp中需要在清单文件中修改启动模式,打开AndroidManifest.xml,找到自己的启动activity,如下修改

<activity
            android:name=".SplashActivity"
            android:configChanges="keyboardHidden|orientation|screenSize|navigation"
            android:screenOrientation="landscape" >
            <intent-filter>
                <action android:name="com.value.padfeedback" />
                <category android:name="android.intent.category.DEFAULT" />             
                <data android:scheme="data" />
            </intent-filter>         
        </activity>
注意: android:name="com.value.padfeedback"需要和Aapp中的 new Intent("com.value.padfeedback", Uri.parse("data://"+assembleLoginData()))里面一致。

这样就可以启动SplashActivity了,然后就是接收数据,写在SplashActivity中的onCreat()方法中即可。

		Intent intent = getIntent();
		Uri uri = intent.getData();
		String uriStr = uri.getAuthority();
uriStr就是接收到的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值