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

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

  •  4
     
  •   succlz123 ·
    succlz123 · 125 天前 · 3277 次点击
    这是一个创建于 125 天前的主题,其中的信息可能已经有所发展或是发生改变。

    下载地址

    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

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