作者jerryxin (jerry)
看板AndroidDev
标题[问题] 读取API KEY的程式
时间Mon Dec 4 13:47:24 2017
各位高手好
小弟最近在做APP
API接口要载入key
java范例是这样的
public static String Signature(String xData, String AppKey) throws
java.security.SignatureException {
try {
final Base64.Encoder encoder = Base64.getEncoder();
// get an hmac_sha1 key from the raw key bytes
SecretKeySpec signingKey = new
SecretKeySpec(AppKey.getBytes("UTF-8"),"HmacSHA1");
// get an hmac_sha1 Mac instance and initialize with the signing
key
Mac mac = Mac.getInstance("HmacSHA1");
mac.init(signingKey);
// compute the hmac on input data bytes
byte[] rawHmac = mac.doFinal(xData.getBytes("UTF-8"));
String result = encoder.encodeToString(rawHmac);
return result;
} catch (Exception e) {
throw new SignatureException("Failed to generate HMAC : "+
e.getMessage());
}
}
放到Android Studio上
1.一直抓不到Encoder这个method
是不是import 要改抓JAVA 的包才行
或者在Android上不是这样写的
小弟也看了Base64的方法有encode没有encoder
2. throws java.security.SignatureException
这是JAVA的写法 在Android上是不是直接删掉
Android好像不用throws这种方法
--
大热透威力彩兑奖
https://play.google.com/store/apps/details?id=sodf.s125aaqwe&hl=zh-TW
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.137.206.29
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1512366449.A.EDB.html
※ 编辑: jerryxin (220.137.206.29), 12/04/2017 13:48:42
1F:→ ssccg: android在API26才有java8的class(java.util.Base64) 12/04 15:29
2F:→ ssccg: 要用android.util.Base64 12/04 15:29
3F:→ ssccg: 怎麽用看javadoc不就很清楚了... 12/04 15:30
4F:→ ssccg: Android没有不用throw,exception处理都是一样的 12/04 15:30