
android开发
文章平均质量分 78
by2n
这个作者很懒,什么都没留下…
展开
-
八款开源 Android 游戏引擎 (巨好的资源)
初学Android游戏开发的朋友,往往会显得有些无所适从,他们常常不知道该从何处入手,每当遇到自己无法解决的难题时,又往往会一边羡慕于 iPhone下有诸如Cocos2d-iphone之类的免费游戏引擎可供使用,一边自暴自弃的抱怨Android平台游戏开发难度太高,又连个像样的游 戏引擎也没有,甚至误以为使用Java语言开发游戏是一件费力不讨好且没有出路的事情。事实上,这种想法完全是没有必要且转载 2012-05-02 14:41:40 · 696 阅读 · 0 评论 -
Android 代码名字-API级别-版本号-NDK版本对应关系
Android 代码名字-API级别-版本号-NDK版本对应关系 CodeName APILevel Version NDK (no code name)API Level 1 1.0 None(no code name)API Level 2 1.1 Non原创 2012-05-06 17:10:17 · 6985 阅读 · 1 评论 -
Android获取基站坐标代码
002003import java.io.BufferedReader; 004import java.io.IOException; 005import java.io.InputStreamReader; 006转载 2012-05-28 16:12:57 · 1298 阅读 · 0 评论 -
Android TabHost的使用
1. 最简单的TabHost,Tab来自于layout下的元素 (只从1个Layout中取数据)(1)效果图(2)代码1)tab_demo.xml[xhtml] view plaincopyxml version="1.0" encoding="utf-8"?> FrameLayout xmlns:android="ht原创 2012-05-29 14:55:32 · 839 阅读 · 0 评论 -
Android基础类之BaseAdapter
BaseAdapter就Android应用程序中经常用到的基础数据适配器,它的主要用途是将一组数据传到像ListView、Spinner、Gallery及GridView等UI显示组件,它是继承自接口类Adapter,1、Adapter类简介1)、Adapter相关类结构如下图所示:自定义Adapter子类,就需要实现上面几个方法,其中最重要的是getView()方法,它是将获取数转载 2012-06-02 16:32:29 · 562 阅读 · 0 评论 -
dialog小小感悟
前言因为最近在做项目,然后遇上困难,虽然在老鸟眼中不是很难,但是我想提醒自己,所以注文把正文那天遇上这个错误代码datePicker.init(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH), new OnDateChangedListe原创 2012-06-04 07:12:01 · 605 阅读 · 0 评论 -
Android中自定义属性(attrs.xml,TypedArray的使用)
做Android布局是件很享受的事,这得益于他良好的xml方式。使用xml可以快速有效的为软件定义界面。可是有时候我们总感觉官方定义的一些基本组件不够用,自定义组件就不可避免了。那么如何才能做到像官方提供的那些组件一样用xml来定义他的属性呢?现在我们就来讨论一下他的用法。1、添加文件attrs.xml,位于res\values目录下:原创 2012-05-15 21:36:42 · 967 阅读 · 0 评论 -
android页面管理器。可以实现完整退出android软件
原理:用链表存储activity页面,然后当你退出的时候就按退出,把链表里面所有activity都关闭掉package com.by2n.application;import java.util.LinkedList;import java.util.List;import android.app.Activity;public class Applicatio原创 2012-05-15 22:12:51 · 923 阅读 · 0 评论 -
Android中动态更新ListView
在使用ListView时,会遇到当ListView列表滑动到最底端时,添加新的列表项的问题,本文通过代码演示如何动态的添加新的列表项到ListView中。实现步骤:调用ListView的setOnScrollListener()方法设置滑动监听器,实现OnScrollListener接口的方法,判断当列表滑动到最低端时,加载新的列表项。其中OnScrollListener接口需要实现如下两原创 2012-05-15 22:06:43 · 794 阅读 · 0 评论 -
Android开发中多线程及异步处理
1.用户态线程: 由于内核并没有对多线程进程的支持,因此,内核中只有单线程进程的概念, 而多线程进程是通过一个和应用程序连接的函数库实现的。由于内核没有轻量 级进程(线程)的概念,因此它不能独立的对之进行调度,而是由一个线程运 行库来组织线程的调度,其主要工作在于在各个线程的栈之间调度。如果一个进程中的某一个线程调用了一个阻塞的系统调用,该进程就会被阻塞,当然该进程中的其他所有线程也同时被阻转载 2012-05-15 22:08:22 · 697 阅读 · 0 评论 -
Android中JSON解析
JSON是JavaScript Object Notation的缩写,可见JSON来源于JavaScript。JSON数据是一系列键值对的集合。JSON和XML的比较JSON比XML体积小JSON和JavaScript交互更加方便JSON对数据的描述性没有XML好JSON的速度要远远大于XMLJSON的解析要比XML的解析要方便JSON已经被大多数开发人员所接受,在网络转载 2012-06-04 07:42:08 · 724 阅读 · 0 评论 -
Android应用自动更新功能的代码实现
由于Android项目开源所致,市面上出现了N多安卓软件市场。为了让我们开发的软件有更多的用户使用,我们需要向N多市场发布,软件升级后,我们也必须到安卓市场上进行更新,给我们增加了工作量。因此我们有必要给我们的Android应用增加自动更新的功能。既然实现自动更新,我们首先必须让我们的应用知道是否存在新版本的软件,因此我们可以在自己的网站上放置配置文件,存放软件的版本信息:转载 2012-06-04 22:45:45 · 940 阅读 · 0 评论 -
解决eclipse3.7没有自动提示代码
把Android SDK升级到了最新版本,但是Eclipse的ADT插件需要Eclipse3.6版本以上才可以安装,无奈下载了Eclipse3.7版本的。一切就绪后发现编写Java代码时没有自动提示功能,求助于忘了后找到解决方案,分享给遇到同样问题的朋友。Eclipse中window->Preferences->Java->Editor->Content Assist->Advanced-原创 2012-06-04 22:42:39 · 1001 阅读 · 0 评论 -
Android四大基本组件介绍与生命周期
Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器。一:了解四大基本组件Activity :应用程序中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。在Intent转载 2012-05-16 22:45:58 · 1946 阅读 · 1 评论 -
Java实现歌曲可视化效果
mport java.awt.Graphics; import java.io.File; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.原创 2012-05-22 00:01:09 · 2579 阅读 · 3 评论 -
ContentObserver类浅析
ContentObserver——内容观察者,目的是观察(捕捉)特定Uri引起的数据库的变化,继而做一些相应的处理,它类似于 数据库技术中的触发器(Trigger),当ContentObserver所观察的Uri发生变化时,便会触发它。触发器分为表触发器、行触发器, 相应地ContentObserver也分为“表“ContentObserver、“行”ContentObserver,原创 2012-05-22 16:24:20 · 2051 阅读 · 0 评论 -
Android使用ContentObserver监听数据库变化
近有个朋友问了我如何接受指定号码的短信,并且不让系统截取到通知用户。真好前端时间看天朝group,也有个朋友问了这个问题,而且通过 ContentObserver方式解决了。我这里就把我实现的代码贴出来,以便需要的朋友参考,最近Google-groups上不去,很是郁闷啊。Java 代码public class ScreenTest extends Activity {class Sm转载 2012-05-22 16:25:08 · 2445 阅读 · 0 评论 -
牛顿迭代法
用牛顿迭代法求f(x)=0在x0附近的一个实根的方法是:(1) 选一个接近于x的真实根的近似根x1;(2) 通过x1求出f(x1)。在几何上就是作x=x1,交f(x)于f(x1);(3) 过f(x1)作f(x)的切线,交x轴于x2。可以用公式求出x2。由于f'(x1)=f(x1)/(x2-x1),故x2=x1-f(x1)/f'(x1)(4) 通过x2求出f(x2);(5) 再过原创 2012-05-23 14:57:08 · 916 阅读 · 0 评论 -
android创建文件夹和文件的一些经验教训
这几天做一个功能需要在手机上创建一个文件夹,然后往里面存储一些文件,首先得考虑用户有没有sdcard,如果有就在sdcard上创建一个指定的文件夹,如果没有则在你的工程所在的目录“/data/data/你的包名”下创建文件夹。用到的方法是:首先判断sdcard是否插入String status = Environment.getExternalStorageState();if (原创 2012-05-24 17:01:53 · 977 阅读 · 0 评论 -
Android中AsyncTask的简单用法
在开发Android移动客户端的时候往往要使用多线程来进行操作,我们通常会将耗时的操作放在单独的线程执行,避免其占用主线程而给用户带来不好的用户体验。但是在子线程中无法去操作主线程(UI 线程),在子线程中操作UI线程会出现错误。因此android提供了一个类Handler来在子线程中来更新UI线程,用发消息的机制更新UI界面,呈现给用户。这样就解决了子线程更新UI的问题。但是费时的任务操作总会启转载 2012-06-13 07:01:50 · 480 阅读 · 0 评论 -
...
drawable-hdpi里面存放高分辨率的图片,如WVGA(480x800),FWVGA(480x854)drawable-mdpi里面存放中等分辨率的图片,如HVGA(320x480)drawable-ldpi里面存放低分辨率的图片,如QVGA(240x320 private OnCheckedChangeListener onCheckedChangeListener=new转载 2012-05-22 16:35:42 · 607 阅读 · 0 评论 -
Android Button 中绚丽渐变效果的设置 如此简单。。。
android:shape的使用2011-11-01 10:38Android中渐变效果的设置在Drawable文件夹下建立xml文件: android:shape="rectangle"> android:startColor="#00000000" andro转载 2012-06-14 23:25:37 · 2159 阅读 · 0 评论 -
Android读写文件
一、从resource中的raw文件夹中获取文件并读取数据(资源文件只能读不能写)String res ="";try{InputStream in =getResources().openRawResource(R.raw.bbi);//在\Test\res\raw\bbi.txt,intlength = in.available();by转载 2012-05-25 23:49:09 · 568 阅读 · 0 评论 -
Android动画开发——Animation动画效果
动画类型Android的animation由四种类型组成XML中 alpha渐变透明度动画效果scale渐变尺寸伸缩动画效果translate画面转换位置移动动画效果rotate画面转移旋转动画效果JavaCode中AlphaAnimation渐变透明度动画效果转载 2012-06-20 09:29:33 · 713 阅读 · 0 评论 -
Android Bundle类笔记
今天发现自己连Bundle类都没有搞清楚,于是花时间研究了一下。根据google官方的文档(http://developer.android.com/reference/android/os/Bundle.html)Bundle类是一个key-value对,“A mapping from String values to various Parcelable types.”原创 2012-06-20 16:48:15 · 621 阅读 · 0 评论 -
Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (一) —— 总览
作为一个完成的应用程序,数据存储操作是必不可少的。因此,Android系统一共提供了四种数据存储方式。分别是:SharePreference、SQLite、Content Provider和File。由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider。 SQLite: SQLit转载 2012-06-26 10:53:17 · 591 阅读 · 0 评论 -
Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (三) —— SharePreferences
除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data//shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。实现SharedPreferences存储的转载 2012-06-26 10:52:21 · 693 阅读 · 0 评论 -
Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (二) —— SQLite
SQLite是一种转为嵌入式设备设计的轻型数据库,其只有五种数据类型,分别是: NULL: 空值 INTEGER: 整数 REAL: 浮点数 TEXT: 字符串 BLOB: 大数据 在SQLite中,并没有专门设计BOOLEAN和DATE类型,因为BOOLEAN型可以用INTEGER的0和1代替true和false,而DATE类型则可以拥有特转载 2012-06-26 10:54:38 · 566 阅读 · 0 评论 -
Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (四) —— ContentProvider
ContentProvider是安卓平台中,在不同应用程序之间实现数据共享的一种机制。一个应用程序如果需要让别的程序可以操作自己的数据,即可采用这种机制。并且此种方式忽略了底层的数据存储实现,ContentProvider提供了一种统一的通过Uri实现数据操作的方式。其步骤为: 1. 在当前应用程序中定义一个ContentProvider。 2. 在当前应用程序的AndroidMani转载 2012-06-26 10:55:45 · 846 阅读 · 0 评论 -
Android应用中通过AIDL机制实现进程间的通讯实例
Android中,每个应用程序都有自己的进程,当需要在不同的进程之间传递对象时,该如何实现呢?显然,Java中是不支持跨进程内存共享的,因此要传递对象,需要把对象解析成操作系统能够理解的数据格式,以达到跨界对象访问的目的。在Android中,则采用AIDL(Android Interface Definition Language :接口定义语言)方式实现。AIDL (Androi转载 2012-07-03 09:20:55 · 620 阅读 · 0 评论 -
Android之TelephonyManager类的方法详解
TelephonyManager类主要提供了一系列用于访问与手机通讯相关的状态和信息的get方法。其中包括手机SIM的状态和信息、电信网络的状态及手机用户的信息。在应用程序中可以使用这些get方法获取相关数据。TelephonyManager类的对象可以通过Context.getSystemService(Context.TELEPHONY_SERVICE)方法来获得,需要注意的是有些通讯信息转载 2012-07-03 16:25:26 · 558 阅读 · 0 评论 -
Android开发中使用adb shell命令出现sqlite3 : not found 问题
今天在工作中遇到这样的一个问题,在android开发中使用adb shell下的sqlite3命令来查看SQLite数据库时,出现了 [ sqlite3 : not found]错误。在网上搜索了一下问题的原因:原来是模拟器或真机中的/system/xbin 目录下少了sqlite3 这个文件。解决方法如下:[1] 让/system文件夹可读写$ adb shell # mount原创 2012-08-13 15:38:10 · 1037 阅读 · 0 评论 -
Android之ListActivity:布局与数据绑定
Android中的列表,当然也可以用ListView来完成所需要的功能,用法是一样的。废话不说,来关键的。LiveActivity本身继承了关于List操作的众多接口,我们可以方便的重写这些操作中需要的方法来实现自己需要的功能。如果要用ListActivity,则 Activity的Layout文件中必须包括一个(只能一个)ListView,且ListView的id= "@id/and原创 2012-08-13 16:26:34 · 665 阅读 · 0 评论 -
<ListView android:id="@+id/android:list" 在 list 前加 android: 的原因
代码:[java] view plaincopyprint?"1.0" encoding="utf-8"?> "http://schemas.android.com/apk/res/android">http://schemas.android.com/apk/res/android" android:layout_width="wrap_content"原创 2012-08-13 16:24:04 · 835 阅读 · 0 评论 -
Android版手风琴(ExpandableListView)
Android版手风琴(ExpandableListView)先看效果,过瘾一番。 源码下载:http://files.cnblogs.com/salam/WidgetDemo.rar ExpandableListView是Android中的手风琴,本人感觉效果相当棒。 一、ExpandableListView介绍原创 2012-08-13 17:21:37 · 1868 阅读 · 0 评论 -
android 跳转指定浏览器访问指定页面(支持UC、Opera、QQ、Dolphin、Skyfire、Steel、Google)
先看一下系统浏览器com.android.browser启动类在AndroidManifest.xml中的声明:[xhtml] view plaincopyprint?activity android:theme="@style/BrowserTheme" android:label="@string/application_name" android:na原创 2012-08-13 17:40:14 · 3516 阅读 · 0 评论 -
android--->Linkify介绍
Linkify是一个辅助类,通过RegEx样式匹配,自动地在TextView类(和继承的类)中创建超链接。 符合特定的RegEx样式的文本会被转变成可点击的超链接,这些超链接隐式地调用startActivity(new Intent(Intent.ACTION_VIEW, uri)),符合的文本会作为目标URI。 你可以指定任意的字符串样式为链接;方便地,Linkify类提供了转载 2012-08-13 17:47:53 · 1151 阅读 · 0 评论 -
android权限大全
android权限大全访问登记属性android.permission.ACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限获取错略位置android.permission.ACCESS_COARSE_LOCATION,通过WiFi或移动基站的方式获取用户错略的经纬度信息,定位精度大概误差在30~15翻译 2012-07-31 17:05:09 · 744 阅读 · 0 评论 -
最新历史版本 :android--设置TextView部分文字的颜色和背景(高亮显示)
Java代码public class HighLightActivity extends Activity { String strs="我的心太乱了,给我点空白。"; TextView textview; int start =3; int end = 5;原创 2012-08-29 20:27:55 · 842 阅读 · 0 评论 -
android-->Socket简单用法
Socket通常也称做”套接字“,用于描述IP地址和端口,废话不多说,它就是网络通信过程中端点的抽象表示。值得一提的是,Java在包java.net中提供了两个类Socket和ServerSocket,分别用来表示双向连接的客户端和服务端。这是两个封装得非常好的类,使用起来很方便! 下面将首先创建一个SocketServer的类作为服务端如下,该服务端实现了多线程机制,可以在特定端口处监原创 2012-09-04 09:05:03 · 814 阅读 · 0 评论