Nela Blog

崭新万物 正上升幻灭如明星

卡顿掉帧问题排查

卡顿问题本质 卡顿排查工具 trace分析手段 代码逻辑分析手段 CPU大小核 主线程休眠 几种常见卡顿情况及特征 binder调用 绘制事件过长 内存泄漏导致频繁GC 动画问题

将依赖的远程库改为本地依赖

简介 有时项目会依赖远程库,在离线模式如果清除缓存缓存,并且不能访问远程仓库,则必然编译不过。此时先需要将远程依赖改为本地依赖以确保项目编译通过.这有什么用,懂得都懂。 远程私有仓库种类 Nexus 称为“Maven仓库管理器 Maven 包(Package) jcenter 远程仓库 至于 Maven 是什么,请参考 Apache Maven。 对于 Android 开发者而言...

爬虫-根据短信号码和短信内容爬取商家数据

基于爬虫技术的小工具

简介 短信应用在使用时,会收到很多B2C商家发送的短信,那么如何识别他们是谁呢? 根据业务需要,本文介绍一种使用爬虫技术,通过B2C商家下发的信息,爬取商家信息(商家名称,官方网址,头像等)的一种方案。 方案概述 完成简介中所述需求,拆解为如下几个步骤。 预处理短信号码和内容并提取关键词。 根据关键词,国家地区等信息,请求Google搜索 爬取Google搜索结果并保...

SQL-CursorLoader

简介 CursorLoader通常和LoaderManger、ContentProvider一起使用,简化数据库操作。本文介绍如何使用CursorLoader进行多表查询数据库操作,并将结果加在cursor结果集增加一列。以及介绍contactProvider刷新数据时遇到的小问题。 CursorLoader 使用多表查询方式 cursorLoader封装了contentProvide...

内存优化问题

简介 本文介绍内存泄漏的常见问题 常见问题 内存泄漏如何检测? AndroidProfile Mat 内存泄漏是如何产生的,本质是什么? 长生命周期对象持有短生命周期对象,且没有释放,导致短生命周期对象无法被GC回收 静态匿名内部类和匿名内部类有什么区别? 静态匿名内部类不会持有外部引用 弱...

RCS业务介绍

GSMA-RCS 服务架构,运营商的架构参考标准 SIMPLE IM提供典型的基于SIP的消息功能、例如一对一和群组会话消息(即聊天)。这SIMPLE IM成为通信技术的以下技术标准的基础。自2005年以来、OMA MWG工作组(现称COM WG)开始开发融合IP消息(CPM)技术.该技术采用了SIMPLE IM的许多服务特性和技术.CPM通过将传统消息服务(例如、SMS、MMS、电子邮...

Android进程间通信-Binder实战

记录通过binder通信+小米push使natave具有push能力的完整过程

Android进程间通信-Binder实战 简介 本文介绍不采用AIDL模版,基于binder的进程间通信方式。 首先介绍了Binder通信的基本原理,然后通过需求切入,提供了两种通信方案(即java层注册service和c层注册service)然后根据实际情况,实现方案。并记录了实现过程中出现的问题和解决思路。 AIDL做了什么? 封装了Stub类和子类proxy 1.其中的s...

RecyclerView 技术问题集合

Recycleview的一些问题

复用实现 RecyclerView怎么加载数据的? RecyclerView复用机制 RecyclerView三级缓存 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39...

ANR问题集合

ANR APP层如何监控,ANR是如何做监控的? MainLooper检测 ANR的产生原理 AMS发一个任务消息,再次发送一个延时ANR消息,正常情况下执行任务消息后ANR的消息会被移除。没有移除则出现ANR mAm.mHandler.removeMessages(ActivityManagerService.SERVICE_TIMEOUT_MSG, r.app); ...

View的绘制流程和事件传递

Android事件传递流程 & Android View绘制流程 事件分发机制简述 Android事件分发机制 三个重要角色 1、Activity:接收Down点击事件,传递给Phonewindow和DecorView 2、ViewGroup:拦截事件,或者继续传递给子View 3、View:决定消费这个事件或者不消费从而返回给上一级 三个核心事件 1、dispatchTouch...