Android 65K问题相信困惑了不少人,尽管AS的出来能够通过分dex高速解决65K问题,可是同一时候也easy由于某些代码没有打包到MainDex里引起NoClassDefFoundError. 随着5.0的推出,Android也放出了Multidex Support Library来解决问题. Multidex Support Library能够直接分包处理65K问题.而且不会发生NoClassDefFoundError的情况. 1.使用的话.首先加入依赖库: //分包multiDexE…
1.HashMap底层原理分析(put.get方法) HashMap底层是通过数组加链表的结构来实现的.HashMap通过计算key的hashCode来计算hash值,只要hashCode一样,那hash值就是相同的.当hash值相同时,就会出现hash冲突,HashMap通过链表来解决冲突. 原理图: 实例: import java.util.HashMap; import java.util.Map; ​ public class HashMapTest { public static vo…
Android 打开方式选定后默认了改不回来?解决方法(三星s7为例) 刚刚在测试东西,打开一个gif图,然后我故意选择用支付宝打开,然后...支付宝当然不支持,我觉得第二次打开它应该还会问我,没想到它不在弹出让我选择哪个程序打开的界面了!!!直接就支付宝了,我...{醉了} 然后找了个年代久远的帖子说可以清除,嗯,然后我在设置里慢慢找...方法记在下面(图文版,哈哈 =.=) 1. 三星打开文件时,打开方式选择面板: 然后我选择了支付宝.... 支付宝说:它不支持.... 2. 你发现你现在在…
Android Studio2.x版本无法自动关联源码的解决方法 在学习android开发过程中,对于一个不熟悉的类,阅读源码是一个很好的学习方式,使用andorid studio开发工具的SDK Manager管理工具可以十分方便的下载SDK源码,打开SDK Manager工具,下载源码界面如下图所示: 在对应的SDK版本中可以下载SDK源码. 安卓源码下载完成后,在类名上按住command键,点击鼠标左键会跳转进对应源码文件,如果是Windows系统,使用按住control键点击鼠标左键.如…
android Run模式也会出现"Waiting for debugger"的解决方法 出现“waiting for debugger”窗口是在debug模式下运行出现的.但是,今天我在run模式下也出现了此窗口,并且一直如此.卸载程序重新运行也是如此.android真机在脱离电脑的情况下,会一直死在“waiting for debugger”的. run 后eclipse 就直接跳出 The JAR /home/xxx/.../android.jar has no source a…
在Android系统中,有一种特殊的视图,称为SurfaceView,它拥有独立的绘图表面,即它不与其宿主窗口共享同一个绘图表面.由于拥有独立的绘图表面,因此SurfaceView的UI就可以在一个独立的线程中进行行绘制.又由于不占用主线程资源,SurfaceView一方面可以实现复杂而高效的UI,另一方面又不会导致用户输入得不到及时响应.在本文中,我们就详细分析SurfaceView的实现原理. 在前面Android控件TextView的实现原理分析一文中提到,普通的Android控件,例如T…
一年多以前,曾经以为自己对 View 的绘制已经有了解了,事后发现也只是懂了些皮毛而已.经过一年多的实战,Android 和 Java 基础都有了提升,时机成熟了,是时候该去总结 View 的绘制流程了. 概论 Android 中 Activity 是作为应用程序的载体存在,代表着一个完整的用户界面,提供了一个窗口来绘制各种视图,当 Activity 启动时,我们会通过 setContentView 方法来设置一个内容视图,这个内容视图就是用户看到的界面.那么 View 和 activity 是…
Junit 注解 3).其它注意事项: 1).@Test运行的方法,不能有形参: 2).@Test运行的方法,不能有返回值: 3).@Test运行的方法,不能是静态方法: 4).在一个类中,可以同时定义多个@Test的测试方法: a)可以每个方法单独运行(在每个方法上点右键) b)也可以全部运行(在除测试方法的其它位置右键) 2..类加载器 1).类加载器:当我们执行某个类时,JVM会加载class文件,并产生Class对象. 不同的类,JVM会使用不同的"类加载器"去加载: 2).类…
执行多次原因是因为每显示一个VIew,它都去测量view的高度,执行measure方法,导致getView执行多次. 解决方法是将 ListView 的 layout_width 设置为 fill_parent, <ListView android:id="@+id/lv_messages" android:layout_width="fill_parent" android:layout_height="fill_parent" andr…
无论是调试Web页面还是调试Hybrid混合应用,只要是调试Android的webview,都需要使用Chrome://inspect进行调试.但是国内开发者会出现404 Not Found错误: 解决方法有两种: 最直接的方法:FQ.Fan墙最大的问题免费的不稳定,按月收费又太浪费. 推荐使用离线开发者调试工具包(支持windows/mac/linux),再也不用到处找出口了…