获得徽章 17
jarsigner -verbose -keystore [您的证书存放路径] -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称]
过滤多条日志:adb logcat | egrep "tag1|tag2"
#每天一个知识点# 线程池的好处是减少线程创建和销毁上所花费的时间及系统资源的开销,解决资源不足的问题。在 Android 开发中同样也会经常使用到线程池。主要利用 Executors工厂类提供的方法:
● newCachedThreadPool: 只有非核心线程,最大线程数非常大,如果线程池中的线程都活动时,有新任务会创建新线程,否则会利用空闲线程,线程空闲时间为60秒,超过60秒会被回收。
适合大量的耗时少的任务。
● newFlxedThreadPool: 只有核心线程,并且数量固定,队列没有限制,如果线程池中的所有线程都活动时,新任务加入队列等待执行,空闲线程不回被释放,还会占用一定的系统资源。
更快的相应外界请求。
● newScheduledThreadPool: 核心线程数固定,非核心线程没有限制,空闲时会直接被回收。
适合执行定时任务及固定周期的重复任务
● newSingleThreadExecutor: 只有一个核心线程,确保所有任务都在同一线程中按顺序完成。
#每天一个知识点# Android 事件分发的顺序:Activity -> ViewGroup -> View。主要涉及到 dispatchTouchEvent() 、onInterceptTouchEvent() 和 onTouchEvent()三种接口来实现。
dispatchTouchEvent 方法分为两部分:子 View 的 dispatchTouchEvent 或 onTouch方法和自身的 onTouchEvent 方法。onInterceptTouchEvent() 方法返回 true,则会将事件拦截掉,就给自身的 onTouchEvent处理。如果返回 false,则继续传递给 child 执行分发流程。onTouchEvent 该方法主要对事件进行处理,若返回 true 表示已经处理了事件,若返回 false 则表示没有对事件进行处理,需要继续传递事件。一般情况下,默认为 false。
#每天一个知识点# Android 中 View 可见性的检查方法:
● View.getVisibility():判断 View 的可见性属性;
● View.isShown():View 是否展示,相当于对 View 所有的父控件都判断可见性属性;
● View.getGlobalVisibleRect:获取 View 的可见范围,返回 true 就是有可见的部分,false 是完全不可见;
● View.getLocalVisibleRect:获取 View 在屏幕可见区域的坐标,相对于自身左上角;
#每天一个知识点# 数字签名、信息加密 是前后端开发都经常需要使用到的技术,常见的加密算法种类有:
不可逆加密:SHA256、SHA384、SHA512以及HMAC-SHA256、HMAC-SHA384、HMAC-SHA512
对称加密算法:AES、3DES
非对称加密算法:RSA
#每天一个知识点# webdriver 类是 python 中提供的用于模拟浏览器行为的类,它提供了很多方法方面对浏览器的操作,以此来模拟真实用户操作。
● browser.current_url 当前网页 url
● browser.get_cookie() 当前网页用到的 cookie 信息
● browser.name 当前浏览器驱动名称
● browser.title 当前网页标题
● browser.page_source 获取当前网页源代码
● browser.current_window_handle 获取当前网页的窗口
● browser.refresh() 刷新当前网页
● browser.quit() 关闭浏览器
● browser.close() 关闭当前网页
● browser.back() 返回上一页
#每天一个知识点# Python 中的模块管理使用 import 关键字进行管理,使用模块,就需要安装和导入模块。模块的两种导入方法:import 语句导入法和 from语句导入法。
● import 语法会导入模块内所有方法,一般如果用包的方法较多可以选择;
● from 模块名 import 函数名:导入某块中某个函数。
#每天一个知识点# Python 中的类型转换方法:字符串类型转换通过 str() 函数可以将一个变量转换为字符串类型。
● int(x) 将x转换为一个整数。
● float(x) 将x转换到一个浮点数。
● complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。
● complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。
● str(x) 将对象 x 转换为字符串。
下一页