今天搞了下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里面。
然后就可以提交審核了,審核完成了才可以開始下一步。