- 博客(14)
- 收藏
- 关注

原创 Android内存优化分析--贰
1 内存优化—减少内存使用(Reduce) 如果减少某些不必要内存的使用,也可以达到内存优化的目的。 比如说Bitmap。它在使用时会花掉较多的内存。那我们就可以考虑在应用bitmap时减少某些不必要内存的使用。 边界压缩:一张拍出来的图片分辨率可能会很大,如果不做压缩去展示的话,会消耗大量内存,可能造成OOM,通过BitmapFactory.Options去设置inSampleSi
2017-12-29 13:38:13
507

原创 Android内存优化分析
为什么内存优化? 在一个商业项目中,很有可能因为工程师的疏忽,导致代码质量不佳,影响到程序的运行效率,从而让用户感知到应用的卡顿、崩溃。而Android开发中,每个Android应用在手机上申请的内存空间都是有限的。虽然手机发展越来越快,可申请到的内存越来越大,但是也不能大手大脚,随便浪费应用可使用的内存空间。内存一旦不够时,你这个应用就会因为OOM(out of memory)而崩溃。因此
2017-12-26 11:01:54
957
原创 Android--内存溢出处理
在模拟器上给gallery放入图片的时候,出现java.lang.OutOfMemoryError: bitmap size exceeds VM budget 异常,图像大小超过了RAM内存。 模拟器RAM比较小,只有8M内存,当我放入的大量的图片(每个100多K左右),就出现上面的原因。 由于每张图片先前是压缩的情况,放入到Bitmap的时候,大小会变大,导致超出RAM内存,
2018-01-27 11:51:22
306
原创 Android下JNI开发
什么是JNI JNI java native interface native本地 java本地接口 通过JNI可以实现java和本地代码之间相互调用 jni可以看做是翻译 实际上就是一套协议 为什么要用JNI 市场需求 让java代码和底层代码之间互相调用 java调用底层特殊硬件(调用c语言,车载电脑) 效率上c/c++语
2018-01-26 14:37:12
234
原创 Android面试题
Android面试题 1. 下列哪些语句关于内存回收的说明是正确的? (b ) A、 程序员必须创建一个线程来释放内存 B、 内存回收程序负责释放无用内存 C、 内存回收程序允许程序员直接释放内存 D、 内存回收程序可以在指定的时间释放内存对象 2. 下面异常是属于Runtime Exception 的是(abcd)(多选) A、Arith
2018-01-22 18:07:52
988
原创 Fragment基础入门
1 Fragment是什么? Frament也叫碎片,片段。是Google在Android 3.0引入的,主要为了给大屏幕的UI提供支持的。Frament可以理解为一个迷你的Activity或者是Activity的模块化的组件,它有自己的生命周期与显示界面,我们可以利用多个Frament嵌套在Activity达到以下的功能,如适配平板,或适配横竖屏幕,或者在程序运行的过程中动态的更改我们的UI界
2018-01-18 10:48:28
700
原创 Android系统设计中存在设计模式分析
1、 开闭(OCP) 简介:要扩展,不要修改。比如我对外提供了一个接口。现在想更新的话,不要直接修改这个接口,而是提供另外一个接口,然后通知大家在什么时间之前切换到这个新接口。 举例:这个设计模式无处不在,Android每次升级都会提供一些新的API,有一些较老的API就会置为deprecated。如从level 1就支持的Service.onStart,在level 5中,已经被Servi
2018-01-15 14:08:14
191
原创 Activity相关知识
1.Activity 启动方式有四种,分别是: standard singleTop singleTask singleInstance 下面是这四种模式的作用: standard 默认模式,可以不用写配置。在这个模式下,都会默认创建一个新的实例。因此,在这种模式下,可以有多个相同的实例,也允许多个相同Activity叠加。 例如: 若我有一个Activity
2017-12-05 15:17:57
271
转载 HTML5基础知识3
## 1.Mac桌面 ### 1.1新建一个Mac桌面项目 ### 1.2搭建整体框架 ### 1.3设计默认和背景样式 ``` /*替换通配符,提高效率*/ a, address, b, big, blockquote, body, center, cite, code, dd, del, div, dl, dt, em, fieldset,
2017-11-17 14:53:11
323
转载 HTML5基础知识2
# 第二天课程 ## 1.CSS布局.. - 默认情况下,所有的网页标签都在**标准流**布局中 从上到下,从左到右 - **脱离标准流**的方法有: float 属性 ( 让指定的标签浮动到父标签的左边-left或者右边-right ) position 属性 和 left、right、top、bottom
2017-11-17 12:00:31
538
原创 JAVA相关面试题
一: 面向对象的三大特性,如何理解其中的多态? l 面向对象的三个基本特征是:封装、继承、多态。从字面上理解就是多种形态,即对同一个客体,可以有多种不同的形式。在面向对象语言中,接口的多种不同的实现方式即为多态。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。 二: 接口与抽象类的区别? l 抽象类和接口都不能直接实例化,如果要实例化,抽象类变量必须指向实现所有抽象方法
2017-10-18 09:07:10
323
转载 HTML5基础知识
1.HTML5基础知识介绍 1.1什么是HTML5 1.HTML5是超文本标记语言 2.2014年才定制完HTML5的标准,历时8年 3.HTML5的设计目的是为了在移动设备上支持多媒等功能 1.2为什么要用HTML5 1.跨平台 利用HTML5编写的UI界面能运行在所有拥有浏览器的平台 HTML5的运行平台:浏览器 2.HTML5的新增了很多的功能,比如video、audi
2017-09-16 19:01:14
490
原创 Handler原理分析
1.Looper: 以下两个方法都是系统调用的,先调用prepareMainLooper(),再调用loop(); prepareMainLooper() 在主线程中创建, 安卓环境(Android environment) 调用; prepare(bool
2017-09-07 19:24:14
161
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人