- 博客(43)
- 资源 (9)
- 收藏
- 关注
原创 android ftp服务器实现
通过ApacheFtpServer实现,依赖以下jar包:commons-net-ftp-2.0.jarftpserver-core-1.0.6.jarlog4j-1.2.14.jarmina-core-2.0.4.jarslf4j-api-1.5.2.jarslf4j-log4j12-1.5.2.jar资源下载地址 http://download.youkuaiyun.com/d
2015-03-17 16:23:54
6527
原创 android 离线语言识别
要做一个在android上离线语言识别功能。搜索了一下只有Sphinx比较适合,资料也有。Sphinx库的编译和使用方法在网上比较多的资料都是源自http://ucla.jamesyxu.com/?p=118这个老外写的,但是时间较早2011年的。这个编译是在linux下的,windows下的可以参考http://gaebolg.blog.163.com/blog/static/198269068
2015-03-17 16:20:06
3460
原创 Android MediaRecorder录制视频音量小问题解决 (音视频转码合成)
之前写得太乱,回头看看感觉自己都有点看不懂,重新写下。在android上需要做一个录像留言功能,需要生成MP4或者waw格式视频。但是使用MediaRecorder录制出的MP4视频格式音量太小,几乎听不到,且MediaRecorder提供API太少,所有只能考虑其它方法。试验后的方案是分别录制音频和视频,然后合成MP4格式视频。1、音频录制。通过AudioRecord录制增益
2015-03-10 14:05:35
13140
原创 MediaRecord录像声音小问题
由于MediaRecord提供接口较少,没有增加音量的接口。顾采取分开录制音视频再合成的方式实现.1、通过MediaRecord和AudioRecord同时分别录制出无声MP4视频和raw音频。2、将raw音量增益并封装成wav3、将wav转码成AAC,并与MP4视频合成为目标录像。(此处参考http://blog.youkuaiyun.com/smile3670/article/details/
2014-11-20 11:32:32
5829
1
原创 音视频转码合成
1、android上录音AAC/MP3格式,未成功https://github.com/turkeyzhu/AACEncoder_Android2、通过mp4parser将AAC、h264、mp4格式合成MP4https://code.google.com/p/mp4parser/(mp4parser源码)https://github.com/sannies/mp4parser(使
2014-11-19 11:51:42
7552
10
转载 应用程序常驻系统
安防相关应用程序需要在后台跑,通过socket监听事件。由于内存不足时,application有可能会被kill掉,导致不能监听事件。解决办法就是让该应用常驻系统,不被kill掉。增加以下两个属性1.必须有系统权限,即有sharedUserId="android.uid.system"属性2.必须有android:persistent="true"属性,也就该进程常驻系
2014-03-14 08:58:56
2165
原创 跨进程共享 SharedPreferences
String content = null; Context c = null; try { c = this.createPackageContext(PREFERENCE_PACKAGE, Context.CONTEXT_IGNORE_SECURITY); } catch (NameNotFoundException e) { // TODO Auto-gen
2014-03-12 08:54:33
10136
1
原创 android reboot
参考:http://blog.youkuaiyun.com/airk000/article/details/9177077http://blog.youkuaiyun.com/zhenwenxian/article/details/6766803http://www.tuicool.com/articles/jYFZFfhttp://blog.youkuaiyun.com/zzobin/article/detai
2013-09-05 17:19:08
1315
原创 制作android 升级包
参考:http://blog.youkuaiyun.com/wuxy_shenzhen/article/details/7613718http://www.blogjava.net/MEYE/articles/357111.htmlhttp://blog.youkuaiyun.com/imyfriend/article/details/8564969http://www.diypda.com/thread
2013-09-05 17:11:15
1425
原创 android 4.0 屏蔽 HOME_KEY 和 RECENT_APP_KEY
在项目中需要屏蔽虚拟按键,back 和menu键可以屏蔽,但是HOME_KEY 和 RECENT_APP_KEY 却无法屏蔽,在 onKeyDown(int keyCode, KeyEvent event) 方法中不能捕获HOME_KEY 和 RECENT_APP_KEY 的动作。1、屏蔽HOME_KEY参考网站http://www.2cto.com/kf/201207/138886.ht
2013-08-26 10:40:55
6600
原创 android 4.0 Calendar 添加默认账户
参考网站http://stackoverflow.com/questions/13236573/content-resolver-add-new-non-local-calendar-calendar-deleted-when-process-enCursor c =activity.getContentResolver().query(Calendars.CONTENT_URI, n
2013-08-19 09:26:58
4911
1
转载 Android Library Project
http://blog.youkuaiyun.com/lifanupc/article/detai http:// ls/5707599http://blog.youkuaiyun.com/sheldon4090/article/details/7734634
2013-07-09 14:20:32
482
原创 分析 Crash log
参考http://stackoverflow.com/questions/3832900/how-to-manually-symbolicate-ios-crash-to-view-crash-logs?s=c9919715-9ce5-466f-8f21-5bf324cdfd65#new-answer1、在终端中输入find /Developer -name symbolicatecras
2012-11-26 11:11:33
738
转载 android Memory Management, OutOfMemoryError Note
http://www.cnblogs.com/qiengo/archive/2012/04/25/2468372.html
2012-09-10 10:41:13
403
转载 C++与Java比较
转载自http://www.cnblogs.com/cnryb/archive/2011/01/04/2004141.html事实上,Java本来就是从C++衍生出来的。” 然而,C++和Java之间仍存在一些显著的差异。可以这样说,这些差异代表着技术的极大进步。一旦我们弄清楚了这些差异,就会理解为什么说Java是一种优秀的程序设计语言。本附录将引导大家认识用于区分Java和C++的一些
2012-07-16 17:38:55
558
转载 Android之Service与IntentService的比较
首先IntentService是继承自Service的,那我们先看看Service的官方介绍,这里列出两点比较重要的地方: 1.A Service is not a separate process. The Service object itself does not imply it is running in its own process; unless otherwis
2012-06-29 14:58:12
11130
1
原创 Activity 变成窗口
在Activity 属性中添加android:theme="@android:style/Theme.Dialog" 这就使你的应用程序变成对话框的形式弹出来android:theme="@android:style/Theme.Translucent" 变成半透明
2012-06-29 11:14:46
578
原创 MVC 模式
MVC是三个单词的缩写,分别为: 模型(Model),视图(View)和控制Controller)。 1、模型(Model) 模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑. 2、视图(View) 视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。 3、控制器(controller) 控制器工作就是根据用户的输入,控制用户界面数据显示和更新mod
2012-06-29 10:34:36
368
原创 simpleFTP
public class SimpleFTP {private static String TAG = "SimpleFTP";private static boolean DEBUG = true;private Socket socket = null;private BufferedReader reader = null;priv
2012-06-29 09:23:07
632
原创 AIDL 进程间通信
Android Interface Definition Language服务器端1、建一个.aidl结尾的文件。在里边定义接口。接口名字与文件名字相同,假设接口为Interface MyServer { String write();}2、Build工程后在gen目录下会生成一个MyServer。Java文件, 其中包含实现接口Myserver的类 Stub 。3、新
2012-06-26 16:12:17
498
原创 自定义滑动TAB
public class CustomScrollBarWidget extends FrameLayout implements ChangePage{private Scroller mScroller;private int mPageCount;private int mWidth;private ChangePage changePage;private String
2012-06-26 11:35:35
328
原创 xml解析工具类
public class XmlUtil {private DocumentBuilderFactory factory = null;private DocumentBuilder builder = null;/***example, node string: <a> <b>1</b> <c>3</c> </a
2012-06-26 11:30:04
996
原创 字符转换工具类
public class Utils {/*** IpAddress 转成String* @param i* @return*/public static String intToString(int i) {return ((i & 0xFF) + "." + ((i >> 8) & 0xFF) + "." + ((i >> 16) & 0xFF)+ ".
2012-06-26 11:26:47
383
原创 文件管理实用类
public class FileUtil {public static void copyFromAssets(Context context,String fileName, String newFileName) {InputStream in = null;OutputStream out = null;try {in = context.getAssets().o
2012-06-26 11:22:43
458
原创 CustomFlingView 翻转页面
public class CustomFlingView extends FrameLayout implements ChangePage {private static final String TAG = "FlingLayout";// 用于滑动的类private Scroller mScroller;// 用来跟踪触摸速度的类private VelocityTrack
2012-06-26 11:20:53
443
转载 行为型模式
行为模式涉及到算法和对象间职责的分配。行为模式不仅描述对象和类得模式,还描述它们之间的通信模式。这些模式刻画了在运行时难以跟踪的复杂的控制流。他们将你的注意力从控制流转移到对象间的联系方式上来。Chain of responsibility 职责链 ----- 对象行为型模式作用:使多个对象都有机会处理请求,从而避免请求的
2012-06-16 11:56:45
877
转载 结构型设计模式
结构模式描述的是如何和组合类和对象已获得更大的结构。类模式和对象模式之间的区别是:类描述的如何通过继承提供更有用的接口,而对象描述的是通过使用对象的组合或将对象包涵在别的对象里面以获得更有用的结构。 适配器模式:可以将类的一个借口匹配另一个接口组合模式:对象的组合代理模式:一个简单的对象代替一个复杂的稍后会被调用的复杂对象外观模式:一个类表示一个子系统
2012-06-15 11:16:48
297
原创 排序算法
一 插入排序该算法在数据规模小的时候十分高效,该算法每次插入第K+1到前K个有序数组中一个合适位置,K从0开始到N-1,从而完成排序:package algorithms;/** * @author yovn */public class InsertSorterextends Comparable> extends Sorter { /* (non-Ja
2012-06-15 10:47:05
322
转载 Java中Vector和ArrayList的区别
首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList、Vector和LinkedList。List用于存放多个元素,能够维护元素的次序,并且允许元素的重复。3个具体实现类的相关区别如下:ArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力
2012-06-15 10:07:36
337
原创 容器
数组数组和其它容器的区别主要有三方面:效率,类型,和保存基本类型的能力.在Java中,数组是一种效率很高的存储和随机访问对象引用序列的方式.数组是一个简单的线性序列,因此访问速度很快,但也损失了其它一些特性.创建一个数组对象后,大小就固定了,如果空间不够,通常是再创建一个数组,然后把旧数组中的所有引用移到新数组中.数组可可以保存基本类型,容器不行.容器类不以具体的类型来处理对象,而是将所有
2012-06-15 10:06:26
340
原创 onInterceptTouchEvent 和 onTouchEvent
1、onInterceptTouchEvent是在ViewGroup里面定义的。Android中的layout布局类一般都是继承此类的。onInterceptTouchEvent是用于拦截手势事件的,每个手势事件都会先调用onInterceptTouchEvent。 1. down事件首先会传递到onInterceptTouchEvent()方法2. 如果该
2012-06-08 16:56:16
438
原创 自定义button 的 字体绘制,按下状态图片变换
继承Button类public int TEXT_SIZE = 20; // 字体大小public int sFontMetricsOffsetY = 0;private int mTextLeftX = 0;/*** 重写绘图方法,绘入字体*/@Overrideprotected void onDraw(Canvas canvas) {TEXT
2012-06-07 14:28:44
453
原创 监听Log 并写入文件
public class NoteLog {//Log信息 保存路径private static final String FILE_PATH = "/sdcard/log/";private static final String LOG_PATH = FILE_PATH + "log.txt";private static final int LOG_FILE_MAX_SIZE =
2012-06-06 14:30:45
472
原创 面向对象设计原则
1、对于面向对象的软件系统设计来说,在支持可维护性的同时,需要提高系统的可复用性。软件的复用可以提高软件的开发效率,提高软件质量,节约开发成本,恰当的复用还可以改善系统的可维护性。2、单一职责原则要求在软件系统中,一个类只负责一个功能领域中的相应职责。3、开闭原则要求一个软件实体应当对扩展开放,对修改关闭,即在不修改源代码的基础上扩展一个系统的行为。4、里氏代换原则可以通俗表述
2012-06-06 11:24:16
406
转载 Java接口:Callable 与 Future
Callable与Future类别可以协助您完成 Future 模式 。Callable是个介面,与Runnable类似,有个必须实作的方法,可以启动为另一个执行绪来执行,不过Callable工作完成后,可以传回结果物件,Callable介面的定义如下:public interface Callable { V call() throws Exception;}
2012-05-31 11:16:27
327
转载 SeekBar
简单解释下seekbar中几个重要的属性:android:layout_height="wrap_content"//建议使用wrap_content,否则一定要保证设置的值不小于seekbar图片资源中的最高值android:maxHeight="12px"android:minHeight="12px"//说明进度条的最低和最大高度,解决高度问题。android
2012-05-31 11:09:15
574
原创 onInterceptTouchEvent和onTouchEvent调用时序
version="1.0" encoding="utf-8"?>1 > 2 > 3 /> 1. down事件首先会传递到(父VIEW 1)onInterceptTouchEvent()方法2. 如果该View 1 的onInterceptTouchEvent
2012-05-31 10:43:29
400
原创 simpleFtp 问题
1、设置连接超时socket = new Socket();SocketAddress socketAddress = new InetSocketAddress(host, port);socket.connect(socketAddress, 5000);2、获取列表信息mDataSocket = getConnection();sendLine("LIST
2012-05-16 17:20:25
818
android ftp服务器 demo
2015-03-17
android FTP服务器 jar包
2015-03-17
AAC、h264、mp4格式合成MP4(android、JAVA)
2014-11-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人