android框架

Android OpenGL 开发

▼魔方 西西 提交于 2020-02-06 13:45:11
2013-06-30 Android OpenGL 开发 Android提供OpenGL包,专门用于3D的加速和渲染等。 OpenGL, Open Graphics Library, 是一个专业的图形程序接口,是一个功能强大、调用方便的底层图形库。 OpenGL ES ,基于OpenGL API设计,是OpenGL三维图形API的子集,是专为内嵌和移动设备设计的一个2D/3D轻量图形库。 OpenGL ES 1.0 基于OpenGL 1.3,OpenGL ES 1.1 基于 OpenGL 1.5,OpenGL ES 2.0 基于 OpenGL 2.0。 1. Android构建一个3D开发的基本框架 // 导入库 import javax.microedition.khronos.opengles. GL10 ; // 实例化OpenGLContext GL10 gl = (GL10) mOpenGLContext.getGL(); // 在onDraw方法开始 mOpenGLContext.waitNative(); // 在onDraw方法结束 mOpenGLContext.waitGL(); GLSurfaceView包含一个专门用于渲染3D的接口Renderer // 引入Renderer import android.opengl. GLSurfaceView .

Android 学习资料入门到精通(PDF集合)共54本

蹲街弑〆低调 提交于 2020-02-05 13:32:39
最近收集一些安卓入门到精通,包含游戏编程,网络编程,多媒体开发,需要学习朋友就下载保持下来,下载链接在最下面 下面是网盘内容 14天学会安卓开发_(完整版).pdf Android 4 游戏高级编程 第2版.pdf Android 4.4 SDK Reference(2014.1.12 by YGX).chm Android 4高级编程(第3版)(完整书签).pdf Android(经典实例).pdf Android_2.0游戏开发实战宝典.pdf Android_开发从入门到精通_IBM.pdf android下如何调试程序.pdf Android中文翻译组——Android中文API合集(4).chm Android商业软件开发全程实战-以手机守护神为例 PDF 扫描版 .pdf Android应用开发入门教程(经典版).pdf android开发入门与实战.rar Android开发入门与实战体验 李佐彬 pdf扫描版.pdf Android开发关键技术之旅:Java程序员快速学习通道 PDF 扫描版.pdf Android开发技巧合集.pdf Android开发教程(完全免费版).pdf Android最佳学习路线图.pdf Android框架揭秘 PDF 扫描版.pdf ANDROID游戏开发大全(配套源码).rar Android移动开发一本就够.pdf

论一个APP从启动到主页面显示经历的过程?

谁说胖子不能爱 提交于 2020-02-04 10:37:14
前言 (个人观点.不喜勿喷) 本部分内容是关于Android进阶的一些知识总结,涉及到的知识点比较杂,不过都 是面试中几乎常问的知识点,也是加分的点。 关于这部分内容,可能需要有一些具体的项目实践。在面试的过程中,结合具体自 身实践经历,才能更加深入透彻的描绘出来。 ( 顺手留下GitHub链接,需要获取相关面试等内容的可以自己去找 ) https://github.com/xiangjiana/Android-MS 一、流程概述 启动流程: ① 点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起 startActivity 请求; ② system_server进程接收到请求后,向zygote进程发送创建进程的请求; ③ Zygote进程fork出新的子进程,即App进程; ④ App进程,通过Binder IPC向sytem_server进程发起 attachApplication 请求; ⑤ system_server进程在收到请求后,进行一系列准备工作后,再通过binder IPC向 App进程发送 scheduleLaunchActivity 请求; ⑥ App进程的binder线程( ApplicationThread )在收到请求后,通过handler向主线 程发送LAUNCH_ACTIVITY消息; ⑦

Android IntentService的使用和源码分析

有些话、适合烂在心里 提交于 2020-02-04 03:00:18
引言 Service服务是Android四大组件之一,在Android中有着举足重轻的作用。Service服务是工作的UI线程中,当你的应用需要下载一个文件或者播放音乐等长期处于后台工作而有没有UI界面的时候,你肯定要用到Service+Thread来实现。因此你需要自己在Service服务里面实现一个Thread工作线程来下载文件或者播放音乐。然而你每次都需要自己去写一个Service+Thread来处理长期处于后台而没有UI界面的任务,这样显得很麻烦,没必要每次都去构建一个Service+Thread框架处理长期处于后台的任务。Google工程师给我们构建了一个方便开发者使用的这么一个框架---IntentService。 IntentService简介 IntentService是一个基础类,用于处理Intent类型的异步任务请求。当客户端调用android.content.Context#startService(Intent)发送请求时,Service服务被启动,且在其内部构建一个工作线程来处理Intent请求。当工作线程执行结束,Service服务会自动停止。IntentService是一个抽象类,用户必须实现一个子类去继承它,且必须实现IntentService里面的抽象方法onHandleIntent来处理异步任务请求。 IntentServic示例

HIDL学习笔记

ε祈祈猫儿з 提交于 2020-02-04 00:41:01
一、HIDL概述 1. Google对于HIDL的详细说明,以及语法解析链接如下:https://source.android.com/devices/architecture/hidl/ (需要翻墙才可以打开) 2. HIDL的定义 HIDL 全称是 Hardware Interface Definition Language。在 Android 8.0 中被全面使用。其诞生目的是:框架可以在无需重新构建 HAL 的情况下进行替换。 HAL将由供应商或SOC 制造商构建,放置在设备的 /vendor 分区中,这样一来,框架就可以在其自己的分区中通过 OTA 进行替换,而无需重新编译 HAL。 3. HAL的类型 为了更好地实现模块化,Android 8.0 对 Android 操作系统底层进行了重新架构。运行 Android 8.0 的设备必须支持绑定式或直通式 HAL: (1)绑定式 HAL: 以 HAL 接口定义语言 (HIDL) 表示的 HAL。在绑定式 HAL 中,Android 框架和 HAL 之间通过 Binder 进程间通信 (IPC) 调用进行通信。 所有在推出时即搭载了 Android 8.0 或后续版本的设备都必须只支持绑定式 HAL。(这个是趋势) (3)直通式 HAL。以 HIDL 封装的传统 HAL 或旧版 HAL。这些 HAL 封装了现有的 HAL

app性能优化

萝らか妹 提交于 2020-02-03 07:06:06
性能优化简图 打造一个高质量的应用应该以4个方向为目标:快、稳、省、小。 快:使用时避免出现卡顿,响应速度快,减少用户等待的时间,满足用户期望。 稳:减低 crash 率和 ANR 率,不要在用户使用过程中崩溃和无响应。 省:节省流量和耗电,减少用户使用成本,避免使用时导致手机发烫。 小:安装包小可以降低用户的安装成本。 要想达到这4个目标,具体实现是在右边框里的问题:卡顿、内存使用不合理、代码质量差、代码逻辑乱、安装包过大,这些问题也是在开发过程中碰到最多的问题,在实现业务需求同时,也需要考虑到这点,多花时间去思考,如何避免功能完成后再来做优化,不然的话等功能实现后带来的维护成本会增加。 卡顿优化 Android 应用启动慢,使用时经常卡顿,是非常影响用户体验的,应该尽量避免出现。卡顿的场景有很多,按场景可以分为4类:UI 绘制、应用启动、页面跳转、事件响应,如图: 卡顿场景分析 这4种卡顿场景的根本原因可以分为两大类: 界面绘制。主要原因是绘制的层级深、页面复杂、刷新不合理,由于这些原因导致卡顿的场景更多出现在 UI 和启动后的初始界面以及跳转到页面的绘制上。 数据处理。导致这种卡顿场景的原因是数据处理量太大,一般分为三种情况,一是数据在处理 UI 线程,二是数据处理占用 CPU 高,导致主线程拿不到时间片,三是内存增加导致 GC 频繁,从而引起卡顿。 引起卡顿的原因很多

Android之SharedPreferences数据存储

♀尐吖头ヾ 提交于 2020-02-02 18:34:19
一、SharedPreferences保存数据介绍   如果有想要保存的相对较小键值集合,应使用SharedPreferences API。SharedPreferences对象指向包含键值对的文件并提供读写这些文件的简单方法。每个SharedPreferences文件由框架进行管理并且可以专用或共享。   SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置比如窗口状态,一般在Activity中重载窗口状态onSaveInstancesState保存一般使用SharedPreferences完成,它提供了Android平台常规的Long长整形、Int整形、String字符串型的保存。   处理方式:SharedPreferences类似过去的Windows系统上的ini配置文件,但它分为多种权限,可以全局共享访问 ,Android提示最终是以xml方式来保存,整体效率来看不是特别高,对于常规的轻量级而言要比SQLite要好不少如果真的存储量不大可以考虑自己定义文件格式。Xml处理时Dalvik会通过自带底层的本地XML Parser解析,比如XML pull方式,这样对于内存资源占用比较好。它的本质是基于xml文件存储key-value键值对数据,通过用来存储一些简单的配置信息。其存储位置在/data/data/<包名>

Android开发从入门到精通 控制UI界面的方法

*爱你&永不变心* 提交于 2020-02-01 19:09:47
控制UI界面的方法 4种控制UI界面的方法 使用XML布局文件 Java代码 使用XML和Java代码混合 开发自定义的View 最推荐方法一。 使用XML布局文件控制UI界面 好处:把布局代码写在XML布局文件中,与逻辑结构的Java代码分离开 步骤: 在Android应用的res/layout的目录下编写XML布局文件,注意将activity_main的第二行RelativeLayout改写FrameLayout。 Framelayout框架布局,层叠式,有点像堆栈,先进在底层,会被后进的覆盖。 RelativeLayout相对布局,控件的位置通过各个控件之间的相对距离来确定。 GridLayout为网格布局管理器。 在Activity中使用Java代码显示XML文件中布局的内容 setContentView ( R . layout . activity_main ) ; //activity_main为布局文件的名称,注意不用写扩展名.xml。 在Java代码中控制UI界面 package com . mingrisoft ; import android . app . AlertDialog ; import android . content . DialogInterface ; import android . graphics . Color ; import

Android 开发从入门到精通

房东的猫 提交于 2020-02-01 03:03:06
注意 :本专题所列所有文章均是国际上知名学者教授或者是IBM 谷歌等知名公司的高级工程师所撰写。如有引用,注明来源,谢谢。    Android 是一种基于 Linux ® V2.6 内核的综合操作环境。最初,Android 的部署目标是移动电话领域,包括智能电话和更廉价的翻盖手机。但是, Android 全面的计算服务和丰富的功能支持完全有能力扩展到移动电话市场以外。Android 也可以用于其他的平台和应用程序。本专题提供的教程、技术文章首先带大家了解 Android 开发 ,进而深入到 Android 开发的各个方面。 Android 开发入门 Android 开发简介 :   Android 是 Google 提供的移动、无线、计算机和通信平台。通过使用 Android Eclipse 插件,可以在强大的 Eclipse 环境中构建 Android 应用程序。本教程介绍如何用 Eclipse 插件 Android Development Tools 进行 Android 应用程序开发,包括对 Android 平台和 Android Development Tools 的介绍,并开发两个示例应用程序。 用 Eclipse 开发 Android 应用程序:   Android 是一种基于 Linux@ V2.6 内核的综合操作环境。最初,Android 的部署目标是移动电话领域

Android开源框架之ImageLoader

假装没事ソ 提交于 2020-01-31 14:23:45
特点 多线程下载图片,图片可以来源于网络,文件系统,项目文件夹assets中以及drawable中等 支持随意的配置ImageLoader,例如线程池,图片下载器,内存缓存策略,硬盘缓存策略,图片显示选项以及其他的一些配置 支持图片的内存缓存,文件系统缓存或者SD卡缓存 支持图片下载过程的监听 根据控件(ImageView)的大小对Bitmap进行裁剪,减少Bitmap占用过多的内存 较好的控制图片的加载过程,例如暂停图片加载,重新开始加载图片, 一般使用在ListView,GridView中 ,滑动过程中暂停加载图片,停止滑动的时候去加载图片 提供在较慢的网络下对图片进行加载 下载地址 https://github.com/nostra13/Android-Universal-Image-Loader 准备工作 1)导入universal-image-loader-1.9.5.jar到项目中 2)创建MyApplication继承Application,在oncreate()中初始化ImageLoader public class MyApplication extends Application { @Override public void onCreate ( ) { super . onCreate ( ) ; // 初始化参数