Swift 2G/3G/4G网络判断 我们可以引用import CoreTelephony框架下的一些API来判断当前的网络 iOS系统API定义: /* Radio Access Technology values */ @available(iOS 7.0, *) public let CTRadioAccessTechnologyGPRS: String @available(iOS 7.0, *) public let CT 移动开发 2025年08月02日 113 点赞 0 评论 12612 浏览
原型与原型链 原型: 1、所有引用类型都有一个proto(隐式原型)属性,属性值是一个普通的对象 2、所有函数都有一个prototype(原型)属性,属性值是一个普通的对象 3、所有引用类型的proto属性指向它构造函数的prototype 原型链: 当访问一个对象的某个属性时,会先在这个对象本身属性上查找,如果没有找到,则会去它的proto隐式原型上查找,即它的构造函数的prototype,如果还没有找到就会 移动开发 2025年08月02日 75 点赞 0 评论 5169 浏览
Android 10.0 锁屏壁纸 LockscreenWallpaper(三) 学习笔记: 一、设置壁纸 通过系统设置进行锁屏壁纸和桌面壁纸的设置。 Setting 部分的代码: // DefaultWallpaperPersister.java private int setStreamToWallpaperManagerCompat(InputStream inputStream, boolean allowBackup, int whic 移动开发 2025年08月02日 79 点赞 0 评论 4457 浏览
Android-推荐一个全局悬浮窗的框架(FloatWindow) 图片来源网络,入侵必删 在日常Android开发当中,我们可能要实现全局悬浮窗的需求。这里分享一个快速实现的框架,希望能帮小伙伴们提高开发效率。 FloatWindow 一个全局悬浮窗的框架,主要特性如下: 1.支持拖动,提供自动贴边等动画 2.内部自动进行权限申请操作 3.可自由指定要显示悬浮窗的界面 4.应用退到后台时,悬浮窗会自动隐藏 5.除小米外,4.4~7.0 无需权限申请 移动开发 2025年07月30日 32 点赞 0 评论 13637 浏览
android hilt 坑位 之前和现在使用 之前 buildscript { ... dependencies { ... classpath 'com.google.dagger:hilt-android-gradle-plugin:2.28-alpha' } } ... apply plugin: 'kotlin-kapt' apply plugin: 'dagg 移动开发 2025年07月30日 170 点赞 0 评论 16925 浏览
iOS三方静态库符号冲突的原因以及解决方案 动态库由于二级命名空间,不会符号冲突 静态库是.o文件的合集,最终生成macho需要链接 ,被主app项目符号合并 app里的符号会把静态库的符号链接到一起,合并成一张符号表,在链接静态库符号时候, other linker Flags 就是对链接静态库的配置 dead strip 不被main函数引用,的非导出符号会被干掉, oc默认都是导出符号,加个static就是本地符号了, 由于库要暴露一 移动开发 2025年07月30日 114 点赞 0 评论 19877 浏览
Block源码解析 block源码 源码 如图所示一个正常block底层被编译成了 __main_block_impl_0结构体,该结构体里包括 _block_impl里面存储的是block的调用信息,__main_block_desc_0表示的是block内存描述。 剩下的属性即为block里引用到的属性 typedef void (^Block)(void); Block block; { 移动开发 2025年07月29日 94 点赞 0 评论 6112 浏览
Android APK 编译打包流程 今天就和大家一起去探索下Android中编译打包的那些事儿。 整个构建流程大概分为两部分:编译(Compile),打包(Package) 编译 编译过程就是将 java文件 编译成 class文件,最后优化成 dex文件。 打包 打包流程就是将DEX文件和编译后的资源组合成单个APK,并且签名,生成最终的APK。 在这些工作中会有很多工具来辅助完成,比如AAPT,aidl,javac,ap 移动开发 2025年07月29日 158 点赞 0 评论 6995 浏览