摘要: ant或perl混淆,打多渠道包,此jar包含证书链未验证的条目从而无法签名的问题同事的电脑都可以,就我的不行,打完包后出现如此提示语,配置全都正确。最后多方排查,竟然发现是jdk版本问题,我的是1.7的,而1.7的签名机制可能和1.6的有些不同,所以一直无法签名,出现以上警告的可以尝试卸载1.7,换成1.6的JDK 阅读全文
posted @ 2013-05-13 19:27 ConquerMobileApp 阅读(2373) 评论(2) 推荐(0) 编辑
摘要: 今天打包混淆 出现第三方jar包 新浪微博jar包里出现 resource NotFoundException的问题用eclipse打包没有问题,但是用我们批处理打包混淆程序就会出现下面的问题:android.content.res.Resources$NotFoundException: Resource ID #0x7f040000 type #0x3 is not valid多方排查发现解决办法:如果是引用第三方jar包,应注意查看jar包里是否有assets资源文件夹,如果有,应用将assets文件夹中的资源copy到项目中的assets文件夹下,这样混淆后才不会出错。 阅读全文
posted @ 2013-05-13 19:22 ConquerMobileApp 阅读(996) 评论(0) 推荐(0) 编辑
摘要: -injars androidtest.jar【jar包所在地址】-outjars out【输出地址】-libraryjars 'D:\android-sdk-windows\platforms\android-9\android.jar' 【引用的库的jar,用于解析injars所指定的jar类】-optimizationpasses 5-dontusemixedcaseclassnames 【混淆时不会产生形形色色的类名 】-dontskipnonpubliclibraryclasses 【指定不去忽略非公共的库类。】-dontpreverify 【不预校验】-verbos 阅读全文
posted @ 2013-05-13 10:52 ConquerMobileApp 阅读(458) 评论(0) 推荐(0) 编辑
摘要: 你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦?使用Map.Entry类,你可以得到在同一时间得到所有的信息。标准的Map访问方法如下:Set keys = map.keySet( );if(keys != null) {Iterator iterator = keys.iterator( );while(iterator.hasNext( )) {Object key = iterator.next( );Object value = map.get(key);;....;}} 然后,这个方法有一个问题。从Map中取得关键字之后,我们必须每次重复返回到Map中取得相对的值,这 阅读全文
posted @ 2013-05-12 10:51 ConquerMobileApp 阅读(502) 评论(0) 推荐(0) 编辑
摘要: Android自定义View实现很简单继承View,重写构造函数、onDraw,(onMeasure)等函数。如果自定义的View需要有自定义的属性,需要在values下建立attrs.xml。在其中定义你的属性。在使用到自定义View的xml布局文件中需要加入xmlns:前缀="http://schemas.android.com/apk/res/你的自定义View所在的包路径".在使用自定义属性的时候,使用前缀:属性名,如my:textColor="#FFFFFFF"。实例:view plaincopy to clipboardprint?packa 阅读全文
posted @ 2013-05-11 01:19 ConquerMobileApp 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 今天提交代码时,在一次提交,莫名其妙没成功后,再次用git commit -a命令时,出现以下错误,无论是用git还是TortoiseGit都会出现以下这个问题。。$ git commit -afatal: Unable to create 'e:/git/Android/XXXXXX/.git/index.lock': File exists.If no other git process is currently running, this probably means agit process crashed in this repository earlier. Mak 阅读全文
posted @ 2013-05-08 19:23 ConquerMobileApp 阅读(26131) 评论(1) 推荐(0) 编辑
摘要: 1、Git 快速教程及命令流程:取代码 → 每次工作前更新代码到最新版本 → 修改代码 → 提交代码到服务器1. 取代码及修改全局设置a. 设置用户名与邮箱git config --global user.name "My Name"git config --global user.email "my@email.com"b. 从已有的git库中提取代码git clone git@server:app .git myrepo2. 每次更改代码的操作a. 更新本地代码到最新版本(需要merge才能合到本地代码中)git fetchb. 合并更新后的代码到本 阅读全文
posted @ 2013-05-08 19:08 ConquerMobileApp 阅读(6784) 评论(0) 推荐(0) 编辑
摘要: 今天在做友盟交换广告,根据SDK写的绝对没有错误的代码,却无论如何也不显示广告,显示广告的位置是空白,换别人的手机却行我又下载了其它的一些接入友盟应用的广告,也是不显示,但是别人的手机就显示。。。。。纠结了一天,刚刚因为一个原因把手机调节成中文了,过了一会我突然发现,可以显示广告了,我诧异了,突然想起SDK里的一句话,暂不支持英文国家神马的。。。尼玛啊。。。。坑爹啊。。。还有就是友盟官方的DEMO竟然中文英文都支持,导致我一直没有发现这个原因。。。。出这个问题纠结的程序猿们。。。把手机语言调成中文就OK鸟 阅读全文
posted @ 2013-05-07 18:48 ConquerMobileApp 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 系统信息:Linux 3.4.36-gentoogit版本:git version 1.8.2.1原创作品,转载请标明出处:http://blog.csdn.net/yming0221/article/details/8825160很久之前就听说版本控制器,而Git是一款优秀的版本控制软件。因为没有多大的团队合作过什么项目,所以也没有好好学习使用。下面就学习下,方便以后自己对项目的管理。如果你严肃对待编程,就必定会使用"版本管理系统"(Version Control System)。眼下最流行的"版本管理系统",非Git莫属。1.什么是Git?源代码管理 阅读全文
posted @ 2013-05-06 11:31 ConquerMobileApp 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 本文介绍对象的强、软、弱和虚引用的概念、应用及其在UML中的表示。1.对象的强、软、弱和虚引用 在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周期。这4种级别由高到低依次为:强引用、软引用、弱引用和虚引用。图1为对象应用类层次。图1⑴强引用(StrongReference) 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出OutO 阅读全文
posted @ 2013-05-05 22:41 ConquerMobileApp 阅读(586) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2013-05-05 21:10 ConquerMobileApp 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 在Android中实现异步任务机制有两种方式,Handler和AsyncTask。Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细,但也是有缺点的,例如代码相对臃肿,在多个任务同时执行时,不易对线程进行精确的控制。关于Handler的相关知识,前面也有所介绍,不清楚的朋友们可以参照一下。为了简化操作,Android1.5提供了工具类android.os.AsyncTask,它使创建异步任务变得更加简单,不再需要编写任务线程和Handler实例即可完成相同的任务。先来看看AsyncTask的 阅读全文
posted @ 2013-05-05 21:09 ConquerMobileApp 阅读(157) 评论(0) 推荐(0) 编辑
摘要: Ios入门----Helloword哈哈,其实之前已经看过一段时间了,但中间工作太忙,就中断了,现在开始准备学HelloWord. 第一个程序 Helloword首先我们创建工程 File—New—New Projict 创建项目先选择View-basedApplication项目创建完毕后 会出现几个文件 如图:首先简单解释下这几个文件 Delegate .h和.m是实现对整个app的控制FirstExViewController.h和.m是当前界面控制.xib文件是你视图层 Iphone中开发软件遵循MVC模式先看我们的第一个HelloWord 功能是 点击按钮 下面的文本输入框会复制你上 阅读全文
posted @ 2013-05-05 21:09 ConquerMobileApp 阅读(271) 评论(0) 推荐(0) 编辑
摘要: Menu由两种形式,Option menu和Context menu。前者是按下设备的Menu硬按钮弹出,后者是长按widget弹出。Option Menu当我们按下Menu的硬件按钮时,Option Menu将被触发显示,最多可以显示6个选项的icon菜单,如果选项多于6个,第6个选项显示为“More“,点击可以进入扩展菜单。我们将在Android学习笔记(十一):Activity-ListView的例子一的基础上来学习Option Menu,也就是一个基于activity的菜单。在这个例子中,我们给出一个有7个选项(多余最多显示6个item)的例子,可以设置List中item之间分割线的粗 阅读全文
posted @ 2013-05-05 11:25 ConquerMobileApp 阅读(375) 评论(0) 推荐(0) 编辑
摘要: SQLite。 先上代码[java]view plaincopy1. @Override2. protectedvoidonCreate(BundlesavedInstanceState){3. super.onCreate(savedInstanceState);4. //打开或创建test.db数据库6. SQLiteDatabasedb=openOrCreateDatabase("test.db",Context.MODE_PRIVATE,null);7. db.execSQL("DROPTABLEIFEXISTSperson");//创建pers 阅读全文
posted @ 2013-05-05 01:55 ConquerMobileApp 阅读(645) 评论(0) 推荐(0) 编辑
摘要: ArrayListArrayList其实是包装了一个数组 Object[],当实例化一个ArrayList时,一个数组也被实例化,当向ArrayList中添加对象是,数组的大小也相应的改变。这样就带来以下有缺点:快速随即访问 你可以随即访问每个元素而不用考虑性能问题,通过调用get(i)方法来访问下标为i的数组元素。向其中添加对象速度慢 当你创建数组是并不能确定其容量,所以当改变这个数组时就必须在内存中做很多事情。操作其中对象的速度慢 当你要想数组中任意两个元素中间添加对象时,数组需要移动所有后面的对象。LinkedListLinkedList是通过节点直接彼此连接来实现的。每一个节点都包含前 阅读全文
posted @ 2013-05-04 01:26 ConquerMobileApp 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 在OnCreate()方法内MobclickAgent.onError(this);//友盟错误统计requestWindowFeature(Window.FEATURE_NO_TITLE);//设置无标题getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);//设置全屏getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);//网上都说是屏蔽HOME键,但是操作起来 阅读全文
posted @ 2013-05-04 01:03 ConquerMobileApp 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 今天用windows7 64位的机子安装Android开发环境,手里已经有32位的各个软件版本,不想再去下载64位了,为了省事,就装了一下,发现一样可用,毕竟windows是向前兼容的。所以大家可以放心安装32位的jdk和eclipse! 阅读全文
posted @ 2013-05-03 18:32 ConquerMobileApp 阅读(179) 评论(0) 推荐(0) 编辑
摘要: Java从JDK1.2版本开始,就把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。这里重点介绍一下软引用和弱引用。如果一个对象只具有软引用,那么如果内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存。软引用可以和一个引用队列(ReferenceQueue)联合使用,如果软引用所引用的对象被垃圾回收,Java虚拟机就会把这个软引用加入到与之关联的引用队列中。如果一个对象只具有弱引用,那么在垃圾回收器线程扫 阅读全文
posted @ 2013-05-02 23:18 ConquerMobileApp 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 作为一个完成的应用程序,数据存储操作是必不可少的。因此,Android系统一共提供了四种数据存储方式。分别是:SharePreference、SQLite、Content Provider和File。由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider。 SQLite:SQLite是一个轻量级的数据库,支持基本SQL语法,是常被采用的一种数据存储方式。Android为此数据库提供了一个名为SQLiteDatabase的类,封装了一些操作数据库的API。 SharedPrefere.. 阅读全文
posted @ 2013-05-01 22:44 ConquerMobileApp 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 集合类说明及区别Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMapCollection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些 Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection的“子接口”如List和Set。 所有实现Co.. 阅读全文
posted @ 2013-04-30 12:05 ConquerMobileApp 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 其时时间很快,快到我们都跟不上时光匆匆的脚步,人这一生也就两万多天,我已经度过一万天了,想想,觉得很可怕,不要虚度光阴,有目标,有激情,有努力,一步步专注向前走。 希望在未来的这一年内,能够把一些知识体系理解的很清楚,知识点贯穿起来,多coding,多看书,同时学习IOS开发,这一年很重要,希望自己能够把握好,专注于技术!做好计划和总结,每天至少一篇技术博客总结。坚持下去! 阅读全文
posted @ 2013-04-29 17:07 ConquerMobileApp 阅读(146) 评论(0) 推荐(0) 编辑
摘要: android Bitmap用法总结Normal07.8 磅02falsefalsefalseMicrosoftInternetExplorer41、Drawable→Bitmappublic staticBitmap drawableToBitmap(Drawable drawable) {Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(),drawable.getIntrinsicHeight(),drawable.getOpacity() != PixelFormat.OPAQUE ? Bitmap.Confi 阅读全文
posted @ 2013-04-29 02:36 ConquerMobileApp 阅读(670) 评论(0) 推荐(0) 编辑
摘要: 首先是post和get的区别1. get是从服务器上获取数据,post是向服务器传送数据。2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默 阅读全文
posted @ 2013-04-29 02:21 ConquerMobileApp 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 相比较onMeasure ,layout过程要简单多了,正如layout的中文意思“布局”中表达的一样,layout的过程就是确定View在屏幕上显示的具体位置,在代码中就是设置其成员变量mLeft,mTop,mRight,mBottom的值,这几个值构成的矩形区域就是该View显示的位置,不过这里的具体位置都是相对与父视图的位置。 与onMeasure过程类似,ViewGroup在onLayout函数中通过调用其children的layout函数来设置子视图相对与父视图中的位置,具体位置由函数layout的参数决定,当我们继承ViewGroup时必须重载onLayout函数(ViewGrou 阅读全文
posted @ 2013-04-28 22:52 ConquerMobileApp 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 整个View树的绘图流程是在ViewRoot.java类的performTraversals()函数展开的,该函数做的执行过程可简单概况为根据之前设置的状态,判断是否需要重新计算视图大小(measure)、是否重新需要安置视图的位置(layout)、以及是否需要重绘(draw),其框架过程如下:步骤其实为host.layout()接下来温习一下整个View树的结构,对每个具体View对象的操作,其实就是个递归的实现。流程一: mesarue()过程主要作用:为整个View树计算实际的大小,即设置实际的高(对应属性:mMeasuredHeight)和宽(对应属性:mMeasureWidth),每 阅读全文
posted @ 2013-04-28 20:25 ConquerMobileApp 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 在继承ViewGroup时,必须重写onLayout()方法onLayout:when this view should assign a size and position toall of its childrena. 属于ViewGroup的方法,用来为当前ViewGroup的子元素的位置和大小(大小是layout分配给本元素的显示空间大小,与本元素的大小可能不一样)b. View的layout方法体中会调用onLayout调试的时候会发现自定义的view,其中onLayout()方法会被调用两次,这个onLayout是由父View触发当前View layout方法的时候, 的一个cal 阅读全文
posted @ 2013-04-28 19:24 ConquerMobileApp 阅读(674) 评论(0) 推荐(0) 编辑
摘要: 最近一直在看设计模式方面的书,各种设计模式也看了不少,不过编程的这种思想,不是看书就能看好的,还是要多在实践中去总结,一般面试的时候,面试官比较喜欢问对设计模式的理解,我觉得吧,从总体上来说,设计模式其实就是是对事物和逻辑的抽象以及封装,使代码之间耦合度降低,复用性加强。其实万法归一,也不能生搬硬套,现在江湖上流传的23式,都是前人总结出来的经验,其实从本质上来讲还可以衍生出千千万万……高手到最后的境界应该就是无招胜有招了吧,从网上看到有人写的对23种设计模式的通俗理解,比较好玩,不过我觉得有时间我也可以按这个风格来写技术博客,我的文学水平还是不错的!嘿嘿,自恋一把!要继续写代码了,就把这个转 阅读全文
posted @ 2013-04-27 17:37 ConquerMobileApp 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 1. 文件CMD + N: 新文件CMD + SHIFT + N: 新项目CMD + O: 打开CMD + S: 保存CMD + SHIFT + S: 另存为CMD + W: 关闭窗口CMD + SHIFT + W: 关闭文件2. 编辑CMD + [: 左缩进CMD + ]: 右缩进CMD + CTRL + LEFT: 折叠CMD + CTRL + RIGHT: 取消折叠CMD + CTRL + TOP: 折叠全部函数CMD + CTRL + BOTTOM: 取消全部函数折叠CTRL + U: 取消全部折叠CMD + D: 添加书签CMD + /: 注释或取消注释CTRL + .: 参数提示E 阅读全文
posted @ 2013-04-27 17:07 ConquerMobileApp 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 1、 开闭(OCP)简介:要扩展,不要修改。比如我对外提供了一个接口。现在想更新的话,不要直接修改这个接口,而是提供另外一个接口,然后通知大家在什么时间之前切换到这个新接口。举例:这个设计模式无处不在,Android每次升级都会提供一些新的API,有一些较老的API就会置为deprecated。如从level 1就支持的Service.onStart,在level 5中,已经被Service.Service.onStartCommand替换,但Service.onStart依然保留没有去掉,以便继续提供过渡期的支持。2、 合成复用简介:少用继承(耦合性比较强),多用合成关系(灵活):接口、工具 阅读全文
posted @ 2013-04-26 15:35 ConquerMobileApp 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 一般的应用都是从服务器获取数据,然后通过极致的界面风格,将数据清晰,明朗的展现给用户。那么就可以分为这两块:1.界面UI 追求极致2.功能2.1获取数据:主要是与服务器通信,那么就要涉及到网络编程 :2.1.1 URlConnection2.1.2 HttpURLConnection(post get)2.1.3 Socket2.1.4 HttpClient(post get)2.1.5 WebService(自己拼装请求xml 数据,采用开源jar包 ksoap-android-)2.2网络通信的时候,采用的异步数据获取2.2.1 AsynTask android 封装好的异步数据获取,包括 阅读全文
posted @ 2013-04-26 08:06 ConquerMobileApp 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 1 关于socket关于socket百度百科里有这样的解释:通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。Socket正如其英文原意那样,象一个多孔插座。一台主机犹如布满各种插座的房间,每个插座有一个编号,有的插座提供220伏交流电, 有的提供110伏交流电,有的则提供有线电视节目。 客户软件将插头插到不同编号的插座,就可以得到不同的服务。至此,我们对socket进行了直观的描述。抽象出来,socket实质上 阅读全文
posted @ 2013-04-24 16:15 ConquerMobileApp 阅读(513) 评论(0) 推荐(0) 编辑
摘要: AsyncTask和Handler对比1 ) AsyncTask实现的原理,和适用的优缺点AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.使用的优点:l 简单,快捷l 过程可控使用的缺点:l 在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来.2 )Handler异步实现的原理和适用的优缺点在Handler 异步实现时,涉及到 Handler, Looper, Message,Thread四个对象,实现异步的流程是主线程启动Thr 阅读全文
posted @ 2013-04-23 19:59 ConquerMobileApp 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 比如:http://www.iciba.com/imperious/,那么音标是: [ɪmˈpɪəri:əs]怎么显示它,这是个问题。下面图是不正确的显示音标(左)和正确显示的截图:下面说说如何解决的。左图是直接复制iciba的音标到Android TextView的text属性中的结果。出现方块乱码的原因是,比如ɪ在系统字体里没有对应的字体。google查了一下,需要一个金山的音标字体。一般可以通过关键字kingsoft_phonetic_ue.ttf查到。这是经过处理的金山字体,否则也无法使用。原始出处是linuxsir.org/bbs里的帖子。该字体文件,我是从:http://code. 阅读全文
posted @ 2013-04-23 01:46 ConquerMobileApp 阅读(541) 评论(0) 推荐(0) 编辑
摘要: 经常用的是自己创建一个列表来保存每次新生成的Activity实例,在想退出程序时,调用一个循环来进行全部的finish操作,另外一个方法就是: 使用Android的Broadcast机制。在所有的Activity中注册退出程序的消息,当收到消息时调用finish方法。然后再有退出程序功能的Activity上广播关闭消息。代码如下:1.package com.kingtone.activity; 2. 3.import android.app.Activity; 4.import android.content.BroadcastReceiver; 5.import android... 阅读全文
posted @ 2013-04-22 04:37 ConquerMobileApp 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 当我们在使用listview的时候。有时候自定义adapter的时候,是不是会发现在getview里打印日志的时候,重复调用很多次?有时候4次。有的严重甚至到10次,当我们在listview中移动的时候。每移动一列都会调用很多次,这样大大影响到效率!其实这和listview本身在android上的机制有关。下面我开始来介绍一下吧: 在布局,我们只有一个listview的时候。那好。我们把高设置成wrap_content的时候。在listview里加载几行看看。日志在getview里打印一下。是不是重复调用了?那这个办法就好弄了。把高设置成fill_parent就成了。这个时候发现日志还是重复调 阅读全文
posted @ 2013-04-20 15:48 ConquerMobileApp 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 下面的内容翻译自Android官方网站关于AsyncTask和Handler的相关介绍。 AsyncTask提供了一种合适的和简单的方法使用UI线程。这个类允许执行后台操作并把操作结果在UI线程里呈现,且整个过程不需要操作线程和Handler类。 AsyncTask只是作为Thread和Handler的帮助类,而不是一种通用的线程框架(a generic threading framework)。AsyncTask适用于短时间的后台操作(最多几秒),如果你需要线程长时间的运行,推荐使用有java.util.concurrent包提供的多种API,例如Executor,TheadPoolEx.. 阅读全文
posted @ 2013-04-19 10:49 ConquerMobileApp 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 系统:Mac OS X 10.8.3NDK版本:android-ndk-r8e和在Ubuntu下使用NDK相比,除了配置环境变量稍有区别外,基本都是一样的。1 . 下载NDK,地址:http://developer.android.com/tools/sdk/ndk/index.html2 . 解压,解压得到的文件夹可以移动到其他文件夹,接下来把它的路径加入到环境变量里就行了3 . 在Launchpad中打开terminal(终端)4 . 输入 vim ~/.bash_profile,回车5 . 按英文键 i 进入编辑模式,在里面添加 export PATH=${PATH}:你的NDK路径引用 阅读全文
posted @ 2013-04-17 20:40 ConquerMobileApp 阅读(584) 评论(0) 推荐(0) 编辑
摘要: android的网络编程分为2种:基于socket的,和基于http协议的。基于socket的用法 服务器端: 先启动一个服务器端的socket ServerSocket svr = new ServerSocket(8989); 开始侦听请求 Socket s = svr.accept(); 取得输入和输出 DataInputStream dis = new DataInputStream(s.getInputStream()); DataOutputStream dos = new DataOutputStream(... 阅读全文
posted @ 2013-04-16 11:30 ConquerMobileApp 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 1. Android进程 在了解Android线程之前得先了解一下Android的进程。当一个程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件都将在该进程和线程中运行。同时,Android会为每个应用程序分配一个单独的LINUX用户。Android会尽量保留一个正在运行进程,只在内存资源出现不足时,Android会尝试停止一些进程从而释放足够的资源给其他新的进程使用, 也能保证用户正在访问的当前进程有足够的资源去及时地响应用户的事件。Android会根据进程中运行的组件类别以及组件的状态来判断该进程的重要性,Android会首先停止那些不 阅读全文
posted @ 2013-04-15 12:13 ConquerMobileApp 阅读(182) 评论(0) 推荐(0) 编辑