为了提高文件的规整程度并让用户可以更好地控制他们的文件,Android 10 为应用引入了名为 "分区存储" 的新范式。分区存储改变了应用在外置存储中保存和访问文件的方式,为了帮您迁移应用并支持分区存储,我们概括了常见用例的最佳实践并分享给大家。在我们过去的文章推送里已经向您介绍了处理媒体类文件的常见用例和最佳实践,本篇将继续带您了解处理非媒体文件的用例和最佳实践,供您参考。
2024年10月29日
为了提高文件的规整程度并让用户可以更好地控制他们的文件,Android 10 为应用引入了名为 "分区存储" 的新范式。分区存储改变了应用在外置存储中保存和访问文件的方式,为了帮您迁移应用并支持分区存储,我们概括了常见用例的最佳实践并分享给大家。在我们过去的文章推送里已经向您介绍了处理媒体类文件的常见用例和最佳实践,本篇将继续带您了解处理非媒体文件的用例和最佳实践,供您参考。
2024年10月29日
在公司做了两年多的 SDK 开发,结合自己的所知所学,分享一些 SDK 开发的经验。
相信做 Android 开发的朋友,一定使用过第三方的 SDK,比如推送 SDK、分享 SDK 等。SDK 的全称是 Software Development Kit,翻译为“软件开发工具包”。SDK 通常是为辅助开发某类软件而编写的特定软件包、框架集合等。
2024年10月29日
1、粒子系统 Particleground
Particleground 粒子系统是一个jQuery插件,时髦的背景。 Particleground包括一个可选的视差效应控制鼠标在桌面设备和移动设备上的陀螺仪。它适用于任何浏览器支持HTML5画布。
主页:https://github.com/jnicol/particleground
2、过滤筛选 MixItUp
2024年10月29日
请点赞,你的点赞对我意义重大,满足下我的虚荣心。
Hi,我是小彭。本文已收录到 GitHub · Android-NoteBook 中。这里有 Android 进阶成长知识体系,有志同道合的朋友,欢迎跟着我一起成长。(联系方式在 GitHub)
Gradle 作为官方主推的构建系统,目前已经深度应用于 Android 的多个技术体系中,例如组件化开发、产物构建、单元测试等。可见,要成为 Android 高级工程师 Gradle 是必须掌握的知识点。在这篇文章里,我将带你由浅入深建立 Gradle 的基本概念,涉及 Gradle 生命周期、Project、Task 等知识点,这些内容也是 Gradle 在面试八股文中容易遇见的问题。
2024年10月29日
随着项目不断的迭代 , 代码越来越臃肿 , 人员也越来越多 , 同时在一个 module 中共同开发 , 首先来说维护成本极高 , 不易管理扩展 , 现在就有了模块化的思想 , 把模块之间共用的代码(网络框架, 图片框架, 异步框架, 日志框架, 显示小部件 View 等),不同的功能。抽取成单独的 core module 和多个功能 module 。这样每个人负责自己的 module 开发,便于管理,协同开发。
当 module 越来越多,这又出现了一个问题,编译时间很长,为了解决这个问题,最后把每个 module 做成可配置,支持单独调试,大大的提升了开发效率。
2024年10月29日
在我们使用的各种工具中,为了提升工作效率,总会使用到各种各样的缓存技术,比如说docker中的layer就是缓存了之前构建的image。在gradle中这种以task组合起来的构建工具也不例外,在gradle中,这种技术叫做增量构建。
2024年10月29日
Path 用来表示文件路径 ,Paths 是工具类,用来获取 Path 实例,java NIO 的Files可以完全替代以前的文件操作,Files 提供了遍历目录文件方法walkFileTree
Path source = Paths.get("1.txt"); // 相对路径 使用 user.dir 环境变量来定位 1.txt
Path source = Paths.get("d:\\1.txt"); // 绝对路径 代表了 d:\1.txt
Path source = Paths.get("d:/1.txt"); // 绝对路径 同样代表了 d:\1.txt
Path projects = Paths.get("d:\\data", "projects"); // 代表了 d:\data\projects
//Files
//检查文件是否存在
Path path = Paths.get("helloword/data.txt");
System.out.println(Files.exists(path));
//创建一级目录
Path path = Paths.get("helloword/d1");
Files.createDirectory(path);
//创建多级目录用
Path path = Paths.get("helloword/d1/d2");
Files.createDirectories(path);
//拷贝文件
Path source = Paths.get("helloword/data.txt");
Path target = Paths.get("helloword/target.txt");
Files.copy(source, target);
//如果文件已存在,会抛异常 FileAlreadyExistsException
//如果希望用 source 覆盖掉 target,需要用 StandardCopyOption 来控制
Files.copy(source, target, StandardCopyOption.REPLACE_EXISTING);
2024年10月29日
系统环境:CentOS 6.8 x64
nginx版本:1.8.1
安装工具包
[root@rpmbuild ~]# yum -y install rpm-build rpmdevtools
安装nginx编译所需的依赖包
[root@rpmbuild ~]# yum -y install zlib pcre pcre-devel openssl-devel gcc gcc-c++ make
2024年10月29日
1、gradle的简单介绍
Gradle是可以用于Android开发的新一代的Build System,也是Android Studio默认的build工具。其实Gradle脚本是基于一种JVM语言— Groovy,再加上DSL组成的。由于Groovy是JVM语言,所以可以使用大部分的Java语言库。所谓DSL就是专门针对Android开发的插件,比如标准Gradle之外的一些新的方法(Method)、闭包(Closure)等等。通过我们简单的了解知道Gradle的语法足够简洁和简单,而且可以使用大部分的java包,所以它就当之无愧地成为新一代的Build System。