自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android性能——内存溢出(篇三:内存溢出的解决办法)

解决内存溢出的方法大体如下几种:一:在内存引用上做些处理,常用的有软引用、强化引用、弱引用 应用的强弱顺序是强、软、弱、和虚。 软引用是主要用于内存敏感的高速缓存。在jvm报告内存不足之前会清除所有的软引用,这样以来gc就有可能收集软可及的对象,可能解决内存吃紧问题,避免内存溢出。二:减小对象的内存占用 使用更加轻量的数据结构,SparseArray替代HashMap。 因为使用HashMap时,即使你只设置了一个基本数据类型的键,比如说int,但是也会按照对象的大小来分配内存,大概是32字节,而不

2020-09-17 15:30:20 1096

原创 Android性能——内存溢出(篇二:内存溢出的原因)

(一) 查询数据库没有关闭游标(二) 构造Adapter时,没有使用缓存的 convertView(三) Bitmap对象不在使用时调用recycle()释放内存(四)当项目中包含大量图片,或者图片过大,可能会oom(五) 释放对象的引用第一:不要为Context长期保存引用(要引用Context就要使得引用对象和它本身的生命周期保持一致)。第二:如果要使用到Context,尽量使用ApplicationContext去代替Context,因为ApplicationContext的生

2020-09-17 15:24:59 176

原创 Android性能——内存溢出(篇二:内存溢出的原因)

(一) 查询数据库没有关闭游标(二) 构造Adapter时,没有使用缓存的 convertView(三) Bitmap对象不在使用时调用recycle()释放内存(四)当项目中包含大量图片,或者图片过大,可能会oom(五) 释放对象的引用第一:不要为Context长期保存引用(要引用Context就要使得引用对象和它本身的生命周期保持一致)。第二:如果要使用到Context,尽量使用ApplicationContext去代替Context,因为ApplicationContext的生

2020-09-17 15:20:14 232

原创 Android性能——内存溢出(篇一:内存溢出与内存泄露)

第一章内存溢出与内存泄露一 内存溢出与内存泄露内存溢出(Out of memory):系统会给每个APP分配内存也就是Heap size值,当APP所需要的内存大于了系统分配的内存,就会造成内存溢出;通俗点就是10L桶只能装10L水,但是你却用来装11L的水,那就有1L的水就会溢出内存泄漏(Memory leak):当一个对象不在使用了,本应该被垃圾回收器(JVM)回收,但是这个对象由于被其他正在使用的对象所持有,造成无法被回收的结果,通俗点就是系统把一定的内存值A借给程序,但是系统却收不回完.

2020-09-17 15:18:07 219

原创 Android性能——ANR(浅谈ANR如何分析解决ANR )

一:什么是ANR ANR:Application Not Responding,即应用无响应二、ANR的发生是有条件限制的 只有主线程才会产生ANR,主线程就是UI线程;三:ANR的类型 ANR一般有三种类型: 1:KeyDispatchTimeout(5 seconds) -- 主要类型按键或触摸事件在特定时间内无响应 2:BroadcastTimeout(10 seconds) 主线程在执行BroadcastReceiver的onReceive()函数时10秒内没有处理完毕 3:Serv..

2020-09-17 14:57:26 546

原创 android混淆代码-proguard

ProGuard简介       ProGuard是一个SourceForge上非常知名的开源项目。官网网址是:http://proguard.sourceforge.net/。       Java的字节码一般是非常容易反编译的。为了很好的保护Java源代码,我们往往会对编译好的class文件进行混淆处理。ProGuard的主要作用就是混淆。当然它还能对字节码进行缩减体积、优化等

2015-12-11 10:28:40 648

转载 [Linux] Ubuntu输入密码后进不去系统

在网上搜索后找到结果:1)、进入系统(在输入密码的那个界面)2)、按住Ctrl+Alt+F1(F1~F7分别是不同的模式,前6个为控制台模式)3)、根据提示输入用户名、密码4)、进入etc目录 (cd /etc)5)、编辑profile文件 (/usr/bin/sudo vi profile)6)、删除里面自己添加的出问题的代码 (选中按x键删除)7)、保存并退出 (依

2015-04-28 10:24:19 8108 1

转载 [教程] 手把手教你如何安装Google Play框架服务不闪退

转自《ZOL平板电脑论坛》,作者:脑袋不会坏 题目:《Google Play闪退报错各种问题解决以及Google框架服务的安装方法 》。网址:http://padbbs.zol.com.cn/1/197_246.html。感谢原文作者“脑袋不会坏”。太详细了,给小白的 准确 刷机教程。手把手教你。首先说说为什么教唆大家安装Google的各种框架服务还有Goo

2015-04-24 14:51:56 79147 2

原创 sdk manager更新不了

1. 设置代理。如下图。注:有的时候你找不到tools这个选项,将sdk manager最大化,然后将鼠标放上去就能看到。2. 提示你 cannot fetching https://dl-ssl.....之类的。如下:Open SDK Manager>Tools>Manage-add-ons sites>User Defined Sites>NewIn New

2015-04-17 13:57:41 554

转载 浅谈进程同步和互斥的概念

转载于http://www.cnblogs.com/CareySon/archive/2012/04/14/Process-SynAndmutex.html简介    进程同步是一个操作系统级别的概念,是在多道程序的环境下,存在着不同的制约关系,为了协调这种互相制约的关系,实现资源共享和进程协作,从而避免进程之间的冲突,引入了进程同步。 临界资源

2014-12-16 12:53:43 799

转载 Java并发编程:Timer和TimerTask(转载)

下面内容转载自:  http://blog.csdn.net/xieyuooo/article/details/8607220  其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了run方法的一个类,而具体的TimerTask需要由你自己来实现,例如这样:123456

2014-12-15 11:12:36 634

原创 eclipse在异常关闭后,导致无法启动workspace问题的解决

现象:现在大多数java开发者使用的IDE都是eclipse,而且一般在一个workspace中,会有很多个项目,有些是open的,有些是关闭的。有时候eclipse在使用过程中会莫名其妙的异常中断关闭,再打开eclipse,选择workspace后,会一直停留在加载的页面上无法进入eclipse平台。问题分析:这个问题一直碰到,但具体原因不清楚,可能需要eclipse的开

2014-12-12 11:19:11 4618 1

原创 如何在eclipse里引用internal类([转]使用internal(com.android.internal)和hidden(@hide)APIs)

第一部分:[转]使用internal(com.android.internal)和hidden(@hide)APIs链接:http://www.cppblog.com/franksunny/archive/2011/09/26/156865.html第二部分:完成第一部分后还是会报错如下:import com.android.internal.app.AlertContro

2014-03-05 14:13:18 2048

原创 编译问题收集

问题:头文件:#ifndef YgomiArabicTool_h#define YgomiArabicTool_h#include #include namespace WebCore {class String;class YgomiArabicTool {public:void test();//static int test()

2014-01-10 17:03:23 583

原创 C++问题收集

http://bbs.csdn.net/topics/360210763在函数定义中使用static,表示该函数只在当前的.c/.cpp文件中可见static的意义不同了,会发生歧义.在类内部初始化那是整型静态常量的一个特例,大多数其实不是这样的,比如static const char name[10],就不能在内部初始化。

2014-01-10 15:50:38 707

转载 定制Android模拟器skin

Android模拟器提供了6个标准的skin供我们使用,分别对应HVGA(横屏/竖屏)、QVGA(横屏/竖屏)、WQVGA以及WVGA,我们只要在启动模拟器时使用 -skin 参数就可以载入相应的皮肤。这不仅让我们可以随意的修改皮肤的外观,更主要的是当我们基于Android开发新的产品时,可以根据新的硬件spec来设置模拟器的参数,包括分辨率、按键布局、网络速度、网络延时等。现在就让我们来看看定制

2013-12-09 13:37:05 6363

转载 编译android源码所遇到的问题收集

在ubuntu12.04下编译android时,若出现如此错误,那是因为gcc版本太高。通过gcc -v命令可以发现gcc库在/usr/lib/gcc/i686-linux-gnu目录下,该目录下有当前系统支持的各种版本gcc库 。在安装gcc 4.4前该目录下是没有4.4目录的,安装gcc 4.4后该目录下就会多出4.4这个目录,且该4.4目录下有各种相应库文件。ubuntu 3

2013-12-03 11:12:24 836

转载 自己编译android sdk

如果没有真正开发板,又想深入到android framework里,或kernel里的话,就只能用android的emulator了。 但是我们下载的androidSDK没有源代码,我们没办法跟踪修改framework和kernel里的东西。所以有了想尝试自己从头生成SDK的想法。1. 首先下载编译android所有source code. 具体步骤这里不再赘述,参考htt

2013-12-02 17:26:47 2125

转载 android中ADT和SDK的关系

ADT(Android Development Tools):目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。adt只是一个eclipse的插件,里面可以设置sdk路径    SDK(Software Development Kit):一般

2013-12-02 14:54:48 805

转载 完美版Android系统源代码新下载地址

9月10号左右下过一次Android源代码,下了6%之后就死活下不了,不是提示连接失败就是提示没有任何数据返回,最后网上人说android.git.kernel.org网站被黑了,git方式和http方式都下不了,折腾好些时间终于知道怎么配置文件,最后网站被黑却下不了,灰常悲催。今天晚上试了一下,还是不行,最后google了一下,在网上找到了答案。下面写一个完整的步骤供大家参考(ubutun系

2013-11-21 17:33:30 926

转载 转义字符

所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。目 录1英语解释1.1 字符表1.2 字符型常量2编程语言3作用4组成5显示空格6转义符

2013-10-17 09:55:01 1064

转载 字符串与字符

字符串Julia 中处理 ASCII 文本简洁高效,也可以处理 Unicode 。使用 C 风格的字符串代码来处理 ASCII 字符串,性能和语义都没问题。如果这种代码遇到非 ASCII 文本,会提示错误,而不是显示乱码。这时,修改代码以兼容非 ASCII 数据也很简单。关于 Julia 字符串,有一些值得注意的高级特性:String 是个抽象类型,不是具体类型Julia

2013-10-17 09:53:23 949

转载 Android多国语言文件夹命名方式

在res目錄下建立不同名稱的values文件來調用不同的語言包Values文件匯總如下:中文(中國):values-zh-rCN中文(台灣):values-zh-rTW中文(香港):values-zh-rHK英語(美國):values-en-rUS英語(英國):values-en-rGB英文(澳大利亞):values-en-rAU英文(加拿大):values-en-rC

2013-10-08 15:42:16 718

转载 使用git pull文件时和本地文件冲突怎么办?

同事在使用git pull代码时,经常会碰到有冲突的情况,提示如下信息:error: Your local changes to 'c/environ.c' would be overwritten by merge. Aborting.Please, commit your changes or stash them before you can merge.这个意思是说更新下来的内

2013-09-24 10:13:08 3662

转载 ubuntu下如何用命令行运行deb安装包

ubuntu下如何用命令行运行deb安装包如果ubuntu要安装新软件,已有deb安装包(例如:iptux.deb),但是无法登录到桌面环境。那该怎么安装?答案是:使用dpkg命令。dpkg命令常用格式如下:sudo dpkg -I iptux.deb#查看iptux.deb软件包的详细信息,包括软件名称、版本以及大小等(其中-I等价于--info)sudo dpkg -c i

2013-09-23 13:36:31 1090

转载 "make: *** [out/target/common/obj/PACKAGING/checkapi-current-timestamp] 错误 38" 问题解决

"make: *** [out/target/common/obj/PACKAGING/checkapi-current-timestamp] 错误 38" 问题解决在进行Android 源码编译的时候,出现"make: *** [out/target/common/obj/PACKAGING/checkapi-current-timestamp] 错误 38"信息,解决方

2013-09-12 12:56:19 2343

转载 git pull的默认地址

当git clone之后,直接git pull它会自动匹配一个正确的remote url是因为在config文件中配置了以下内容:1 [branch "master"]2 remote = origin3 merge = refs/heads/master表明:1.git处于master这个branch下时,默认的remote就是origin;2.当

2013-09-12 10:30:13 838

转载 800*480分辨率得到533*320的奇怪问题

今天在跑一个程序的时候拿屏幕的size, 我的手机是800*480,但是通过下面的代码拿到的高度却是533*320, 后面google得知,需要加上才能拿到正确的值  fuck引用//定义DisplayMetrics对象//DisplayMetrics 描述普通显示信息的结构,例如显示大小, ...

2013-09-12 09:31:56 1329

转载 Git错误non-fast-forward后的冲突解决

当要push代码到git时,出现提示:error:failed to push some refs to ...Dealing with “non-fast-forward” errorsFrom time to time you may encounter this error while pushing:$ git push origin master  To ..

2013-09-10 17:44:18 852

转载 dip, dp, px, sp区别

显示单位px和dip以及sp的区别dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。 pt: point,是一个标

2013-09-05 16:38:06 644

转载 UML相关工具一览(截止2013年7月)

UML相关工具一览(截止2013年7月) 整理删除长久未更新的工具,添加新工具GenMyModel、UML4AS 1.0.1。本文的PDF版本在此下载>>以下总结了全世界的各种UML相关工具,按工具名称字母排序。  工具(最新版本)厂商&地址版权支持代码环境XMI平台备注

2013-09-04 19:31:12 2378

原创 包名一样的android项目 怎么批量改包名

在我们进行Android项目开发时,在某些情况下,我们需要修改已有项目工程中的包名。    Eclipse提供了Android Tools->Rename ApplicationPackage的方法修改包名,然而这种方法常常不靠谱,会有异常情况发生。    经过实践表明,以下方法最简便靠谱:    STEP 0: 在AndroidManifest.xml里手动修改package  

2013-08-28 18:05:12 1680

转载 Linux系统脚本的三种执行方式

1、source命令用法:   sourceFileName  作用:在当前bash环境下读取并执行FileName中的命令。该filename文件可以无"执行权限"   注:该命令通常用命令“.”来替代。    如:sourcebash_profile   .bash_profile两者等效。    source(或点)命令通常用于重新执行刚修改的初始化文档。    sour

2013-08-27 15:12:53 642

转载 关于Java内部接口的一个问题

关于Java内部接口的一个问题比如:class A{    public interface I1{        void func();    }}class B{    public static interface I2{        void func();    }}请问I1和I2有什么区, 也就是静态内部接口与非静态内部接口有

2013-08-27 09:21:38 609

转载 Android JNI使用方法

经过几天的努力终于搞定了android JNI部分,下面将我的这个小程序和大家分享一下。android JNI是连接android Java部分和C/C++部分的纽带,完整使用JNI需要Java代码和C/C++代码。其中C/C++代码用于生成库文件,Java代码用于引用C /C++库文件以及调用C/C++方法。android Java部分代码:01jnitest

2013-08-26 14:43:49 482

原创 java作用域的区别

java中,针对不同的修饰词,类及其类中的方法、域都有不同的可见性。以下为针对java中可见性的几点总结。一.java中的默认包(这个包是没有名称的),对于任何修饰词来说,其中的内容只能对其包内类为可见。最近在写java测试程序的时候突然遇到了一个问题:java默认包中的public类是不能在其他包中直接调用的。      首先,总结一下默认包中类的使用范围,java默认包中的类可

2013-08-23 10:37:41 1507

转载 Android系统零碎知识整理

Android RuntimeAndroid includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language.Every Android application runs in

2013-08-21 15:18:07 771

转载 ubuntu 如何安装sh文件

假如在主目录下面的download文件夹下面sudo sh ~/download/***.sh 或者,直接双击,弹出来提示,选择运行

2013-08-16 16:57:03 4053

转载 UBUNTU命令行下进程查看-终止

ps ax  显示当前系统进程的列表 ps aux 显示当前系统进程详细列表以及进程用户如果输出过长,可能添加管道命令 less 如  ps ax|less 查看具体进程,使用 grep命令如  ps ax|grep XXX  (XXX为进程名称)终止进程,用 kill 命令 + PID如 kill 1234

2013-08-16 15:33:47 881

转载 android 项目更改包名的方法和类名的方法

1、在项目上右键,选择android tools->rename application package,输入需要改为的名称,然后选择需要改的包,有部分包可能不需要更名  2、上一步并没有修改源码的包,只是将工程中涉及包名的地方改了,下面修改源码的包名,右键要改包名的源码包,选择refactor->rename,注意一定要将rename subpackages选上,否则子包不会

2013-08-12 16:59:12 2597

数据结构与算法分析_Java语言描述中文第二版_Weiss M.A

数据结构与算法分析_Java语言描述中文第二版_Weiss M.A,机械工业出版社,美Mark Allen Weiss著。

2013-01-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除