实习期间小问题备忘 1

2017-08-20  本文已影响0人  安安zoe

问题记录

1. Mac 上zip文件加压出现cpgz文件的解决方法:

解压缩zip格式,出现.cpgz文件,循环往复,解决方法

2. mac上有些文件的扩展名是隐藏的

比如说txt。

3. 安装apktool

zoezhang@ali-ac87a32d0e28 bin$ sudo chmod +x /usr/local/bin apktool.jar apktool
zoezhang@ali-ac87a32d0e28 bin$ sudo apktool

4. .so文件的安装位置?

5. 打包失败的问题

androd-gradle-plugin 版本不对

classpath 'com.android.tools.build:gradle:1.5.0'
classpath 'com.alipay.android:android-gradle-plugin:1.5.0.2.6.1'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'

6. 开发环境

分清楚什么是日常、预发、和线上环境;学习哆啦A梦调试工具

7. mac下ping

会一直ping下去,需要按control + C停止

8. instanceof关键字

java二元操作符,作用是测试它左边的对象是否是它右边的类的实例,返回boolean类型。
举例:

public class Bill{}
public class PhoneBill extends Bill{}
public class GasBill extends Bill{}

//传入一个bill对象  一个方法处理两种子类  ----并不推荐的用法
public double calculate(Bill bill){
  if(bill instanceof PhoneBill){
  }
  if(bill instanceof GasBill){
  }
}

在Android中,instanceof关键字常用于在Fragment中getActivity调用Activity方法时,检查所获得的Activity是否是Fragment所attach的Activity,

9. Android 反射技术(引用网上资料):

为什么要用反射机制?直接创建对象不就可以了吗,这就涉及到了动态与静态的概念:

一句话,反射机制的优点就是可以实现动态创建对象和编译,体现出很大的灵活性,特别是在J2EE的开发中它的灵活性就表现的十分明显。比如,一个大型的软件,不可能一次就把把它设计的很完美,当这个程序编译后,发布了,当发现需要更新某些功能时,我们不可能要用户把以前的卸载,再重新安装新的版本,假如这样的话,这个软件肯定是没有多少人用的。采用静态的话,需要把整个程序重新编译一次才可以实现功能的更新,而采用反射机制的话,它就可以不用安装,只需要在运行时才动态的创建和编译,就可以实现该功能。它的缺点是对性能有影响。使用反射基本上是一种解释操作,我们可以告诉JVM,我们希望做什么并且它满足我们的要求。这类操作总是慢于只直接执行相同的操作。

10. Fragment

管理回退栈

11. H5和native app

12. Classesloader()的双亲委托模式

for java:

13. Android分发机制

将一个事件传递给一个具体的view去处理的整体流程和机制
Activity ---- ViewGroup ----- View 处理

14. 反射机制

利用反射机制解耦的原理就是动态创建对象,先加载指定的类,再实例化对象。
java反射机制是在运行状态的时候,对于任意一个类,都能够知道这个类的所有属性和方法。
动态获取信息和动态调用对象的方法成为java语言的反射机制。
也就是在程序运行时实例化对象,而我们平时是加载了类之后实例化对象。

Reflection机制允许程序在正在执行的过程中,利用Reflection APIs取得任何已知名称的类的内部信息,包括:package、 type parameters、 superclass、 implemented interfaces、 inner classes、 outer classes、 fields、 constructors、 methods、 modifiers等,并可以在执行的过程中,动态生成Instances、变更fields内容或唤起methods。

string str = 'abcc'  
Class cl = str.getclass()  
Class c2 = Class.forName("java.avt.Buttion")  

15. android 的动态加载之classloader

16. RecycleView的基本用法

17. 开源网络框架

18. px和dp

19. Android 渐变蒙层

20. Charles

21. Fragment setArgument

创建Fragment对象 new Fragment(),不建议重载构造函数,因为当一个Fragment重新创建的时候,会调用Fragment的默认构造函数,不会调用你重载的构造函数。因此系统推荐使用Fragment.setArgument(Bundle)来传递参数。当Fragment销毁的时候,Bundle会保存下来,重新创建时根据Bundle来重新创建Fragment。

22. Android View中的getViewTreeObserver().addOnGlobalLayoutListener()

23. Fragment与Activity的通信 以及 viewpager

上一篇 下一篇

猜你喜欢

热点阅读