原生开发、开源框架自由搭配* 统合一致:兼容不同设备的开发框架达到的一致性开发体验其涵盖的内容:* Android Studio :持续改进的官方 IDE* Android App Bundle :先进的应用打包和分发方式* Kotlin :首推的编... `Motion Editor` 则是支持 MotionLayout 类型布局的视觉设计编辑器,可让更轻松地创建和预览和调试动画。`Layout Inspector` 则可以查看某进程某画面的详细布局,完整展示 View 树的各项属性。在不方便代码调试或剖...
Android 进阶、设计模式文章,也是从那个时候开始,**养成了定期复盘的习惯**,每次我想回顾下过去,都会看看[我的成长专栏](https://blog.csdn.net/u011240877/category_9263864.html)。### 2017~2020:提升复杂项目的架构能力和做事意识第一个项目中我基本掌握了从 0 到 1 开发一个安卓应用的流程,但对安卓项目架构还只停留在表面,没有足够实践。在 2017 年,我开始做喜马拉雅直播项目,由于喜马拉雅在当时已经有比较多...
Android12 遵循了 M3 的 Dynamic Color 设计原则,系统可以从用户的壁纸中抓取颜色,然后色阶化应用到你开发的应用中,应用跟随主题的不同和变换颜色,千人千面。## Stretch OverscrollAndroid12 中加入了 Stretch... 多窗口模式下的 App 不能再依赖 `Display.getRealMetrics()` 获取窗口尺寸,当屏幕状态变化导致,OnConfigurationChanged 发生时,使用 WindowManager 的 `WindoeMetrics` 获取准确的窗口尺寸,再根据 `WindowSizeClas...
Goolge 将这些新技术下的开发方式命名为 MAD ,以此区别于旧有的低效的开发方式。MAD 可以指导开发者更高效地开发出优秀的移动应用,它的优势这主要体现在以下几点:- **可以信赖**:汇聚 Google 在 Android 行业... 所有代码都使用 Kotlin 开发。Kotlin 的语法十分简洁,相对于 Java 同等功能的代码规模可以减少 25%。此外 Kotlin 还具有很多 Java 所不具备的优秀特性:## 1.1 SafetyKotlin 在安全性方面有很多优秀的设计,比如...
在实际想法开发过程中,项目组在制定产品研发策略时,考虑到开发成本(时间、金钱)和上手难度,`Hybrid App`成为技术框架首选。因为 `Hybrid App` 只需要编写一套代码,便可以同步生成 `Android` 和 `IOS` 两个平台的AP... 但是 App 里面打开的页面既可以是 Web 的,又可以是原生的。H5 页面会跑在 Native 的一个叫做 `WebView` 的容器里面,只要有 WebView,一套代码可以很容易跨iOS、安卓、Web、小程序、快应用多个平台。可以简单理解为在...
作为 Android 开发者,免不了要处理 arm、armv7a、armv8a、x86 等架构适配,加上今年各个行业都遇到了“缺芯”的困扰,以及美国对华为的芯片制裁,制裁的是什么技术?本文尝试讲清楚下面几个问题:1. Android动态库适配... 包含完整的软件开发工具(编译器、debugger、SDK),以及针对内含 ARM CPU 硅芯片的销售权。对于无晶圆厂的授权方来说,其希望能将 ARM 内核整合到他们自行研发的芯片设计中,通常就仅针对取得一份生产就绪的智财核心技...
里可以调用我们上篇文章介绍的AAudio和OpenSLES接口。### 1.3 Native framework 原生框架层不管是Java层还是JNI层都只是对外提供的接口,真正的实现在原生框架层。原生框架可提供相当于 android.media 软件包的... 整个Android音频实现都被看成了User。因而我们可以认为Audio Driver就是上层与硬件间的“隔离板”。但是如果单纯采用上图所示的框架来设计音频系统,对上层应用使用音频功能是不小的负担,显然Android开发团队还会根...
克里斯坦的《创新者窘境》- 《了不起的我》- 《坏比好厉害》- 《吾心可鉴-澎湃的福流》- 《指导生活的算法:人类生活中的计算机科学》- 《忧郁的热带》- 《规模》- 《必然》- 《决策思维》- 《心理资本》- 《赋能》- 《认知觉醒》- .......>有很多知识即便你知道了,你理解了,你也不能将其运用,因为你么有合适的场景。记录这些并不代表我真的都懂这些了(也不可能哈哈),而是希望自己以后碰到问题碰到场景的时候可以...
对其发展进行了完备地整理,并尽可能地整理了时间轴。感兴趣的朋友可以看看,后面还会针对 Automotive 的源码进行更深入地解读。* [软件定义汽车之 Android Automotive OS 发展历程](https://juejin.cn/post/7135814547713196046)`Kotlin` 对于 Android 开发的重要性不言而喻,加上 ***All in Kotlin*** 的技术路线,在工作之余对 Kotlin 的重要特色进行了用法、原理方面的详细学习。- [能说一说 Kotlin 中 lateinit 和 lazy 的...
Android Studio。在 Welcome to Android Studio 窗口中,单击 New Project。 在项目模板页选择 Empty Views Activity,然后单击 Next。 在项目配置页,设置项目名称、软件包名称、存储路径等信息,开发语言选择 Java... 示例代码参看应用的 targetSDKVersion >= 31 时如何配置蓝牙权限? 集成 SDK 通过 Maven 集成在 Android Studio 左上角将工程视图切换为 Project 模式,在项目根目录的 settings.gradle 文件配置 Maven 仓库地址。 ...
2024 年 2 月云手机客户端 SDK V1.37.0 的发布说明如下: AndroidAndroid 端 SDK 包含以下新增功能和变更: 在 StreamStats 类型说明中新增"获取当前编码格式"相关接口(getVideoCodecType),支持获取当前编码格式。详... 或等比例缩放模式。详细信息,参考 开始播放。 新增更新画面渲染模式接口(updateVideoRenderMode),支持在运行过程中设置视频流画面渲染模式。详细信息,参考 更新画面渲染模式。 新增插件包依赖。在开发项目中引入...
用于设置 SDK 的 Android Application 全局上下文对象 ,并开始下载对应的插件。需要在调用 start 接口之前调用。需要特别注意,调用 veGameEngine prepare 函数就是正式开始使用 SDK 了。因为 SDK 在运行过程中需要采集必要的用户信息,所以在调用 veGameEngine 的 prepare 函数前,必须提示并获得用户授权。详细信息,参考 SDK prepare 函数。 删除 “设置 Logger”(setLogger)接口。可使用“设置 Debug 模式”(setDebug)接口替代,...
笔者目前主要从事安卓移动端开发的相关工作,由于疫情和台风暴雨等原因,有过多次居家办公的经历。最长一次足足一个多月。深刻意识到远程办公期间,效率工具的重要性,因此总结了一些个人和团队间常用的远程工具,希望大家喜欢,也欢迎大家在评论区一块交流自己常用的效率工具。> 主要面向安卓移动端开发工程师,希望对其他方向的朋友也能起到一定借鉴意义。# 通用## 网络环境远程办公对网络是一个巨大的考验,尽管随着国家提速降...