随笔分类 -  android

上一页 1 ··· 3 4 5 6 7 8 9 下一页
摘要:ExecutorService pool; android 自身的线程池 public void Init() { pool = Executors.newFixedThreadPool(3); for(int j=0 ; j< 10 ; j++) { Thread thread = new Thread() { public void run() { ... 阅读全文
posted @ 2012-09-01 19:04 lipeil 阅读(7551) 评论(2) 推荐(0) 编辑
摘要:以如下布局为例:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <Li 阅读全文
posted @ 2012-09-01 17:43 lipeil 阅读(264) 评论(0) 推荐(0) 编辑
摘要:第一步:保存apk文件到sdcard或者其他地方第二步:修改apk文件的权限为可执行 ,例如chmod ‘777’ file:String command = "chmod " + permission + " " + path;Runtime runtime = Runtime.getRuntime();runtime.exec(command);第三步:使用Intent 调用安装:Intent intent = new Intent(Intent.ACTION_VIEW);intent.addFlags(Intent.FLAG_ACTIVITY_NE 阅读全文
posted @ 2012-09-01 16:20 lipeil 阅读(13763) 评论(0) 推荐(0) 编辑
摘要:android 中可以设置自己添加的字体:比如宋体之类的Typeface typeface=Typeface.createFromAsset(getAssets(),"font/font_"+i+".ttf"); textView.setTypeface(typeface);汉字字体通常都是10M左右,放到apk中相当不划算 - -!,还是用图片代替。 阅读全文
posted @ 2012-09-01 16:15 lipeil 阅读(351) 评论(0) 推荐(1) 编辑
摘要:dip或dp,(device independent pixels,设备独立像素),一般为了支持WVGA、HVGA和QVGA使用这个,不依赖像素。 这里要特别注意dip与屏幕密度有关,而屏幕密度又与具体的硬件有关,硬件设置不正确,有可能导致dip不能正常显示。在屏幕密度为160的显示屏上,1dip= 阅读全文
posted @ 2012-09-01 16:09 lipeil 阅读(518) 评论(0) 推荐(0) 编辑
摘要:surfaceView和View最本质的区别在于:surfaceView是在一个新起的单独线程中可以重新绘制画面,而View必须在UI的主线程中更新画面。那么在UI的主线程中更新画面 可能会引发问题,比如你更新画面的时间过长,那么你的主UI线程会被你正在画的函数阻塞。那么将无法响应按键,触屏等消息。当使用surfaceView 由于是在新的线程中更新画面所以不会阻塞你的UI主线程。但这也带来了另外一个问题,就是事件同步。比如你触屏了一下,你需要surfaceView中 thread处理,一般就需要有一个event queue的设计来保存touch event,这会稍稍复杂一点,因为涉及到线程同 阅读全文
posted @ 2012-08-31 23:34 lipeil 阅读(28441) 评论(1) 推荐(1) 编辑
摘要:TypedArray a = obtainStyledAttributes(R.styleable.Gallery1);int mGalleryItemBackground = a.getResourceId(R.styleable.Gallery1_android_galleryItemBackground, 0);a.recycle(); ImageView image = (ImageView)findViewById(R.id.imageview);image.setBackgroundResource(mGalleryItemBackground); ... 阅读全文
posted @ 2012-08-31 23:28 lipeil 阅读(921) 评论(0) 推荐(0) 编辑
摘要:android:scrollbarTrackVertical="@drawable/music_bar" //设置滚动条android:scrollbarThumbVertical="@drawable/music_track" //设置滚动子 阅读全文
posted @ 2012-08-30 12:49 lipeil 阅读(269) 评论(0) 推荐(0) 编辑
摘要:1、在java中调用 Native代码,JNI的写法#include <string.h>#include <jni.h>#include <stdio.h>#include <android/log.h>#define LOGI(...) ((void)__android_log_print(ANDROID_LOG_INFO, "native-activity", __VA_ARGS__))JNIEXPORT jstring JNICALLJava_com_ndk_NDKFirstActivity_getTime( JNIE 阅读全文
posted @ 2012-08-27 23:51 lipeil 阅读(1317) 评论(0) 推荐(0) 编辑
摘要:1、Java文件中的所有的文件名、包名、类名、方法名,不要有_(下划线),这样会与 JNI中的 方法名混淆。2、多个c文件中含有 jni方法,则需要添加到LOCAL_SRC_FILES := ndk_first.c math.c3、在jni文件中使用日志需要配置如下:#include <android/log.h>#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, "ProjectName", __VA_ARGS__)#define LOGD(...) __android_log_print(AN 阅读全文
posted @ 2012-08-27 23:43 lipeil 阅读(1702) 评论(0) 推荐(0) 编辑
摘要:1、NDK 一中已经提到,使用eclipse中的配置 ,自动编译2、手动编译(推荐)打开bash.exe(即启动cygwin)使用cd $NDK 进入/cygdrive/e/android-ndk-r5/用cd进入到对应的目录;进入对应的目录,使用 $NDK/ndk-build 编译得到结果,例如1、 我们选择ndk自带的例子hello-jni,我的位于E:\android-ndk-r5\samples\hello-jni(根据你具体的安装位置而定),2、 运行cygwin,输入命令cd /cygdrive/e/android-ndk-r5/samples/hello-jni,进入到E:\an 阅读全文
posted @ 2012-08-27 23:35 lipeil 阅读(7778) 评论(0) 推荐(0) 编辑
摘要:一:什么是NDK?NDK 提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so 和java 应用一起打包成apk。这些工具对开发者的帮助是巨大的。NDK 集成了交叉编译器,并提供了相应的mk 文件隔离CPU、平台、ABI 等差异,开发人员只需要简单修改mk 文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。NDK 可以自动地将so 和Java 应用一起打包,极大地减轻了开发人员的打包工作。比较简单的说,NDK是一套交叉编译工具,它可以帮你把你用C或C++书写的代码,编译为.so(类似与win下的.dll)格式的文件,使你可以在你的Android程序 阅读全文
posted @ 2012-08-27 23:27 lipeil 阅读(1416) 评论(0) 推荐(0) 编辑
摘要:<ImageView android:id="@+id/imageview" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/zixun" android:scaleType="matrix" />关键点:缩放的内容不能是图片的背景,一定要是... 阅读全文
posted @ 2012-08-27 23:08 lipeil 阅读(3051) 评论(0) 推荐(1) 编辑
摘要:private String getVersionName() throws Exception { // 获取packagemanager的实例 PackageManager packageManager = getPackageManager(); // getPackageName()是你当前类的包名,0代表是获取版本信息 PackageInfo packInfo = packageManager.getPackageInfo(getPackageName(),0); ... 阅读全文
posted @ 2012-08-27 23:06 lipeil 阅读(191) 评论(0) 推荐(0) 编辑
摘要:xmlns是什么意思我们经常会在网页中碰到形如<html xmlns=”http://www.w3.org/2001/xhtml”>这样的代码,或在是android 编码中的main.xml中看到形如<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 那后面的xmlns是表示什么意思呢?官方概念:xmlns是xml namespace的缩写,也就是XML命名空间,xmlns 属性可以在文档中定义一个或多个可供选择的命名空间。该属性可以放置在文档内任何元素的开始标签 阅读全文
posted @ 2012-08-27 23:05 lipeil 阅读(355) 评论(0) 推荐(0) 编辑
摘要:1、AIDL (Android Interface Definition Language)2、AIDL 适用于 进程间通信,并且与Service端多个线程并发的情况,如果只是单个线程 可以使用 Messenger ,如果不需要IPC 可以使用Binder3、AIDL语法:基础数据类型都可以适用,List Map等有限适用。static field 不适用。4、AIDL基本用法第一步:实现.aidl文件接口描述文件1、导入的包名2、如果有使用Object对象,需要该对象 implement Parcelable 接口,并且需要导入该接口包名+类名; 如果是primitive type 不需要这 阅读全文
posted @ 2012-08-27 22:50 lipeil 阅读(19889) 评论(3) 推荐(3) 编辑
摘要:补充:在Activity 与Service中的循环线程并不会因为Activity 、Service的 销毁而终止。IntentService中同样也是1、启动服务的两种方式: startService 没有返回,用于播放音乐,下载文件 bingService 有返回,并且可以实现进程间交互。多个组件可以同时与一个Service 绑定,当且仅当所有绑定解除 Service is Destory 2、可以同时使用两种方式调用同一Service3、在另外一个app中也可以访问Service, 如果不想让其他app访问可以设置android:exported=“fal... 阅读全文
posted @ 2012-08-27 00:07 lipeil 阅读(1090) 评论(1) 推荐(0) 编辑
摘要:1、IMEI(International Mobile Equipment Identity) 是国际移动设备身份码的缩写,国际移动装备辨识码,是由15位数字组成的"电子串号",它与每台手机一一对应,而且该码是全世界唯一的。每一只手机在组装完成后都将被赋予一个全球唯一的一组号码,这个号码从生产到交付使用都将被制造生产的厂商所记录。2、IMSI 国际移动用户识别码(IMSI:International Mobile SubscriberIdentification Number)是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。其总长度不超过15位,同样使 阅读全文
posted @ 2012-08-25 16:53 lipeil 阅读(422) 评论(0) 推荐(0) 编辑
摘要:手势层控件,捕获手势轨迹<android.gesture.GestureOverlayViewandroid:id="@+id/gestures_overlay"android:layout_width="match_parent"android:layout_height="0dip"android:layout_weight="1.0"android:gestureStrokeType="multiple" />手势控件,能用来捕获手势轨迹GestureLibrary 用来保存 阅读全文
posted @ 2012-08-25 16:51 lipeil 阅读(255) 评论(0) 推荐(0) 编辑
摘要:1、从TextView 返回的Editabel 可以是先append功能 Editable text = (Editable)mResults.getText(); text.append("(okay "); TextView 另一强大功能setError(CharSequence error) 可以设置PopUp提示,用来说明输入为空,或者错误 重载方法setError(CharSequence error, Drawable icon);其中icon为文本框内的图标 2、可以将Activity 的属性设置为Theme.Dialog显示任意 view 详情可以查看Cus 阅读全文
posted @ 2012-08-25 16:49 lipeil 阅读(582) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 下一页