1.开通极光认证
极光官网创建应用后,在【认证设置】的【集成设置】中填写信息,Android的应用签名需要下载签名工具获取,ios填写Bundle ID,填写完毕后提交审核
在【认证设置】的【一键登录】中填写RSA 加密公钥
加密公钥在在线生成公钥私钥对,RSA公私钥生成-ME2在线工具中获取,开通需要集成的平台
注意:RSA加密公钥位数1024位,密钥格式PKCS#8
2.引入插件及相关配置
dependencies:
jverify: 2.2.8
在android/app/build.gradle文件中进行以下配置:
android: {
...
manifestPlaceholders = [
JPUSH_PKGNAME : applicationId, //填写信息时的应用包名
JPUSH_APPKEY : "appkey", // 极光后台该应用对应的Appkey
JPUSH_CHANNEL : "developer-default", //暂时填写默认值即可.
]
...
}
3. 极光认证初始化
在登录界面initState进行初始化:
import 'package:jverify/jverify.dart';
final Jverify jverify = new Jverify();
/// 统一 key
final String f_result_key = "result";
/// 错误码
final String f_code_key = "code";
/// 回调的提示信息,统一返回 flutter 为 message
final String f_msg_key = "message";
/// 运营商信息
final String f_opr_key = "operator";
@override
void initState() {
await initPlatformState();
await isInitSuccess();
await preLogin();
}
void initPlatformState() {
// 初始化 SDK 之前添加监听
jverify.addSDKSetupCallBackListener((JVSDKSetupEvent event) {
print("receive sdk setup call back event :${event.toMap()}");
});
// 是否打开调试模式
jverify.setDebugMode(true);
// 初始化sdk
jverify.setup(
appKey: "填写应用的AppKey",
channel: "devloper-default"
);
// 授权页面点击事件监听
jverify.addAuthPageEventListener((JVAuthPageEvent event) {
print("receive auth page event :${event.toMap()}");
});
}
/// sdk 初始化是否完成
void isInitSuccess() {
jverify.isInitSuccess().then((map) {
bool result = map[f_result_key];
if