Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

UNIX上的C语言向Android的JNI代码移植真辛苦

UNIX上的C语言向Android的JNI代码移植真辛苦

这周进行了一周的代码移植,将UNIX上的几万行代码移植到Android中供JNI调用。起初觉得并不难,看了代码以后就狂恶心了一通.这段代码是用做多个平台的,里面定义了无数个编译开关,有用的没用的乱七八糟一大堆,我的头顿时大了起来。先是查make文件,找flags文件以及configure文件,从里面找编译编译时要使用的开关选项,然后打开一堆窗口,先是手动查找,接下来手动将不需要的选项删除,狂删了几个小时,#if,#ifdef,#ifndef.....一通乱...
如何编译Linux kernel

如何编译Linux kernel

Kernel:kernel是操作系统最底层的东西。它主要负责进程管理、内存管理、文件管理、设备管理以及网络管理等。我们希望计算机完成的各项工作都需要核心的支持。核心替我们直接和硬件进行沟通,所以如果某人开发出一个全新的硬件,而当前核心却不支持,那该硬件就英雄无用武之地了。Linux作为一个自由软件,在广大爱好者的支持下,内核版本更新很快,新的内核修订了旧内核的BUG,并且增加了许多新的特性。如果用户想要使用这些新特性、或想根据自己的硬件设备以及服务器的用途...
Android中一些要注意的地方

Android中一些要注意的地方

如果ArrayList和ListView之间绑定,那么ArrayList的数据每次修改后一定要记得立刻SetAdapter,不然屏幕上一点就弹窗报错。只要没调用finish(),onCreate和构造函数就不会被反复调用,所谓的A Activity中激活了B Activity后A就会销毁,然后从B返回A时A会重新创建是错误的,A一直在,只有从A退出,返回上一层(比如ZERO)后再进入A,A才会重建。结合以下的实例更能理解这一点。startActivity实...
Java的本地调用几点要注意

Java的本地调用几点要注意

Java的本地调用jni。调用c为例。在Windows下调用.dll文件;在Linux下调用.so文件。1 Java部分:写一个Java调用的方法。注意:动态库的名字的写法:Windows环境:loadLibrary("libname");注意调用的时候要用全名,扩展名可以不写。Linux环境:loadLibrary("name");注意调用的时候不要用全名,要去掉前面的lib和后面的扩展名。编译Java文件。然后用Javah 生成.h文件给c程序用。注意...
Android Edit特殊属性

Android Edit特殊属性

输入法默认会根据情况变动,比如说设置为numeric后输入法会自动仅显示数字,不会出现Qwerty中的字母。 下面我们通过EditText的layout xml文件中的相关属性来实现: 1. 密码框属性 Android:password="true" 这条可以让EditText显示的内容自动为 星号,输入时内容会在1秒内变成*字样。 2. 纯数字 android:numeric="true" 这条可以让输入法自动变为数字输入键盘,同时仅允许0-9的数...
Android ProgressDialog自定义方法

Android ProgressDialog自定义方法

项目当中遇到这样一个应用场景:执行某个操作需要耗时15秒以上,依照惯例,这就要使用到进度条一类的UI控件,以安抚用户等待的烦躁心情。Android Framework已经提供了ProgressDialog,可以很好的解决这个问题。ProgressDialog实际上是AlertDialog的子类,其有着两种不同的表现形式。第一种是针对没有明确的进度,不知道当前完成了多少的情况,此时使用一个转动的圆环来展现;第二种是针对有了明确的总进度,并知道当前的完成比例等...
<< 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 >>