V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
succlz123
V2EX  ›  分享创造

一个 Acfun 客户端,基于 compose 跨平台技术,支持 Desktop 和 Android。

  •  4
     
  •   succlz123 ·
    succlz123 · 2022-10-06 19:28:22 +08:00 · 4323 次点击
    这是一个创建于 563 天前的主题,其中的信息可能已经有所发展或是发生改变。

    下载地址

    https://github.com/succlz123/AcFun-Client-Multiplatform/releases

    功能

    1.png 2.png 3.png 4.png 12.png 6.png

    其他

    主要是为了实践 compose 跨平台技术,实现劲量少写重复代码兼容桌面和移动端,差不多从零开始,边学边做,一个月不到时间写完的。

    有 android 和 kotlin 相关经验,入门 compose 真的非常快,看完官方文档后,就可以直接上手了。 相比较 xml activity 这种开发效率提升好几倍,而且使用纯 compose 开发有个好处就是构建速度快,而且 debug 也方便。

    compose desktop 可以很方便集成 java swing 和 javafx ,视频播放使用 vlcj ,webview 也可以用 jcef 。当然这些只是随手试了下,不知道具体深入会有没有坑。

    不过相比较 jetpack compose ,compose-jb 还是缺了好多东西,一些 android jetpack 的库是没有 desktop 版本的,而且像 image loader ,navigation 都需要自己手写。所以还顺手写了个封装官方 example 的 三级缓存图片加载库 和 一个支持跨端的导航库。

    https://github.com/succlz123/compose-desktop-imageloader

    https://github.com/succlz123/compose-screen

    10.png

    29 条回复    2023-02-15 18:28:46 +08:00
    creanme
        1
    creanme  
       2022-10-06 19:56:29 +08:00
    赞啊,正好想学习一下,写点其它的客户端
    FreeEx
        2
    FreeEx  
       2022-10-06 20:51:49 +08:00 via iPhone
    厉害的
    link455like
        3
    link455like  
       2022-10-06 21:17:05 +08:00 via Android
    赞一个,话说没有文脏区吗?
    MakHoCheung
        4
    MakHoCheung  
       2022-10-06 21:36:51 +08:00
    macOS 13 beta 报已损坏,无法打开
    MakHoCheung
        5
    MakHoCheung  
       2022-10-06 21:42:03 +08:00
    @MakHoCheung 好了,可以啊
    neochen13
        6
    neochen13  
       2022-10-06 21:45:48 +08:00
    要是有 bilibili 版本就好了
    succlz123
        7
    succlz123  
    OP
       2022-10-06 21:46:32 +08:00
    @MakHoCheung 应该需要在偏好设置-安全性与隐私里点击允许打开
    succlz123
        8
    succlz123  
    OP
       2022-10-06 21:47:35 +08:00
    @neochen13 官方不是有么,不过就是 electron
    succlz123
        9
    succlz123  
    OP
       2022-10-06 22:02:02 +08:00
    @link455like 没有 api 所以连登录功能也没
    mxalbert1996
        10
    mxalbert1996  
       2022-10-07 00:13:36 +08:00 via Android
    succlz123
        11
    succlz123  
    OP
       2022-10-07 00:48:50 +08:00
    @mxalbert1996 主要是这么基础的东西官方没有提供,引用第三方的不如自己研究下,至少还熟悉
    thetbw
        12
    thetbw  
       2022-10-07 01:37:22 +08:00
    安卓有适配电视界面吗,正好 acfun 没 tv 客户端
    goodgad
        13
    goodgad  
       2022-10-07 08:17:16 +08:00
    没看见文章区呀。
    succlz123
        14
    succlz123  
    OP
       2022-10-07 11:35:36 +08:00
    @thetbw 会的,但是适配焦点需要花点时间
    succlz123
        15
    succlz123  
    OP
       2022-10-07 11:36:32 +08:00
    @goodgad 目前没有啊,因为没时间研究怎么抓文章区内容
    EgbertW
        16
    EgbertW  
       2022-10-07 11:51:01 +08:00
    牛哇,很少见到 compose 的桌面项目,终于有项目可以参考了
    s524256521
        17
    s524256521  
       2022-10-07 14:30:27 +08:00 via iPhone
    厉害呀,我刚刚还在看 compose for desktop 。想问下把 android jetpack compose 迁移到 Windows 上坑多不多,能不能用于生产了?
    subframe75361
        18
    subframe75361  
       2022-10-07 14:30:33 +08:00
    第一次见 compose 的成品,支持支持!
    chrisia
        19
    chrisia  
       2022-10-07 17:58:13 +08:00
    支持支持,compose yyds
    IsNotGood
        20
    IsNotGood  
       2022-10-08 08:13:55 +08:00 via iPhone
    厉害呀,我以为 a 站早就倒闭了
    succlz123
        21
    succlz123  
    OP
       2022-10-08 17:23:24 +08:00
    @s524256521 我一开始就是冲着 desktop 写的,不如说是把 compose-jb 移植到 jetpack compose 。因为没有用到 jetpack compose 相关的类库 ( navigation ,constraintLayout 等),所以没碰到什么大问题。而且因为 desktop 可以随时调整高宽,写 ui 横竖屏视频特别方便。
    succlz123
        22
    succlz123  
    OP
       2022-10-08 17:39:58 +08:00
    @s524256521 哦还有我说的快是指原先 android 开发需要 build 出 apk 再安装到 手机上,而现在直接 build desktop 写,这里就方便很多。
    succlz123
        23
    succlz123  
    OP
       2022-10-08 17:40:31 +08:00
    @succlz123 ui 横竖屏适配特别方便。
    soya2
        24
    soya2  
       2022-10-08 22:19:32 +08:00
    泪目,a 站都摆了好几年了,做的挺好看
    iyg429
        25
    iyg429  
       2022-10-17 11:42:28 +08:00
    为啥 macos 无法安装?
    succlz123
        26
    succlz123  
    OP
       2022-11-02 01:09:43 +08:00
    @thetbw 最新版本已经加了焦点支持,可以在 tv 上安装试试
    succlz123
        27
    succlz123  
    OP
       2022-11-02 01:10:11 +08:00
    @iyg429 因为没签名所以得手动去 设置-安全里打开
    iyg429
        28
    iyg429  
       2022-11-04 14:52:58 +08:00
    @succlz123 #27 手动也打不开 ,直接一个禁止符号 ,我是 12 的系统
    silencelixing
        29
    silencelixing  
       2023-02-15 18:28:46 +08:00
    iOS 端可以通用吗?为啥只有 Android 和桌面端啊,我前两天看到新闻说,Compose 跨平台支持 iOS 了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5875 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 02:37 · PVG 10:37 · LAX 19:37 · JFK 22:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.