首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

微信 Android 模块化架构重构实践(上)

作者:carlguo 微信Android架构历史 微信Android诞生之初,用的是常见的分层结构设计。这种架构简单、清晰并一直沿袭至今。这是微信架构的v1.x时代。...同时基础工程存在中心化问题,许多业务Storage被附着在一个核心上面,久而久之这个已经没法看了。...但就之前的情况来说,微信一难以满足。这下定了,还得重构。 于是我们回过头仔细看之前的设计,找找问题究竟是怎么来的。 问题出在哪 先寻找代码膨胀的原因。...其实想想,用协议的方式在终端内作为通信手段,开发效率低,也容易出错。因此可能会诞生各种框架和工具来提升这里损失的效率。到头来,是不是大家都实现了一套类似RPC这样的封装。...这与编译的依赖不同。

10.6K169

Jetpack来了:走近Google标准应用架构

因此,我们需要将代码按照功能或类型的不同进行分类,并放到不同的包或文件中,但又不破坏彼此正常的功能和通信。 这在软件开发中叫作“解耦”。...为了将代码解耦以应对日益膨胀的代码量,工程师在应用程序中引入了“架构”的概念。使之在不影响应用程序各模块组件间通信的同时,还能够保持模块的相对独立。这样不仅有利于后期维护,也有利于代码测试。...不仅如此,AAC(Android Architecture Component)中的组件也被并入AndroidX。所以,当使用Jetpack的组件,经常会看到以“androidx”开头的包名。...这里建议备份一份,以防迁移出错。 ?...05 ▊ 新建项目默认支持AndroidX 如果你的Android Studio为最新版本,那么在新建一个项目,应该能在创建过程中看到“Useandroidx.* artifacts”这个选项。

45920

Android 蓝牙开发(扫描设备、绑定、解绑)Kotlin版

--标题--> <androidx.appcompat.widget.Toolbar android:elevation="3dp" android:id="@+...="18sp" /> <View android:layout_width="match_parent...在之前我写Java版的时候特别弄了一个工具,里面有针对性状态栏的一些样式和颜色改动,但实际上我只用了其中的一个方法,为了一个方法而去写一个工具显然多此一举了。...是不是立竿见影,这个效果一行代码解决问题还不用写工具,完全调用系统的方法,请注意我是Android10.0版本的手机,也是我自己用的手机。...权限请求   不管你是用的什么语言来开发Android,你都得遵守Android制定的规则,因此也是要做Android版本大于6.0动态请求权限。

4.3K20
领券