对于百川SDK签名验证的问题

SDK是要在wantu.taobao.com生成的。而生成这个SDK其实是要上传一个apk,而这个上传其实就是取他的签名而已。验证就是那张yw222那张图片。重点是你上传的apk的签名是不是跟你的生成的SDK里面的yw222一致。。。
1.run--->出现验证图片不一致
2.再build文件夹里面的outputs/apk里面找到apk
3.用这个apk生成ONESDK
4.用这个one里面的安全图片替换掉你当前的安全图片。
问题解决
最近发现很多人对于安卓签名验证这回事还是理解得不是特别清楚。写个文章避免多次回复。首先我们搞清楚几个问题
Q:debug key 和release key的区别。
A:如果用Eclipse的话,debug key是我们直接run走的key.当然是可以改变的,一般不改变的话默认windows路径在C:\Users\Administrator\.android下的debug.keystore.而release key就是我们自己使用export指定的keystore.
如果用android studio 或者idea intellij的话,我们指定build.gradle就可以了。给个sample :
signingConfigs {
debug {
storeFile file("keystore")
storePassword "123456"
keyAlias
"123456"
keyPassword
"123456"
}
release {
storeFile file("keystore")
storePassword "123456"
keyAlias
"123456"
keyPassword
"123456"
}
}
Q:不管是微信,还是最近的百川,还是其他各个平台的鉴权机制原理都是一样的,都是对应签名和appkey.今天我说下百川的鉴权
A:阿里百川是阿里巴巴自己做的一套自己的开发平台,里面接入了很多开放的能力,对于开发者来讲只需要接入百川就可以接入大部分的能力,比如淘宝的商品,高德的地图,还有IM,还有多媒体,包括短视频拍摄SDK(最近集成的,很强大,而且免费)。
百川的机制是这样的:百川平台将从上传的包内提取签名,包名等信息,并加密存储到下载 SDK 中的安全图片。SDK 启动时会校验当前 apk 和图片中的签名信息,以避免发布的安装包被恶意篡改。另外,请注意如下事项:
1)因为只提取安装包的签名以及包名信息,所以上传时对安装包的内容没有任何要求。
2)请确保后续开发中用于 apk 签名的 keystore 和上传 apk 所使用的保持一致
3)如开发过程中或最终发布应用时需要切换其他 keystore,请上传使用新 keystore 签名的 apk 重新生成 SDK,并拷贝下载 SDK 中新的安全图片 ( res/drawable/yw_1222.jpg) 并替换掉当前开发工程中相同位置的同名文件。
所以非常理解清楚debug.key和release key非常重要,因为你export的apk生成对了图片,然后也替换了。但是你还是直接run的。但是你走的还是debug key。这样当然会出问题。
Q:使用release key作为debug key:
A:复制 your.keystore -> release.keystore
之后在cmd里面执行下面命令,密码替换为你自己的密码
keytool -changealias -storepass 密码 -keystore release.keystore
-alias safecampus -destalias androiddebugkey
keytool -keypasswd -storepass 密码 -keystore release.keystore
-keypass 密码 -alias androiddebugkey -new android
keytool -storepasswd -storepass 密码 -keystore release.keystore
-new android
eclipse选择debug key:
Preferences -> Android -> Build -> Custom debug keystore
对于百川SDK签名验证的问题的更多相关文章
- 转载 -- Cocoapod方式引入百川SDK -报错[!] Unable to find a specification for `xxx`
[cocopad集成百川sdk官网] iOS需要填写BundleID .BundleID要是当前应用的BundleID.勾选淘宝登录基础包下载SDK. 注意事项:将下载的SDK中的身份图片yw_122 ...
- iOS 阿里百川SDK集成注意点
百川SDK是阿里系OneSDK的终极版本,里面包含了所有的阿里系的基本所有的SDK,集成的时候你只需要勾选对应的你需要的模块,然后生成对应的SDK即可,百川主要是针对帮助APP开发者在各种场景下快速. ...
- 阿里百川SDK初始化失败 错误码是203
由idea换到Androidstudio 了,结果报这个错,之前好好的啊!!! 设置问题:
- 百川sdk----自己的WebViewClient不被执行
我在百川sdk的旺旺群中,追问这个问题N多次,一直没有人答复,哎,凡事都要靠自己..... 1.先查看下百川sdk中,是怎么处理咱们传递过去的 WebViewClient public class l ...
- 百川sdk----自己的WebViewClient不被执行【废弃,新版本百川已修复此问题】
我在百川sdk的旺旺群中,追问这个问题N多次,一直没有人答复,哎,凡事都要靠自己..... 1.先查看下百川sdk中,是怎么处理咱们传递过去的 WebViewClient public class l ...
- Could not resolve all files for configuration;Andriod在build.gradle添加compile files()报错
在build.gradle中添加个 compile files('libs/alipaySdk-20170922.jar') 就一直报这个错误 Error:Could not resolve all ...
- Android热修复(HotFix)实战
线上的BUG一直是程序员头疼的问题.有时候仅仅是因为几行的代码,就能让你的用户损失严重.谷歌在Android Studio 加入了Insttan Run 机制.通过Apk动态加载的技术实现了应用非安装 ...
- ios 集成阿里百川的坑-【SDK初始化-iOS】读取身份图片AppKey失败
最简易方法调用淘宝app: 引用文件 #import <AlibcTradeSDK/AlibcTradeSDK.h> AlibcWebViewController* view = [[Al ...
- 趣拍SDK接入问题Android
Android接入趣拍问题. 大部分android开发者第一次下载SDK后,特别是导入到eclipse后,可以运行工程,但点击app中的record没反映,每次点击record按钮 会出现如下log. ...
随机推荐
- ☀【canvas】直线 / 三角形 / 矩形 / 曲线 / 控制点 / 变换
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- 利用dhtmlxGrid做的表格排序的功能。
dhtmlxGrid支持tree和grid. grid之间.grid内部进行拖拽, 如在grid内部进行拖拽,可以增加一行:在grid之间拖拽,第一个grid的记录删除,第二个grid增加一行记录.
- Android Loader详解三:重启与回调
重启装载器 当你使用initLoader()时,如果指定ID的装载器已经存在,则它使用这个装载器.如果不存在呢,它将创建一个新的.但是有时你却是想丢弃旧的然后开始新的数据. 要想丢弃旧数据,你应使用r ...
- 判斷作業系統為 64bit 或 32bit z
有時我們在開發Windows 桌面應用程式時,會發生一些弔詭的事情,作業系統位元數就是一個蠻重要的小細節,若您寫的應用程式在Windows 的32bit 作業系統上可以完美的運行,但不見得在64bit ...
- ExtJS练手
Ext.onReady(function () { //给grid添加数据源 var store = new Ext.data.JsonStore({ root: 'rows', totalPrope ...
- Oracle statspack 安装及使用
转载:http://blog.csdn.net/joinplay/article/details/23358133 oracle statspack 工具从oracle 8.1.6开始被引用,从ora ...
- 【转】shell 教程——03 Shell脚本语言与编译型语言的差异
大体上,可以将程序设计语言可以分为两类:编译型语言和解释型语言. 编译型语言 很多传统的程序设计语言,例如Fortran.Ada.Pascal.C.C++和Java,都是编译型语言.这类语言需要预先将 ...
- Echarts双轴图的配置.
在series中的数据组加个属性,yAxisIndex: 1,表示第二个数据用的是第二个y轴,不加这个属性的话都是默认0,即第一个属性,再配置yAxis的值第一个为左侧坐标轴,右册坐标轴为第二个配置参 ...
- 探索AutoLayout的本质和解决一些问题
最近频繁使用AutoLayout,记录下自己的一些发现和问题的解决(不是教程) 1.简介 Auto Layout 是苹果在 iOS 6中新引入的布局方式,旨在解决不同尺寸屏幕的适配问题. 屏幕适配工作 ...
- String类、 StringBuffer、基本数据类型对象包装类
一.概述 Sting s1 = "abc"; //s1是一个类类型变量,"abc"是一个对象. String s2 = new String(" ...