Android Network security configuration
The Network Security Configuration feature lets apps customize their network security settings in a safe, declarative configuration file without modifying app code. These settings can be configured for specific domains and for a specific ap ...
Android Camera Preview
Android Camera Preview现如今,每一台Android设备基本都有多个摄像头,基本可以分为两类,前置摄像头与后置摄像头。在API中,每一个摄像头硬件,称之为一个 CameraDevice。我们开发者关心的是,每一个 CameraDevice 同时会输出多个数据流。 此图来源于 Google I/O 2018, 从图中,可以看到,摄像头获取到的数据流会转换不同的数据流来交由不同的逻辑模块进行处理。为什么会这样子做呢?在不用的场景中,数据可能会有不同 ...
gradlew 源码分析
gradlew 源码分析使用Android Studio 新建一个项目,会默认使用gradle编译项目。在编译的时候可以使用:gradle assembleRelease, 当然,如果没有安装gradle的时候,也可以使用项目文件夹下面的gradlew进行编译。 可以看到gradlew是一个shell脚本,他读取了系统的一些环境变量,并运行了gradle/wrapper/gradle-wrapper.jar文件的org.gradle.wrapper.Gra ...
Proguard 翻译
[译] ProGuard 选项 注:只针对 Android 平台翻译了 ProGuard 选项的相关用法,更多信息请查看官方原文。 Input/Output Options@filename简短版 -include filename -include filename读取指定文件的配置参数 -basedirectory directoryname指定当前配置文件中所有相对文件路径的基础目录 -injars class_path指定需要处理的 jar/aa ...
Ubuntu 安装 Tensorflow
首先贴一下官方GET STARTED地址: 传送门 安装步骤: 安装python sudo apt-get install python-pip python-dev 按电脑配置环境变量 // Ubuntu/Linux 64-bit, CPU only, Python 2.7 export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.11.0rc0-cp ...
Android 动态修改菜单
在一个Android创建菜单menu时,需要重写Activity的onCreateOptionsMenu(Menu menu)方法,这个方法只在第一次创建的时候调用一次,所以如果之后想对menu进行动态的修改,那么就不要再对onCreateOptionsMenu做什么手脚了。 动态修改菜单就要用到onPrepareOptionsMenu(Menu menu)方法了。onPrepareOptionsMenu与onCreateOptionsMenu不同的是,他在每次按下menu硬 ...
Ubuntu中安装Ruby的一些注意事项
使用RVM安装Ruby安装RVM curl -L get.rvm.io | bash -s stable //若提示找不到公钥,执行下边语句 gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 //然后,重新执行,安装完rvm之后,需配置终端,以便下次打开终端能直接只用rvm。更改终端配置方法:参见https://rvm.io/integration ...
Shell脚本8种字符串截取方法
假设有变量: var=http://blog.knero.cn/test.html #号截取,删除左边字符,保留右边字符示例 var=http://blog.knero.cn/test.html sub=${var#*/} echo $sub 输出结果 /blog.knero.cn/test.html 其中var是变量名,**#号是运算符,/* 表示从左边开始删除第一个**/号及左边的所有字符即删除http:/**结果是 ...