现在的需求是做个打卡记录 app ,每个任务要跑 3-10 个地点,到达之后通过 app 定位打卡并且拍照、录像进行确认 app 需要支持纯离线运行所以没法用小程序或者 web 处理,录像一分钟本地缓存就满啦 预估单次记录的数据总量在 100 张照片+5 段视频,单个任务上传总量不超过 3g
技术栈:没写过原生,react 能写业务用的不多,vue 熟悉但是在 uniapp 上被坑过不太想用
请问常见的跨平台框架,对于处理大量本地照片更友好些呢?
1
wingkwanli888 2023-06-06 13:50:10 +08:00 via iPhone 1
Webview + vant 和原生一样丝滑
|
2
D2h0VL89HMAU417B 2023-06-06 13:50:32 +08:00 3
不写原生就 flutter 吧
|
3
wingkwanli888 2023-06-06 13:51:54 +08:00 via iPhone 1
@wingkwanli888 app 放个 lighthttpd 跑 vant
|
4
elechi 2023-06-06 13:55:35 +08:00 1
MAUI
|
5
KT0J 2023-06-06 14:04:18 +08:00 1
不用原生,那就选 flutter 。
|
6
tsanie 2023-06-06 14:08:19 +08:00 1
MAUI
|
7
raykle 2023-06-06 14:11:23 +08:00 1
那 React Native 适合你
|
8
AreYou0k 2023-06-06 14:16:36 +08:00 1
flutter
|
9
zongren 2023-06-06 14:58:19 +08:00 1
webview+react/vue+原生插件
可靠性和后续维护有保障 |
10
rs9G7IrdOdiNR3h1 2023-06-06 16:00:09 +08:00
@wingkwanli888 现在 APP 不是一般不让套壳了吗?
|
11
isSamle 2023-06-06 16:14:34 +08:00 1
Flutter
|
12
xiqishow 2023-06-06 16:21:49 +08:00 1
套 h5 手机内存不足的时候 拍照会刷新整个 webview 页面
|
13
sks4728 2023-06-06 16:55:26 +08:00 1
flutter 一把梭, maui 国内地图 sdk 用起来感人。 当然如果是嵌个 H5 用什么都一样
|
14
x77 2023-06-06 16:56:29 +08:00 1
Flutter 框架,要学一下 Dart 语言,对于前端背景的开发者很容易上手。
|
15
iStar 2023-06-06 17:46:56 +08:00 1
同时用 React Native 和 Flutter 的开发过几款 app 的原生背景开发者推荐:Flutter
|
16
xiaoshan5733 2023-06-06 18:10:29 +08:00 2
如果会前端强烈推荐 react native ,可以体验一下我用纯 react native 开发的跨端 app: https://fanka.fuhaojianshen.com/
|
17
musi 2023-06-06 18:11:36 +08:00 1
涉及到系统级的 API 还是建议原生
|
18
WebKit 2023-06-06 18:44:25 +08:00 via Android 1
Flutter
|
19
infun 2023-06-06 18:46:01 +08:00 1
作为测试我想说,flutter 用不好是真的卡
|
20
Vitta 2023-06-06 18:51:14 +08:00 1
Flutter 吧
RN 听说维护起来很难受, 特别是版本升级的时候。不知道现在什么样了。 Cordova, ionic 别碰了,丝滑个 jer |
21
LeoQ689 2023-06-06 19:06:52 +08:00 1
Flutter
|
22
leokun 2023-06-06 21:18:01 +08:00
@xiaoshan5733 很👍
|
24
wingkwanli888 2023-06-06 21:53:45 +08:00 via iPhone 1
|
25
tanranran 2023-06-06 21:55:08 +08:00
@xiaoshan5733 #16 有一说一,你这个 APP ,没啥复杂的场景
|
26
tanranran 2023-06-06 21:55:57 +08:00 1
涉及到定位打卡并且拍照、录像+ 100 张照片+5 段视频,还是上 flutter 吧,其它可能都不满足的你需求
|
27
gluttony 2023-06-06 22:16:36 +08:00 2
如果用 React Native 的话不要用 Bare React Native ,用 Expo 。React Native 很多第三方库年久失修,特别是包含 native 代码的库,遇到问题时没双端开发经验很麻烦。
目前甚至按 RN 官方文档生成 Bare React Native 的脚手架项目,gradle.properties 指定的 FLIPPER_VERSION=0.125.0 在添加特定依赖包后会产生编译错误,需要改成 FLIPPER_VERSION=0.128.0 才能修复。对初学者极度不友好。 Expo 所属公司积极维护生态圈,集成并改进了很多常用第三方库,还算靠谱。 |
28
C603H6r18Q1mSP9N 2023-06-06 23:25:34 +08:00 1
Flutter 吧
|
29
fox0001 2023-06-07 00:13:10 +08:00 via Android 1
Flutter ,推荐结合 Provider
|
30
dayeye2006199 2023-06-07 00:51:24 +08:00 1
为啥不用 RN 呢?虽然有点老,但是久经考验
|
31
roundgis 2023-06-07 01:17:03 +08:00
@wingkwanli888 web 服务器用什么库?
|
32
wobuhuicode 2023-06-07 05:57:39 +08:00 via iPhone 1
实在看不出你这个 app 有什么性能上的难点。rn 和 flutter 都没问题。定位拍照录像这些都有稳定的第三方库。至于内容上传,自己写个队列上传就好了。处理大量本地图片是指怎么样的处理这个没看懂。是要大量加水印?
|
33
uniy 2023-06-07 09:33:24 +08:00 1
无论选择 React Native 或者 Flutter ,理论上讲他们都是 ui 框架,涉及到系统级别的,就要处理桥接问题,比如定位、拍照、录像、存储,这些都要与原生交互。人手不多,技术栈不全,我建议你直接选择原生开发。否则,否则,你就会遇到开发工具,切来切去,开发语言切来切去,ui 适配各种机型......,这些都还是在你都懂的情况下。 总来来说,建议用原生开发。
|
34
rs9G7IrdOdiNR3h1 2023-06-07 10:13:54 +08:00
@wingkwanli888 这样啊,受教了
|
35
lawsiki 2023-06-07 10:29:10 +08:00
Mark 一下,和我现在准备做的需求挺像的😅
|
36
kalixi 2023-06-07 11:34:51 +08:00 1
想啥啊,肯定 flutter 啊,谁还用 rn 啊
|
37
wupeng756 2023-06-07 11:56:08 +08:00 1
flutter 也是 ui 框架 建议仅从 UI 的角度,选择 RN 吧,涉及原生的 api 还是少不了要看和写原生的代码
|
38
kayv 2023-06-07 12:23:36 +08:00
@wingkwanli888 vant 是有赞的那个框架吗
|
39
wingkwanli888 2023-06-07 12:42:15 +08:00 via iPhone
@kayv 是的
|
40
kayv 2023-06-07 14:35:08 +08:00
@wingkwanli888
>>就是离线渲染不白屏,我司最近两年的移动端项目都是 vant 写的,app 内嵌本地 web 服务器离线跑 vant 意思是把前端打包拉取到 app 本地,用 app 的 web 服务跑吗? |
41
kayv 2023-06-07 14:36:35 +08:00
@wingkwanli888 感谢老铁回复
|
42
v423 OP @wobuhuicode
批量图片处理是指可能需要在前端压缩 裁剪 标注 这些是业务那边提出的需求 一期暂时不做 另外 200m 的视频是最常见的视频体积 超过 1g 的也不少 批量文件和大文件分段上传要是太复杂我就担心没处理好导致 crash |
43
v423 OP 感谢以上的热心回复 flutter 压倒性优势胜出 我去整个 demo 试试
|