Android
文章平均质量分 73
hudan2714
为梦想一直在努力奋斗。
展开
-
lame音频压缩解码(二)之编译事例Demo
简单步骤:一、下载lame存文件。二、创建android工程后,解压lame包,拷贝lame文件夹中的libmp3lame文件下的所有.c和.h文件到android工程的jni目录下。三、从lame包中的include文件夹中,拷贝 lame.h到jni目录下。四、定义natvie方法。五、在jni目录下,编写android.mk文件。六、进入工程的bin/classes目原创 2012-06-03 19:11:48 · 4742 阅读 · 6 评论 -
jni使用基础(二)之调用及工具使用
使用jni步骤:一、JAVA代码中写声明native 方法二、创建jni目录,编写c代码,方法名字要对应三、编写Android.mk文件四、Ndk编译生成动态库五、Java代码load 动态库.调用native代码 一,怎样写Android.mk文件 LOCAL_PATH := $(call my-dir) #注意:在此句后不能有空格,否则造成无法编译。原创 2012-05-23 17:43:16 · 884 阅读 · 0 评论 -
jni使用基础(六)之在c代码中使用logcat
在C代码中使用logcat:1.在Android.mk文件中增加LOCAL_LDLIBS += -llog // -l 是(-lab)增加库文件的语法,是在编译时,使用该库需要的语法。 // log 是在ndk中的liblog.so文件 若再需要增其它的库,只需","分隔:如:LOCAL_LDLIBS += -llog, -lGLESv2原创 2012-05-24 12:17:36 · 919 阅读 · 0 评论 -
jni使用基础(四)之javah生成头文件
javah使用:帮助我们生成头文件的工具 怎样使用javah?1.先在命令行下运行:javah。如果能执行java而不能执行javah,就需要配置环境变量。2.cd进入到java的目录文件下,先用javac把.java文件生成.class文件。3.在.class文件目录下执行javah,生成头文件(注意:.class文件要在相对应的包目录结构下)如:用eclipse的工程,原创 2012-05-24 11:09:42 · 2784 阅读 · 0 评论 -
jni使用基础(七)之java调用c事例Demo
1.界面:package com.devchina.ndk3;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Toast;public class DemoActivity extends Activity { static{原创 2012-05-24 18:07:48 · 893 阅读 · 0 评论 -
jni使用基础(三)之Android.mk文件详解
Android.mk文件详细说明:LOCAL_PATH:=$(call my-dir)//调用编译链的函数 LOCAL_PATH是定义源文件在哪个目录用的.my-dir 是个定义的宏方法, $(call my-dir)就是调用这个叫 my-dir的宏方法,这个方法返回值就是Android.mk文件所在的目录 include $(CLEAR_VARS)//类似工具的初始化操作原创 2012-05-24 09:52:05 · 948 阅读 · 0 评论 -
jni使用基础(五)之ndk常见错误
常见错误:1.方法名与c语言实现的签名不对应。 异常:UnsatisfiedLinkError 2.如果在执行ndk-build时,出现make:*** Error 1 Error的id为1,C代码的源文件出现了问题。 从上往下解决异常。 3.android.mk文件配置错误 mak:*** No rule to make t原创 2012-05-24 11:29:21 · 719 阅读 · 0 评论 -
jni使用基础(八)之jni使用流程及C调用java简单说明
jni使用步骤:1.定义好native接口。2.使用javah工具,生成头文件。3.根据头文件,创建c文件。4.编写Android.mk文件。5.通过cygwin,进入到该工程目录,通过ndk-buld命令,编译c文件,生成so库文件6.即可完成调用 怎样在c中调用java?也就是要在c代码中,new出java对象,然后再调用java对象中的方法即可。原创 2012-05-25 10:58:15 · 695 阅读 · 0 评论 -
jni使用基础(九)之c调用java事例demo
1.Activitypackage com.devchina.ndk4;import android.app.Activity;import android.os.Bundle;import android.view.View;public class DevchinaActivity extends Activity { @Override publ原创 2012-05-25 12:41:31 · 860 阅读 · 0 评论 -
Jni使用基础(一)之简单介绍说明
JNI(Java Native Interface,JAVA原生接口) Jni 是一个协议,用来沟通java代码和外部的本地代码(c/c++)相互调用。 为什么要进行交互? 首先,Java语言提供的类库无法满足要求,且在数学运算,实时渲染的游戏上,音视频处理等方面上与C/C++相比效率稍低。 然后,Java语言无法直接操作硬件,C/C++代码不仅能操作硬件而且还能发挥硬件最佳原创 2012-05-22 22:42:16 · 706 阅读 · 0 评论 -
android客户端加密代码
java简单加密算法,能够实现简单的加密。package com.devchina.scurity;import java.security.SecureRandom;import javax.crypto.Cipher;import javax.crypto.KeyGenerator;import javax.crypto.SecretKey;import javax.cryp原创 2012-07-08 23:00:42 · 1285 阅读 · 0 评论 -
android源码编译错误总结
android源码编译及错误解决:下载的源码,进入源码目录,执行make命令即可。加快源码编译:make -jN,cpu有几个核N就填几不过其中会有一些错误,下面是我编译中出现的错误,解决非常的简单;编译源码中遇到的错误:贴出来一个个解决:绿色:表示找出问题Yacc: aidl bison -d -o out/host/li原创 2012-07-15 12:08:05 · 3168 阅读 · 1 评论 -
android apk代码和xml资源文件反编译
一、反编译Apk得到Java源代码首先要下载两个工具:dex2jar和JD-GUI前者是将apk中的classes.dex转化成Jar文件,而JD-GUI是一个反编译工具,可以直接查看Jar包的源代码。以下是下载地址:dex2jar:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zipJ原创 2012-07-17 20:09:10 · 1067 阅读 · 0 评论 -
overridePendingTransition动画
切换方法overridePendingTransition只能在startActivity和finish方法之后调用。第一个参数为第一个Activity离开时的动画,第二参数为所进入的Activity的动画效果淡入淡出效果overridePendingTransition(R.anim.fade, R.anim.hold);放大淡出效果overridePendingTra原创 2012-08-02 22:18:42 · 1257 阅读 · 0 评论 -
手机图标收集总结
苦于程序里没有好看的图标来修饰吗?从这里挑挑吧。信用卡图标iOS 图标8位的社交网络图标社交媒体图标PixelPhilia 32px Icon Set by Ömer Çetin社交网络图标像素图标Free Icons Download by Hüseyin Yilmaz转载 2012-08-02 08:15:31 · 1753 阅读 · 0 评论 -
sqlite3数据库使用
sqlite数据库介绍就不用多说。不知道的直接找度娘。直接介绍数据库的安装和使用了。在ubuntu上安装sqlite3。先去下载安装包:http://download.csdn.net/detail/hudan2714/4438781里面有三个.deb的安装包,和一个文档。把安装包拷贝到;inux下,使用:sudo dpkg -i *.deb安装三个包。原创 2012-07-19 15:44:56 · 1901 阅读 · 0 评论 -
android 命令
*#*#4636#*#* 显示手机信息、电池信息、电池记录、使用统计数据、WiFi信息*#*#7780#*#* 重设为原厂设定,不会删除预设程序,及SD卡档案。*2767*3855# 重设为原厂设定,会删除SD卡所有档案。*#*#34971539#*#* 显示相机相机韧体版本,或更新相机韧体*#*#7594#*#*6 当长按关机按钮时,会出现一个切换手机模式的窗口,包括:静音模式、转载 2012-08-02 23:16:14 · 498 阅读 · 0 评论 -
Toast使用全解
Toast用于向用户显示一些帮助/提示。下面我做了5中效果,来说明Toast的强大,定义一个属于你自己的Toast。1.默认效果代码Toast.makeText(getApplicationContext(), "默认Toast样式", Toast.LENGTH_SHORT).show(); 2.自定义显示位置效果代码转载 2012-08-02 22:43:58 · 639 阅读 · 0 评论 -
android信息-摘要校验信息
在android中,常用检验信息.防止信息被篡改。最简单方式md5:public static String md5( String plainText) { String result = null; try { MessageDigest md = MessageDigest.getInstance("MD5"); md.update(plainText.g原创 2012-07-19 21:26:01 · 721 阅读 · 0 评论 -
Properties读取文件缓存数据
private static Properties cache = new Properties(); static{ try { cache.load(ConfigInfo.class.getClassLoader().getResourceAsStream("xxx.key")); } catch (Exception e) { e.printStackTrace();原创 2012-07-19 20:10:02 · 1139 阅读 · 0 评论 -
Android UI”设计官方教程
我们曾经给大家一个《MeeGo移动终端设备开发UI设计基础教程》,同时很多朋友都在寻找Android UI开发的教程,我们从Android的官方开发者博客找了一份幻灯片,介绍了一些Android UI设计,我们把这个教程整理出来,希望大家喜欢。想了解全部Android UI教程内容请点击51CTO独家专题:谷歌官方教程:Android UI设计技巧作为开发者,为啥我转载 2012-07-23 23:06:54 · 1323 阅读 · 0 评论 -
android怎样使用外部资源
1.把资源放到assets目录下 调用 file:///android_asset/xxx.key 不会在R文件中生成引用资源。 缺点:android系统要求asset目录文件大小不要大于1M,大于1M就会引起打包过慢。2.把资源放到res目录下新建的raw目录,xxx.key 访问,通过R.raw.xxx.key 缺点:如果资源过大, Reso原创 2012-08-07 21:57:54 · 683 阅读 · 0 评论 -
怎样做好一个产品之用户体验
第2章 产品之魂,用户体验 2.1 用户购买以满意度为衡量标准的用户体验 产品之魂是用户体验,最好的产品使用起来简单、简单、再简单而又产生出蒙太奇般升华效应的用户体验,企业永远要把用户体验放在第一位。 用户在购买时,内心深处进行着无声的自我对话:第一,你要卖给我什么东西?第二,要花多少钱?第三,我为什么要相信你?(这是消费者最核心的问题——没有安全感)第四,这个转载 2012-08-08 11:55:00 · 4700 阅读 · 0 评论 -
Android 内存管理
概述在android的开发中,要时刻主要内存的分配和垃圾回收,因为系统为每一个dalvik虚拟机分配的内存是有限的,在google的G1中,分配的最大堆大小只有16M,后来的机器一般都为24M,实在是少的可怜。这样就需要我们在开发过程中要时刻注意。不要因为自己的代码问题而造成OOM错误。JAVA的内存管理大家都知道,android应用层是由java开发的,android的d转载 2012-07-24 22:58:17 · 752 阅读 · 0 评论 -
Android测试教程
一、 测试项目 Android的编译和测试工具需要测试项目组织符合预订的结构:分别为Test case 类,Test case 包以及测试项目。JUnit 为Android的测试的基础,一般来说,一个JUint测试为一个用来测试一个应用某一部分的语句。 你可以将多个测试Test方法组织起来构成一个测试用例(Test case),多个测试用例可以构成Test转载 2012-08-09 12:11:43 · 1072 阅读 · 0 评论 -
移动互联网产品设计的原则
一、移动互联网产品经理的素养敏锐感知潮流变化。移动互联网产品会从相对匮乏时代进入相对富足时代,用户可以选择的产品会随时日流逝而日渐增加,产品终将成为一种时尚业。产品经理若是沉溺于各种新鲜玩意儿之中,追逐新奇,很可能错过真实的时代潮流,无法把握人群的真实需求。放弃理性思维。移动互联网的最大特点是变化极快,传统的分析用户,调研市场,制定产品三年规划,在新的时代里已经落伍。人类群落本身也在迁移演转载 2012-07-25 21:00:29 · 4484 阅读 · 0 评论 -
android怎样调用@hide和internal API
Android有两种类型的API是不能经由SDK访问的。第一种是位于com.android.internal包中的API。我将称之为internal API。第二种API类型是一系列被标记为@hide属性的类和方法。从严格意义上来讲,这不是一个单一的API,而是一组小的被隐藏的API,但我仍将其假设为一种API,并称之为hidden API。Hidden API 例子你可以转载 2012-08-11 09:35:12 · 9548 阅读 · 2 评论 -
Serializable与Parcelable传递对象详解(activity间传递对象方式)
先了解什么是序列化?序列化是什么: 序列化就是将一个对象的状态(各个属性量)保存起来,然后在适当的时候再获得。 序列化分为两大部分:序列化和反序列化。序列化是这个过程的第一部分,将数据分解成字节流,以便存储在文件中或在网络上传输。反序列化就是打开字节流并重构对象。对象序列化不仅要将基本数据类型转换成字节表示,有时还要恢复数据。恢复数据要求有恢复数据的对象实例 序列化的什转载 2012-08-12 07:42:42 · 2899 阅读 · 0 评论 -
Android Asynchronous Http Client
原文:http://loopj.com/android-async-http/OverviewAn asynchronous callback-based Http client for Android built on top of Apache’s HttpClient libraries. All requests are made outside of your app转载 2012-08-14 15:09:00 · 1566 阅读 · 0 评论 -
adb操作命令
原文:http://blog.csdn.net/janronehoo/article/details/6863772adb是什么?:adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具。adb的工作方式比较特殊,采用监听Socket TCP 5554等转载 2012-08-14 19:45:17 · 765 阅读 · 0 评论 -
Android TextView 文本自动对齐
自定义View显示文本网上就有达人采用自定义View来解决这个问题,我做了实验并总结了一下:自定义View的步骤:1)继承View类或其子类,例子继承了TextView类;2)写构造函数,通过XML获取属性(这一步中可以自定义属性,见例程);3)重写父类的某些函数,一般都是以on开头的函数,例子中重写了onDraw()和onMeasure()函数;=转载 2012-08-01 08:42:28 · 3995 阅读 · 0 评论 -
Drawble高效创建缩略图方法
代码是从android源码代中抽出来的,感觉不错。。。如果大家有什么建议,一起交流,谢谢!!!public Drawable createIconThumbnail(Drawable icon,int MIconWidth,int mIconHeight) { int width = mIconWidth; int height = mIconHeight;原创 2012-08-22 16:48:14 · 1120 阅读 · 0 评论 -
android交叉编译工具链接下载
在Google公布用于Android的官方Toolchain之前,多数的Android爱好者使用的Toolchain是在http://www.codesourcery.com/gnu_toolchains/arm/download.html 下载的一个通用的Toolchain,它用来编译和移植Android 的Linux内核是可行的。但是开发Android的应用程序时,直接采用或者移植其他原创 2012-09-02 21:07:57 · 1090 阅读 · 0 评论 -
android视频项目使用资源
在工作中和对视频方面项目的总结。主要介绍使用一些高性能工具,如有问题的,欢迎交流。speex:Speex是一套主要针对语音的开源免费,无专利保护的音频压缩格式。Speex工程着力于通过提供一个可以替代高性能语音编解码来降低语音应用输入门槛 。另外,相对于其它编解码器,Speex也很适合网络应用,在网络应用上有着自己独特的优势。官网:http://www.spee原创 2012-08-25 21:02:49 · 1460 阅读 · 5 评论 -
ubuntu 64位 无法安装android SDK解决办法
错误提示:bash: /home/****/platform-tools/adb: No such file or directory 明显已经在platform-tools目录,存在adb。结果还是找不到。那是因为ubuntu64位不支持android SDK,结果在网上查找,解决办法:apt-get install ia32-libs当然,最有力的说法还是看原创 2012-08-26 18:42:26 · 1129 阅读 · 0 评论 -
android优秀网站收集中
Android 网站资源收集大全(不断更新中)Android开发者论坛 http://www.androidin.com/google主站: http://code.google.com/android/E文文档 http://code.google.com/android/documentation.htmlAndroid中国开发者团队google g原创 2012-08-25 21:04:53 · 1005 阅读 · 0 评论 -
Android 操作系统的内存回收机制
Android APP 的运行环境Android 是一款基于 Linux 内核,面向移动终端的操作系统。为适应其作为移动平台操作系统的特殊需要,谷歌对其做了特别的设计与优化,使得其进程调度与资源管理与其他平台的 Linux 有明显的区别。主要包含下面几个层次:Application FrameworkApplication Framework 将整个操作系统分隔成两个部原创 2012-08-25 21:15:54 · 1327 阅读 · 0 评论 -
apk之间资源共享
apk之间可以相互读取数据。注意以下条件:1.有同样的签名(app.keystoe)2.在AndroidManifest.xml文件中配置的android:sharedUserId属性值相同3.两个apk运行在同一个进程中.主程序及读取的apk中AndroidManifest.xml中配置 android:sharedUserId=原创 2012-09-08 17:21:43 · 589 阅读 · 0 评论 -
Android.mk详细说明
Android.mk文件是GNU Makefile的一小部分,它用来对Android程序进行编译。因为所有的编译文件都在同一个 GNU MAKE 执行环境中进行执行,而Android.mk中所有的变量都是全局的。因此,您应尽量少声明变量,不要认为某些变量在解析过程中不会被定义。一个Android.mk文件可以编译多个模块,每个模块属下列类型之一: 1)APK程序转载 2012-09-10 15:43:37 · 565 阅读 · 0 评论 -
android input及简单am命令
android input命令: 发送字符串:$input text "Android"往指定的输入框发送文本:如:向浏览器的地址栏输入网址: 首先让地址栏得到输入焦点,再执行input text "xxx"就可以把输入的文本,输出到地址栏了。发送按键事件原创 2012-09-21 12:12:18 · 2088 阅读 · 0 评论