问题
- 我们使用WebView播放音乐或视频(比如油管视频)
- 前台播放一直很正常,但是比较费电
- 进入后台后就会暂停播放
- 所以需求就是我们想要App在后台时同样播放音视频
在有些情况下,我们需要切换DNS来实现一些处理。但是频繁的进入设置-网络 的确很麻烦,于是再次朝着脚本的思路想了想,发现还是可以实现的。下面的脚本就能便捷的实现切换WIFI的DNS并验证。
Checkstyle是一款很棒的工具,用来发现很多编码风格的问题。还不了解的同学可以移步这里Android代码规范利器: Checkstyle查看。
但是在使用Checkstyle时,却出现了一些问题,就是file元素的name不是我们当前执行checkstyle任务的路径。
一般涉及到标记位相关的操作,我们都会使用位运算,无论你是从Java转到Kotlin,还是全新使用Kotlin,进行位运算处理Flag都会感到疑问,该怎么处理呢。
有这样一个场景,在一台服务器上,我们想要启动一个简单的网络文件服务器,用来提供给内网的用户下载。
这里,我们使用ruby启动一个服务
ruby -run -ehttpd /home/webbuild/easy_file_server/ -p8000
启动文件服务器ruby -run -ehttpd /home/webbuild/easy_file_server/ -p8000 &
将该进程设置为后台执行nohup ruby -run -ehttpd /home/webbuild/easy_file_server/ -p8000 &
如上面设置一番,基本上可以工作了。
本文系 RxHttp作者不怕天黑 向本博客投稿,并授权在本站发表。
RxHttp在今年4月份一经推出,就受到了广大Android 开发者的喜爱,截止本文发表在github上已有1100+star,为此,我自己也建个RxHttp&RxLife 的群(群号:378530627)目前群里也有将近120号人,里面有不少小伙伴提了很多有价值的创意,才使得RxHttp一直坚持走到了现在,在此,感谢大家的喜爱。
本文是既 JvmName 注解在 Kotlin 中的应用和JvmMultifile 注解在 Kotlin 中的应用的第三篇关于 Kotlin的注解文章。
介绍的内容比较简单,主要是包含了JvmField和JvmStatic两个。
一直是终端重度依赖,现在发现了一个终端翻译的工具,更加爱不释手。本文介绍一下一个终端可以实现的工具,trans。
Command-line translator using Google Translate, Bing Translator, Yandex.Translate, etc
一个终端翻译工具,利用Google翻译,Bing翻译,Yandex翻译等。
在开发的过程中,我们通常会遇到这样的情况,就是我们需要根据图片的url地址查看其对应的内容,通常的做法就是把这个图片链接贴到浏览器。不过一直好奇,能不能再终端中直接展示,于是做了一些搜索,发现了对应的实现方式。
注意:此方式只适用于Mac,其他的Linux 发行版 需要自行按照如下的思路查找对应的工具。
最近在帮忙定位一个问题,涉及到某个应用自动启动了,为了确定是谁调用的,使用如下的日志进行查看(注:为了简单考虑,下面的启动者为launcher)
1 2 3 4 |
|
在编程调试和定位问题的时候,日志是一个最常用的工具。比如输出一些信息,确定执行轨迹。今天我们这里简单聊一聊打印日志的一些分析。
通常,我们进行日志输出的时候都会限定在debug包下执行,对于非debug包,我们就不输出日志。那么如果是非debug,不同的日志输出方式可能存在一定的性能问题,本文将通过几个版本来对比着方面的差异。
encodeURI和encodeURIComponent 是两个很相近的方法,用来encode URI。但是他们之间也存在着细微的差异,如果不能很好的理解这个差异,可能会导致一些不必要的麻烦。本文将尝试用最简单的形式展示这个差异。
场景描述
之前遇到过一次赛门铁克很久的证书被Chrome弃用的问题,涉及到了查看证书。当然第一个大家会想到的是在浏览器中查看,但是总是感觉不够极客。后来摸索找到了终端查看网站证书的方法
WebView,是安卓中很重要的一个组件,我们的应用中集成WebView后,可能会遇到各种各样的问题,这里简单介绍一些Android WebView 诊断与排查问题的方法,希望对于大家有这方面的问题的朋友有所帮助。
很多时候,我们需要进行多个文件的查找并替换,虽然IDE有这样的可视化功能,但是偏爱终端的人还是想要尝试用脚本实现一把。如下是一个简单的脚本来实现多文件的查找替换处理。
OkHttp是可以说是Android开发中,每个项目都必需依赖的网络库,我们可以很便捷高效的处理网络请求,极大的提升了编码效率。但是有时候,我们使用OkHttp也会遇到这样的问题
1 2 3 4 5 6 7 8 9 10 11 |
|
很多时候,我们需要根据包名来查找一些依赖所在的jar包,比如我们想要查找com.alipay
这个包及其文件所在的jar包。
最笨拙的办法可能是这样
其实,大可不必,我们需要简单实用如下的脚本就能解决这个问题。
在日常的开发过程中,我们利用grep
可以方便快捷的查找感兴趣的日志内容,极大地提升了开发和排错效率。但是有时候,我们也会遇到一些问题,比如。
接触过Kotlin之后,我们会利用其扩展方法特性创建很多便捷的方法来实现更好更快的编码。比如我们对于RxJava进行一些简单的扩展方法实现。
JvmName注解是Kotlin提供的一个可以变更编译器输出的注解,这里简单的介绍一下其使用规则。
1 2 3 4 5 6 7 8 |
|
相比 Java,使用 Kotlin 编程的时候,我们和kotlin编译器的交互行为会更多一些,比如我们可以通过inline
来控制字节码的输出结果,使用注解也可以修改编译输出的class文件。
这里介绍一个和kotlin编译器更加好玩的特性,contract。可以理解成中文里面的契约。
应用Kotlin之后,涉及到注解的注解处理器依赖也会由annotationProcessor
替换成kapt
,和最初应用Kotlin一样,总会让人一种感觉,一番应用Kotlin和Kapt之后,编译耗时更长了,不过好在Kotlin和Google 在这一方面做了很多的优化和改进,本文将简单介绍一些配置,来实现项目编译关于kapt这方面的加速。
在很早的时候,小黑屋就介绍过如何研究Kotlin,其中涉及到了查看字节码和反编译成Java代码的方式,相信很多人研究过的人,都会或多或少遇到过Intrinsics.checkParameterIsNotNull
这样或者类似的代码。
这之前的文章中,我们介绍过如果通过Kotlin编译器参数实现将所有的warnings按照errors对待,主要的实现方法是这样
1 2 3 4 |
|