厚薄 所谓厚薄,书从厚读到薄,从薄读到厚,厚积薄发。 重拾基础,备忘备战~ 数据结构与算法 VAlgorithm -> go to browse 设计模式 VDesignPatterns -> go to browse Android 知识体系 VAndroidReview -> go to browse 2021-03-28 厚薄 Base 厚薄
小记-第一次报告 Android 官方文档错误 背景最近在阅读 Android 官方文档《应用架构指南》一篇,在实操过程中发现示例代码的一处错误。 问题UserProfileViewModel 的示例代码中 代码行: 1val user = LiveData<User> = _user 应该为: 1val user :LiveData<User> = _user 后记本次发现也已向 Google 提交了 issue, 2021-06-10 Android Android 小计
Android适配-文件存储 FileProvider历史问题:File Uri 访问控制需要开放底层文件系统权限,开放的权限直到下次关闭之对任何 App 应用都可用。这种级别的访问从根本上说是不安全的。 解决方案:FileProvider Content Uri 访问控制,“路由映射”设计,无需修改开放底层文件系统权限,只需授予运行时级别的临时权限。 AndroidManifest 中声明 FileProvider。考虑到 2021-05-06 Android Android Android适配 文件存储
优雅Intent ActivityResult ActivityResult 新时代跳转 Activity 获取返回值,我们怎么做? AndroidX Activity 1.2.0-alpha02 和 Fragment 1.3.0-alpha02 是新旧时代的划分线。 调用方假设为 IntentsActivity,被调用方假设为 IntentResultActivity。 旧石器时代: 调用方: 调用 startActivityForRes 2020-12-13 Android Android Intent ActivityResult
译-viewlifecycleowner与this对比 哈喽,Android 小伙伴们~ 这篇文章将提到 Fragment 中的两种 lifecycleowners。因为作为一个 Android 开发者,我们能够简单地使用 Fragment 作为 lifecycle owner,但某些情境下这可能会使你烦恼。 让我们先来看一下 Fragment 的生命周期: 从图中我们可以看到 onCreate 和 onDestroy 只调用了一次。这些是 2020-11-24 Android Android 译文 lifecycle
优雅FindViewById findBiewByIdfindBiewById 是 Android 开发中在布局中查找 View 元素的 Api。 findBiewById 基本使用12345678910class DemoActivity extends AppCompatActivity { TextView mTextDemo; @Override public void onCreate(Bundle s 2020-04-18 Android Android FindViewById
Fragment可见性 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667class ExampleFragment extends Fragment{ /** * 当fragment 2020-03-05 Android Fragment 可见性
ViewPager下Fragment预加载与懒加载 预加载ViewPager 控件有一个预加载机制,即默认情况下当前页面左右两侧的 1 个页面会被预加载,以方便用户滑动切换到相邻的界面时,更流畅地加载界面(节省了初始化时间)。 从源码里可以看到,ViewPager 的预加载机制是不可取消的,预加载数量 limit 至少为 1,如果外部设置小于 1,内部会自动置为 1。 12345678910111213141516public class View 2020-01-11 Android Fragment ViewPager 预加载 懒加载
记录一次Android7.0适配FileProvider踩坑 FileProvider 重复 自定义 FileProvider 继承 FileProvider。 12public class AppleFileProvider extends FileProvider {} AndroidManifest.xml 中 application 节点下添加 provider 节点。 1234567891011<provider 2019-11-16 Android Android FileProvider
简析LeakCanary 使用添加依赖(release 有 no-op 版)然后在 Application 初始化。 123456dependencies { debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.X' releaseImplementation 'com.squareup.leakca 2019-10-19 Android Android LeakCanary 内存