Android Developers The official site for Android app developers. Provides the Android SDK tools and API documentation. Android Open Source Project ADT Bundle & Plugin 百度网盘下载 ADT Bundle & Plugin 百度网盘下载 Ubuntu 16.04或14.04里下安装搜狗输入法(图文详解)(全网最简单) - 大数据和AI躺过的坑 - 博客园 Ubuntu常用快捷键总结 - CSDN博客 C/C++ 函数指针使用总结 - 白菜菜白 - 博客园 OTA简介 - CSDN博客 OTA简介 1、OTA 概念 OTA(Over-the-Air Technology)空中下载技术。是通过移动通信(GSM或CDMA)的空中接口对SIM卡数据、手机终端及应用进行远程管理的技术。空中接口可以采 用WAP、GPRS、CDMA1X及短消息技术。OTA技术的应用,使得移动通信不仅可以提供语音和数据服务,而且还能提供新业务下载。 2、OTA 分类 OTA发展到现在, JNI Functions 一个SyncML协议的例子 - CSDN博客 下面是一个例子,描述同步传输的大体过程。同步传输有七种方式,下面的例子是双向传输,最复杂的一种。首先进行初始的 准备工作,然后进行传输,再进行确认。1. 客户端发出同步请求 相当于同步的头文件,基本为固定模式 1.0 SyncML/1.0 1 1 同步初始化时数值为一,相当于第几个回合 目标地址 http://www.syncml.org/sync-server 源地址 IMEI:493005 Android开发:LocationManager获取经纬度及定位过程(附demo) - blfbuaa - 博客园 Android 系统中 Location Service 的实现与架构 定位服务是移动设备上最常用的功能之一,本文以 Android 源码为基础,详细分析了 Android 系统中定位服务的架构和实现。 简单明了,彻底地理解Binder - 简书 我的CSDN博客同步发布:简单明了,彻底地理解Binder 你是不是看过很多Binder文章但是还是对Binder没有一个深刻理解?不是那些文章讲得不够好,主要是存在两种情况,一种是讲的深,全C代码,对我 这种专做Java的人来说没有心情往下看;另一种是只讲framework层,Binder驱动并没有具体提,导致我们会用Binder,也大致能说的出 一些原理,可并没有一个完整的深刻认知。那么接下... AGPS定位基本原理浅析 - CSDN博客 转自http://www.cnblogs.com/magicboy110/archive/2010/12/12/1903927.html 位置服务已经成为越来越热的一门技术,也将成为以后所有移动设备(智能手机、掌上电脑等)的标配。随着人们对BLS(Based Location Serices,基于位置的服务)需求的飞速增长,无线定位技术也越来越得到重视。AGPS(Assisted 【C/C++】从零开始的cmake教程 - CSDN博客 本文主要介绍了如何利用camke快速轻松地完成小中型项目的自动编译构建,着重演示了几个常见函数的使用方法。 CMake简要教程 - 简书 CMake是我非常喜欢且一直使用的工具。它不但能帮助我跨平台、跨编译器,而且最酷的是,它帮我节约了太多的存储空 间。特别是与水银结合起来使用,其友好的体验,足以给我们这些苦逼码农一丝慰藉。 以下内容翻译自官网教程 CMake Tutorial A Basic Starting Point (Step 1) 最基本的就是将一个源代码文件编译成一个exe可执行程序。对于一个简单的工程来说,两行的C... install — CMake 3.11.1 Documentation C++使用binder实例 - winfu - 博客园 Android Battery 架构 - CSDN博客 Android系统对电池的管理驱动继承了linux的power supply class。在用户层在BatteryService.java中通过广播的方式将电池相关的属性报给app使用,并且注册了uevent监听电池状态变化,以实时获取电池状态。 frameworks/base/services/core/java/com/android/server/BatteryService.java Android O 前期预研之二:HIDL相关介绍 - CSDN博客 在上一篇博客里,大致介绍了下Android O 中treble计划的一些背景与相关基本架构,这一篇中跟大家一起来探讨下HIDL相关的内容。Android HAL类型 在此之前的ANDROID版本当中Android HAL没有什么特殊的特殊的,也么有什么分类,但是从android 8.0开始,Android重构了HAL与Android FW之间的联系结构,所以Android HAL会被区分 Linux进程间通信——so共享库的使用学习笔记 - CSDN博客 Linux进程间通信——so共享库的使用学习笔记 多个进程间共享动态链接库的原理-hfm_honey-ChinaUnix博客 同样这个问题是我在面试总监的时候,总监问我的一个问题,这些天一直 忙活,都没有好好看书了,今天总结一下这个问题?为什么一个进程用完一个动态链接库以后另一个进程还可以继续使用呢?当时回答的很是笼统,只说对了答案的一半,现在就在这里好好总结一下 Android:Android O hidl简述 - 简书 Android 8.0引入hidl,原因是为了将hal从system.img移除出去,方便android版本升级。 下面简单说一个hidl的例子 一.编写hal文件,可以自动生成so库和java库,以mtk的nvram为例子 路径:vendor/mediatek/proprietary/hardware/interfaces/nvram/1.0/包含三个文件 hal文件定义了system与v... Android跨进程通信IPC之9——Binder之Framework层C++篇2 - 简书 Android跨进程通信IPC整体内容如下 1、Android跨进程通信IPC之1——Linux基础2、Android跨进程通信IPC之2——Bionic3、Android跨进程通信IPC 之3——关于"JNI"的那些事4、Android跨进程通信IPC之4——AndroidIPC基础14、Android跨进程通信IPC之4—— AndroidIPC基础25、Android跨进程通信IPC之5—... Android源码添加自定义系统服务 - liam999 - 博客园 对Android 平台下SElinux的理解及遇到过的相关问题解决方法总结 - CSDN博客 笔者在工作中多次遇到和SELinux相关的问题,初次遇到时一头雾水,走了很多弯路,也耗费了很多时间精力。后来看了不少资料和博客,也研究了相关代码,对SELinux有了些认识。所以用本文来做个总结,加深理解。 本文将从下面五个方面来逐步认识和理解Android 下SELinux。 什么是SELinux为什么需要SELinuxSElinux 工作原理android 上的实现曾经遇到过的问题 SELinux策略语言--类型强制(编写TE规则) - CSDN博客 1. 简介 android 网络连接管理机制 - crazywenza - 博客园 Thread.State | Android Developers Android ANR 分析学习总结 - 简书 1. 什么情况下会发生anr (1). KeyDispatchTimeout(5 seconds) --主要类型按键或触摸事件在特定时间内无响应(2). BroadcastTimeout(10 seconds) --BroadcastReceiver在特定时间内无法处理完成(3). ServiceTimeout(20 seconds) --小概率类型 Service在特定的时间内无法处理完成... ANR问题简析 - CSDN博客 ANR问题,相信是每位开发日常都会遇到的问题,对于这类问题的分析,按照官方的推荐,或网络博客的总结思路能解决一 定的问题,但是多数时候大家的困惑就是应用本逻辑很简单,耗时很短或应用堆栈完全正常,或者或处于空闲状态,可系统为什么就认为接收者发生ANR了呢?下 面将之前公司的一次内部分享开放出来,用几个实例从不同角度分析导致ANR产生的Root Case。也希望对大家以后分析该类问题有一定参考,不对的地方 Android中App可分配内存的大小 - CSDN博客 现在真实测试结果: 1,为了搞清楚每个应用程序在Android系统中最多可分配多少内存空间,我们使用了真机进行测试,测试机型为魅族MX4 Pro,3G内存。 测试方法是直接申请一块较大的内存空间,看应用程序在最多申请多大的内存空间时会崩溃。 结果:(1)未设定属性android:largeheap = "true"时,可以申请到的最大内存空间为221M。 (2)设定属性a Java8之方法引用 - 平凡希 - 博客园 Android ANR 详解 - CSDN博客 ANR简介 ANR,是“Application Not Responding”的缩写,即“应用程序无响应”。在Android中,ActivityManagerService(简称AMS)和 WindowManagerService(简称WMS)会监测应用程序的响应时间,如果应用程序主线程(即UI线程)在超时时间内对输入事件没有处理完 毕,或者对特定操作没有执行完毕,就会出现ANR。对于输入事件没 ART笔记 —— dvm_lock_sample - CSDN博客 看ART代码过程中,看到LogContentionEvent函数,记起logcat events中有大量的dvm_lock_sample信息。 dvm_lock_sample: [com.banyac.midrive.map,1,main,98,ReportUtil.java,119,-,189,19] 进程名,主线程?线程名,锁等待时间,下个持有者文件名,行号,上个持有者文件名,行号,等待百分比 Android 解读main log和event log日志信息 - CSDN博客 Android 解读main log和event log日志信息 Android EventLog含义 - Gityuan博客 | 袁辉辉博客 Android,Gityuan,Android技术博客,Android源码分析,袁辉辉 Android 7.0 SystemUI Recent浅析 - CSDN博客 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 最近Task模块 Recents extends SystemUI start进行初始化 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ BaseStatusBar中如下函数显示最近task protected void toggleRecents() { Android如何获取系统权限 - 雨墨心弦 - 博客园 Android 7.0 SystemUI(3)--RecentsActivity - CSDN博客 RecentsActivity 是最近任务管理界面,通过该activity用户可以对启动的应用进行简单的管理。其配置信息如下 frameworks/base/packages/SystemUI/AndroidManifest.xml <activity android:name=".recents.RecentsActivity" andro 关于java.lang.IllegalArgumentException: View not attached to window manager 错误的分析 - CSDN博客 今天遇到一个很奇特的问题,当用户设置了PIN码,在锁屏界面正常解锁PIN码后,进入Launcher时显示com.android.phone 已停止运行。一开始猜想会不会是解锁PIN码的时候处理导致了Phone进程报错,通过log分析找到了问题的大概原因: AndroidRuntime: FATAL EXCEPTION: main AndroidRuntime: java.lang.Illegal Could not read input channel file descriptors f... - 简书 最近开发功能的时候monkey总是能跑出一个bug, java.lang.RuntimeException: Could not read input channel file descriptors from parcel. 百思不得其解,认为是系统上面的bug,实时证明自己还是太年轻.现在开始分析一下这个bug产生的原因. 一.为什么会产生句柄泄露? 众所周知Android是linux内... Fragment之java.lang.IllegalArgumentException: No view found for id异常 - CSDN博客 描述: FragmentA中打开FragmentB,打开方式: getFragmentManager().beginTransaction().add(R.id.fragment_container, fragmentB, FragmentB.TAG).commit();其中fragment_container是FragmentA布局中一个容器,用来存放 FragmentB。 异常信息 java.lang.ClassCastException android.view.AbsSavedState - CSDN博客 继承父VIEW的多个子类时,因为设置view 的id重复,导致 java.lang.ClassCastException: android.view.AbsSavedState$1 cannot be cast to android.widget.AbsListView$SavedState 修复你子类中的ID,即可解决 安卓app的webView加载网页后出现ERR_UNKNOWN_URL_SCHEME - CSDN博客 进来开发需要,欲于app中加入百度地图导航功能,然时间紧迫,遂以嵌入网页为先。 然在使用webView加载网页过程中,遇到了如上问题,显示ERR_UNKNOWN_URL_SCHEME 不知何故之下,学网上删去webView.setWebViewClient(new WebViewClient(){...},并加上webView.setWebChromeClient(new WebChromeC WebView使用解析(二)之WebViewClient/WebChromeClient - CSDN博客 WebViewClient—–在影响View的事件到来时,会通过WebViewClient中的方法回调通知用户。 WebChromeClient—–当影响浏览器的事件到来时,就会通过WebChromeClient中的方法回调通知用法。 通过上面的对比,我们发现WebViewClient和WebChromeClient都是针对不同事件的回调,而google将这些回调进行分类集合,就产生了WebVi Android8.1(O1)CTS失败项 - 简书 1、CtsLibcoreTestCases libcore.java.net.SocketTest#testSocketTestAllAddresses 网络问题,需要在IPV6的环境下进行测试 2、CtsLocationTestCases android.location.cts.GnssPseudorangeVerificationTest#testPseudoPosition 在测试... dex2oat的原理及慢的原因 - CSDN博客 Overview 众所周知,Android的程序是可以用java来写的,如果可以运行java语言,那么就一定需要一个虚拟机。同时,google为了避开商业纠纷,采用了自己在dalvik虚拟机。 虚拟机的功能是解释执行代码文件。就好比 java语言在android的运行流程如下所示: dex2oat的原理 虚拟机的发生展经历了 Android预优化那些事 - CSDN博客 Android预优化那些事Preopt ART Dalvik APK的预优化原理和作用Android预优化那些事 1什么是Android预优化 2Android预优化的原理 3Android ART优化的过程 4Android预优化的过程 5项目中执行的效果1.什么是Android预优化Android预优化,也就是把Android在启动或APP在运行时所需要做的一些事情,把这些事情转移到编译APK android开发数据库Cursor 错误android.database.CursorWindowAllocationException - Android移动开发技术文章_手机开发 - 红黑联盟 做android 开发的经常会遇android database CursorWindowAllocationException这样子的错误;一般出现这样的错误,大部分原因是因为没有关闭cursor,或者是因为 Cursor使用不当,之前我的遇到这样的代码 Android 中如何计算 App 的启动时间? - 泡在网上的日子 之前有人在知乎提问: “怎么计算apk的启动时间?” : 利用python或者直接用adb命令怎么计算apk的启动时间呢?就是计算从点击图标到apk完全启动所花费的时间。比如,对游戏来说就是点击游戏图标 到进入到登录界面的这段时间。 已知的两种方法貌似可以获取,但 理解linux cpu load - 什么时候应该担心了 - CSDN博客 译文原文: http://blog.scoutapp.com/articles/2009/07/31/understanding-load-averages 你可能已经很熟悉linux的平均load. 平均load是3个数 (可以用uptime或者top命令查看), 他们看着像下面这样:load average: 0.09, 0.05, 0.01大多数人对这些数都有一个模糊的概念:三个数分别代表了 可能忽略的Java基础知识 - 理解内部类和匿名内部类,异常与异常捕获 - CSDN博客 Android开发中经常会用到内部类和异常处理,如果忽略一些基础知识,可能导致内存泄露,有时无法理解一些东西,比如在使用proguard中的类的keep。 内部类和匿名内部类 1.概念 内部类:《Java编程思想》中,“可以将一个类的定义放在另一个类的定义内部,这就是内部类” 匿名内部类(anonymous class),我的理解就是没有主动去命名的内部类 嵌套类:将内部类声明为stati 一个三年Android开发的总结 - 常见数据库问题总结 - CSDN博客 Android应用开发离不开对SQLite数据库的操作,一般简单的增删改查,可以直接通过 SQLiteDatabase进行,但是只要操作变得频繁,并且随着需求不断增加,你应该考虑使用ORM框架,至少使用 SQLiteOpenHelper,结合需要用ContentProvider再封装一层。本文不介绍具体的使用方法,而是列出一些常见的问题,供分析参 考。使用问题1.SQLiteOpenHelper (1) Android 查看每个应用的最大可用内存 - 行走的思想 - 博客园 android framework 低电量关机处理流程 浅析 - CSDN博客 一,主要涉及的类 ./base/services/java/com/android/server/BatteryService.java ./base/services/java/com/android/server/ShutdownActivity.java ./base/services/java/com/android/server/power/PowerMana android查看kernel log - 一步一个脚印 - CSDN博客 有时候手机出了问题,只看上层的log是没办法确认问题的根源的,那么就需要查看kernel层的log查看kernel层的log使用如下方法:一、 1. adb shell 进入到手机 2. shell@hwCHM-H:/ $ cat proc/kmsg二、 1. adb shell 进入到手机 2. shell@hwCHM-H:/ $ dmesg adb如何打印kernel输出log - 简书 Android内核的Log输出 Android内核是基于Linxu kernel的,因此其log机制也是通用的,在Android内核中使用printk函数进行Log输出。与c语言的printf类似,printk提 供格式化输入功能,同时,它也具有所有LOG机制的特点--提供日志级别过虑功能。printk提供了8种日志级别(详细的定义在 include/linux/kern_levels.h中):... Android lowmemorykiller分析 - GSQ 的专栏 - CSDN博客 目录 概述 lmkd lowmemorykiller 总结 1.概述 Android底层还是基于Linux,在Linux中低内存是会有oom killer去杀掉一些进程去释放内存,而Android中的lowmemorykiller就是在此基础上做了一些调整来的。因为手机上的内存毕竟比较 有限,而Android中APP在不使用之后并不是马上被杀掉,虽然上层ActivityManagerServic Android 7.0 LowMemoryKiller 初识 - 苏法迪的专栏 - CSDN博客 kill 日志中的(adj 900)848: 11-10 16:21:21.424072 1114 21429 I ActivityManager: Killing 1029:com.google.process.gapps/u0a16 (adj 900): system app is not cached in devices with low memory低内存阈值主要这个2个文件,不同配置的手 Linux SWAP内存交换机制基本概念 - 河道一血不如床上一血 - CSDN博客 Linux SWAP内存交换机制基本概念tags: Linux源码Linux SWAP内存交换机制基本概念 摘要 前序知识 内存交换要做什么 硬件上给予的支持 下面假定场景更好的叙述 Linux中的实现 数据什么时候跑到磁盘上面去的 什么时候换出内存 交换与回写什么关系 小小的总结 引用 摘要本文旨在以较容易理解的水平讨论Linux的内存交换机制。文中尽量不涉及具体的代码,不涉及一些边边角角的情况, Java子线程中的异常处理(通用) - Java小伙伴 - 博客园 Linux 获取内存页大小 - qq_28779021的博客 - CSDN博客 如何查看Linux系统的内存页大小: 1. getconf PAGESIZE/PAGE_SIZE 返回值单位为Bytes 点击(此处)折叠或打开 [root@localhost nginx-1.8.0]# getconf PAGESIZE 4096 [root@localhost nginx-1.8.0]# getconf PAGE_SIZE 内存耗用:VSS/RSS/PSS/USS - adaptiver的专栏 - CSDN博客 http://hi.baidu.com/donghaozheng/blog/item/235da701ab70f60a1c95832e.html Terms VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存) RSS- Resident Set Size 实际使用物理内存(包含共享库占用的内存) PSS- Proportional Set Siz java.lang.IllegalArgumentException: parameter must be a descendant of this view - 祝福的博客 - CSDN博客 异常信息:java.lang.IllegalArgumentException: parameter must be a descendant of this view错误原因:发生这个错误主要是ListView或者其它ViewGroup等容器控件因为滑动而暂时移除子View,但却没有移除该子View上 面的焦点Focus,所以在ListView滑动返回到原来的位置的时候没有恢复成原来的View,导致 Android GLSurfaceView详解 - TuGeLe的博客 - CSDN博客 学习在Android中使用OpenGL ES,就不得不提到一个控件:GLSurfaceView GLSurfaceView从Android 1.5(API level 3)开始加入,继承自SurfaceView,实现了SurfaceHolder.Callback2接口,拥有SurfaceView的全部特性,也有 view所有的功能和属性,特别是处理事件的能力,它主要是在SurfaceVie 你好,三角形 - LearnOpenGL CN Android L SurfaceFlinger dump信息全解(一) - xiaodanpeng的专栏 - CSDN博客 Android图像处理简介の图像存储和元数据 - ASCE1885 - CSDN博客 Google Protocol Buffers 入门 - 石头儿 - 博客园 java 各种流(stream I/O reader/writer)的使用(转) - Jokeyyu - 博客园 在Android上山寨了一个Ios9的LivePhotos,放Github上了 - 我爱物联网 - 博客园 Android Camera2 使用总结 - 简书 最近在做自定义相机相关的项目,网上查了资料都是有关android.hardware.Camera的资料,开始使 用的才发现这个类已经废弃了。Android 5.0(21)之后android.hardware.Camera就被废弃了,取而代之的是全新的android.hardware.Camera2 。Android 5.0对拍照API进行了全新的设计,新增了全新设计的Camera v2 API... android.hardware.camera2 使用指南 - Android 实战技巧 - 极客学院Wiki API21中将原来的cameraAPI弃用转而推荐使用新增的camera2API,这是一个大的动作,因为新API换了架构... Android Camera2 API和拍照与录像过程 - HeXinGen的博客 - CSDN博客 (一)Android camera2 实现相机预览及获取预览帧数据流 - ganfanzhou的博客 - CSDN博客 Android硬编码——音频编码、视频编码及音视频混合 - 湖广午王 - CSDN博客 Android Camera设置颜色格式与Mediacodec编解码颜色格式 - zhang_jun_ling的博客 - CSDN博客 Android视频采集编码颜色格式选择 - yuxiatongzhi的专栏 - CSDN博客 Android多媒体--MediaCodec 中文API文档 - Hi,出发了 - 博客园 YUV格式详解 - 一粒卑微的尘埃 - 博客园 Android Camera2 Mediacodec编码 - keen_zuxwang的博客 - CSDN博客 Android: Image类浅析(结合YUV_420_888) - liang9zi的专栏 - CSDN博客 Android: YUV_420_888编码Image转换为I420和NV21格式byte数组 - Penguin Android: convert YUV_420_888 image format Image to YUV420Planar (I420) and YUV420SemiPlanar (NV21... 详解YUV420数据格式 - Samaritan - 博客园 YUV420p旋转代码 - 对牛乱弹琴 - CSDN博客 android平台yuv缩放相关<转> - wainiwann - 博客园 使用libyuv对YUV数据进行缩放,旋转,镜像,裁剪等操作 - 简书 1.背景 在Android做过自定义Camera的朋友应该都知道,我们可以通过public void onPreviewFrame(byte[] data, Camera camera)回调中获取摄像头采集到的每一帧的数据,但是这个byte[] data的数据格式YUV的,并不能直接给我们进行使用,那么该通过什么样的方法对这个YUV数据进行处理呢? 2.YUV数据格式介绍 首先我们来... YUV格式转换中的stride - 简书 前言 ios调用系统框架采集出的视频YUV格式为NV12.为满足不同业务需求,我们需要把nv12转换为i420或者rgba等格式.libYUV库和 ffmpeg都可以帮助我们轻松搞定.(推荐libyuv库,性能比ffmpeg高出很多). libyuv libyuv是Google开源的实现各种YUV与RGB之间相互转换、旋转、缩放的库。它是跨平台的,可在Windows、Linux、Mac、 And... GitHub - lemenkov/libyuv: unofficial libyuv mirror unofficial libyuv mirror. Contribute to lemenkov/libyuv development by creating an account on GitHub. (四十七) 蓝牙自拍杆原理学习 - JT的专栏 - CSDN博客 对YUV数据进行裁剪 - willhua - 博客园 Android4.4之后SD卡存储方案 - info5 - IT610.com 由于Android4.4之后,Android限制了第三方应用在SD卡中的公用目录的写权限,所以我们无法再公用目 录创建文件夹,写入文件,但是读操作不受限制,(系统应用如文件管理器,或者root用户不除外)第三方应用想要写入SD卡,有以下几种方 案:1,Context.getExternalFilesDir()获取应用的专有目录如:/storage/sdcard1/Android /data/com.xx 存储访问框架 - qianxiangsen的博客 - CSDN博客 android camera yuv帧水平翻转 - 嵌入式系统开发!!! - CSDN博客
posted @
2019-01-22 18:41
Jokeyyu
阅读(
481 )
评论()
编辑
收藏
举报