Android
yohoom
这个作者很懒,什么都没留下…
展开
-
两分钟彻底让你明白Android Activity生命周期(图文)!
原文链接:http://blog.csdn.net/android_tutor/article/details/5772285大家好,今天给大家详解一下Android中Activity的生命周期,我在前面也曾经讲过这方面的内容,但是像网上大多数文章一样,基本都是翻译Android API,过于笼统,相信大家看了,会有一点点的帮助 ,但是还不能完全吃透,所以我今天特意在重新总结一下.转载 2012-10-18 15:21:15 · 241 阅读 · 0 评论 -
Android 播发动画
Android 播放Gif 动画在Android 中是不支持直接使用Gif 图片关联播放帧动画,如下动画在Android 中是无法播放的:Android 提供了另外一种解决的办法,就是使用AnimationDrawable 这一函数使其支持逐帧播放,但是如何把gif 图片打散开来,成为每一帧的图片呢?下面介绍两种比较不错的软件,可以帮我们打散图片。gifsplitter转载 2012-12-30 10:08:02 · 354 阅读 · 0 评论 -
SharedPreferences和PreferenceActivity
本文主要介绍SharedPreferences和PreferenceActivity的基础知识和用法。 主要资料来源于网络,包括但不限于:《Android之PreferenceActivity》《在Android中Preferences数据存储的使用》《Android的设置界面及Preference使用》《OnPreferenceChangeListener分析转载 2013-01-21 23:31:54 · 538 阅读 · 0 评论 -
android 全局异常的处理
最近新产品测试,频频出现异常。所以需要对异常进行全局捕捉。翻阅大量帖子、源码终于找到了UncaughtExceptionHandler接口。废话不多说还是直接上源码吧。首先实现UncaughtExceptionHandlerpublic class CatchHandler implements UncaughtExceptionHandler{ p转载 2013-01-12 09:35:15 · 321 阅读 · 0 评论 -
Android完全退出应用程序
在一个项目中,要退出android程序,试了restartPackage、 killBackgroundProcesses 、通过异常并在Application的子类中重新注册Thread的 Thread.UncaughtExceptionHandler接口+异常方式,等等,都没有效果。最后发现其实只要在从一个activity A 跳到另一个activity B 时,调用了A的fini转载 2013-01-12 01:37:25 · 257 阅读 · 0 评论 -
Android 菜单(OptionMenu)大全 建立你自己的菜单
菜单是用户界面中最常见的元素之一,使用非常频繁,在Android中,菜单被分为如下三种,选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu),今天这讲是OptionsMenu 一、概述 public boolean onCreateOptionsMenu(Menu menu):使用此方法调用OptionsMenu 。 public转载 2013-01-12 10:39:49 · 238 阅读 · 0 评论 -
Android释放内存(结束进程)
这两天在搞个内存清理小插件,网上很少这方面资料,之前找过清理缓存的例子测试,结果不成功。后来自己思考该怎么清理内存,于是成功搞出来了。这两个方法是网上拷别人的,分别用来得到可用内存和内存总数,这样我们就可用得到了已用内存数。View Code private long getAvailMemory(Context context) {转载 2013-01-12 01:12:20 · 484 阅读 · 0 评论 -
Android 操作系统的内存回收机制
简介:Android 是一款基于 Linux 内核,面向移动终端的操作系统。为适应其作为移动平台操作系统的特殊需要,谷歌对其做了特别的设计与优化,使应用程序关闭但不退出,并由操作系统进行进程的回收管理。本文在 Application Framework 与 Linux 内核两个层次上,以进程为粒度,对 Android 操作系统的进程资源回收机制进行了剖析。读者可以从本文获得对 Android 应用转载 2013-01-12 01:16:10 · 386 阅读 · 0 评论 -
Android 怎么退出整个应用程序
我们在写android应用程序时,经常会遇到想退出当前Acitivity,或者直接退出应用程序.我之前的一般操作是按返回键,或者直接按home键直接返回,其实这两种操作都没有关闭当前应用程序,没有释放系统资源。有时跳转的activity较多时,还需要多次按返回键,这样感觉一点都不爽。后面添加了一个菜单返回功能键,这个方法也只能用system.exit(0)来关闭当前活动的Activity,转载 2013-01-12 01:38:33 · 268 阅读 · 0 评论 -
Android彻底退出应用程序
最近学习做android的开发时候,发现一个关于android退出时不能彻底关闭的问题,比如:一个程序里new 出了N多个Thread,这样在退出程序的可能不能完全关闭,最后发现,只用finish()方法,有时候不能彻底退出,个人感觉还是要在适当的地方加上:System.exit(0);-=====-=-=-=-=-=======-----=====1. finish()方法转载 2013-01-12 01:48:18 · 279 阅读 · 0 评论 -
Android 全局异常处理
CrashHandlerJava代码 package org.wp.activity;import java.io.File;import java.io.FileOutputStream;import java.io.FilenameFilter;import java.io.PrintWriter;import java.io.StringWri转载 2013-01-12 09:37:48 · 308 阅读 · 0 评论 -
在 JNI 编程中避免内存泄漏
在 JNI 编程中避免内存泄漏解 维东, 软件工程师, IBM简介: 本文详细论述如何在 JNI 编程中避免内存泄漏。论述了 JNI 编程中可能引发的明显的内存泄漏。本文的重点是阐述 JNI 编程中潜在的内存泄漏,希望读者通过本文对 Local reference 有更深刻的理解,了解 Local reference 表的存在,区分 Local reference 和局转载 2013-03-07 08:16:04 · 415 阅读 · 0 评论 -
JNI数组传递与异常处理
原文连接:http://blog.csdn.net/chenjin_zhong/article/details/5872566JNI通过JNIEnv提供的操作Java数组的功能。它提供了两个函数:一个是操作java的简单型数组的,另一个是操作对象类型数组的。因为速度的原因,简单类型的数组作为指向本地类型的指针暴露给本地代码。因此,它们能作为常规的数组存取。这个指针是指向实际的Jav转载 2013-02-23 10:25:03 · 297 阅读 · 0 评论 -
Android AsyncTask完全解析,带你从源码的角度彻底理解
原文:http://blog.csdn.net/guolin_blog/article/details/11711405我们都知道,Android UI是线程不安全的,如果想要在子线程里进行UI操作,就需要借助Android的异步消息处理机制。不过为了更加方便我们在子线程中更新UI元素,Android从1.5版本就引入了一个AsyncTask类,使用它就可以非常灵活方便地从子线程切转载 2013-10-31 17:17:00 · 4456 阅读 · 1 评论 -
Android实战技巧:深入解析AsyncTask
原文:http://blog.csdn.net/hitlion2008/article/details/7983449AsyncTask的介绍及基本使用方法关于AsyncTask的介绍和基本使用方法可以参考官方文档和Android实战技巧:多线程AsyncTask这里就不重复。AsyncTask引发的一个问题上周遇到了一个极其诡异的问题,一个小功能从网络上下载一个图转载 2013-10-31 17:19:44 · 618 阅读 · 0 评论 -
Android多线程设计模式之-wait()和notify()机制
原文:http://bbs.csdn.net/topics/340192982通常,多线程之间需要协调工作。例如,浏览器的一个显示图片的线程displayThread想要执行显示图片的任务,必须等待下载线程downloadThread将该图片下载完毕。如果图片还没有下载完,displayThread可以暂停,当downloadThread完成了任务后,再通知displayThread“图片准备转载 2013-10-31 17:23:20 · 609 阅读 · 0 评论 -
Android SERVICE后台服务进程的自启动和保持
原文:http://mobile.51cto.com/abased-374969.htmService组件在android开发中经常遇到,其经常作为后台服务,需要始终保持运行,负责处理一些必要(见不得人)的任务。而一些安全软件,如360等,会有结束进程的功能,如果不做Service的保持,就会被其杀掉。如何保持Service的运行状态是现在要说明的,核心就是利用ANDROID的系统转载 2013-10-31 17:29:56 · 605 阅读 · 1 评论 -
Android中SQLite应用详解
上次我向大家介绍了SQLite的基本信息和使用过程,相信朋友们对SQLite已经有所了解了,那今天呢,我就和大家分享一下在Android中如何使用SQLite。现在的主流移动设备像Android、iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上的SQLite开发技巧。对于Andr转载 2012-12-26 09:10:43 · 338 阅读 · 0 评论 -
Android上基于JSON的数据交互应用
JSON的定义:一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。– Json.org为什么用JSON?很简单,因为它比xml快十倍。有哪些应用案例?转载 2012-11-23 09:20:18 · 264 阅读 · 0 评论 -
Android上的蓝牙通信功能的开发:BluetoothChat例程分析
原文链接:http://blog.csdn.net/xjanker2/article/details/63039271. 概述Bluetooth 是几乎现在每部手机标准配备的功能,多用于耳机 mic 等设备与手机的连接,除此之外,还可以多部手机之间建立 bluetooth 通信,本文就通过 SDK 中带的一个聊天室的例程,来介绍一下 Android 上的 Bluetooth 的开发转载 2012-10-18 15:25:30 · 1447 阅读 · 0 评论 -
Android JNI知识简介
Java Native Interface (JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI 是本地编程接口,它使得在 Java 虚拟机 (VM) 内部运行的 Java 代码能够与用其它编程语言(如 C、C++ 和汇编语言)编写的应用程序和库进行交互操作。1.从如何载入.so档案谈起由于Android的应用层的类都是以Java写的,这些Java转载 2012-10-29 14:56:15 · 456 阅读 · 0 评论 -
如何实现android蓝牙开发 自动配对连接,并不弹出提示框
http://my.oschina.net/billowworld/blog/62975之前做一个android版的蓝牙 与血压计通讯的项目,遇到最大的难题就是自动配对.上网查资料说是用反射createBond()和setPin(),但测试时进行配对还是会出现提示,但配对是成功了我就开始查找怎么关闭这个蓝牙配对提示框,后面还是伟大的android源码帮助了我。在转载 2012-10-19 14:20:36 · 7046 阅读 · 4 评论 -
Android 动态注册JNI
往android移植boa后,需要用java启动boa service。就要用到JNI的东西。以前没有搞过这类东西。今天搞了一个早上,终于ok了,以下是本地实现的动态注册工作:C代码:#include "jni.h"#include "JNIHelp.h"static voidandroid_boa_start( JNIEnv *env, jo转载 2012-10-30 12:06:12 · 2626 阅读 · 0 评论 -
android NDK例子
C/C++ code/** Copyright (C) 2006 The Android Open Source Project** Licensed under the Apache License, Version 2.0 (the "License");* you may not use this file except in compliance with the Li转载 2012-10-31 14:52:39 · 1624 阅读 · 0 评论 -
在Android C/C++层添加LOG调试(LOGI\LOGD\LOGE...)
最 近在研究Android 2.3.3源代码的C/C++层,需要对代码进行一些调试,但是奇怪的是,直接添加LOGD("XXXXXXXX");,使用logcat却看不到任何输出,换成LOGI、LOGV、LOGW、LOGE也没有效果。于是在网上查找解决方法,经过几次试验,终于找到了,现在贴到下面备忘:第一步:在对应的mk文件中加入:LOCAL_LDLIBS:= -llog第二步:在要使用L转载 2012-10-31 14:56:05 · 683 阅读 · 0 评论 -
Android Jni 用动态库的加载与卸载函数说明
一、当 Android 的 Virtual Machine 执行到 System.loadLibrary( "动态库名" ) 函数时,首先会去执行 C 语言动态库里的 JNI_OnLoad 函数。它的用途有两个:1)告诉 Virtual Machine 当前动态库使用了哪个版本的 Jni。 如果当前动态库中没有提供 JNI_OnLoad 函数, Virtual Machin转载 2012-10-31 16:24:58 · 1967 阅读 · 0 评论 -
基于 Android NDK 的学习之旅----- C调用Java
许多成熟的C引擎要移植到Android 平台上使用 , 一般都会 提供 一些接口, 让Android sdk 和 jdk 实现。下文将会介绍 C 如何 通过 JNI 层调用 Java 的静态和非静态方法。 1、主要流程1、 新建一个测试类TestProvider.javaa) 该类提供了2个方法b) 一个静态的方法,一个非静态的方法2、转载 2012-10-31 20:43:19 · 722 阅读 · 0 评论 -
Java线程同步机制详解
任何一个有经验的软件开发者都知道,对于多线程程序开发比较重要的一点,就是要注意线程间的同步安全问题,保证每个线程对共享数据的访问修改是同步的,否则可能会出现意想不到的情况,甚至死锁、崩溃等。Java开发中的同步机制也是非常重要的内容,本文将详细阐述Java的线程同步机制。 Java同步机制简介 JAVA中synchronized关键字能够作为函数的修饰符,也可作为函数内转载 2012-11-04 08:46:28 · 234 阅读 · 0 评论 -
基于线程池和NIO技术构建高效的多协议Android通讯框架
原文链接:http://blog.csdn.net/dongfengsun/article/details/6154896 引言在多数涉及网络通讯的手机应用中,由于GPRS网络的速度在目前的情况下还不算理想,所以,如何能够高效的请求得到网络数据就成为大多数应用所面临的瓶颈问题。同时,在一些应用程序中可能会使用多种协议,比如IM通讯、视频流类型的应用会牺牲数据的完整性来更高效的获取数据,转载 2012-11-04 08:50:35 · 267 阅读 · 0 评论 -
android json解析及简单例子
JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。 – Json.orgJSON Vs XML1.JSON和XML的数据可读性基本相同转载 2012-11-12 15:01:55 · 409 阅读 · 0 评论 -
android bluetooth UUID蓝牙查询表
ServiceDiscoveryServerServiceClassID_UUID = '{00001000-0000-1000-8000-00805F9B34FB}'BrowseGroupDescriptorServiceClassID_UUID = '{00001001-0000-1000-8000-00805F9B34FB}'PublicBrowseGroupServiceClass转载 2012-11-14 11:43:33 · 5333 阅读 · 0 评论 -
如何实现android蓝牙开发 自动配对连接,并不弹出提示框
上网查资料说是用反射createBond()和setPin(),但测试时进行配对还是会出现提示,但配对是成功了我就开始查找怎么关闭这个蓝牙配对提示框,后面还是伟大的android源码帮助了我。在源码 BluetoothDevice 类中还有两个隐藏方法cancelBondProcess()和cancelPairingUserInput()这两个方法一个是取消配对进程一个是取消用户输转载 2012-11-14 12:03:22 · 1304 阅读 · 0 评论 -
Android 广播机制 详解
从现实生活中理解广播机制一听到广播我们第一感觉就会联想到小时候村里面的广播,每逢村里有什么活动都是通过广播发送的。收听收音机也是一种广播,在收音机中有很多个广播电台,每个广播电台播放的内容都不相同。接受广播时广播(发送方)并不在意我们(接收方)接收到广播时如何处理。好比我们收听交通电台的广播,电台中告诉我们现在在交通状况如何,但它并不关心我们接收到广播时做如何做出处理,这不是广播应该关心的问题转载 2012-11-20 09:52:18 · 399 阅读 · 0 评论 -
Android消息处理(二)进程间通信
使用Handler+Message的方式进行通信,都是在同一个进程中,从线程持有一个主线程的Handler对象,并向主线程发送消息。而Android既然可以使用bindler机制进行跨进行通信,所以我们当然可以将Handler与bindler结合起来进行跨进程发送消息。Messenger:信使官方文档解释:它引用了一个Handler对象,以便others能够向它发送消息(使用mMess转载 2012-11-20 09:56:50 · 2154 阅读 · 0 评论 -
Android消息处理(一)进程内通信
Android通过Looper、Handler来实现消息循环机制,它是针对线程的(每个线程都可以有自己的消息队列和消息循环).Android系统中Looper负责管理线程的消息队列和消息循环。可以通过Loop.myLooper()得到当前线程的Looper对象,通过Loop.getMainLooper()可以获得当前进程的主线程的 Looper对象。前面提到Android系统的消息队列和消转载 2012-11-20 09:58:43 · 686 阅读 · 0 评论 -
使用android USB API 无法获取USB设备信息解决方法
UsbManager manager = (UsbManager) m_context.getSystemService(Context.USB_SERVICE);HashMap deviceList = manager.getDeviceList();Iterator deviceIterator = deviceList.values().iterator();m_devList.cl转载 2013-02-18 18:00:27 · 6675 阅读 · 2 评论