android
lizardmia
这个作者很懒,什么都没留下…
展开
-
关于soundtouch项目的变声的学习总结!
因为实验室要做一个关于变声的androidAPP。这个APP简直是浪费了无数脑细胞,选择了用soundtouch这个包,但是NDK没做过,声音三要素也不知道,纠结了一个月终于搞出来了!记录一下,首先这个库是没有任何问题的,做的时候怀疑了很多次,呵呵。其次第一要编译出.so,在编译的时候注意android.mk和application.mk都是需要的。sttpyes.h文件中声道根据自己的要求选择,原创 2012-12-12 04:50:29 · 1895 阅读 · 2 评论 -
android View详解
一、结构 java.lang.Object android.view.View 已知直接子类: AnalogClock, ImageView, KeyboardView, ProgressBar, SurfaceView, TextView, ViewGroup, ViewStub 已知间接子类: AbsListView,转载 2013-08-08 19:57:28 · 770 阅读 · 0 评论 -
Android系统Intent的使用
Android Intent的几种用法全面总结Intent,用法Intent应该算是Android中特有的东西。你可以在Intent中指定程序要执行的动作(比如:view,edit,dial),以及程序执行到该动作时所需要的资料。都指定好后,只要调用startActivity(),Android系统会自动寻找最符合你指定要求的应用程序,并执行该程序。下面转载 2013-08-08 17:11:52 · 652 阅读 · 0 评论 -
Android 解决ListView 和 ScrollView 共存冲突的问题
ListView 与 ScrollView 同在一个界面用头脑想想都觉得不大可能这样做,但还真的有美工这样做了,有点郁闷~!!沟通无果,解决之~~~~!初期还真没啥头绪,Google 一下看到有很多同样碰到这类头痛的问题,不好意思还没描述问题症状。ListView 与 ScrollView 同在一界面会导致ListView 显示变形,因为ListView 也有自带的滚动事件,故无法与ScrollV转载 2013-08-08 19:59:09 · 596 阅读 · 0 评论 -
packageinstaller实验静默安装与卸载的关键代码
private String installApk(String fileName) { String[] args = { "pm", "install", "-r", fileName }; String result = ""; ProcessBuilder processBuilder = new ProcessBuilder(args原创 2013-09-05 18:09:40 · 755 阅读 · 0 评论 -
oom
Android的虚拟机是基于寄存器的Dalvik,它的最大堆大小一般是16M,有的机器为24M。我们平常看到的OutOfMemory的错误,通常是堆内存溢出。移动开发和web开发的最大的区别是设备资源受限,对一般手机应用,这个资源是相当有限的,堆内存的上限值只有16M。Android的缺省值是16M(某些机型是24M),而对于普通应用这是不能改的,当应用程序处理大资源的资源,如图片或视频等媒体资源转载 2013-11-26 15:29:47 · 368 阅读 · 0 评论 -
Binder Parcel
Android中的Parcel是什么 Parcel,翻译过来是“打包”的意思。打包干什么呢?是为了序列化。 如果要在进程之间传递一个整数,很简单,直接传就是行了;如果要传一个字符串,就稍微复杂了点:需先分配一块可以容纳字符串的内存,然后将字符串复制到内 存中,再传递(新手可能问:为啥不直接把字符串的引用传过去呢?学过C/C++的地球人都知道:进程有自己的内存地址空间,一个进程转载 2013-12-11 14:59:46 · 607 阅读 · 0 评论 -
ViewPager,HorizontalScrollView
解决思路:自定义ViewPager,在onInterceptTouchEvent方法当中判断,当前点击的点是不是HorizontalScrollView上的点,如果是,则:this.requestDisallowInterceptTouchEvent(true);return super.onInterceptTouchEvent(arg0);如果不是,则:this.req转载 2014-01-14 14:34:23 · 481 阅读 · 0 评论 -
魅族取消虚拟键盘
Class[] arrayOfClass = new Class[1];arrayOfClass[0] = Integer.TYPE;Method localMethod = View.class.getMethod("setSystemUiVisibility",arrayOfClass);Field localField = View.class.getField("SYSTE转载 2014-04-16 15:52:06 · 1029 阅读 · 0 评论 -
增大view的有效区域
Android提供了一个TouchDelegate类去让父类扩展它的子view的触摸区域。当子view很小但需要大的触摸区域的时候,这个类大有用处。如果你想要的话,你也能用这个类去缩小子view的触摸区域。在下面的例子中,有一个作为例子的ImageButton(也就是说父类会扩展这个子view的触摸区域)、在下面的例子中,有一个作为例子的ImageButton(也就是说父类会扩展这转载 2014-03-24 15:40:35 · 508 阅读 · 0 评论 -
android虚拟按键
取得系统权限,然后就可以对虚拟按键作处理。下面是隐藏home和recent。private StatusBarManager mStatusBarManager;mStatusBarManager = (StatusBarManager)getSystemService(Context.STATUS_BAR_SERVICE);public void disableS原创 2014-03-26 09:44:44 · 999 阅读 · 0 评论 -
onInterceptTouchEvent和onTouchEvent调用关系详解
本帖记录onInterceptTouchEvent和onTouchEvent调用关系,即各种return true和return false的运行情况。return true和return false,代表的是是否消费完该事件,也就是该事件是否会继续传递给下层或者上层组件继续处理。return true代表消费完不会继续传递,return false代表没有消费完将会继续传递。如果转载 2013-08-05 14:06:24 · 432 阅读 · 0 评论 -
android --47
1、判断sd卡是否存在 boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); 2、TextView部分文字设置颜色 TextView tv = new TextView(this); //添加css样式 t转载 2013-07-29 09:23:54 · 619 阅读 · 0 评论 -
debug lanucher
1、创建工程,选择File--->New----->Project...---->Android Project from Existing Code---->Browse---->找到源码所在的路径----->Finish,工程就创建完成了。工程创建之后需要更改SDK的版本,右键工程,选择Properties---->Android--->Android4.0.3(API版本高于转载 2013-07-25 09:32:55 · 576 阅读 · 0 评论 -
代码布局
1. FrameLayout下动态设置子控件居中:FrameLayout.LayoutParams btnLytp = new FrameLayout.LayoutParams(80,LayoutParams.WRAP_CONTENT);btnLytp.gravity = Gravity.CENTER;btnMemo.setLayoutParams(btnLytp); 2. Rel转载 2013-03-29 15:48:41 · 429 阅读 · 0 评论 -
view and window简介
ViewGroup是View的子类,所以它也具有View的特性,但它主要用来充当View的容器,将其中的View视作自己的孩子,对它的子View进行管理,当然它的孩子也可以是ViewGroup类型。ViewGroup(树根)和它的孩子们(View和ViewGroup)以树形结构形成了一个层次结构,View类有接受和处理消息的功能,android系统所产生的消息会在这些ViewGroup和 Vi转载 2013-03-29 15:14:12 · 555 阅读 · 0 评论 -
获取屏幕分辨率
DisplayMetrics dm = new DisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(dm);int width = dm.widthPixels;int height = dm.heightPixels;StringBuffer strB = new StringBuffer();原创 2013-03-20 09:17:40 · 455 阅读 · 0 评论 -
Linux下Eclipse工程查看framework层代码
Goolge在发布SDK时没有把源代码包含进去,而且ADT不允许我们在项目属性中attach源代码到android.jar上。所以默认情况下,我们没法在Eclipse的一个Android工程中查看framework java层的代码。 经尝试,找到如下解决办法:大家可以 1、cd $android_sdk/platforms/android-2.1/ 2、ln -s $a转载 2013-04-02 16:32:11 · 450 阅读 · 0 评论 -
context相关内存泄露
如果context发生内存泄露的话,就会泄露很多内存。这里泄露的意思是gc没有办法回收activity的内存。 注释:为什么GC没有办法回收相应的内存,个人感觉是因为传递Context会增加对象指针的引用计数,所以基于智能指针技术的GC无法释放相应的内存。 当屏幕旋转的时候,系统会销毁当前的activity,保存状态信息,再创建一个新的。比如我们写了一个应用程序,它需要加载一个很大转载 2013-03-27 10:36:29 · 445 阅读 · 0 评论 -
application context
我们可以使用application context。application context伴随application的一生,与activity的生命周期无关。application context可以通过Context.getApplicationContext或者Activity.getApplication方法获取。而制造Application context的方法在这里可以找到htt转载 2013-03-27 10:44:19 · 664 阅读 · 0 评论 -
listview的优化
1、如果自定义适配器,那么在getView方法中要考虑方法传进来的参数contentView是否为null,如果为null就创建contentView并返回,如果不为null则直接使用。在这个方法中尽可能少创建view。2、给contentView设置tag(setTag()),传入一个viewHolder对象,用于缓存要显示的数据,可以达到图像数据异步加载的效果。3、如果listview转载 2013-05-06 22:01:55 · 426 阅读 · 0 评论 -
static
在类中定义的数据成为类的数据成员,例如字段,常量等。而函数的成员方法则提供操作类的数据的功能,函数成员方法、属性、构造函数等。对象中的数据成员和方法一般都是对象私有的,即只有对象本身才能访问,其他对象不能直接对其操作。但是,如果在多个地方调用就需要产生多个实例。有些时候被调用的方法与实例的多少没有任何关系,该方法可能只是帮助方法。在这种情况下,不需要多个实例, java 引入了static,先看一转载 2013-05-06 23:09:27 · 322 阅读 · 0 评论 -
递归删除文件夹
public final class OperationFileHelper { /** * 递归删除文件和文件夹 * @param file 要删除的根目录 */ public static void RecursionDeleteFile(File file){ if(file.isFile()){ f转载 2013-05-08 21:23:49 · 496 阅读 · 0 评论 -
oom的解决方案
在最近做的工程中发现加载的图片太多或图片过大时经常出现OOM问题,找网上资料也提供了很多方法,但自己感觉有点乱,特此,今天在不同型号的三款安卓手机上做了测试,因为有效果也有结果,今天小马就做个详细的总结,以供朋友们共同交流学习,也供自己以后在解决OOM问题上有所提高,提前讲下,片幅有点长,涉及的东西太多,大家耐心看,肯定有收获的,里面的很多东西小马也是学习参考网络资料使用的,先来简单讲下下:转载 2013-05-08 21:44:01 · 487 阅读 · 0 评论 -
andorid源码出现红色感叹号
如果发现导入工程的时候,出现”No projects are found to import” 的提示,首先查看项目目录中是否有隐藏文件.project,还有目录结构也还要有一个隐藏文件.classpath, 如果没有的解决办法。方法1:最直接的操作,可以把其它项目的.project, .classpath文件拷贝过来,修改相应的地方则可。1).project文件只需要修改AboxTVEx转载 2013-05-11 13:44:33 · 598 阅读 · 0 评论 -
解决setMovementMethod(LinkMovementMethod.getInstance())后没有长按事件响应
setMovementMethod(new LongClickableLinkMovementMethod(mlistener))原创 2014-05-23 14:41:55 · 3453 阅读 · 1 评论