自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1360)
  • 资源 (28)
  • 收藏
  • 关注

原创 Kotlin Daemon 简介

是 Kotlin 编译器的一个后台进程,旨在提高编译性能。它通过保持编译环境的状态来减少每次编译所需的启动时间,从而加快增量编译的速度。

2025-08-04 09:55:37 444

原创 【无标题】

执行生成的 crash.log的内容如下所示:08-01 02:26:57.634 22845 22885 D ANCHOR_DETAIL: | 缁撴潫鏃跺埢 : 175401521763408-01 02:26:57.644 22845 22845 D ANCHOR_DETAIL: All anchors were released锛?

2025-08-01 11:39:25 861

原创 Android 15的16kb设备适配,项目之前使用的是realm数据库(但是2024年9月就不更新了),如果改为谷歌官方的room数据库,那么旧app的realm数据库的本地数据如何迁移到room数

Android 15的16kb设备适配,项目之前使用的是realm数据库(但是2024年9月就不更新了),如果改为谷歌官方的room数据库,那么旧app的realm数据库的本地数据如何迁移到room数据库中,realm数据库是有自己的.realm存储文件deepseek回答:针对 Android 15 的 16KB 内存页适配及 Realm 到 Room 的数据库迁移,以下是专业迁移方案:数据结构差异性能敏感点阶段 2:数据迁移期(关键步骤)迁移流程图:具体实现:阶段 3:完全切换期在 中启用

2025-07-31 15:40:19 247

原创 ELF 文件 简介

deepseek回答:ELF(Executable and Linkable Format)是类 UNIX 系统(如 Linux、Android)中可执行文件、共享库、目标文件的核心格式标准。

2025-07-31 14:55:49 411

原创 Realm数据库的对象图存储 简介

│ iOS │ Objective-C/Swift │ 与CoreData无缝集成 │。│ 平台 │ 实现方式 │ 特性 │。• 延迟加载(Lazy Loading)与预加载(Eager Loading)可选。• 零拷贝数据访问(平均提升3倍读取速度)• 监控文件大小(推荐阈值:150MB)• 原子性写入(通过COW技术实现)• 控制对象层级深度(建议≤5层)• 适时冻结(freeze)对象。

2025-07-31 14:54:32 395

原创 libc发出的fatal signal异常如何定位

定位libc。

2025-07-31 11:25:21 914

原创 realm数据库和sqlite数据库的区别

维度RealmSQLite适用场景高性能应用、实时同步需求、跨平台项目轻量级应用、系统内置兼容场景开发效率⭐⭐⭐⭐ (对象化操作)⭐⭐ (需手动处理SQL)扩展能力⭐⭐⭐⭐ (原生高级功能)⭐⭐ (依赖第三方库)资源占用⭐⭐ (体积较大)⭐⭐⭐⭐ (轻量)💡决策建议:追求开发效率与实时性能选Realm;需严格控制包体积或深度定制存储逻辑则考虑SQLite/Room。引用链接:1.1、Realm数据库介绍 - Lili的日常生活2.

2025-07-31 10:54:02 764

原创 realm数据库RealmObject的作用

数据结构允许开发者定义数据模型的结构,包括属性和数据类型。例如,可以通过继承来创建用户、产品等实体类。是 Realm 数据库中不可或缺的一部分,提供了高效、简洁的数据模型定义和操作方式,适合移动应用开发。

2025-07-31 10:17:46 225

原创 适配Android 15 的16kb page size如果自己编译依赖的第三方库,会不会有未知的问题?

适配Android 15 的16kb page size如果自己编译依赖的第三方库,会不会有未知的问题?

2025-07-30 16:40:53 235

原创 如果项目中引入的so库有问题,适配Android 15的16kb内存页设备的时候是不是要在运行时使用到so库的功能时才会报错?

如果项目中引入的so库有问题,适配Android 15的16kb内存页设备的时候是不是要在运行时使用到so库的功能时才会报错?

2025-07-30 14:26:17 936

原创 为什么谷歌官方提供的16 KB ELF 对齐脚本验证so库的 ELF 段正确对齐,但是运行时却崩溃

可以看到此时的 apk 对齐也是没有问题的,所以此时的运行问题可能更多在于 C++ 代码里的 mmap 或者 sysconf 等代码存在问题,例如写死了 4096 等硬编码。官方提供了一个 16 KB ELF 对齐脚本来验证共享库的 ELF 段是否正确对齐,如下脚本针对 GSYVideoPlayer 里的动态库进行校验后,输出却是比较意外。可以看到此时动态库是 ALIGNED 的,并且是 2**16 ,也就是 armv68a 的动态库此时的 ELF 对齐。

2025-07-30 11:24:34 294

原创 7月30日,微信官网最新版在Android 15系统16KB page size设备上崩溃

看报错log,是没有适配Android 15系统的16KB page size的原因。

2025-07-30 10:48:24 101

原创 验证设备是否使用 16 KB 环境:adb shell getconf PAGE_SIZE

【代码】验证设备是否使用 16 KB 环境:adb shell getconf PAGE_SIZE。

2025-07-29 17:02:12 100

原创 Android15适配问题汇总

https://developer.android.com/guide/practices/page-sizes?hl=zh-cn#cmakehttps://github.com/realm/realm-java/issues/7894https://jira.mongodb.org/browse/RJAVA-1264https://jira.mongodb.org/browse/RKOTLIN-1105

2025-07-29 16:36:41 102

原创 Android的16 KB 页面大小

谷歌文档:16 KB 页面大小支持 16 KB 的页面大小

2025-07-29 16:31:42 129

原创 Realm数据库为什么这么火?

deepseek回答:Realm数据库自2014年发布以来持续受到开发者青睐,其火爆现象可从以下五个维度解析:• 对象驱动模型:直接操作持久化对象(如),消除ORM转换层• 响应式数据绑定:内置Live Object机制,实现UI自动更新(示例代码见下方)三、全栈同步生态构建功能模块技术实现性能指标设备间实时同步基于Operational Transform算法延迟<200ms云端数据湖MongoDB Atlas无缝集成支持PB级数据存储离线优先策略差分同步

2025-07-29 14:16:34 403

原创 引入realm数据库io.realm:realm-gradle-plugin

作用区别。

2025-07-29 11:24:57 621

原创 dependencies {classpath “io.realm:realm-gradle-plugin } 这种通过引入插件的方式就能自动引入realm数据库

使用 Realm 插件的方式可以简化项目的依赖管理,减少手动配置的麻烦。确保在项目中正确配置插件后,Realm 数据库将会自动可用。

2025-07-29 10:12:16 191

原创 目前市面上有Android 16KB的手机吗

目前市面上还没有使用 16KB 页面大小的 Android 生产设备,但 Android 15 可以在 4KB 和 16KB 页面大小之间切换。在将页面大小从 4KB 改为 16KB 的过程中,Google发现系统性能提升了 5%~10%,但代价是内存使用量增加了约 9%。Google已在Android 15 中调整了 16KB 页面大小的兼容性,Google提供的所有操作系统二进制文件现在都是以 16KB 对齐,EROFS 和 F2FS 等文件系统也已准备好使用 16KB 页面大小。

2025-07-28 18:32:20 406

原创 mmkv适配了Android15的16kb page size的版本

mmkv适配了Android15的16kb page size的版本:在这里插入图片描述。

2025-07-28 15:38:40 139

原创 Android项目运行时报错 UnsatisfiedLinkError 是什么错误

19.[【错误记录】Android 应用配置第三方 so 动态库 ( /data/app/comxxx==/base.apk/lib/arm64-v8a]couldn‘t find “libx.so“ ) - 阿里云开发者社区](https://developer.aliyun.com/article/865411)

2025-07-28 11:46:15 351

原创 Android项目如果项目中使用的so库都是第三方的aar包里才有so库,那么Android studio是不是可以不用安装ndk?

是的,如果项目中使用的.so库完全来自第三方aar包(即库文件已预编译并包含在aar中),那么Android Studio无需安装NDK。Android项目如果项目中使用的so库全都是第三方的aar包里才有so库,那么Android studio是不是可以不用安装ndk?注意:如果项目后续需要修改或编译原生代码,则必须安装NDK;否则仅使用预编译库时,NDK并非必需。

2025-07-28 11:36:36 410

原创 Android 15设备默认还是4kb内存页吧,需要手动去设置里面切换为16kb才是进入16kb内存页的模式?

Android 15设备的默认内存页大小仍为4KB,用户或开发者需手动在系统设置(如开发者选项)中切换才能启用16KB模式。这一设计旨在为OEM和应用开发者提供过渡准备时间,避免强制升级导致兼容性问题、。Google Play已要求自2025年11月1日起,所有面向Android 15及以上设备的新应用和更新必须支持16KB页面大小,否则可能无法在兼容设备上正常运行、、。Android 15设备默认还是4kb内存页吧,需要手动去设置里面切换为16kb才是进入16kb内存页的模式?

2025-07-28 11:34:38 402

原创 Android studio的模拟器选择Android 15.0(16KB PAGE SIZE)镜像,运行时报错: java.lang.UnsatisfiedLinkError

该错误是由于Android 15的16KB内存页特性导致动态库(提交详细日志获取支持。

2025-07-28 11:18:12 809

原创 Android studio的模拟器如何启用 16 KB内存页

深度思考完成 用时61秒首先,用户的问题是:“Android studio的模拟器如何启用 16 KB内存页”,这是关于在Android Studio的模拟器中启用16KB内存页大小的配置。我需要从搜索结果中提取相关信息。搜索结果提供了关于Android适配16KB页面大小的信息,以及如何在设备上启用它。关键搜索结果:‌1:关于Android Studio配置的内容,提到了自定义VM选项和属性文件,但主要是关于性能优化,没有直接提到16KB内存页。

2025-07-28 10:44:39 560

原创 kotlin-gradle-plugin作用

deepseek回答: 是专为 Gradle 构建系统设计的官方插件,其核心作用是简化 Kotlin 项目在 Gradle 中的集成与构建流程。其主要功能和应用价值如下:引用链接:1.找不到kotlin-gradle-plugin - 腾讯云2.Kotlin版Gradle插件开发 - 优快云博客3.使用Kotlin构建Gradle插件的模板:kotlin-gradle-plugin-template - 优快云博客4.Android Gradle Plugin - 掘金开发者社区5.在ko

2025-07-28 10:44:24 710

原创 android应用适配Android15需要升级kotlin-gradle-plugin吗

Android Studio 工具(如 AGP Upgrade Assistant)可简化此迁移过程,但需测试 UI、权限和存储功能是否存在回归问题。,以兼容 Android Gradle 插件 (AGP) 和 Gradle 工具的更新要求。是的,适配 Android 15 通常需要升级。

2025-07-28 10:44:07 559

原创 Android 的16 KB内存页设备需要硬件支持吗,还是只需要手机升级到Android15系统就可以

Android 的16 KB内存页设备需要硬件支持吗,还是只需要手机升级到Android15系统就可以?deepseek回答:思考 3 秒思考过程好的,用户现在问的是Android的16 KB内存页设备是否需要硬件支持,还是只需要升级到Android 15系统就可以。这个问题需要结合Android系统的内存管理机制来回答。首先,内存页的大小通常是由硬件架构决定的,比如ARM的处理器可能支持不同的页大小。Android系统虽然可以在软件层面进行配置,但底层硬件的支持是必须的。

2025-07-25 18:07:49 961

原创 【无标题】

是不是即使项目本身没有so库,但项目依赖的aar文件中有so库时也会起到过滤so库的作用?deepseek回答:思考 3 秒思考过程好的,我现在需要回答用户关于Gradle NDK配置的问题。用户的问题是,当在build.gradle中配置了ndk的abiFilters,即使项目本身没有so库,但依赖的aar中包含so库时,这个配置是否仍然会过滤so库。首先,我需要回忆一下Android构建过程中NDK和ABI过滤的工作原理。

2025-07-25 17:55:38 579

原创 Android 15中的16KB大页有何优势?

指标提升幅度影响场景系统性能5%-10%整体运行效率应用启动时间平均3.16%高频应用体验相机冷启动最高6.60%拍摄响应速度功耗降低平均4.56%设备续航注:开发者需通过和NDK 28+适配原生代码,避免硬编码4KB内存操作。引用链接:1.Android 15 硬核升级:16KB 页面大小成刚需,性能、续航双提升背后的适配要点 - 强哥叨逼叨2.针对16 KB 页面大小进行优化 | Android Open Source Project - Android3.

2025-07-25 17:48:05 694

原创 Android系统中的4KB内存页简介

当物理内存不足时,系统将不活跃的4KB内存页交换到磁盘(如Swap分区或zRAM),释放物理内存供急需的进程使用。例如图片浏览应用滑动时,后台图片数据页会被换出。应用程序访问内存时,系统将虚拟地址按4KB页框映射到物理内存或磁盘空间,实现进程间的内存隔离和安全访问。应用申请内存时,系统按4KB粒度分配物理页帧。即使应用仅需少量内存(如1KB),仍会占用整页。,单次内存操作效率更高,减少缺页中断,提升性能并降低功耗。但4KB页仍在兼容旧设备中发挥作用。申请大堆内存,但需权衡GC效率。

2025-07-25 17:44:03 887

原创 compileSdkVersion和targetSdkVersion可以不一样的版本吗

【代码】compileSdkVersion和targetSdkVersion可以不一样的版本吗。

2025-07-25 15:41:17 882

原创 谷歌官网app适配Android 15的官方指南

deepseek回答:谷歌官网提供了完整的 Android 15 应用适配官方指南,涵盖兼容性测试工具、API迁移规范及商店审核要求,核心内容如下:访问 Android 15 开发者网站目标API要求隐私与安全变更引用链接:1.Android-适配-03-Android15(35)适配 - 掘金开发者社区2.Android出海实战:Android15适配保姆级教程! - 掘金开发者社区3.获取Android 15 | Android Developers - Android4.Other Pla

2025-07-25 14:57:56 696

原创 android app适配Android 15可以在Android studio自带的模拟器上进行吗,还是说必须在真机上进行

deepseek回答:Android App适配Android 15,无需强制依赖真机测试。

2025-07-25 14:41:25 463

原创 Android Studio 自带的官方模拟器,ABI这一列是x86_64,xABI这一列是arm64-v8a

Android Studio 自带的官方模拟器(Android Emulator)‌选择镜像时页面如上图,ABI这一列是x86_64,xABI这一列是arm64-v8a,区别是啥。‌xABI列显示arm64-v8a‌:表示目标设备的ABI(应用二进制接口)为arm64-v8a,这是基于ARM架构的64位版本,广泛用于智能手机和平板等设备。‌ABI列显示x86_64‌:表示当前选择的镜像支持x86_64架构,这种架构常用于Intel和AMD的处理器,适合在PC上模拟Android应用。

2025-07-25 11:37:20 392

原创 Android studio自带的Android模拟器都是x86架构的吗,需要把arm架构的app翻译成x86指令?

架构支持ARM 应用兼容方案性能表现官方模拟器主要提供x86/x86_64镜像通过Houdini 动态翻译ARM 指令x86 镜像性能接近原生,ARM 翻译后损耗显著ARM 镜像可选但较少使用直接运行 ARM 应用无需翻译性能较差,仅建议特殊场景使用因此,开发者应优先选择 x86 镜像,仅在遇到翻译兼容性问题时才考虑 ARM 镜像或其他解决方案。引用链接:1.在x86 架构的 Windows 电脑上安卓模拟器和虚拟机运行的Windows系统存在的核心区别?- 红客科技2.

2025-07-25 11:26:23 723

原创 so库是编译成的二进制文件?

deepseek回答:so库是被编译成的二进制文件,并针对特定的应用程序二进制接口(ABI)进行优化,以确保在不同硬件架构上兼容运行‌12。以下是关键细节:📦 so库的编译本质‌二进制文件形式‌:so库(动态链接库)本质是预编译代码的二进制集合,通过编译器(如Android NDK)将C/C++源码转换为可直接执行的机器码文件(.so格式)‌2。例如:编译后的.so文件包含特定指令集架构(如ARM或x86)的二进制指令。这种形式避免了源码重复编译,可直接被程序调用执行‌4。‌ABI的核心作用‌:A

2025-07-25 11:09:48 792

原创 目前市面上arm64-v8a、armeabi-v7a设备的市占率有多少?为什么x86架构的手机越来越少?

deepseek回答:当前全球范围内,,远超其他架构版本。

2025-07-25 10:47:06 1013 1

原创 app的ndk配置,在build.gradle文件中只需要配置arm架构的cpu就可以了吗,不需要x86?

架构类型必要性适用场景arm64-v8a✅ 必需主流 64 位手机(性能最优)✅ 建议兼容旧款 32 位 ARM 设备x86️ 可选Android 模拟器调试x86_64mips❌ 无需市场份额极低,新设备已弃用。

2025-07-25 10:29:24 1022

原创 ndk { setAbiFilters([‘armeabi-v7a‘, “arm64-v8a“]) }

deepseek回答:好的,我现在需要解释build.gradle中这段ndk配置代码的含义。首先,用户提供的代码片段是:ndk {我的第一步是理解每个部分的作用。ndk块在Android构建文件中用于配置Native Development Kit相关的设置,这通常涉及本地代码(如C/C++)的编译和打包。接下来,setAbiFilters方法的作用是过滤ABI(应用二进制接口)。

2025-07-25 10:17:44 754

记录一次anr分析,记录一次anr分析

记录一次anr分析,记录一次anr分析

2025-07-24

记录一次ANR文件分析

记录一次ANR文件分析

2025-07-04

最小生成树算法详解

详细的最小生成树全解,讲述金典的最小生成树算法,全面掌握最小生成树算法

2013-05-11

区块链—形式化表示与体系结构演进--斯雪明

2018中国区块链技术大会上,斯雪明做的演讲,区块链—形式化表示与体系结构演进

2018-11-27

区块链技术及其应用

介绍区块链技术的背景,整体技术原理,以及相关应用。

2018-11-30

银行支付系统的SWIFT架构

银行支付系统的SWIFT架构,SWIFT作为银行间标准化的载体。

2018-07-23

SqlCommand_ExecuteNonQuery方法

SqlCommand_ExecuteNonQuery方法,亲自运行过,没有问题初学者参考

2014-03-24

Ethereum代码整体框架(根据源码分析)

Ethereum代码整体框架(根据源码分析),在看以太坊源码时做的整体框架的思维导图。

2019-01-15

区块链技术在跨境支付领域的应用研究

区块链技术在跨境支付领域的应用研究, 可供参考学习。

2018-07-23

区块链与资产证券化(ABS)

介绍资产证券化abs的整体原理,以及基于区块链技术的资产证券化管理平台的优势。

2019-03-25

SqlCommand_ExecuteScalar方法

SqlCommand_ExecuteScalar方法,亲自运行过,没有问题初学者参考

2014-03-24

雷凯-北京大学深圳 -块游记-CCF+CBC2018+PPT(杭州)-20181125

2018中国区块链技术大会上,北京大学深圳研究生院副教授雷凯做的演讲

2018-11-27

Android系统启动流程.xmind

Android系统启动流程的思维导图,包含了Android系统的关键进程以及关键服务。。

2020-03-19

CustomHttpURLConnectionImpl

实现HttpURLConnection,创建自己想要的HttpURLConnection连接

2016-04-08

SqlDataReader

介绍 SqlDataReader对象例子,亲自运行过,没有问题初学者参考

2014-03-24

DataSet对象

介绍 DataSet对象例子,亲自运行过,没有问题初学者参考

2014-03-24

SqlCommand_Parameters

SqlCommand_Parameters属性用法例子,亲自运行过,没有问题初学者参考

2014-03-24

A Kafka-based Ordering Service for Fabric

A Kafka-based Ordering Service for Fabric,讲解fabric的基于Kafka的排序服务。

2019-01-11

白硕《企业区块链》

上海交易所前总工程师白硕 做的演讲《企业区块链》。。

2018-11-27

WindowManagerService相关类图.eddx

Activity,Window,DecorView,ViewRootImpl,WindowManager,WindowManagerImpl,WindowManagerGlobal,WindowManagerService相关类图

2020-03-20

WindowManagerService相关类图.eddx

Activity,Window,DecorView,ViewRootImpl,WindowManager,WindowManagerImpl,WindowManagerGlobal,WindowManagerService相关类图

2020-03-19

Binder.rar

Binder实例,client进程调用server进程的a+b函数,用server进程返回结果给client进程。 Binder跨进程通信相关的client进程,Proxy,BinderProxy,Binder驱动,Binder,Stub,server进程的时序图

2020-03-19

WindowManagerService相关类图.eddx

Activity,Window,DecorView,ViewRootImpl,WindowManager,WindowManagerImpl,WindowManagerGlobal,WindowManagerService相关类图

2020-03-20

OnTouchEvent.rar

Android事件分发机制的工程Demo,包含有Android事件分发机制的流程图,方便理解Android事件分发机制。

2020-02-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除