今天搞了下fluwx这个库,也是遇到了很多问题。
问题一:‘包名不对,请检查包名是否与开放平台上填写的一致’
显示把文档这些看了遍,但是也不是很清楚,还加了下群问别人,主要我没有开发过Android,所以对流程不清楚。
引入fluwx库后,我这里只需要获取登录的code即可,然后吊接口获取openid。
代码:
import 'package:flutter/material.dart'; import 'package:fluwx/fluwx.dart' as fluwx; import 'dart:async'; void main() => runApp(Home()); class Home extends StatefulWidget { @override _Home createState() => new _Home(); } class _Home extends State<Home> { String _result = "无"; @override void initState() { super.initState(); _initFluwx(); fluwx.responseFromAuth.listen((data) { print('xxx'); setState(() { _result = "${data.errCode}"; }); print(data); }); // fluwx.ShareHandler.setWXApi(wxapi) } _initFluwx() async { await fluwx.register( appId: "************", doOnAndroid: true, doOnIOS: true, enableMTA: false); var result = await fluwx.isWeChatInstalled(); print("is installed $result"); } // Platform messages are asynchronous, so we initialize in an async method. Future<void> initPlatformState() async {} @override void dispose() { super.dispose(); _result = null; } @override Widget build(BuildContext context) { // TODO: implement build return Scaffold( body: new Center( child: new Container( margin: const EdgeInsets.only(top: 280.0), child: new Column( children: <Widget>[ new Container( child: new Text('您好,非常高兴你参与本次调查!'), ), new RaisedButton( child: new Text('填写专家信息'), onPressed: () { fluwx .sendAuth(fluwx.WeChatSendAuthModel( scope: 'snsapi_userinfo', state: "wechat_sdk_demo_test")) .then((data) { print(data); //true }); }), new Text(_result) ], ), ), )); } }
但是运行结果如下:
也是百度了半天,才知道需要在微信开放平台上操作,而且我的appid用的是小程序的appid,根本用不了。
问题二: ‘签名问题’
开普特注册完毕之后,开始创建移动应用,需要填写的信息很多
填写完毕之后就是
这里我也是纠结了半天,然后百度,就是签名和包名要对应一致。
在资源中心里面的可以找到,下载签名生成工具
安装在手机上
填写好包名就可以获取签名,包名在package里面。
然后就可以提交审核了,审核完成了才可以开始下一步。