Flutter版本Readhub开源

  • 本文为 AriesHoo 原创,未经授权禁止转载!
  • 原文地址

相关文章一:用Flutter给Readhub写一个App
相关文章二:Flutter版本Readhub开源
相关文章三:Flutter iOS真机调试及打包过程记录

前言

说来惭愧,去年开始学习Flutter开发时用网上的Api给Readhub开发了个Flutter版App,五个月前(2020-6-26)整理了下发了一篇文章用Flutter给Readhub写一个App,当时准备说再整理下源码给开源下,没想到一拖就5个月过去了。我这拖延症。

最近将源码整理了下,升级了下SDK及各个三方库。并用测试证书打包了一个iOS测试版发布到蒲公英。

GitHub地址 Gitee地址

因为前面文章介绍了不少的页面及实现功能相关描述,这里只简要介绍下项目的分包及使用的三方库及当前环境。

效果一览

Android 部分

浅色主题 深色主题
Flutter版本Readhub开源_第1张图片
Flutter版本Readhub开源_第2张图片
资讯详情 更多操作
Flutter版本Readhub开源_第3张图片
Flutter版本Readhub开源_第4张图片
选择主题 社交分享
Flutter版本Readhub开源_第5张图片
Flutter版本Readhub开源_第6张图片

iOS 部分

浅色主题 深色主题
Flutter版本Readhub开源_第7张图片
Flutter版本Readhub开源_第8张图片
资讯详情 更多操作
Flutter版本Readhub开源_第9张图片
Flutter版本Readhub开源_第10张图片
选择主题 社交分享
Flutter版本Readhub开源_第11张图片
Flutter版本Readhub开源_第12张图片

分包

Flutter版本Readhub开源_第13张图片
Flutter版本Readhub开源_第14张图片
分包结构

basis:主要存放一些基类
data:为api调用相关-文章及更新app
dialog:为用户信息及分享dialog弹窗-继承Dialog
generated及l10n:为国际化插件自动生成
helper:为路径及权限等帮助类
model:存放数据对象
page:页面
util:各种工具栏
view_model:为page与data之前桥梁
widget:为拆分公共组件

三方库

  #  国际化支持
  flutter_localizations:
    sdk: flutter
  # 状态管理State
  provider: ^4.3.2
  #  吐司toast
  oktoast: ^2.2.0
  #  设备信息
  device_info: ^0.4.2+4
  #  应用包信息
  package_info: ^0.4.1

  # WebView
  webview_flutter: ^0.3.22+1
  #  网络请求相关dio
  dio: ^3.0.9
  #  加载网络图片
  cached_network_image: ^2.2.0+1
  synchronized: ^2.1.0+1
  #  下拉刷新
  pull_to_refresh: ^1.6.0
  #  本地缓存sp
  shared_preferences: ^0.5.7+3
  #用于做骨架屏-闪光效果
  shimmer: ^1.1.1
  #跳转系统浏览器/打电话等
  url_launcher: ^5.4.11
  #二维码-生成
  qr_flutter: ^3.2.0
  #工具类
  flustars: ^0.3.2
  #动态权限申请
  permission_handler: ^5.0.1
  #文件路径
  path_provider: ^1.6.11
  #分享文字及文件-注意保存文件位置
  #注意0.1.2以后的版本分享图片微信提示获取资源失败,分享到其它平台正常
  flutter_share_plugin: 0.1.2

本地运行环境

[✓] Flutter (Channel stable, 1.20.0, on macOS 11.0.1 20B29, locale zh-Hans-CN)
    • Flutter version 1.20.0 at /Users/scta/develop/Flutter/SDK/flutter
    • Framework revision 840c9205b3 (3 months ago), 2020-08-04 20:55:12 -0700
    • Engine revision c8e3b94853
    • Dart version 2.9.0
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/scta/Library/Android/sdk
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = /Users/scta/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.2, Build version 12B45b
    • CocoaPods version 1.9.3

[!] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] IntelliJ IDEA Ultimate Edition (version 2020.1)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 46.0.3
    • Dart plugin version 201.7223.43

[✓] Connected device (2 available)
    • Android SDK built for x86 (mobile) • emulator-5554                        • android-x86 • Android 10 (API 29) (emulator)
    • iPhone 8 (mobile)                  • B3F143F6-7BCE-41D4-9FBC-75163AE84EE9 • ios         • com.apple.CoreSimulator.SimRuntime.iOS-14-2 (simulator)

! Doctor found issues in 1 category.
Process finished with exit code 0

原则上任意环境都能正常运行

注意事项

1、笔者已将国际化生成为文件夹都上传了如果发现有相关国际化内容显示异常可安装插件Flutter Intl

Flutter版本Readhub开源_第15张图片
Flutter Intl

结语

该App为笔者学习Flutter练手开发的 ,权当抛砖引玉了,万望各位不吝赐教

关于我

掘金: AriesHoo

: AriesHoo

GitHub: AriesHoo

Email: [email protected]

你可能感兴趣的:(Flutter版本Readhub开源)