这篇文章主要讲解了“在Flutter工程基础上怎么集成及运行小程序”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在Flutter工程基础上怎么集成及运行小程序”吧!
新建 Flutter 样例工程
Flutter 的安装
本文将使用 Flutter1.12.hotfix8 稳定版作为开发环境。
下载 FlutterSDK
配置 PATH 环境路径
flutter doctor 检查环境
新建 Flutter 工程
flutter create --template=app --org=com.finogeeks.flutter --project-name=mini_flutter -i objc -a java ./mini_flutte
执行以上命令后,正常将会提示以下信息
All done![✓] Flutter: is fully installed. (Channel stable, v1.12.13+hotfix.8, on Mac OS X 10.15.3 19D76, locale zh-Hans-CN)[✓] Android toolchain - develop for Android devices: is fully installed. (Android SDK version 29.0.3)[✓] Xcode - develop for iOS and macOS: is fully installed. (Xcode 11.3.1)[✓] Android Studio: is fully installed. (version 3.6)[!] IntelliJ IDEA Ultimate Edition: is partially installed; more components are available. (version 2019.3.3)[✓] VS Code: is fully installed. (version 1.42.1)[!] Proxy Configuration: is partially installed; more components are available.[✓] Connected device: is fully installed. (1 available)Run "flutter doctor" for information about installing additional components.In order to run your application, type:
$ cd mini_flutte
$ flutter run
Your application code is in mini_flutter/lib/main.dart.
注意!flutter 需要依赖本地安装对应的 iOS,Android 开发工具,即需要安装 Xcode 和 AndroidStudio。具体安装使用方法这里不赘述。
这里我们用 VSCode+Xcode 作为开发组合环境,如果要正常调试需要确保以下三个检查项目是正常的。
[✓] Xcode - develop for iOS and macOS: is fully installed. (Xcode 11.3.1)
Flutter: is fully installed. (Channel stable, v1.12.13+hotfix.8, on Mac OS X 10.15.3 19D76, locale zh-Hans-CN)
VS Code: is fully installed. (version 1.42.1)
[!] Proxy Configuration: is partially installed; more components are available.
集成小程序解析引擎
这里我们采用凡泰免费社区版的小程序解析引擎,只需要 10 行代码量不到即可完成小程序集成。
引入小程序引擎插件。在 pubspec.yaml 文件中引入小程序 Flutter 插件
mop: ^0.2.0
2.在 main.dart 文件中增加以下小程序引擎初始化方法。Mop.instance.initialize这里需要用到 sdkkey 和 secret。可以直接在
https://mp.finogeeks.com免费注册获取。注册使用方法可以参考
接入指引
// Platform messages are asynchronous, so we initialize in an async method.
Future<void> init() async {
if (Platform.isIOS) {
final res = await Mop.instance.initialize(
'22LyZEib0gLTQdU3MUauAYEY1h9s9YXzmGuSgQrin7UA', '9e05fa0015d7dbfa',
apiServer: 'https://mp.finogeeks.com', apiPrefix: '/api/v1/mop');
print(res);
} else if (Platform.isAndroid) {
final res = await Mop.instance.initialize(
'22LyZEib0gLTQdU3MUauAYEY1h9s9YXzmGuSgQrin7UA', '9e05fa0015d7dbfa',
apiServer: 'https://mp.finogeeks.com', apiPrefix: '/api/v1/mop');
print(res);
}
if (!mounted) return;
}
3、在主界面上增加三个按钮来打开小程序
Center(
child: Container(
padding: EdgeInsets.only(
top: 20,
),
child: Column(
children: <Widget>[
Container(
width: 140,
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(5)),
gradient: LinearGradient(
colors: const [Color(0xFF12767e), Color(0xFF0dabb8)],
stops: const [0.0, 1.0],
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
),
),
child: FlatButton(
onPressed: () {
Mop.instance.openApplet('5e3c147a188211000141e9b1',
path: 'pages/index/index', query: '');
},
child: Text(
'打开画图小程序',
style: TextStyle(color: Colors.white),
),
),
),
SizedBox(height: 30),
Container(
width: 140,
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(5)),
gradient: LinearGradient(
colors: const [Color(0xFF12767e), Color(0xFF0dabb8)],
stops: const [0.0, 1.0],
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
),
),
child: FlatButton(
onPressed: () {
Mop.instance.openApplet('5e4d123647edd60001055df1');
},
child: Text(
'打开官方小程序',
style: TextStyle(color: Colors.white),
),
),
),
SizedBox(height: 30),
Container(
width: 140,
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(5)),
gradient: LinearGradient(
colors: const [Color(0xFF12767e), Color(0xFF0dabb8)],
stops: const [0.0, 1.0],
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
),
),
child: FlatButton(
onPressed: () {
Mop.instance.openApplet('5e637a18cbfae4000170fa7a');
},
child: Text(
'我的对账单',
style: TextStyle(color: Colors.white),
),
),
),
],
),
),
)
4、运行 Flutter 程序
感谢各位的阅读,以上就是“在Flutter工程基础上怎么集成及运行小程序”的内容了,经过本文的学习后,相信大家对在Flutter工程基础上怎么集成及运行小程序这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是天达云,小编将为大家推送更多相关知识点的文章,欢迎关注!