- 博客(84)
- 资源 (1)
- 收藏
- 关注
原创 动态加载框架分析之:PluginMgr
我们内部使用的Ui效果展示应用,为了在使用上能够更加便捷快速的集成一个个单独的Ui效果包,我们采用了动态化实现的思路,将Ui效果包放在asserts目录下,我们的主框架动态扫描并加载了整个apk来运行,理论上整个过程不需要写一行代码,整个框架的实现是基于一个名叫android-pluginmgr的开源项目,这里就对实现原理做一个简要的分析。Ps:这套动态化的实现方案有一个很大的
2016-01-19 14:00:12
1003
原创 动态加载框架分析之:DL(Dynamic-load-apk)
该框架也是一个较有知名度的安卓动态化框架,由几位国人发起并维护,目前仍在不断的更新中,继对PluginMgr的分析之后,这里再对DL的实现原理进行剖析:DL项目地址:https://github.com/singwhatiwanna/dynamic-load-apk 一款已商业化运营的动态加载框架:apkplughttp://www.apkplu
2016-01-19 13:58:57
858
动态加载框架分析之:DL(Dynamic-load-apk)
该框架也是一个较有知名度的安卓动态化框架,由几位国人发起并维护,目前仍在不断的更新中,继对PluginMgr的分析之后,这里再对DL的实现原理进行剖析:DL项目地址:https://github.com/singwhatiwanna/dynamic-load-apk 一款已商业化运营的动态加载框架:apkplughttp://www.apkplu
2016-01-19 13:56:05
361
原创 用注解+反射的方式,实现layout文件与Activity映射
这是之前工作时经常用到的一种映射方式,自己感觉非常不错,可以省却繁琐的findViewbyId的代码,代码结构清晰。(1)创建注解@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.FIELD, ElementType.TYPE})public @interface LibViewMapping {
2016-01-19 13:53:33
501
原创 谈移动互联网入口
“入口”是用户接入移动互联网的第一站,同时也可以看做用户解决问题与需求的最快途径与方式,按照这个定义,目前来看,互联网的入口或具有入口特性的产品主要分布在以下几个层面上:硬件设备层,系统层,内容层,渠道层,App层,并且各个层次是从底到上相互依赖的,整体就像一个金字塔状。如图所示这样:
2013-04-06 10:23:04
1930
原创 小论工具类App的盈利之道
从Android平台兴起算起,偶在移动互联网这个行业中一直摸爬滚打到现在,一直都是以一个App开发者的身份去接触这个行业,刚开始以学生身份做一些小应用自娱自乐,后来也加入过创业团队弄过潮,从刚开始做一些简易的应用,到后来搞过千万级用户的产品,一路过来风尘仆仆的,这个行业变化的太快,发展的太快,自己做的最多的还是工具类的应用,今天想说说自己对工具类App盈利的砍伐,与大家分享分享,因为自身所处层次有
2013-03-30 22:28:19
2979
原创 Android高效显示图片详解(三)
用户在使用ListView或GridView时,控件会自动把用户滑过的已不在当前显示区域的ChildView回收掉,当然也会把该子视图上的bitmap回收掉以释放内存,因此,为了保证一个流畅,快速的操作体验,我们应当避免反复的对同一张图片进行加载,比如说用户在往下看图的过程中又向上滑回去看图,这时对于已经上面已经加载过的图片我们就没有必要让它再加载一遍了,应该能很快的把图片显示出来,这里我们要使用
2013-03-16 22:50:43
5827
原创 Android高效显示图片详解(二)
上节课我们介绍了如何加载和显示大图,这节课我们就要把这个技巧与实际开发联系起来,在实际的开发过程中,最常见的场景就是用ListView,GridView等集合显示控件来呈现图片,这节课,我们就要用这些控件来高效的显示图片。 实际的使用环境中,如果图片来源是SD卡或者网络,那那么加载图片的过程一定不要放在UI线程中,这样会严重的阻塞UI线程,出现ANR,程序就废了。因此我们首先要
2013-03-12 22:26:34
7801
原创 对下载文件是否完整的判断方法
1,使用MD5,本地文件下载完后去文件的md5值与服务器的该文件md5进行比对,一致证明下载完全。2,比较文件的size,文件长度,下载完成取下File.length,与服务器的文件长度比对,一致则下载完全。3,文件命名法,开始下载时,把文件命名为宜别名如xxx.tmp,下载完成后再把文件名称修改过来。只要正式的文件名存在,则是下载完全的。
2013-03-09 10:17:57
5396
原创 对下载文件是否完整的判断方法
mMusicSourceFile = new File(MUSIC_FILE_PATH, mCurrentPlayMusic.getMusicName()+".tmp"); //按照SourceFile下载 mMusicDescFile = new File(MUSIC_FILE_PATH, mCurrentPlayMusic.getMusicName());
2013-03-09 10:15:42
757
原创 Android高效显示图片详解(一)
说明: 本讲义分为三部分,较为详细的介绍了Android平台下图片显示,加载等操作的处理原则与办法,以供大家共同学习,转载请注明出处 “From 移动微技”。前提与解释: 安卓平台作为一款移动端的应用操作平台,其内存容量是十分有限的,内存资源是十分珍贵的,是无法与传统的桌面平台相比的,因此,在安卓平台下同样的图片操作与处理都要十分谨慎,否则你的程序可以迅速地
2013-03-09 08:09:57
27147
2
原创 ScrollView中嵌套GridView,Listview的办法
按照android的标准,ScrollView中是不能嵌套具有滑动特性的View的,但是有时如果设计真的有这样做的需要,或者为了更方便简单的实现外观(比如在外在的大布局需要有滑动的特性,并且内部有类似于List的UI结构,那么ListView + Adpater的方式来实现里面的效果就很方便,算是违规抄近道的一种方式吧),有时就会不得不采用这种怪异的组合方式。先说下这种方式如果不做特殊处理时会出现
2013-03-03 20:28:31
13297
3
转载 Android 应用开发的耗电量控制
对于移动平台来说,设备电量有限一直是制约其发展的一个重要因素,作为开发者,功能实现虽然优先级高,但是开发过程中,针对耗电量进行优化也是应该牢记在心的,毕竟一款优质的App在耗电量方面也必须让广大用户满意,这是一篇我认为不错的文章,转载来进行分享,让我们都来节能环保,如果我们的App用户量巨大,哪怕我们对节电这一块而做出一点点的优化,那将省了多少人的电啊,这绝对是一场巨大的节能运动,是吧?
2013-02-16 20:20:10
8359
原创 Android开发中立即停止AsyncTask和Thread的一些办法
程序开发中经常会有立即停止线程运行的需要,而通过api是没有办法实现这个目的的,因此对于这个情况,我们需要采取一些“特殊”的方式来实现: 1,判断标志位的办法: 我们要知道在java的线程中,没有办法停止一个正在运行中的线程。在Android的AsyncTask中也是一样的。如果必须要停止一个线程,我们可以采用这个线程中设置一个标志位,然后在线程run方法或AsyncT
2013-02-16 20:15:04
2345
原创 Android Bitmap内存溢出问题解释
Android平台在图片处理方面经常会出现OOM的问题,在去年开发的一个项目中,我也一直被这个问题所困扰,在这方面也搜集了许多的资料,今天仅仅针对Android平台的Bitmap说事儿,今后再对内存的问题做详细的探讨,android平台对图片解码这块确实设置的有内存上限,在解码Bitmap的时候android平台会对其需要占用的内存进行Check,一旦需要的内存超越上限,则直接报错,下面援引邓凡平
2013-02-15 22:50:46
4142
转载 减少App页面跳转的四种方法
随着App功能增多,应用内的页面也随之增加。如果对App页面跳转处理过度,会让用户觉得散乱无序,并增加在使用上的凌乱与复杂感。如何有效减少app界面跳转,一起来看看这篇文章总结的四种方法。在标签页还没有诞生的时候, 浏览器对关键词的搜索似乎只能另起窗口显示搜索结果。且这些结果页散乱无序,假若再返回某一页面,就要从桌面一堆窗口里或者一长串任务栏内去翻找,相信现在用惯有标签页浏览器的同
2013-02-15 22:34:08
9999
转载 手机端软件界面设计中的几种常用布局
感谢@天天阿木 给我们带来的总结。作为一名手机浏览器PM,他从手机界面的设计布局入手,告诉我们如何在APP上展示内容。相信,随着产品设计的迭代更新,还会有更酷的布局出现,让我们一起来看看是哪几种。手机由于屏幕尺寸的限制,可显示内容要比PC屏幕少得多。在手机界面设计中,若直接把所有内容在一屏内显示,会使界面混乱不堪,丑陋且不可用。我们需要对信息进行有效组织,通过合理布局把信息展示给用
2013-02-15 22:15:29
10871
原创 2013年2月15日,我的博客又重新开启了
时隔了一年时间,我的个人技术博客又重新开启了,春节休息的这段时间又想写博客了,还好,把之前的捡起来,继往开来吧,还是希望能有更多的人关注“移动微技的博客”,将技术分享进行到底。
2013-02-15 22:02:15
471
原创 Android GoogleMaps API Key 申请教程
在Web中使用Google Map,需要根据要求来申请一个apiKey,用来标识客户端。Android手机中的Google Map也需要一个apiKey来标识客户端。 在eclipse开发环境中,可以使用emulator来测试一个Android应用,在emulator中运行的Google Map需要有一个与emulator对应的apiKey,获取apiKey的步骤如下:1. 获得e
2011-11-15 17:18:45
1885
转载 Android中与JSON相关的应用
JSON的定义:一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其提供了完整的解决方案(有点类似于正则表达式,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。
2011-10-18 21:49:09
754
转载 Android 系统应用调用,intent 的使用方法总结
Android常用Intent使用代码汇总: 显示网页: 1. Uri uri = Uri.parse("http://www.google.com"); 2. Intent it = new Intent(Intent.ACTION_VIEW,uri); 3. s
2011-07-16 17:30:20
1195
原创 应聘随笔
今年暑假因为母亲有病,我便在家照顾母亲,在家没几天便闲不住了,便找了一些离家很近的软件公司想进去工作,这样既能学点东西,也能及时回家,由于还没毕业,我抱着投机的心理去了洛阳唯一一家从事手机软件开发的公司应聘,公司的主要产品是手机游戏,面向欧美市场,面试过程比较顺利,面试时做了三页的题,考题的内容主要有数组排序,递归,随机不重复取值,矩形碰撞检测,游戏相关计算,逻辑智力题目,以及一页的英文翻译,由
2011-07-02 22:09:18
507
转载 确实很经典:从追MM谈Java的23种设计模式
从追MM谈Java的23种设计模式 1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯 德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory. 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点 是当产品修
2011-06-05 16:38:00
421
原创 php与Oracle数据库共舞
今年的Oracle课程实训我做的是二手交易网站,用的是php,后台必须是Oracle,自身积累了一些经验,发现网上关于php操作Oracle数据库的资料参差不齐,因此斗胆拿来与大家分享,望抛砖引玉。 1,php连接Oracle数据库 修改php.ini文件,把;extension=php_oci8.dll 前面的注释符号“;”去掉,使php能够加载支持oracle的模块。并把p
2011-06-04 18:16:00
577
原创 Struts2的Ajax应用举例
还是Struts2课程实训是留下的东西,marke一下 1,向项目中添加Dojo包 Dojo.jar2,前台页面顶端添加 引入Ajax的标签3,在页面的标签中添加标签,引入封装好的JavaScript函数 应用举例: 页面代码: 检索住宿信息: 学号: 检索 //这是Ajax事件部分 action为selbiyeInfo
2011-06-04 17:54:00
1399
原创 struts2框架从数据库批量取得数据集并在前台页面循环显示
两天的Struts2课程实训终于结束了,现在网上Struts2的资料还比较少,一些重要的用法还是Mark一下的好: 从数据库批量取得数据,并在前台页面中用表格循环输出显示 1,一定要定义实体类 比如glyuan类和gylou类代码如下 package com.entity; public class glyuan { private String account
2011-06-04 17:36:00
8907
1
原创 J2ME Canvas切换闪屏问题解决
在J2ME游戏中切忌,千万不能使用多个Canvas类。本次开发一开始就是使用了好几个Canvas类,在Nokia N95上,每次切换到下一个Canvas,都会有白屏闪动一下,后来总算解决了这个问题,就是在开发中只使用一个真正的Canvas,其他的都仅仅是类和对象而已,构成实例后,放到Canvas中运行即可。此方法对任何真机都可奏效,不会出现白屏,黑屏一闪而过的问题。例如:以Canvas即画布方式写出多个Form,但是不继承Canvas,向每个Form中添加相应控件以及各种响应,一个Form相当于一个屏,在程
2011-05-10 14:48:00
1575
转载 图示:安装与使用Android NDK r5初步
<br />一、 Android NDK r5安装<br />1、 cygwin的安装和简单配置<br />① 首先到http://www.cygwin.com下载setup.exe ,接着建立安装目录,如X:/cygwin (我用的是 E:/cygwin ) ,将setup.exe放到此目录。<br />② 启动安装:<br />BEGIN-> 点击setup.exe:<br />③ Next->选Install from Internet(选择在线安装方式):<br />④ Next->填写Root D
2011-05-10 11:18:00
574
转载 图示:安装与使用Android NDK r5初步
<br />一、 Android NDK r5安装<br />1、 cygwin的安装和简单配置<br />① 首先到http://www.cygwin.com下载setup.exe ,接着建立安装目录,如X:/cygwin (我用的是 E:/cygwin ) ,将setup.exe放到此目录。<br />② 启动安装:<br />BEGIN-> 点击setup.exe:<br />③ Next->选Install from Internet(选择在线安装方式):<br />④ Next->填写Root D
2011-05-10 11:14:00
522
转载 Android重力感应实现方式简介
<br />Android中的很多游戏的游戏都使用了重力感应的技术,但其api demo却并没有重力感应的实例(不知道是不是我没找到,找到的朋友麻烦告诉我一下,谢谢),因为开发的需要,就研究了一下重力感应这方面,因为网上关于这方面的东西比较少,所以写出来跟大家交流一下,算是抛砖引玉吧。(ps.因为重力感应式需要真机才能测试的,所以,下面提供的demo程序只能在真机上跑。)<br /> <br />因为官方说明比较含糊难懂,我用最简单的方式讲一下Android重力感应系统的坐标系<br /> <br /> <
2011-05-10 11:07:00
749
转载 PHP编写Android初步
安装PHP for Android<br />安装PHP for Android的前提是,你要有一支安装了Android 1.5或更高版本的手机或模拟器,并在“应用程序设置”下打开“未知源”,设置好后,你就可以安装SL4A环境和PHP for Android APK了。<br />安装SL4A是相当简单的,但在安装完PHP for Android后,你需要再次安装它以便安装完它的所有功能,安装期间如果遇到麻烦,这里有一个视频演示。<br />设置PHP for Android开发环境<br />从理论上说,
2011-05-10 10:47:00
3293
转载 四大主流移动开发框架介绍
<br />移动Web开发语言被称为“第五次工业革命的原动力”,移动web开发有哪些优点呢?<br />◆易于开发,新用户易上手,开发周期相对短。<br />◆自动更新,只要服务器端更新后,所有移动设备也一起更新。<br />◆可充分利用现有web内容。<br />目前,各种移动web开发的框架也纷纷到来,相信您也会很快投入其中!下面简单介绍一下各种框架。<br />iUI: 它是一个javascript和css库,用于在网页中模拟iphone的外观和感觉。虽然是专为iphone设计的UI,但在androi
2011-05-09 11:15:00
2671
转载 求解关键路径相关计算一个简单总结
<br />这中类型的题是高级中比较常见的,系统分析师、信息系统项目管理师都是经常出的,网络规划设计师考纲也有项目控制的内容,我看了下大家答题的情况,很多人不了解关键路径和其相关计算的求法,考试出题有关键路径的计算,最早开始时间,最迟开始时间。这里我稍微总结下,当然是应试性质的,要想深入了解,还需多看相关的资料。<br /><br /><br />在这种AOE网中<br /><br />最长的一条路径就是关键路径,因为图中每个活动都是必须的,只有最长的工期完成后,项目才真正完成了,图中10+9+20+10
2011-05-08 17:35:00
1528
原创 TCL Android TV 开发环境搭建实录
1系统概况 1.1 硬件环境概况存储设备:支持SD卡和U盘.CPU主频800M以上,内存512M以上,flash512M以上.USB:扩展4个.音频输入输出:双通道立体声输入输出.HDMI输出,最大分辨率1920*1080.网口:1个10M/100M的以太网口.支持键盘鼠标输入.通过USB口可以扩展其他设备(摄像头,无线网口等).支持通过ADB进行调试.1.2 软件环境概况操作系统版本:android2.2.SDK版本: TCL SDK.支持OPENGL2.0,硬件加速.多媒体解码支持:MVB/TS/MP
2011-04-23 14:18:00
11101
1
原创 Android开发环境搭建
<br />一、软件、开发包清单<br /> <br />Android开发首先需要搭建完整的开发环境,由于软件均是基于Dalvik Java Virtual Machine运行的所以Google官方推荐使用主流的Java开发IDE Eclipse。我们需要下载必要的开发组件。<br />1)Java运行时库(JRE),由于Eclipse使用Java开发,所以需要它才可以正常运行IDE。<br />运行eclipse需要jre,开发andriod需要jdk(包含了jre),所以我们下载javaSE(jdk)
2011-04-22 16:30:00
913
原创 搭建MonoDroid开发环境
<br /> <br />安装的Visual Studio 2010 MonoDroid包括五个步骤:Java SDK的安装安装Android SDK配置你的模拟器安装Visual Studio 2010中MonoDroid插件(可选) 配置Visual Studio中的MonoDroid为插件<br /> 具体安装可以去官方网站上看看。<br /> <br /> 新建一个monodroid的工程:<br />写一段测试代码:<br />using System;<br /> <br />using A
2011-04-22 14:46:00
724
转载 Monodroid简介
<br />MonoDroid是其于C#语言和.Net核心Api的库、环境、和工具集,用于使用mono虚拟机为Android移动操作系统开发应用程序。<br />MonoDroid类似于MonoTouch框架,以.net基类库为核心,而在应用及UI层面,生成原生Android Java Api绑定,用于访问设备相关的功能,例如各种感应器,摄像头,蓝牙等等。<br />在Windows上进行Andorid开发最好使用Visual Studio专业版(或更高)配合SDK和开发用插件,而SDK会引用Android
2011-04-22 14:44:00
1137
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人