android两个app数据共享(一个产生,一个读取)&&签名

文件中

android:sharedUserId属性来使两个应用在同一进程中运行

用同一个UserId来共享数据(只有签名作者相同的才能共享UserId)

签名:Export-> android application->导出哪个工程->keystore create new 签名 将签名保存到哪里 密码

->签名名字 密码 Validity(年限25) 作者名字 组织单位 公司 城市 省份 国家->生成的apk安装包文件

存到哪->finish  

-------------------------------------------------------------------------------

第一个app(产生)

//把数据以文件形式保存在手机内存中

String data="aaaa";

FileOutputStream fos = openFileOutput("a.txt",Mode_Append(追加));

捕捉异常  Exception

fos.write(data.getBytes());

fos.flush();//刷新输出流

finally{关闭}

最后Manifext中android:shareduserid“”自己起id保证唯一性“”

在另外一个app中读取刚才app产生的数据文件

1Manifext

2btnRead=()findViewByid();

btnRead.setOnclickListener{//监听器

//拿到第一个app上下文对象

Context context=createPackageContext("com.ni....."(packName),Context.context_ignore_security(忽略安全性))

//通过上下文对象找到资源

File file=new File(context.getFileDir()+"/"+"a.txt")

if(file,exists()){FileInputStream fis=new FileInputStream(file)

把数据读到字节数组中

byte【】data=new byte【fis.available()】;

fis.read(data);

把数据转换正字符串

String dataStr=new String(data);

//将字符串显示到textview上

rvshow。setText(dataStr);

fis.close();最后关闭流

}

}


你可能感兴趣的:(android两个app数据共享(一个产生,一个读取)&&签名)