Android
文章平均质量分 90
tangcheng_ok
敲代码
展开
-
Android 自定义 TextView drawableTop 图标与文字左对齐(效果图)
Android 自定义 TextView drawableTop 图标与文字左对齐if (drawables != null) { Drawable drawable = drawables[1]; // top if (drawable != null) { final float textY = getY() + drawable.getIntrinsicHeight() + fFontHeight - 5; canvas.drawText(getText().toSt原创 2014-10-30 18:15:05 · 11552 阅读 · 2 评论 -
【Android应用开发】-(16)如何绕开Google Play地区限制
Google Market自从升级为Google Play,改进了很多功能,我们比较关注的可能还是关于下载的限制。比如说要下某个应用程序,发现所在的地区受到限制,又或者之前曾经用过的应用程序在Google Play上搜不到了。那该怎么办呢?这篇文章就来分析这个问题。其实要避开GooglePlay的限制网上已经有方法了--伪装运营商!也有开源的代码(MarketEnabler 3.0.8 / Mar原创 2012-08-02 12:51:57 · 26231 阅读 · 1 评论 -
Android串口设备的应用实现方案以及与WEB的交互
这段时间主要做串口设备相关的应用程序,这里总结下串口设备实现的方案以及与Web之间的交互。前段时间有写过一篇关于串口应用程序实现的原理Android 串口编程原理和实现方式(附源码),以及Android调用WebService之服务端实现(一)以及Android调用WebService之客户端实现(二)。这几篇博客只简述了代码的实现,并没有做更多的说明,借这篇文章来简单做个记录。一、USB转串口在原创 2011-12-31 16:55:38 · 5492 阅读 · 2 评论 -
【Android应用开发】-(15)JNI----基本数据类型
前一篇拙文分析JNI的经典实例。这篇拙文将通过实例的方式来简易学习JNI的数据类型。任何语言都有其基本的数据类型,要深入了解,必须要了解最基础的东西,在JNI中,我们会问:Java语言中的数据类型是如何映射到C/C++本地语言中的呢?目录: 1. 一个简单的实例分析 2. Java与JNI数据类型的映射 3. 字符串的处理 4. 数组的处理 1. 一个简单的实例分析编程中,向原创 2012-07-18 07:19:08 · 2968 阅读 · 0 评论 -
【Android应用开发】-(14)JNI----经典实例分析
接下来几篇文章,学习JNI开发,主要是学习《JNI详解》,将里面的实例通过Android平台实现,首先由一个经典实例引出 – HelloWorld!!HelloWorld是经典的,一想起学编程,就想起那些年我们一起写过的HelloWorld。这里用HelloWorld来讲解JNI的开发过程。这个过程大致可通过下图来说明:1) 新建一个HelloWorld工程;2) 创建一个带有native方法原创 2012-06-27 16:59:54 · 4228 阅读 · 1 评论 -
【Android应用开发】-(13)屏幕截图功能--截取全屏,无需Root(附源码)
由于要做说明书,或者给客户看效果图,不得不通过截图的方式把屏幕接下来(当然了,还可以通过拍照来达到目的)。于是就Google找到一些需要Root权限,和不需要Root权限的截图应用,有些失望,多数不可用。于是就想自己开发一个截图的应用。在View 中提供一个getDrawingCache的方法,可以通过次方法获取View的截屏,但仅仅是截取View的。如果要截取状态栏呢? 其实不然,在I原创 2012-06-25 09:36:42 · 13762 阅读 · 22 评论 -
Android屏蔽锁屏功能
锁定屏幕对于移动终端来说是非常有必要的,但是对于机顶盒产品就没有这个必要了。所以本文介绍一下怎样让Android设备永不锁屏。Android系统的锁屏时间存放在Setting数据库中,字段为Settings.System.SCREEN_OFF_TIMEOUT。查看SettingsProvider源码,查看如下文件的源码:frameworks/base/packages/SettingsProv原创 2012-07-06 09:19:00 · 7302 阅读 · 0 评论 -
【Android应用开发】-(12)图文详解Dalvik虚拟机
一、什么是Dalvik? Google于2007年底正式发布了Android SDK, 作为 Android系统的重要特性,Dalvik虚拟机也第一次进入了人们的视野。它对内存的高效使用,和在低速CPU上表现出的高性能,确实令人刮目相看。依赖于底层Posix兼容的操作系统,它可以简单的完成进程隔离和线程管理。每一个Android应用在底层都会对应一个独立的Dalvik虚拟机实例,其代码在原创 2012-06-21 10:21:43 · 3747 阅读 · 0 评论 -
【Android应用开发】-(11)使用JPCT-AE 3D框架实现旋转的立方体(附效果图及源码)
本文采用http://www.eoeandroid.com/thread-114268-1-1.html的代码 使用JPCT-AE 3D框架,实现一个立方体,代码中有具体的说明。一、效果图:二、下载地址:http://download.csdn.net/detail/tangcheng_ok/4374199三、源码:package org.winplus.hw;impo原创 2012-06-15 16:32:33 · 6730 阅读 · 1 评论 -
Android开发之--读取文件夹下图片生成略缩图并点击显示大图
这是一个简单的Demo,目的是:读取文件夹下图片生成略缩图并点击显示大图。先新建一个工程,创建一个ThumbnailsWindows的类,继承LinearLayout。代码如下:package org.winplus.thum.view;import java.io.File;import java.io.FileInputStream;import java.io.FileN原创 2012-01-16 17:45:12 · 20766 阅读 · 3 评论 -
【Android应用开发】-(10)一个应用程序开发的蜕变过程
因为首先是个人开发者,而不是团队开发。开发的过程中就没有那么规范,没有详细的需求,没有界面设计,也没有详细的开发计划等。所以一个应用程序的开发要经过很多次蜕变才能变得完美或者说取得更好的用户体验。当然了,这一切都是根据自己的开发技巧和技术层次而定的。 下文是我在开发过程中遇到的一些有意思也很无奈的事。是看客的笑话也好,共鸣也好,我也都愿意将它记录下来,以飨看客。 我们公司应用开原创 2012-06-12 23:42:03 · 2656 阅读 · 1 评论 -
Android开发之拍照功能实现(附源码)
大家好,这是一个简单的拍照功能,很简单的界面,一个显示图像区域SurfaceView一个“拍照”按钮。直接上代码!1、CameraDemoActivity.java(主界面)package org.winplus.camera;import java.io.File;import java.io.FileOutputStream;import java.io.IOExcep原创 2011-12-03 10:10:25 · 53160 阅读 · 27 评论 -
【Android应用开发】-(9)应用程序安装卸载原理
本文粗体部分来自网络上的一篇文章,已不知出处,知道的告知,在此谢谢原作者。引出安装卸载的原理之前,先实现一个简单的安装卸载应用程序的功能。文章是我之前写的一篇博客,这里就不在叙述,只补充几点:1、由于代码中用到了PackageInstallObserver,PackageInstallObserver在Eclipse中是不能调用的,必须在Linux环境下编译好系统后才能编译此应用程序。2、原创 2012-06-12 21:24:17 · 9232 阅读 · 1 评论 -
【Android应用开发】-(21)Android中巧用反射解决程序兼容性问题
Android的更新速度太快,因为她的开源,所以造就了一批技术公司,一堆的方案,从而各有特色。对于一个想要深入了解系统的开发者来说这是幸运的,但从一个产品角度来看,这是致命的。我们开发应用程序,为了保证程序的兼容性,我们买了很多设备做兼容性测试,但往往不如人意。这里不打算解决此问题,只是唠叨下。本文只是介绍一个简单的技巧来做兼容。 背景:框架层的某个方法在新版本中添加了一个参数或者少了几个参原创 2012-08-29 23:56:27 · 3228 阅读 · 0 评论 -
【Android应用开发】-(17)获取Google天气预报通过Xml和JSON解析数据
最近在做一个天气预报的Widget,通过google提供的api可以查询全世界的天气情况,这篇文章主要讲述如何通过Android的JSON获取城市的经纬度,程序很简单。稍后我将demo供来此博客的朋友。废话少说,且看下文: 设计如下:通过JsonDemoActivity输入国家简称,跳转到CityListActivity(用来显示城市列表),点击需要查询城市返回天气信息。在JsonDemoA原创 2011-06-04 14:04:00 · 12679 阅读 · 13 评论 -
Android App 启动时显示正在加载图片(源码)
微信、QQ、天天动听等程序,在打开时显示了一张图片,然后跳转到相关界面。本文实现这个功能,其实很简单....原创 2014-07-10 13:12:56 · 14928 阅读 · 3 评论 -
Android开发之--WIFI,蓝牙,电池,背光,SD卡,摄像头,按键,MIC,重力感应等各种操作
这篇文章主要是记录前段时间开发所用到的一些技术,在这里做个总结,文中有不足之处还请看到本文的你多多指点。分享分享开发经验,一起提高!1、WIFI(打开,关闭,使能,扫描等)2、蓝牙(打开关闭)3、电池(获取电池的各种参数和状态信息)4、背光(背光调节)5、U盘/SDcard(判断是否插入,读取等)6、屏幕校准(准确的说是点击屏幕的准确度,不是校准屏幕,这是一个简单的算法原创 2011-08-13 22:41:14 · 11275 阅读 · 11 评论 -
Android 兼容性测试(CTS)
Android兼容性测试原创 2013-11-29 10:29:29 · 5323 阅读 · 0 评论 -
Android将应用程序指定默认语言
Android的国际化做得还是不错的,通过设置资源文件的名称,如:values-zh-rCN,即可,系统会自动根据当前系统设置的语言进行选择,默认是选择values目录下的资源文件的。那么如果某个应用程序要指定默认语言,无论系统设置的语言是什么,都要显示默认语言,那这么办呢?很简单,3步就Ok了。第一步,写一个类(FunctionApplication)继承Application,在onCreat原创 2012-04-21 12:29:47 · 9921 阅读 · 2 评论 -
Android应用集成开发环境,强烈推荐使用
很久没写博客了,今天第一时间分享Android应用集成开发环境。之前使用的SDK无法更新到4.1,由于之前下载新的SDK配置老是出错,而且下载的eclipse JUNO界面实在不敢恭维。(eclipse JUNO界面)下载地址:http://developer.android.com/sdk/index.html#download。下载解压即可使用,集成eclipse(C/C++开发环境、ADT,原创 2012-12-18 09:52:42 · 16628 阅读 · 4 评论 -
指定Toast显示时长
什么都不多说,看代码。public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main原创 2013-01-02 17:10:01 · 4773 阅读 · 4 评论 -
【Android应用开发】-(19)Android 串口编程原理和实现方式(附源码)
提到串口编程,就不得不提到JNI,不得不提到JavaAPI中的文件描述符类:FileDescriptor。下面我分别对JNI、FileDescriptor以及串口的一些知识点和实现的源码进行分析说明。这里主要是参考了开源项目android-serialport-api。 串口编程需要了解的基本知识点:对于串口编程,我们只需对串口进行一系列的设置,然后打开串口,这些操作我们可以参考串口调试助手原创 2011-11-28 23:40:25 · 75589 阅读 · 117 评论 -
Android4.1 无预览拍照
1、setParameters failed解决方法2、无预览拍照客户的需求千奇百怪,有要静默安装功能的,下载编译好的ROM,在ROM中加入自己的应用程序实现静默安装,为了盈利好无耻啊。现在要实现无预览拍照功能,哥们又哭笑不得,客户是上帝,木有办法。据说无预览拍照在4.1中无法实现了。因为牵涉到用户隐私问题。看代码吧,其实实现特简单。主要是思路问题。public class NoPreviewTa原创 2012-12-21 15:03:38 · 4305 阅读 · 3 评论 -
Android CTS
目录: 1. 准备环境 2. CTS设置 3. 开始测试 4. 测试结果1. 准备环境 1. 下载android-sdk_r18-linux.tgz并解压;安装JDK1.6 2. Ubuntu下配置ADB请看博客:http://blog.csdn.net/tangcheng_ok/article/details/6278567 3. 设置环境变量 export JAVA_HOME=/opt/jd原创 2012-07-17 18:26:28 · 4576 阅读 · 1 评论 -
【Android应用开发】-(23)Android SIP 支持
一、什么是sip?请移步SIP二、Android中如何使用sip?目前比较完善的Sip应用:Sipdroid, Demo: android-sdk-windows\samples\android-9\ SipDemo三、系统不支持sip?Android自2.3之后就提供了SIP功能,SIP相关的API在目录frameworks/base/voip/java/android/net/sip中,存在a原创 2012-09-13 15:59:16 · 9671 阅读 · 5 评论 -
【Android应用开发】-(22)Excel数据导入Sqlite
大家好,好久不写博客。今天分享下如何将Excel的数据导入到Sqlite,最近做一个拨号程序,需要做来电提醒的功能,来电提醒有几种实现方式,第一种方式是通过一些开发的接口,通过提交号码进行查询,在没联网的情况下,这就不可能了,所以断然放弃。最后通过在本地构建一个存取号码段的数据库来进行查询。全国的电话号码段,数据量高达25万条。这些数据存在一个Excel表格中,这么大的数据量,在SqlServer原创 2012-09-13 10:08:18 · 7084 阅读 · 4 评论 -
【Android应用开发】-(20)简单的模拟按键发送消息
前段时间做了一个PSTN通话的应用程序,PAD连接座机实现通话功能。座机上有上翻、下翻通讯录的功能。通讯录用的是Google默认的。在不改动通讯录的情况下只有使用模拟按键来发送消息。代码很简单,共享下!!public class MenuDemoActivity extends Activity { protected static final String TAG = "MenuDemo原创 2012-08-29 10:11:10 · 9583 阅读 · 0 评论 -
【Android应用开发】-(18)静默方式实现批量安装卸载应用程序
前段时间做了一个批量安装卸载应用程序的小应用,由于安装卸载应用程序的部分API是隐藏的,所以必须在ubuntu下下载Android系统源码,并编译之后使用MM命令编译生成APK文件,其实也难。思路是这样的,在XX/packages/apps目录下有一个PackageInstaller的应用程序,Android机器中安装卸载都是由这个应用程序完成的。但是它没有批量安装和卸载的功能,如果要在自己的应用原创 2011-08-12 12:46:09 · 17508 阅读 · 27 评论 -
【Android应用开发】-(7)安全性设计(完整版请参考官方)
Android的设计为大多数开发者能够使用默认的设置构建应用程序,而不需要在安全性方面作出更多的思考。Android还有许多操作系统内置的安全功能,大幅度减少应用程序安全性的问题和频率。 一些安全特性可以帮助开发人员构建安全的应用程序,其中包括: 1、Android应用程序沙箱在每个应用程序的基础上分离数据和执行代码。 2、 Android应用程序框架实现了共同的安全翻译 2012-06-11 11:05:54 · 3104 阅读 · 0 评论 -
【Android应用开发】-(8)Android开发指南-59个必备知识点
大家好,这里向大家推荐一个文档,如果你是高手请勿下载,又或者您英文过了4、6级也不用下载,这文档只适合初学者或者像博主这样的菜鸟享用。嘿嘿~ 文章很长,不知道是哪位大鸟翻译整理的,也不清楚这个原文处于何处,知道的请留言附上~。如果此文有侵权或者异议请留言,我将及时处理之。下面我列出目录,需要此文的可到此处下载1. 应用程序基础Application Fundamen原创 2012-06-11 11:40:13 · 3377 阅读 · 3 评论 -
【Andorid应用开发】-(3)性能优化设计
这篇文章说性能设计,我估摸着有很多童鞋都没看到过原文,这里推荐下,文章来自Android官方,在下载的Android Docs的Dev Guide可以看到。如果你没读过这篇文章,那么我强烈建议去细读它。 看到了吗?Best Practices,最佳实践!我很惭愧做了这么久开发也是在一个偶然的机会才关注到它!请猛击下面链接:http://developer.androi原创 2012-06-03 23:00:41 · 2756 阅读 · 3 评论 -
Android安装过程对话框更新Demo
最近在做一个批量安装卸载的管理器,在安装的过程中要显示安装信息,比如说:"正在安装XX1.apk 正在安装XX2.apk“当然这个显示是在对话框上面显示的。怎么做呢?实现是这样的: 1、在Activity中重写onCreateDialog(int id)方法; 2、使用Handler更新对话框的信息; 3、用线程监控安装信息,将信息设置在Message中通过Handler发原创 2011-08-11 14:28:58 · 2523 阅读 · 0 评论 -
Ubuntu Android 开发jdk1.5和1.6之间的切换
为什么要对1.5和1.6切换呢?是因为我在windows下开发的Android应用程序编译不过。必须到android源码目录下进行编译。而在windows开发使用的是jdk1.6,Android编译的是1.5,通过mm命令编译会出现@override方法未覆盖父类方法的错误。闲话少说,首先下载jdk1.6并安装。安装成功后如何进行jdk的切换呢,这里主要是使用了update-alternative原创 2011-07-09 11:22:31 · 2189 阅读 · 0 评论 -
Ubuntu下 下载Android 源码(来自官网)
Downloading the Source TreeInstalling RepoRepo is a tool that makes it easier to work with Git in the context of Android. For more information about Repo, see Version Control.To install, i转载 2011-04-22 08:58:00 · 2058 阅读 · 0 评论 -
Android项目实战之(1)-- 开发一个"快速冲浪"的程序
唐成Android项目实战系列原创文章,转载请注明出处:http://blog.csdn.net/tangcheng_ok 概述:这个小程序,你讲学习到基本控件(Button,Listview,Gridview,TextView等)的使用技巧,AssetManager类的使用,XML数据的解析方式,BaseAdapter,几种布局的使用,Sqlite的使用等等。原创 2011-11-11 13:49:33 · 11977 阅读 · 12 评论 -
android开发之-数据共享(SharedPreferences )
android的数据共享网上文章好多好多,有木有?在这里我就不说了,只把我做的留个笔记。当然如果你“误入”此博客,如有疑问者可留言,我会在最快的速度和阁下分享我所知道的。 如下图我创建了两个工程 代码很简单,在PreferenceReadTest工程中的代码如下(主要是读取PreferenceWriteTest工程写入的value1值):public class Pre原创 2011-04-12 17:54:00 · 5530 阅读 · 2 评论 -
ubuntu 配置使用adb安装调试程序
在ubuntu下编程有一段时间了,一直都是傻傻地将编译好的apk拷贝到windwos下通过adb安装,通过打印log查看调试程序。浪费了不少时间,今天比较闲一点,用了些时间将环境搭好。下面是如何搭建环境的详细过程,希望给没有配置过的朋友带来帮助!闲话少说,请看操作步骤:1、连接USB(这个图肯定看的懂了,就不多说)2、连接之后在终端输入:$lsusb 查看USB设备列表,18d1是我们需要原创 2011-03-25 18:49:00 · 6937 阅读 · 0 评论 -
Android 隐藏显示StartBar
privatevoid bindStatusBar(){ WindowManager.LayoutParams attrs = getWindow().getAttributes(); if((attrs.flags & WindowManager.LayoutParams.FLAG_FULLSCREEN) == WindowManager原创 2011-03-04 09:39:00 · 2487 阅读 · 0 评论 -
Android之使用传感器获取相应数据
Android的大部分手机中都有传感器,传感器类型有方向、加速度(重力)、光线、磁场、距离(临近性)、温度等。 方向传感器: Sensor.TYPE_ORIENTATION 加速度(重力)传感器: Sensor.TYPE_ACCELEROMETER 光线传感器: Sensor.TYPE_LIGHT 磁场传感器: Sensor.TYPE_MAGNETIC_FIE转载 2011-07-07 15:18:46 · 29470 阅读 · 3 评论 -
Ubuntu 下Android环境搭建(来自官网)
http://source.android.com/source/initializing.htmlInitializing a Build EnvironmentThe "Getting Started" section describes how to set up your local work environment, how to use Repo to get转载 2011-04-22 08:52:00 · 3056 阅读 · 0 评论