近期AOSP折腾记录

RedfinDemo开发进度

继上回把我的RedfinDemo集成到系统里之后,工作之余有抽空推进开发了一下这个应用,主要是产品设计路线和UI框架修改优化。新版本采用了子fragment嵌套的模式,界面应该比较紧凑高效了。

先放应用的两张图,马上记录一下这四五天的惨痛历程。

WSL方案弃用

在应用框架优化完之后,我想尝试改改简单的源码。最简单的,一下就想到了改掉AutomotiveOS上那丑陋的Toast样式,但是一直cd到目录,使用vim去改源码也不是个办法,于是从郭神公众号了解到Google官方有一个ASFP(Android Studio For Platform)专门用来改AOSP源码的IDE,有代码导航和代码提示功能。

为了使用这个IDE,我电脑上的WSL系统肯定需要装一个图形界面,应用才能成功访问Windows系统的屏幕。

于是找攻略,研究各种  .bashrc  文件的环境变量配置,网络端口暴露等等。废了很大功夫,用登录远程桌面的方式,用上Xfce4桌面,连接上了windows的屏幕。

于是下载asfp的deb包,解包后,打开了ASFP应用,新建工程,导入aaos源码,经过漫长的index之后,我又发现在这个应用界面上我的鼠标位置发生了偏移,很难点准位置,相当难受。

附链接:https://dl.google.com/android/asfp/asfp-2023.2.1.19-linux.deb

抛弃WSL,直接上Ubuntu吧,一不做二不休啊!考虑到,以后肯定还是需要一个图形界面,还有其他调试工具,多窗口查看我的各种信息,会极大地增强效率。

Ubuntu遇到的问题

没有办法访问某些网络资源

安装上Ubuntu后,立即完成基础配置,开始拉取源码编译系统。结果连repo工具的初始化都无法完成。

因为使用WSL的时候,我可以在上面使用windows的网络代理环境,而Ubuntu上则需要花费很大精力去实现,这个成本是无法接受的。于是下载源码上全线转为清华镜像的方案,repo工具也使用清华镜像的方式初始化,添加到bin目录,开始sync,又是70G的流量。。。。

有同样网络问题的小伙伴可以看看:AOSP | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

其他工具的安装问题

电脑直接装了Ubuntu,没有Windows的丰富生态,总要装一下其他常用工具吧。

首先就是搜狗输入法,但是按照官方的步骤来,始终无法成功安装使用,感觉下载的版本太高了,2204有些环境不对。

还有微信,安装上wine可以使用了,但是后来也是因为他们使用的python3和系统内置的python版本有依赖冲突,自己瞎折腾把系统搞坏了。

使用ASFP修改原生Toast样式

这个是这几天开展的稍微顺利一点的工作,通过官方文档,我定位到了原生的Toast的布局文件transient_notification.xml,再追踪到其使用的背景和文字style样式,把背景background改成白色,文字风格颜色改成黑色。

为了修改Toast的位置,我找到了ToastPresenter,发现这个是使用windowmanager添加Toast的view的类,将窗口参数的y值从100改成800。从底部变道顶部来,更符合视觉直观。

改源码和应用层自行定制的区别

做Android的朋友都知道,我们应用开发者自己也可以通过给Toast通过addView的方式,定制化自己的Toast。但是直接改源码,可以直接使用原生的方式,一行代码解决Toast弹出。通过Kotlin的top function封装,可以直接showToast(text:String)来弹出一个Toast。

还可以统一所有应用的Toast风格,在车载HMI产品设计上,改源码这个方案成本最小。

最后就是下面的两张的效果对比了:

AOSP原生

改源码定制后

果然最顺利的还是自己最擅长的东西,像折腾Ubuntu系统,需要解决.bashrc的环境依赖,还有应用安装依赖冲突,,,,,头疼。

系统出错无法进入

然后到了今天,上午为了搞定fctx输入法,把系统的python彻底删掉了,然后reboot一开机电脑就是一行报错,卡在那里:

config failed, hub doesn't have any ports(err-19)

有无解决过的大神可以支支招。我大概率今晚回去再次重装系统了,暂时还没决定是ubuntu还是deepin?

deepin这个系统,上学时用过,做大数据分析,部署hadoop啥的。因为本来国内公司,感觉对于国内开发者,其生态是绝佳的,甚至日常使用都不成问题,但是又怕会和aosp产生另外的冲突。

哎,小小记录一下,赶紧解决掉这些麻烦事,开始学习framework,积累aosp的经验,而不是因为环境问题拖累大量时间。。。。。

Newest Event

January 16, 2024. I can't use WI-FI in deepin 20.9. So I roll back to Ubuntu 20.04 now.

And still, I have no sougou input method in Ubuntu.

I guess that's it. End of the story.

  • 19
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值