Android bugreport 概述 bugreport 是Android 系统下的一个工具,功能类似于系统的一个黑匣子;通过执行相应的命令可以获取到bugreport ...
Android bugreport 概述 bugreport 是Android 系统下的一个工具,功能类似于系统的一个黑匣子;通过执行相应的命令可以获取到bugreport ...
以Android11 为目标版本的应用(targetSdkVersion>=30才有影响) 所有应用在Android11设备上适配改动(无论targetSdkVersion是...
一、启动优化概念 1.1、为什么要做启动优化? APP优化是我们进阶高级开发工程师的必经之路,而APP启动速度的优化,也是我们开启APP优化的第一步。用户在使用我们的软件时,...
线上监控的方案 1、BlockCanary 从Choregrapher中可以知道,帧的渲染是通过消息发送到主线程执行的。所以通过在计算msg的处理时间就可以判定是否发生卡顿。...
一、卡顿介绍及优化工具选择 1.1. 卡顿问题介绍 对于用户来说我们的应用当中的很多性能问题比如内存占用高、流量消耗快等不容易被发现,但是卡顿却很容易被直观的感受到,对于开发...
做网络请求的时候肯定要封装回调,我这里就传了泛型,但是出了个问题是Gson没办法直接解析泛型,如果直接解析的话,不会得到一个javabean而是得到一个LinkedTreeM...
很多BAT也不一定能懂的binder机制! 因为搞懂binder需要会c,linux内核知识。看java根本就看不懂! 我同事从小米跳槽过来,干安卓framework层10年...
写在前面 为什么只看这一篇就够了? 现在CSDN、知乎、掘金上各路大佬层出不穷,他们身经百战、血洗杀场,总结出满满的求职干货。但同时也存在很多非良心的博主,要么活出了人类的本...
Android音频开发之音频采集 在 Android 系统中,一般使用 AudioRecord 或者 MediaRecord 来采集音频。 AudioRecord 是一个比较...
有没有分析过Activity中ViewModleStore的生命周期呢,大致看了下,当Activity的配置发生变化重建的时候,启动新Activity的时候会把之前的实例的ViewModleStore对象传递过来,不知道是不是完全对..
public ViewModelStore getViewModelStore() {
if (getApplication() == null) {
throw new IllegalStateException("Your activity is not yet attached to the "
+ "Application instance. You can't request ViewModel before onCreate call.");
}
if (mViewModelStore == null) {
NonConfigurationInstances nc =
(NonConfigurationInstances) getLastNonConfigurationInstance();
if (nc != null) {
// Restore the ViewModelStore from NonConfigurationInstances
mViewModelStore = nc.viewModelStore;
}
if (mViewModelStore == null) {
mViewModelStore = new ViewModelStore();
}
}
return mViewModelStore;
}
其中Activity的mLastNonConfigurationInstances会在ActivityThread中调用它的attach()方法时传递过来的
浅谈 ViewModel 的生命周期控制1、从一个 Bug 说起 想必有过一定开发经验的同学对 ViewModel 都不会陌生,它是 Google 推出的 MVVM 架构模式的一部分。这里它的基础使用我们就不介绍了...
我项目依赖的版本,测试机是Android 7.0 的设备,一切正常 然而,我们采购回来的设备居然是Android 4.4的(这年头居然有这么低的版本),一请求http就报错了...
在这里整理一下最近这两天整理的https的相关知识。 大家都知道要使用https,需要在网站的服务器上配置https证书(一般是nginx,或者tomcat),证书可以使用自...
一.拖拽滑动 其中拖住滑动是通过dragTo方法来实现的 可以看到最终是通过ViewCompat.offsetLeftAndRight()和ViewCompat.offset...
上一篇文章介绍了使用 MediaRecorder 实现录音功能 Android录音实现(MediaRecorder) ,下面我们继续看看使用 AudioRecord 实现录音...
在Android4.1之后增加了Choreographer机制,用于同Vsync机制配合,统一动画、输入和绘制时机。本文以绘制为例来简单学习下Choreographer。 一...
前言 RecyclerView这个控件几乎所有的Android开发者都使用过(甚至不用加几乎),它是真的很好用,完美取代了ListView和GridView,而Recycle...
观察者模式定义了对象之间一对多的关系,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 观察者模式中主题(被观察者)和观察者都是实现于定义接口,这样它们相互间只用...