Android原生系统真的那么好用吗?安卓原生系统吊打其他系统,因为有Google-Play,所以应用都是纯净的?(1)

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Golang全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注go)
img

正文

更新快速意味着能无偿的得到上游的系统优化、功能更新和 Bug 修复。如果再跟定制系统一对比优势就更大了,定制系统普遍臃肿、负优化(这个在很多定制系统中是明确存在的)、跟随上游的更新步伐极度缓慢甚至停止跟进上游(自己刷自己的版本自嗨)。

定制系统有定制系统的优点,它一定更适合中国的大众用户,毕竟中国的大众用户甚至连微信调整一个功能都可能不会使用了,“学习成本”这种东西能不要就不要。在 Android 9.0 之前也一定更适合中国的 Android 软件环境,原生 Android 不通过一些手段是控制不住的,而这些手段定制系统帮你做了。

Android原生系统真的那么好用吗?

这种问题当然是否定的。原生 Android(指的是直接基于 AOSP 构建的而非手机厂商出厂固件修改的第三方 ROM,但包括 Nexus/Pixel 或其它被 Google 直接支持的手机的可能是闭源的出厂固件)对于适合的人而言是无可替代的,当前几乎无任何定制 ROM 就与之相比。但是对于更多的中国用户而言,他们从一开始就使用的是定制系统,已经习惯了那一套逻辑和对系统的认知,所以定制系统是更好的选择(但您们最好祈祷一下手机厂商的 ROM 不要越来越不要脸)。

当然,对我而言…… 因为我是开发者,不是普通用户。哪个更适合自然不言而喻。

因为有Google Play,所以应用都是纯净的?

这句话就纯属彻头彻尾的误解了:

  1. 有 Google Play 跟系统是不是原生没有关系
  2. Play 商店中的应用普遍要老实一些(特别是国内厂商的应用),但这之间的差异并不表示“纯净”和“非纯净”。相反,Google Play 既然叫商店是因为有付费的“商品”,而免费软件是如何盈利的?当然是靠广告。包含广告是明确允许而且会被标注出来的,你确定当你用了一个满是广告的应用还觉得是你定义的“纯净”?

我自己有一个 HTC U11 的原生系 ROM 的交流群,HTC 做手机越来越不行了,系统也几乎不更新了。但是 U11 有开源的 ROM 社区的支持,一路从 7.1.2 走到最新的 Android 9.0。有 EAS 调度的内核,能兼容的 Google 相机,方方面面。如果哪一天给 U11 影响最大的开源 ROM 团队 SlimRoms 倒下了,那就是我换机的日子。


我经常看到一些人喷一些“伪极客”用原生系统怎样怎样的,然后就以此作为观点来证明定制系统是更好的,原生系统“很糟糕”。或者“伪极客”反过来证明定制系统垃圾之类的,这些当然是莫名其妙的。但我很少去批判这些人的言论和行为,相反他们的很多言论都是看了专业的内容而理解不到位得来的,虽然总是千篇一律的“陈腔滥调”的夸赞或贬低手段。

无论是吹捧还是贬低原生 Android 的业余“伪极客”,我一般认为他们更能接近普通用户的实际情况,所以他们的言论还是有价值的。当然,是绝对不能当做对任何系统的真实认知的。

最后,上一张图吧:


UPDATE-1(更新一):

这个问题火了连带着这些天我的回答被疯狂点赞。实在是惭愧,我其实并没有说什么有价值的东西,我就是想表达一句话:“适合自己的才是最好的”。在我看来,会问“原生哪里好”的人基本就是不需要原生系统的人。

我觉得让我去写原生系统应该怎么用舒服,不适合这个问题的主旨。我基本浏览了下其它的一些新回答,我就在这里澄清一些误解好了:

原生系统好用是因为 Google 全家桶?

关于原生系统和 Google 全家桶的关系,我其实最初就提到了:

有 Google Play 跟系统是不是原生没有关系

因为只有这一句话,没有引起重视。然后我不断的看到更多的人说「原生好用因为有 Google 全家桶」。再强调一次,这纯粹是一个误解,其实国外的手机大多都内置 Google 的。前不久知乎还讨论过 Google 对欧洲 Android 收费,收的什么费用呢?你可以看这个回答。那么是不是所有手机都内置 GMS(即你们说的全家桶)呢?你可以看这个回答。第二个回答我解释了 GMS 是什么,什么情况下会被内置到手机系统中,以及为什么国产系统不内置(或者不能用),还包括厂商若想内置 GMS 如何获得授权。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Go)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 16
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android 原生系统中,快速设置面板的行列数是根据屏幕大小和分辨率动态计算的。Android 系统使用了一个叫做 "DisplayMetrics" 的类来获取屏幕的宽度和高度,然后根据快速设置面板中按钮的数量和屏幕的宽度,计算出每个按钮的宽度和高度,以及面板的列数和行数。 具体来说,Android 系统会使用以下代码来计算快速设置面板的行列数: ```java // 获取屏幕显示的宽度和高度 DisplayMetrics displayMetrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(displayMetrics); int screenWidth = displayMetrics.widthPixels; int screenHeight = displayMetrics.heightPixels; // 获取快捷设置按钮数量 GridLayout layout = (GridLayout) qsPanel.getChildAt(0); int count = layout.getChildCount(); // 计算每个按钮的宽度和高度 int itemWidth = screenWidth / count; int itemHeight = itemWidth; // 计算快捷设置面板的列数 int columnCount = screenWidth / itemWidth; // 设置快捷设置面板的行列数 layout.setColumnCount(columnCount); layout.setRowCount((count + columnCount - 1) / columnCount); // 设置每个快捷设置按钮的宽度和高度 for (int i = 0; i < count; i++) { View item = layout.getChildAt(i); item.setLayoutParams(new GridLayout.LayoutParams( new ViewGroup.LayoutParams(itemWidth, itemHeight))); } ``` 这段代码与前面我给出的动态设置快速设置面板的行列数的代码类似,不同之处在于它是在 Android 系统中实现的,而不是在应用程序中实现的。它通过获取屏幕的宽度和高度,计算每个按钮的宽度和高度,以及面板的列数和行数,并将其设置为 GridLayout 的列数和行数。 需要注意的是,该代码仅适用于 Android 原生系统,不同的自定义系统可能会有所不同。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值