两个APP共享AccountManager管理的账号
2016-03-28 13:03
483 查看
首先说下背景:我有一个账号APP,用来进行账号管理,还有一个APP(称为运动APP),运动APP需要账号APP提供Jar包,进行账号的操作。账号APP用Android AccountManager进行账号管理,这两个APP共享账号信息。
我师傅告诉我,两个APP共享账号信息需要满足两个条件,一个是在同一个用户组里,还有一个是使用相同的签名。感谢我师傅!
当然,上述两个条件的前提是两个APP的accountType是相同的。
下面说下我的错误历程:
刚开始我的账号APP和运动APP不能够兼容,安装了账号APP后运动APP崩溃,反之亦然,提升错误为
W/System.err: java.lang.SecurityException: caller uid 10121 is different than the authenticator's uid
百度了下这个错误是因为accountType设置不同导致的,比较好的解答位置:
http://stackoverflow.com/questions/3774282/securityexception-caller-uid-xxxx-is-different-than-the-authenticators-uid/5329490#5329490
但是我的两个APP的accountType是相同的,res/xml/authenticator.xml里的accountType也是相同的。提示上述错误就有点怪了,自己搞了好久,没搞出来,问了下师傅,师傅说我的APP要满足以上的两个条件。这才能够让两个APP兼容。
在解决问题的过程中,遇到了jks签名文件,我要在android studio中测试已签名的APP,在app/build.gradle的android{}下面添加配置签名信息
在命令行中输入以下命令:
keytool -list -v -keystore C:\Users\He\Desktop\******.jks -storepass xxx
我把jks文件的名字用***隐藏掉了,xxx为签名的密码。
里面的别名就是keyAlias。
感觉自己能写很多,但写着写着就感觉没什么了。就这些吧,里面的知识点自己有时间还是要学习的
我师傅告诉我,两个APP共享账号信息需要满足两个条件,一个是在同一个用户组里,还有一个是使用相同的签名。感谢我师傅!
当然,上述两个条件的前提是两个APP的accountType是相同的。
下面说下我的错误历程:
刚开始我的账号APP和运动APP不能够兼容,安装了账号APP后运动APP崩溃,反之亦然,提升错误为
W/System.err: java.lang.SecurityException: caller uid 10121 is different than the authenticator's uid
百度了下这个错误是因为accountType设置不同导致的,比较好的解答位置:
http://stackoverflow.com/questions/3774282/securityexception-caller-uid-xxxx-is-different-than-the-authenticators-uid/5329490#5329490
但是我的两个APP的accountType是相同的,res/xml/authenticator.xml里的accountType也是相同的。提示上述错误就有点怪了,自己搞了好久,没搞出来,问了下师傅,师傅说我的APP要满足以上的两个条件。这才能够让两个APP兼容。
在解决问题的过程中,遇到了jks签名文件,我要在android studio中测试已签名的APP,在app/build.gradle的android{}下面添加配置签名信息
//配置keystore签名 signingConfigs { release { storeFile file("******.jks") storePassword "******" keyAlias "******" keyPassword "******" } } buildTypes { debug { signingConfig signingConfigs.release } release { signingConfig signingConfigs.release } }因为不知道keyAlias是什么,怎么查询呢?需要使用keytool查看jks中的签名信息,
在命令行中输入以下命令:
keytool -list -v -keystore C:\Users\He\Desktop\******.jks -storepass xxx
我把jks文件的名字用***隐藏掉了,xxx为签名的密码。
里面的别名就是keyAlias。
感觉自己能写很多,但写着写着就感觉没什么了。就这些吧,里面的知识点自己有时间还是要学习的
相关文章推荐
- Android的快速入门(66期第一天)
- Object-C 中 的重要类型
- Object-C基础(15)——NSBundle与对象归档
- android 关于跳转系统设置页面
- 微信充值钱数更改但微信充值单钱数不变的问题
- WaitForSingleObject函数的使用
- RADASM中使用DOSBOX来运行DOS/BIOS程序(16位)
- JNI学习一(AndroidStudio NDK环境配置)
- [better practice系列]Android中更舒服的使用log
- Fuzzy C-Means and Principle Component Analysis Approaching to Images (Numbers 0 ans 6) Recognition
- 行为触发之Android自动化测试instrumentation(一)
- Android应用程序退出时
- Android activity的生命周期
- Android adb 打开mediascanner
- Android内存泄漏的各种原因详解
- android内存管理机制(一)
- 从手机相册,相机选取照片
- Android内存管理机制详解
- Unity3D手游开发日记(6) - 适合移动平台的水深处理
- 避免Android内存泄露