4

想开一个 compose 相关的群

 1 year ago
source link: https://www.v2ex.com/t/854989
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

V2EX  ›  Android

想开一个 compose 相关的群

  IsNotGood · 4 小时 26 分钟前 via iPhone · 673 次点击
大家有想法加入吗?目前加了一大堆安卓讨论区,群里很多还是 xml 那一套,估计 compose 在国内成不了主流吧。近期开发了一款应用。界面完全是 compose 写的,也遇到过很多问题,只能去 google 。
24 条回复    2022-05-24 18:22:43 +08:00
IsNotGood

IsNotGood      4 小时 19 分钟前 via iPhone

说说最近开发的应用吧,是一个单 activity 多 screen ( com pose 页面)组成的。
架构:MVI
inject:dagger hilt
network:retrofit
data:Room 、data store
task:work manager
navigation:compose-destinations ,这是国外一个开源封装库,简化了 compose navigation 的使用,但还是存在许多问题。
还有就是 Accompnist 了,很多 material 库都在这里边,比如下下拉刷新、page 和 flowlayout 等。
Vaspike

Vaspike      4 小时 18 分钟前

我用 jb-compose(即 Jetpack 的桌面移植版)写过一个上位机,问题我都是在 slack 里问官方的人,还蛮热心的
附上官方 kotlinlang 的 slack 链接:https://kotlinlang.slack.com/archives/CJLTWPH7S
equationl

equationl      4 小时 14 分钟前

开了踢我一下,最近也在学 compose ,然后写了个 Gitee 的 issue 管理。

正好遇到了好多问题,大家一起交流一下。

另外,compose 现在还是有好多 bug ,不用没感觉,真开始写后才发现问题不少。

附上项目地址: https://github.com/equationl/GiteeTodo
yazinnnn

yazinnnn      4 小时 13 分钟前

支持,建议禁止键政黄图,宁缺毋滥
IsNotGood

IsNotGood      4 小时 11 分钟前 via iPhone

自己也尝试对 compose 组件进行了封装,比如:右滑按钮删除、表单输入验证、时间选择器、用 canvas 绘制了图表等。其中很多东西都有参考 youtuber 大神的视频,受益匪浅!
IsNotGood

IsNotGood      4 小时 9 分钟前 via iPhone

@Vaspike 我有尝试过 desktop 版本,调用文件 api 发现弹出的界面是 java swing 那一套,然后我瞬间没有开发欲望了
Vaspike

Vaspike      4 小时 6 分钟前

@IsNotGood #6
桌面版与 Swing 的关系不大,但是可以嵌入 Swing 的组件
IsNotGood

IsNotGood      3 小时 57 分钟前 via iPhone

因 vx 不方便管理,最终决定开个 qqqun ,7948 去掉 17168
IsNotGood

IsNotGood      3 小时 56 分钟前 via iPhone

@Vaspike 因 vx 不方便管理,最终决定开个 qqqun ,7948 去掉 17168 ,大大有兴趣可以加入下
IsNotGood

IsNotGood      3 小时 56 分钟前 via iPhone

@equationl 因 vx 不方便管理,最终决定开个 qqqun ,7948 去掉 17168 ,大大有兴趣可以加入
IsNotGood

IsNotGood      3 小时 56 分钟前 via iPhone

@yazinnnn 因 vx 不方便管理,最终决定开个 qqqun ,7948 去掉 17168 ,大大有兴趣可以加入
lisongeee

lisongeee      3 小时 49 分钟前

有一个困惑已久的问题想问一下,我看 compose 的路由和 react-router/vue-router 一样,是替换渲染的路由,也就是说 push 到一个新界面后之前的页面就被销毁了,而之前的 activity 路由模式,是 push 到一个新界面后之前的界面 会 onPause ,状态都在。
比如 compose-Navigation/react-router/vue-router 都不可能实现 https://stackoverflow.com/questions/72070174/ 这种效果,
那么想问一下,老哥你在开发的过程中会注意这种问题吗?
oynix

oynix      3 小时 43 分钟前

抛开初衷,从效率来讲,不如直接 Google
IsNotGood

IsNotGood      3 小时 30 分钟前

@lisongeee 您想实现的效果我看可以实现啊,可能是你设置了参数导致前一页被销毁了。
lisongeee

lisongeee      3 小时 26 分钟前

@IsNotGood ,我没有设置什么参数,就是按照 compose-Navigation 官网的来的,那请问用 compose-Navigation 如何实现呢?
IsNotGood

IsNotGood      3 小时 23 分钟前

@lisongeee 您加群,我给你发个视频看看是不是您需要的需求
lisongeee

lisongeee      3 小时 21 分钟前

@IsNotGood 哈哈,好呀,可以深度交流一下
mxalbert1996

mxalbert1996      2 小时 58 分钟前 via Android

不如直接在 Kotlin 官方 Slack 的 compose 频道问,那里还有不少 Google 员工出没。
lisongeee

lisongeee      2 小时 45 分钟前

@mxalbert1996 不可以实现,我之前试过了

compose-Navigation 下
比如你在页面 A 的协程作用域内
val scope = rememberCoroutineScope()
scope.launch{
while(true){
delay(3000)
log('xxx')
}
}
然后你 controller.navigate('B')
控制台就不会输出了,因为 页面 A 内的局部状态都被销毁了
WebKit

WebKit      2 小时 38 分钟前 via Android

compose 现在还有很多 bug ,线上项目还是暂时观望吧
lisongeee

lisongeee      2 小时 35 分钟前

@mxalbert1996 可能是我描述不太好,你误解我的问题了,这和动画无关,是状态的保留问题
lmshl

lmshl      2 小时 18 分钟前

我也用 compose-jb 写过跨平台桌面程序。讲道理,体验真不错,写出了 React + Scala 的感觉。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK