参考: android开发艺术探索1. 布局优化 不增加嵌套层级的情况下用LinearLayout代替RelativeLayout,用include标签加载布局文件,merge标签和include一起使用减少布局层级;ViewStub继承了View且宽高都是0,用来按需加载所需的布局文件,当调用它的setVisibility或者inflate方法加载后,ViewStub就会被它内部的布局
# Android 13与NDK的结合
## 引言
随着Android 13的发布,开发者们又迎来了新一轮的挑战和机遇。Android NDK(Native Development Kit)是一套工具,允许开发者使用C和C++等编程语言编写Android应用的部分代码。本篇文章将探讨Android 13下NDK的功能与应用,并给出相关的代码示例。
## NDK概述
NDK使得开发者能够利用
原创
2024-10-25 04:23:29
112阅读
Java相关容器(HashMap、HashSet、LinkedList、ArrayList、数组等)内存模型垃圾回收算法(JVM)4、垃圾回收机制和调用 System.gc()的区别?类加载过程(需要多看看,重在理解,对于热修复和插件化比较重要)反射多线程和线程池设计模式(六大基本原则、项目中常用的设计模式、手写单例等)Java 四大引用Java 的泛型final、finally、finalize
1.3.1 创建项目的过程也非常简单,毕竟这是最基本的,按书上说的弄就行了。这里要注意一下,书上用的Android Studio版本是3.5.2 如果你用其它版本有些地方可能有些不一样。1.3.2 这部分讲了启动和安装模拟器,这里基本按书上说的来就行。如果看不懂英文就安装个有道词典进行翻译一下,有个技巧,打开有道词典,按Ctrl+Ait+D就可以直接屏幕取图翻译,这个挺方便的。其实我更喜欢直接链接
转载
2023-12-01 15:15:32
199阅读
Android 8.0正式版推出也快1年了,国内的大厂们也终于开始更新自己的系统了,最新项目中用到了更新,然而由于之前并没仔细看过8.0的适配,导致有些8.0的用户并不能有效的更新到最新的版本,所以我也赶快看了一下关于各版本的适配,免得下次继续踩坑。准备工作把项目的targetSdkVersion改到26(8.0)或者更高,然后一台Android 8.0(或者更高)版本系统的手机:Android8
一 前言谷歌召开2017年I/O开发者大会已经结束了,与前几年大为不同是,在过去的开发者大会上,Android系统几乎是绝对主角,但是今年以AI人工智能为主,今年Android O虽然也同台亮相,但是比重少了很多。相比当下成熟的智能手机领域,AI人工智能是谷歌的新方向。 之前都是Mobile first,现在是 Mobile first to Al first。谷歌2017全球开发者大会全程视频
SharedPreferences 和 DataStore 对比SharedPreferences:可能阻塞UI线程,导致ANR异常(需要等等sp文件加载完成,而且存储数据越多,文件越大,加载越慢,所有我们之前使用时都会分类存储在不同的sp文件中,如用户信息,业务信息,统计信息等)且不能用于跨进程通信// ContextImpl.getSharedPreferences()
public Shar
Android 安卓自定义系统服务最近有个需求,要增加系统服务,生成第三方 jar 包提供给第三方应用调用,而且 jar 包必须用特定的包名 ,最后生成的 jar 包不能包含 frameworks 相关代码。网上搜索了很多资料,搜索结果都没有自定义包名的案例,导出的 jar 也包含了 frameworks 相关代码。最终搜到这篇 博客 ,结合其他博客,最终完成功能Android 10 自定义系统服
转载
2023-07-05 12:03:12
386阅读
本次分两个大方向去讲解Web Api,1、如何实现Web Api?2、如何Android端如何调用Web Api?对于Web Api是什么?有什么优缺点?为什么用WebApi而不用Webservice?这些问题都不去解答,百度一下,关于这方面的资料很多,就不再去啰嗦。一、如何在web端实现WebApi(1)如何新建一个WebApi?在上一章中,讲到我们项目用的是.net 4.5,开发工具是Visu
Android 14 对应的 API 等级为 34,这一版本带来了许多新特性和功能。本文将通过版本对比、迁移指南、兼容性处理、实战案例、排错指南与性能优化等结构,深入探讨如何有效解决“Android 14 对应的 API 等级”的问题。
## 版本对比
Android 14 与之前版本相比,主要在以下几个方面有着显著差异:
- **新特性**:
- 更新的 UI 控件和样式。
- 性
# Android API 23 及其对应版本科普
Android是一个开源的操作系统,为各种移动设备提供支持。在Android中,API(应用程序编程接口)版本是一个重要的指标,它决定了开发者可以使用哪些功能和特性。API 23对开发者尤其重要,因为它对应的Android版本是Android 6.0(Marshmallow)。在本文中,我们将介绍Android API 23的相关特性,并通过代
______
NO.1
______ 前言 最近在研发项目的时候,有个模块调用webView功能; 点击搜索框,进入webView页面,出现了黑色过渡页面,效果如下:
______ NO.2
______ 排查问题 个人在排查此问题的时候,用了一台可复现的手机:1+ 8(android 13),检查手机的黑暗模式、夜间模式都是关闭的。 那么黑色过渡页面是如何
1 前言Android 11 引入了在 Android 中使用 AIDL 实现 HAL 的功能。这样就可以在不使用 HIDL 的情况下实现 Android 的部分代码。Power HAL模块即可以采用AIDL方式来实现。在学习这部分之前,推荐阅读AIDL的相关知识,特别是Android 10之后引入的对稳定的 Android 接口定义语言 (AIDL) 的支持(stable AIDL)2 Powe
转载
2024-01-17 10:32:12
267阅读
在Android10源码分析的过程中发现了一种后缀名为sysprop的文件,充满疑惑,故记录本文来探索这种系统属性作为API的实现方法,当然这种文件的编译还是依赖于build目录下的编译脚本,安卓10好像使用go语言来构建这种编译方式,安卓真是成为了各种语言的杂合体,看来以后又要对go语言进行一定的学习了。接下里开始正文分析。 先摘抄一大段安卓官方的解释系统属性是在系统范围内共享信息(通
转载
2024-04-11 13:51:40
267阅读
android api19对应什么系统?其实这个问题可以用一系列的技术细节来解构。Android API 19实际上对应的是Android 4.4(KitKat)。这一版本标志着Android系统的一次重要升级,带来了许多特性与改进。在本篇博文中,我将详细梳理从API 19开始至今的版本演进,迁移过程中需要关注的重点,兼容性处理,实战案例,排错技巧以及生态扩展的相关知识。
### 版本对比
首
LeakCanarysquare 开源的内存泄露检测库。 使用起来极为便捷,只需在 build.gradle 中引入依赖: dependencies {
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.0-alpha-2'
} LeakCanary 会自动检测 debug build 中的内存泄
target33对应android13吗?这个问题引起了许多开发者的关注。今天,我将来详细谈一谈Android 13怎样影响了项目的目标API级别33。我们将通过一系列模块化的内容,逐步深入这个话题,从而帮助大家理清这一转变的细节。
### 版本对比
Android 13(API级别33)引入了一些显著的特性,主要集中在隐私和安全性、用户体验以及系统性能优化等方面。为了更好地理解Android
在API21之前我们使用标题栏基本都是在ActionBarActivity的Activity中处理的,而API21之后,谷歌遗弃了ActionBarActivity,推荐我们也可以说是强制我们使用AppCompatActivity,然而ActionBarActivity与AppCompatActivity的使用大同小异,下面我们将介绍最新的Activity组件之AppCompatActivity的
转载
2023-11-15 20:51:49
111阅读
# Android 13 的 Build Tools:一个开发者的指南
随着 Android 13 的发布,开发者们需要更新他们的环境以支持这一最新版本的 Android 系统。Android Build Tools 是开发 Android 应用的重要组件,它包含构建应用所需的工具、库和资源。在这篇文章中,我们将探讨 Android 13 对应的 Build Tools,包括如何安装和使用它们,
在Android开发中,“26对应android”是一种重要的概念,常常出现在处理特定版本兼容性和API设计时。这篇博文将记录解决“26对应android”的过程。
### 背景描述
在2018年8月,Google发布了Android 9.0 (Pie),而安卓开发者们则需要关注新旧API间的兼容性问题。特别是在升级到新的版本时,开发人员需确保旧版本的代码能在新环境下正常工作。下面引用了相关