-
Notifications
You must be signed in to change notification settings - Fork 28
升级到7.0.0以后API功能增加
pepperer edited this page Aug 7, 2023
·
17 revisions
在application初始化发生改变
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// appKey可以前往<a href="https://doc.youzanyun.com/doc#/content/35675/38923">获取安全码</a>
YouzanSDK.init(this, "client_id","appKey", new YouZanSDKX5Adapter());
//为了开发者在使用调试期间更快使用体验,可以将其设置成开发模式则不进行安全码校验
// YouzanSDK.isDebug(false)
}
}
自7.0.0以后,增加默认加载页面loading,并且支持自定义配置。
//调用YouzanBrowser的needLoading方法,开启默认loading弹框
yzBrowser?.loadUrl(loadUrl())
yzBrowser?.needLoading(true)
YouzanBrowser提供自定义设置loading样式
//YouzanBrowser 提供设置本地资源文件方法
public void setLoadingImage(final int imageResoure) {
this.imageRes = imageResoure;
}
//YouzanBrowser 提供设置 请求资源文件
public void setLoadingImage(final String imageResoure) {
this.imageUrl = imageResoure;
}
//YouzanBrowser 提供设置 自定义loadingview
public void setLoadingView(View loadingView) {
this.loadingView = loadingView;
}
使用
yzBrowser?.needLoading(true)
//yzBrowser?.setLoadingImage(R.mipmap.loading)
//yzBrowser?.setLoadingImage("http://xxxx.png")
自basic7.0.2和x57.0.6以后,增加自定义处理校验失败逻辑
//校验失败,YouzanSDK.isReady()会返回false,可以通过webview处理
if (!YouzanSDK.isReady()){
Log.e("YZSDK","--------------------")
Toast.makeText(context!!,"验证失败,再次重试",Toast.LENGTH_SHORT).show()
YouzanSDK.init(context!!, QimaApp.CLIENT_ID, QimaApp.APP_KEY, YouZanSDKX5Adapter())
yzBrowser?.postDelayed({
Toast.makeText(context!!,"开始重试",Toast.LENGTH_SHORT).show()
yzBrowser?.reloadWebView(context!!)
initYouzanBrower()
},2000)
}
H5长按图片保存监听 是否必须实现:否 触发条件:长按图片保存诗
view.setSaveImageListener(new SaveImageListener() {
@Override
public boolean onSaveImage(WebView.HitTestResult result) throws ActivityNotFoundException {
// TODO 接管逻辑
Toast.makeText(view.getContext(),"接管",Toast.LENGTH_SHORT).show();
return true;
// //TODO 权限申请逻辑
// return false;
}
});
说明:return true;表示接管逻辑,不再走appsdk默认逻辑,需要自己实现 return false;表示可以继续走appsdk默认逻辑
basic和x5 在7.1.0版本增加 登陆方法使用: 参数对应以前文档:https://doc.youzanyun.com/doc#/content/35675/36984
fun queryToken(context: Context, openUserId: String?) {
val userInfo = TreeMap<String, String>()
// userInfo["avatar"] = ""
userInfo["clientId"] = ""
// userInfo["extra"] = ""
// userInfo["nickName"] = "5016c8ba77258837d6"
userInfo["openId"] = openUserId!!
// userInfo["sex"] = "1"
// userInfo["telephone"] = openUserId
YouzanSDK.yzlogin(userInfo,object : YzLoginCallback{
override fun onSuccess(token: YouzanToken?) {
yzBrowser?.sync(token)
}
override fun onFail(p0: String?) {
}
@Override
public void onFail(String message) {
}
});
basic和x5 在7.1.6版本优化 登陆方法使用: 参数对应以前文档:https://doc.youzanyun.com/doc#/content/35675/36984
/**
* 用户登陆
* @param openUserId 必传,开发者自身系统的用户ID,是三方App帐号在有赞的唯一标示符,如更换将导致原用户数据丢失
* @param avatar 必传,用户头像,建议传入https的url,如果不传入请使用 ""(空字符串)
* @param extra 必传,用户额外参数,如果不传入请使用 ""(空字符串)
* @param nickName 必传,用户昵称,如果不传入请使用 ""(空字符串)
* @param gender 必传,性别 0(保密)1(男)2(女),如果不传入请使用 ""(空字符串)
* @param yzLoginCallback 登陆完成后回调,登陆成功 YouzanToken 会返回有赞openId
*/
YouzanSDK.yzlogin("17816122521","5016c8ba77258837d6","","5016c8ba77258837d6","1", new YzLoginCallback() {
@Override
public void onSuccess(YouzanToken data) {
view.post(new Runnable() {
@Override
public void run() {
view.sync(data);
}
});
}
@Override
public void onFail(String message) {
}
});
//调用AbsAuthEvent需要注册事件:
client.subscribe(new AbsCheckAuthMobileEvent(){});
//认证
client.subscribe(new AbsAuthEvent() {});
注意: 上述参数如果不传入请使用 ""(空字符串), 传null接口有报错。