V2EX 第三方 App「伟途亦可思」Android 版本发布了,来试试吧。

352 天前
 ydatong

为什么又又又开发一个 Android 版本

几年前因为喜欢逛 V2EX ,但是又没找到好用的第三方 App ,作为一个 iOS 开发者,就自己开发了一款 iOS 上的 V2EX App 「伟途亦可思」。不收费,也没有任何广告,维护了大概 2 、3 年,后面由于时间问题,就没怎么维护了,但是每天自己也在用,到现在积累了 3w 多的用户,每天也还有不少 V 友在用伟途亦可思逛 V 站。

今年年初的时候,迫于信号和电量的双重折磨,一个用了十多年 iPhone 的果粉彻底转到 Android 了。。。现在我的 iPhone 就是开车的时候当导航,其余时间基本不用了。然后就想着开发一个 Andriod 版的伟途亦可思,由于我一直也不太喜欢 flutter 的体验,所以还是选择用 Android 原生开发,到现在第一版功能基本完成了,因为也是我第一次开发 Android App ,所以时间也花了不少。

目前 Andriod 版本对比 iOS 版本有几个新增功能:

  1. UI 更美观,几个重要界面 UI 基本都重构了
  2. 支持 V2EX 新增的 VXNA
  3. 支持 Google 登录和 Google 搜索
  4. 支持用户备注

说明: 由于我是第一次开发 Andriod App ,经验不足。还有一个是我只有一部 vivo x100 pro 真机测试过(测试也不是很充分),所以第一版 App 可能会有一些 bug 或者适配问题。后续会慢慢优化,如果在使用的过程中碰到任何问题,欢迎反馈给我。

下面看图

首页

节点

发现

我的

个人主页

搜索

节点主页

下载

Apk 我还没有上架 Google Play ,感觉有点麻烦,先放在蓝奏云,想用的 V 友可以下载试用,后续有时间我应该还是会上架 Google Play 。

文件密码:cxbd

https://wwp.lanzouv.com/iE3kB22a5cif

16409 次点击
所在节点    分享创造
161 条回复
ldlywt
352 天前
好用好用
wangranche
352 天前
名字起的是真的好啊 太有巧思了
sammyM
352 天前
支持一下,正在用 iOS 版回复
UglyOrange
352 天前
好像没有暗黑模式
followNew
352 天前
@HkMuxxx #21
收藏水深火热就可以看了
https://yangjunhui.monster/t/1051309
muhahaha
352 天前
已经安装使用,提交个 BUG,小米 14 下边有个黑边
ydatong
352 天前
@UglyOrange 后面肯定会加,但是可能要等一等
ydatong
352 天前
@muhahaha 收到,能在 app 的反馈里面提交一下截图吗,谢谢支持
GK998
352 天前
可以的,支持一下
Rh1
352 天前
iOS 版忠实用户,换了 Android 后一直在用另一个。 现在必须重新支持
muhahaha
352 天前
@ydatong 已经提交
manshisan
352 天前
感谢🙏,已使用。
RoccoShi
352 天前
看上去不错,支持 google 搜索这点很棒
tanranran
352 天前
什么技术栈开发的
Philippa
352 天前
这个 app 不支持发图片
azhangbing
352 天前
java.lang.RuntimeException: Unable to resume activity {com.ydatong.v2ex/com.ydatong.v2ex.Main.MainTabBarActivity}: kotlin.UninitializedPropertyAccessException: lateinit property tabItem has not been initialized
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:5181)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:5214)
at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:57)
at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:45)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:190)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:101)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2572)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:224)
at android.os.Looper.loop(Looper.java:318)这个属性,在后台回到前台的时候,还有一个问题切 tab 没有自动加载数据
at android.app.ActivityThread.main(ActivityThread.java:8677)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:561)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)
Caused by: kotlin.UninitializedPropertyAccessException: lateinit property tabItem has not been initialized
at com.ydatong.v2ex.Business.Topic.Activity.TopicListFragment.getTabItem(TopicListFragment.kt:36)
at com.ydatong.v2ex.Business.Topic.Activity.TopicListFragment.onResume(TopicListFragment.kt:84)
at androidx.fragment.app.Fragment.performResume(Fragment.java:3039)
at androidx.fragment.app.FragmentStateManager.resume(FragmentStateManager.java:607)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:306)
at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3128)
at androidx.fragment.app.FragmentManager.dispatchResume(FragmentManager.java:3086)
at androidx.fragment.app.Fragment.performResume(Fragment.java:3048)
at androidx.fragment.app.FragmentStateManager.resume(FragmentStateManager.java:607)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:306)
at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3128)
at androidx.fragment.app.FragmentManager.dispatchResume(FragmentManager.java:3086)
at androidx.fragment.app.FragmentController.dispatchResume(FragmentController.java:273)
at androidx.fragment.app.FragmentActivity.onResumeFragments(FragmentActivity.java:458)
at androidx.fragment.app.FragmentActivity.onPostResume(FragmentActivity.java:447)
at androidx.appcompat.app.AppCompatActivity.onPostResume(AppCompatActivity.java:245)
at android.app.Activity.performResume(Activity.java:9090)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:5171)
... 13 more
发现个 bug 记得初始化
KamenReborn
352 天前
非常好用,尽快上架吧😄
天下苦没有好用的 v2 客户端久矣
sakuramanstein
352 天前
感觉不错
foam
352 天前
谢谢作者。反馈个不确定是否该客户端的问题: 登录后自动签到了(显示今日已签到),但是余额变动列表里没有今天(6 月 21 日)的入账。
查看官网的余额列表,也是一样的表现。
hiccup00
352 天前
@KamenReborn v2er 不能用?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://yangjunhui.monster/t/1051194

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX