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

首页 / 操作系统 / Linux

Linux 下使用命令行开发 Android 应用程序

Linux 下使用命令行开发 Android 应用程序

本文将讲述如何在Linux平台下使用命令行开发Android应用程序,以及如何创建PhoneGap的android项目,如果你对这此感兴趣,请就继续阅读本文。首先,让我们安装Android SDK(我假设你已经安装了JDK和Ant)。你可以从在这里安装SDK到你的开发平台上。由于我使用的是Ubuntu,所以我下载Linux平台下的SDK到我的主目录。解压缩下载文件,并设置加载可执行文件的路径:1$ tar xvf android-sdk_r16-linux...
Java并行编程–从并行任务集获取反馈

Java并行编程–从并行任务集获取反馈

在并行任务启动后,强制性地从并行任务得到反馈。假想有一个程序,可以发送批邮件,还使用了多线程机制。你想知道有多少邮件成功发送吗?你想知道在实际发送过程期间,这个批处理工作的实时进展吗?要实现多线程的这种反馈,我们可以使用Callable接口。此接口的工作方式基本上与Runnable相同,但是执行方法(call())会返回一个值,该值反映了执行计算的结果。packagecom.ricardozuasti;importjava.util.concurrent....
C语言中的信号处理

C语言中的信号处理

程序经常会异常终止(比如段错误),或者认为终止(比如按下了CTRL+C),这时可能一些动态申请的资源就得不到释放,或者程序有些其他需要处理的操作(如保存)。C语言的标准库<signal.h>中提供了一些用于处理处理程序运行期间的异常的功能,如处理来源于外部的中断信号或程序执行期间出现的错误等事件。#include<signal.h>void(*signal(intsig,void(*handler)(int)))(int);sign...
C++ - 网络编程模型 - Linux EPOLL

C++ - 网络编程模型 - Linux EPOLL

1.简介 Linux I/O多路复用技术在比较多的TCP网络服务器中有使用,即比较多的用到select函数。Linux 2.6内核中有提高网络I/O性能的新方法,即epoll 。epoll是什么?按照man手册的说法是为处理大批量句柄而作了改进的poll。要使用epoll只需要以下的三个系统函数调用: epoll_create(2),epoll_ctl(2),epoll_wait(2)。2.select模型的缺陷 (1)在Linux内核中,select所用...
Android中的Audio播放:控制Audio输出通道切换

Android中的Audio播放:控制Audio输出通道切换

Audio 输出通道有很多,Speaker、headset、bluetooth A2DP等。通话或播放音乐等使用Audio输出过程中,可能发生Audio输出通道的切换。比如,插入有线耳机播放音乐时,声音是从耳机发出的;而此时拔出耳机,Audio输出通道会发生切换。如果音乐播放器不做处理,Audio输出是被切换到扬声器的,声音直接从Speaker发出。我们在编写程序时,要捕获并按照需求来处理这样的事,本文就是讲解如何处理的。Android中可以通过andro...
Android中的Audio播放:竞争Audio之Audio Focus的应用

Android中的Audio播放:竞争Audio之Audio Focus的应用

Android是多任务系统,Audio系统是竞争资源。Android2.2之前,没有内建的机制来解决多个程序竞争Audio的问题,2.2引入了称作AudioFocus的机制来管理对Audio资源的竞争的管理与协调。本文主要讲解AudioFocus的使用。按照AudioFocus的机制,在使用AudioStream之前,需要申请AudioFocus,在获得AudioFocus之后才可以使用相应的AudioStream;如果有别的程序竞争你正在使用的Audio...
iOS中正确处理dealloc方法

iOS中正确处理dealloc方法

当我们继承类的时候,子类实例在构造的时候顺序是先高用父类的构造方法,再调用子类的构造方法。在c/c++是如此,在objc中也是如此,在iOS开发中,我们会看到这样的代码:-(void)init{self=[superinit];if(self){//init }returnself;}看到没,初始化的时候都是先调用父类的初始化方法,为什么呢,因为父类更老,当然是先出生了。,同样的情况可以在viewDidLoad中看到。 而销毁的时候则是相反的顺序,先销毁子...
iOS自定义Status Bar

iOS自定义Status Bar

关注自定义status bar已有一段时间了,apple文档HUM却说不能自定义,而我在appstore上却看到了一些应用,却自定义了。不知道是否会被拒。网上有一个开源的做得比较好了。地址:https://github.com/myell0w/MTStatusBarOverlay它的说明文档也比较清楚,用法也简单。它有两种detailView模式,一种是textDetail,一种是historyDetail,比如我设置的history detail mod...
Java中的字符串(String)的秘密

Java中的字符串(String)的秘密

Java中的"=="的作用是用来判断两个数据是否相等,无论是8种原生数据类型还是引用类型,引用类型相等也就是指两个引用指向同一个对象,Object类中的equals()方法仅仅是反回(this == Object),所以Object的equals()方法仅仅是判断对象是不是同一个对象,而对于那些继承了Object类而又重写了equals()方法的类,比如说String类,那就要依据具体的equals()方法的实现来判断了.String类特性与创建过程1 S...
一步一步走进Linux HOOK API

一步一步走进Linux HOOK API

最近我查阅很多参考资料.发现对于讲述Linux HOOK API的资料是很少,让我们这些新人难以去走进Linux HOOK大门.在这里我将全面的讲述Linux HOOK API的全部实现过程,这个过程中我也遇到很多坎坷,所以在这么写下这份教程.让大家都来进入HOOK的神秘世界.不要认为HOOK API是windows的专利(PS.其实我以前就是这么认为的.哈哈....),其实在Linux中也有HOOK API这样的技术,只是实现起来相对比较麻烦,首先今天主...
在Linux下编译Google leveldb数据库及在C++中操作示例

在Linux下编译Google leveldb数据库及在C++中操作示例

1:简介 Leveldb是一个google实现的非常高效的kv数据库,可按照字符串键值顺序映射进行存贮。目前的版本1.2能够支持billion级别的数据量了。在这个数量级别下还有着非常高的性能。 Leveldb是一个C++库,可用于很多情况。比如用于一个网页浏览器存储最近存取网页的缓存,或用于操作系统存储安装包列表,或用于应用存储用户的设置参数。其实新版本的Chrome浏览器里部署的IndexedDBHTML5API就是基于LevelDB打造的。...
FreeBSD之netgraph简要解析

FreeBSD之netgraph简要解析

FreeBSD的netgraph真是太帅了,它到底是个什么玩艺呢?知道Linux的Netfilter的不少,那么就用Netfilter来类比吧。netgraph是一个基于图的钩子系统,正如其名称所展示的那样,什么样的图呢?很简单,就是通过边连接的节点,和数据结构里面学到的一样。netgraph系统挂接在内核协议栈的特定点上,哪些点呢?这个和Netfilter很类似,但是却不是Netfilter精心设计的那5个点,而是更简单的每一层处理的输入点和输出点,如下...
Linux软中断

Linux软中断

在由内核执行的几个任务之间有些不是紧急的,在必要情况下他们可以延迟一段时间。一个中断处理程序的几个中断服务例程之间是串行执行的,并且通常在一个中断的处理程序结束前,不应该再次出现这个中断。相反,可延迟中断可以在开中断的情况下执行。linux中所谓的可延迟函数,包括软中断和tasklet以及通过中作队列执行的函数(这个以后说),软中断的分配是静态的(即值编译时定义),而tasklet的分配和初始化可以在运行时进行。软中断软中断所使用的数据结构定义为stati...
<< 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 >>