关闭

Android 7.0中ContentProvider实现原理 - 转自腾讯Bugly

导语 本文描述了ContentProvider发布者和调用者这两在Framework层是如何实现的。 作为Android的四大组件之一,ContentProvider作为进程之间静态数据传递的重要手段,其在系统级别的应用中起了重大的作用。毫无疑问ContentProvider核心机制之一也是Binder,但和其它3大组件又有区别。因为ContentProvider涉及数据的增删查改,当数...
阅读(77) 评论(0)

【干货】人工智能工程师的三个层次(附技术学习路线图)

作者 | 智亮 Google Tensorflow框架的Contributor。在计算机视觉领域有深厚的工业经验,带领团队开发的“花伴侣”植物识别App,上线数月即在0推广的情况下达到百万用户,并获得阿里巴巴2017云栖大会API Solution大赛一等奖,团队受邀成为腾讯微信公开课北京站九位演讲嘉宾之一。 01 ...
阅读(70) 评论(0)

“并非来自 Chrome 网上应用店”无法启动插件

方法一: 1.首先把需要安装的第三方插件.后缀.crx 改成 .rar.然后解压.得到一个文件夹; 2.打开谷歌浏览器.点击右上角按钮->设置->扩展程序; 3.选中开发者模式复选框.然后再点击加载正在开发的扩展程序按钮 4.选择刚才步骤1中解压好的文件夹.确定; 5.确认新增扩展程序.点击添加; 6.成功添加.并且正常使用; 方法二: 1.前往这里下载组策...
阅读(94) 评论(0)

Android Telephony分析(三) ---- RILJ详解

前言 本文主要讲解RILJ工作原理,以便更好地分析代码,分析业务的流程。  这里说的RILJ指的是RIL.java (frameworks\opt\telephony\src\java\com\android\internal\telephony) ,  RILC指的是Ril.cpp (hardware\ril\libril) 1. RILJ的创建 RILJ的继承关系如下: ...
阅读(90) 评论(0)

Android Telephony分析(二) ---- RegistrantList详解

前言 本文主要讲解RegistrantList的原理,以及如何快速分析RegistrantList相关的代码流程。  在Telephony模块中,在RIL、Tracker(ServiceStateTracker、CallTracker、DcTracker)、Phone(PhoneBase及其子类)、UICC框架、CallManager等等中都大量使用到的RegistrantList,可...
阅读(56) 评论(0)

Android7.0 PhoneApp的启动

前言  最近准备写一写Android中数据业务相关的内容,考虑到数据业务是基于PhoneApp的,因此需要先来分析一下PhoneApp是如何启动的。 版本  Android 7.0 1 AndroidManifest.xml  为了弄清楚PhoneApp如何启动,我们首先必须先看一下PhoneApp对应的AndroidManifest.xml,它的位置为package/servi...
阅读(74) 评论(0)

Android Telephony分析(一) ---- Phone详解(Android 7.0)

1. Android N中Phone的改变 Android 6.0时,Phone的继承关系:    在Android N中,Phone的继承关系:    变化1: GSMPhone和CDMAPhone合并成了GsmCdmaPhone,合并之后,某些方法当然需要对GSM Phone和CDMA Phone进行分别处理,举个例子: @Override publ...
阅读(80) 评论(0)

Android N (7.0) 数据拨号前的准备工作

背景  在介绍PhoneApp的创建过程时,我们知道为了支持双卡手机,PhoneFactory创建了两个Phone对象。  然而由于通信制式、功耗等的限制,目前底层的芯片厂商规定modem工作于DSDS模式下,于是同一时间内只有一个Phone具有上网的能力。  本文旨在揭示激活Phone拨号能力的过程,即讲述数据拨号前的准备工作。 版本  android 7.0 1 Telep...
阅读(179) 评论(0)

Android 7.0 插卡后APN信息的加载流程、UI界面编辑APN的流程及Android中APN配置相关的漏洞

终端中有一个apns-config.xml文件,负责定义各个运营商规定的默认APN参数。  开机后,终端启动Phone进程时,会加载运行在Phone进程中的TelephonyProvider。  TelephonyProvider负责解析apns-config.xml文件,将其中定义的APN参数写入到数据库中。  Android 7.0中这一部分的流程,与Android 6.0基本类似,可以...
阅读(101) 评论(0)

Android6.0 APN

目的:  为了访问网络,手机必须设置合适的APN参数。Android中的apn是配置在apns-conf.xml文件中,由手机开机时加载到TelephonyProvider中。然后供设置查看和编辑,供框架使用来进行数据拨号。本文旨在描述这APN加载、显示和编辑的过程。 版本  Android 6.0 前言  APN的英文全称是Access Point Name,中文全称叫接入点,...
阅读(60) 评论(0)

Android异步消息处理机制详解及源码分析

PS一句:最终还是选择CSDN来整理发表这几年的知识点,该文章平行迁移到CSDN。因为CSDN也支持MarkDown语法了,牛逼啊! 【工匠若水 http://blog.csdn.net/yanbober 转载烦请注明出处,尊重分享成果】 最近相对来说比较闲,加上养病,所以没事干就撸些自己之前的知识点为博客,方便自己也方便别人。 1 背景 之所以选择这个知识点来分析有以下几...
阅读(50) 评论(0)

Handler sendMessage 与 obtainMessage (sendToTarget)比较

话说在工作中第一次接触Android 的Handler 的时候,不知道怎么去关注性能。 记得当时这么写的: Message msg = new Message() msg.what = xxx; msg.arg1 = xxx; msg.arg2 = xxx; handler.sendMessage(msg); 这样写也没有绝得不好,反正当时项目的功能实现了。(性能上还可以...
阅读(119) 评论(0)

GitHub 上最火的开源项目 —— Java 篇

很多开发者在看到自己感兴趣的项目时会使用 Star 功能,可以说 Star 的数量在一定程度上代表了开源项目的热门程度,本文整理了 Java 语言中 star 数最多的十五款开源项目,这些项目在 GitHub 上的 star 数均超过 15000,排名如下: Rx 的 Java 实现 RxJava star:26782;fork:4718 .Net响应式编程框架 Rx 的Java版本开源...
阅读(770) 评论(0)

30 多年的编码经验浓缩成的 10 条最佳实践

摘要: 编写更好的代码的 10 个技巧 所以,如何写出一手好代码? 良好的代码更易于阅读、理解、调试和修改,最重要的是它的缺陷也更少。显然,编写良好的代码需要更多的时间,但是从长远来看,它也具有更多的价值,因为这降低了维护的成本,而且具有更好的可重用性。 事实上,我们可以将好的代码等同为可重用的代码,这也是本篇文章罗列的许多技巧背后的驱动原则。作为一个要实现特定功能的开发者,代码...
阅读(77) 评论(0)

eclipse中格式化代码快捷键Ctrl+Shift+F失效的解决办法

eclipse格式化代码的时候,右键-source-format能够起效,但ctrl+shift+f不好使了。原来是和“简繁体快捷键”冲突了 可以基本断定是快捷键与别的软件冲突了,但一直也没时间排查一下。google之后来发现是搜狗输入法惹的祸。 原来是和“简繁体快捷键”冲突了。输入法中的这个快捷键我们一般不用,小勾勾去掉就成了。 eclipse中功能成功...
阅读(102) 评论(0)
317条 共22页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:191251次
    • 积分:2859
    • 等级:
    • 排名:第13715名
    • 原创:68篇
    • 转载:248篇
    • 译文:1篇
    • 评论:15条
    最新评论