4 Water_Marking

尚未进行身份认证

Just Do IT。

等级
TA的排名 14w+

Android SDK 开发 - sdk 中依赖第三方jar 包的情况

SDK 开发的时候遇到了这么一种场景: 视频通话 SDK 的核心 jar 包由第三方公司提供,我们团队在这个 jar 包的基础上包装一层,我们团队会把包装后的 SDK 提供给其他公司的第三方开发人员,供他们开发视频通话功能。在这个场景下,前提: 假设视频通话核心 jar 包名字是 a.jar ; 我们的工程中有三个库模块:分别是库模块 b 、库模块 ...

2020-01-14 15:39:56

Android 项目实战之 - 快速搭建项目框架 (四) MVVM 框架模型

搭建MVVM 框架模型前,得知道几个Google 的原生组件: DataBinding 、ViewModel 和 LiveData 分别是什么,解决了什么问题,怎么使用这几个组件。 首先关于DataBinding 的使用,根据 慕课网 和 博客 DataBinding使用全面详解 ,总结了这个样例: 然后关于组件 ViewModel 和 ...

2019-12-18 10:57:38

Android 项目实战之 - 快速搭建项目框架 (三) MVP 框架模型

MVP 框架模型以上是 MVP 框架模型。

2019-12-18 10:56:58

Android 项目实战之 - 快速搭建项目框架 (二) MVC 框架模型

MVC 框架模型以上是MVC 框架模型。

2019-12-18 10:51:34

Android 项目实战之 - 快速搭建项目框架 (一) 概述

一般我们很少自己去搭建项目(包括普通应用 和 SDK)基础框架,都是接过项目之后去维护已有的工程代码 - 可以正常跑起来并根据新需求添加新的功能。但是如果一旦新开启了一个项目,那基础的框架之类的还是需要我们自己去搭建实现。现在在这里基于实践,把遇到的好的基础框架记录下来。【1】基于实战,在搭建 APP 框架的时候,通用架构框架:(1)MVC 框架模型。(MVC)(2)M...

2019-12-16 14:44:31

Android 8.1.0 系统应用开发之 - 修改 Settings 中 存储空间相关

Android 8.1.0 原生系统,Settings 中,点击 “存储” 查看内存使用时,发现内存使用情况都是使用 GB 做的单位,但是如果某一类型文件实在是太小了,比如照片和视频中只有100KB 左右大小,如果还是使用 GB 作为计算格式的话,那最终显示出来的就只是0GB 了,这样不方便用户对自己内存空间有详细的了解,如下:修改前所以,我们优化一下当前界...

2019-11-05 17:15:14

Android 开发实用工具类:删除指定目录下指定格式文件(计算指定目录下指定格式文件总大小)

开发的时候我们可能会遇到一些需求:遍历删除指定目录下的指定格式的文件。 这里提供一个工具类,其对外暴露三个参数,参数一:要删除的文件目录的路径,参数二:区分是前缀还是后缀,参数三:具体前缀或者后缀字符规则。删除的时候,先枚举出路径目录下的所有文件,枚举的同时实现一个FilenameFilter接口的类,可以自定义规则,比说前缀、后缀或者其他规则,枚举的同时将我们的...

2019-10-24 18:22:44

Android 8.1.0 源码修改之 - 屏蔽 Camera2 应用中的录像按钮

这个需求说起来挺奇葩,为什么这么讲,因为Camera2本来就是用来拍照录像,就只因为当前系统预置应用 Camera2 在录像的时候,很容易出现各种奇怪问题,还不好定位并解决,然后产品说:把Camera2 里面的录像功能给屏蔽了吧。胳膊拧不过大腿,改吧。 需要修改folder\packages\apps\Camera2\src\com\android\came...

2019-10-18 17:38:25

Android 任意位置(指空间上的位置)弹出 Toast

今天在学习同事写的代码的时候,发现一个很有意思的东西,可以在Android 设备的任意位置(指的是空间上的任意位置)弹出来 Toast。 首先在layout 目录下新建一个布局文件 custom_toast.xml,里面按照下面写:<?xml version="1.0" encoding="utf-8"?><LinearLayout ...

2019-10-16 18:38:28

Android 中检查是否被授予相应的权限

1.声明所需要的权限:private final static int PERMISSIONS_OK = 10001; private static String[] PERMISSIONS_STORAGE = { "android.permission.READ_EXTERNAL_STORAGE", "android.permissi...

2019-10-16 17:54:40

Android 8.1.0 之在 Settings 中隐藏指定的应用信息

之所以会有这个需求,是因为之前做过在 Launcher3 中隐藏应用图标。之前虽然在 Launcher 中隐藏了应用图标,但是依次点击"设置 - 应用和通知 - 查看所有的应用" ,还是可以看到这些被隐藏掉应用图标的应用信息,所以我们还得在这里做一下过滤:在显示所有应用的时候,按照应用的包名,把需要隐藏的应用给过滤掉。主要是修改下面:apps/Settings/re...

2019-10-16 16:48:26

Android 8.1.0 Service 中怎么弹出 Activity

场景:在Service 中开启线程下载升级包,当下载完系统升级包,弹出新的 Activity 提示用户进行后续操作。像在Activity 中打开Activity 中一样,不需要额外操作。---最后,这是我写的简单 demo,参考一下。//地址(等有空了传上去)...

2019-10-15 18:34:09

Android 8.1.0 判断系统当前顶部 Activity 是不是 目标 Activity

当前是基于Android 8.1.0,在不同的版本,方法有可能表现不一样。 没有足够测试机,没有进行适配。 private boolean ifTargetActivityIsTop(Context context, String targetAppPackageName, String targetAppActivityName) { ...

2019-10-15 18:16:11

Android 8.1.0 Service 中怎么弹出 Dialog

场景:在Service 中开启线程下载升级包,当下载完系统升级包,弹出一个Dialog 提示用户。 注意,Android 系统版本不一样,可能会有不一样的表现。当前是基于 Android 8.1.0 的 Service 中弹 Dialog。 首先,就是要在功能清单列表中声明权限,以下两个都必须声明: <uses-permi...

2019-10-15 17:03:20

Android 8.1.0 Service 中怎么弹出 Toast

本来想在一个文章里面记录一下在 Service 中弹出 Toast、Dialog、Activity (基于Android 8.1.0),最后还是决定分开单独写一下。因为看起来觉得这只是一点点的知识点,现在你如果在网络上搜索怎么在 Service 中弹出 Toast、Dialog、Activity ,能找到的博客一般都是有问题的。 首先这篇文章是根据我的理解,记...

2019-10-15 11:16:17

Android 8.1.0 获取当前界面中最上层的 Activity

/** * Check if target Activity is on top. * @param context * @param targetAppPackageName * @param targetAppActivityName * @return */ private boolean isTargetActi...

2019-10-14 19:27:36

Android 自定义View 之 - 自定义按钮(仿 Ios 按钮)

gif 图太大了,贴不上来,贴几个静态图,效果:github :https://github.com/1136066873/SwitchButton

2019-09-23 23:47:45

Android 正则表达式验证手机号(限中国大陆三大运营商,更新日期截至 2019.9.12)

更新于 - 2019.9.12 直入正题,经过我在工信部和三大运营商官网查找,得到下面正则验证方式:public class RegexCheck { /** * 截止 12/9/19,三大网络运营商在大陆号段分配: * 移动:134,135,136,137,138,139,144,147,148,150,151,152,...

2019-09-12 18:43:33

Android 强制GC?

今天看 E:\folder\vendor\rockchip\xxxxx\apps\SystemUI\src\com\android\systemui\recents\RecentsActivity.java,发现: // Force a gc to attempt to clean up bitmap references more quickly (b/38258699) ...

2019-08-22 19:21:32

Android平台Camera开发实践指南

参考:https://juejin.im/post/5a33a5106fb9a04525782db5

2019-08-17 15:41:35

查看更多

勋章 我的勋章
  • 新人勋章
    新人勋章
    用户发布第一条Blink获赞超过3个即可获得
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。