自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

无常的专栏

人面不知何处去,桃花依旧笑春风。

  • 博客(58)
  • 资源 (8)
  • 收藏
  • 关注

原创 Android 编译脚本 envsetup.sh

版本:android-12.0.0_r3目录:build/envsetup.shfunction hmm() {cat <<EOFRun "m help" for help with the build system itself.运行“m help”以获取有关构建系统本身的帮助Invoke ". build/envsetup.sh" from your shell to add the following functions to your environment:..

2022-03-06 17:58:14 5453 1

原创 Linux系列--Vi编辑器

1. 创建及打开vi a.txt2. 切换到插入模式i3. 切换到命令模式esc 键4. 保存并退出:wqw表示写入,q表示退出5. 退出但不保存:q!(!表示强制退出)6. 显示行号set nu7. 取消行号set nonu直接输入数字再按esc键,可直接将光标移至改行行首8. 查找"aaa"字符串,按"n"继续查找/aaa9.查找特定字符串?字符串...

2022-03-06 16:54:58 386

原创 Liunx系列-用户和权限

-rw-r--r-- - -表示文件类型 rw- rw-表示文件所有者对文件的权限 r-- r--表示文件所在组对该文件的权限 r-- r--表示其他组对该文件的权限 r表示可读,用数字4表示 w表示可写,用数字2表示 x表示可执行,用数字1表示 1.修改文件(文件夹)test的权限chomd 777 test 说明: 7=4+2+1,第一个7表示对文件所有者权限进行修改,第二个7表示对所有者所在组的权 限进行修改,第三个..

2022-03-06 16:30:12 3135

原创 Android样式:常用主题属性

1.Colors?attr/colorPrimary 应用程式的主要品牌色彩 ?attr/colorSecondary应用程式的次要品牌色彩,通常是主要品牌色彩的明亮补充。 ?attr/colorOn[Primary, Secondary, Surface etc] 与命名颜色形成对比的颜色。 ?attr/color[Primary, Secondary]Vari...

2020-02-13 18:03:48 2977

原创 使用Dagger2 对第三方依赖库进行初始化,减少Application 代码的冗余

作用:对于在 Application 中进行初始化(如第三方依赖库) 使用 Dagger 进行包装处理,减少Application 代码的冗余。原理 :将每个依赖的初始化算法包装到它自己的类中,向Dagger发信号通知我们要将它们绑定到一个集合中,然后迭代它并告诉每个依赖执行它的初始化。实现步骤:1. 定义一个Initializer 接口,每个依赖初始化包装器(TimberIn...

2019-09-02 16:59:56 428

原创 Dagger2 将实例绑定到组件的新方法(@Component.Factory and @SubComponent.Factory)

在使用Dagger2,我们都遇到了一种情况,希望从外部将依赖项传递给我们的模块,以便于在其他类中注入,最常见的例子是将应用程序Context传递给AppModule。还有其他用例,例如将用户ID传递给用户详细信息屏幕,我们需要用户模块从外部获取用户ID。以前有两种方法可以解决这个问题,但Dagger 2.22引入了另一种方式。尝试分析应用最佳解决方案的如下三种方法。方法一:通过构造函数参...

2019-09-02 14:57:55 1434

原创 Java中算法复习

1. 冒泡排序 /** * 冒泡排序 * * @param array 需要排序的数组 * @param size 数组的长度 * @return 排序后的数组 */ private static int[] bubbleSort(int[] array, int size) { for (int i...

2019-08-30 15:11:47 124

原创 Linux 常用命令

命令 说明 sudo apt-get update 更新软件 sudo apt-get install vim vim编辑器安装 :set nu vim编辑器下设置行号 :sp newfilename vim编辑器下创建并打开一个新文件 Ctrl + W + ↓or↑ vim编辑器下多个文件切换编辑 zebra stripe

2019-08-30 15:10:25 109

原创 Python 中常见面试题

1.GIL的作用?cpython解释器中存在一个GIL(全局解释器锁),他的作用就是保证同一时刻只有一个线程可以执行代码。2.csrf 验证机制?从 cookie中获取一个csrf_token的值,从请求体获取一个csrf_token的值,如果两个值相同,则检验通过,可以进入到视图函数中执行,如果两个值不同,则检验失败,会向前端返回状态码400的错误。3.网络分层?...

2019-08-28 16:58:12 112

原创 Kotlin 基础(二)

1.延迟初始化属性// Kotlin可以对属性设置为延迟初始化lateinit var dept: Department提示: 延迟初始化属性要求:不能是可空类型;只能使用为var声明;lateinit关键字应该放在var之前。2.委托属性Kotlin提供一种委托属性,使用by关键字声明class User { var name: String by Dele...

2019-08-07 23:43:03 148

原创 Android 关于使用 google material 支持库

1.在gradle.properties文件添加android.useAndroidX=trueandroid.enableJetifier=true2.build.gradle文件中添加,注意Android支持库依赖的是 androidx包,否则会报错dependencies { implementation fileTree(dir: 'libs', ...

2019-08-06 23:51:32 14472 1

原创 Android TextView对长文本或复杂文本计算绘制优化

// TextView textView = new TextView(context); // 在UI线程中,从TextView确定布局参数 PrecomputedTextCompat.Params textMetricsParams = TextViewCompat.getTextMetricsParams(textView); ...

2019-08-06 23:45:03 858

原创 查看apk的 minSdkVersion targetSdkVersion 包名

将需要查看的xxx.apk拷贝到Android SDK的目录下的build-tools\29.0.1\ 目录下 ,然后在该目录下 打开终端:输入 :aaptdumpbadgingxxx.apk 回车即可查看或者将输出的信息保存到文件中:输入:aaptdumpbadgingxxx.apk> apkInfo.txt...

2019-07-29 17:29:29 1159

原创 Anroid EditText 不允许输入汉字

1.方式一可以在布局文件中设置EditText属性:android:digits="0123456789abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"2.方式二通过代码设置监听// 不允许输入汉字mEditText.setKeyListener(new DigitsKeyListener() { @Overr...

2019-07-21 23:06:33 1147

原创 使用Retrofit2+RxAndroid+Okhttp3 获取服务器数据时,格式不统一处理

通常开发情况下,后台一般会给出约定好的格式:{ "code": 200, "msg": "成功", "data": {}}但是,有些后台开发者,根本不管前台开发方便与否,自成一体的风格,不按约定成俗的格式规范,返回的格式不统一,data可能是空数组,空JSON ,字符串等,如果不做处理,会出现JSON解析时异常(com.google.gson.JsonS...

2019-07-14 17:37:59 922

原创 ConstraintLayout + CardView + Space + Guideline 使用

<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk...

2019-06-01 11:27:41 2023 1

原创 Android远程监控屏幕状态---mimicap编译及使用

minicap是一个可以远程获取android屏幕画面的开源库,它在低版本的android系统上采用截屏的方式获取画面,在4.2以上的android系统上采用创建VirtualDisplay的方式来获取画面、性能大大提高.https://github.com/openstf/minicap1. 通过git 克隆minicap 项目 C:\>git clone https://...

2019-05-29 10:00:24 2740

原创 Android项目中管理Gradle依赖项

模块化是应用程序开发中的一种技术,它允许我们将功能分离到独立的模块中。模块化应用程序为每个模块都有许多build.gradle文件。因此,我们需要管理其中的依赖项。目标是使依赖声明更加整洁和富有表现力。此外,简化库的维护。我们将依赖于一个名为buildSrc的特殊模块。按照以下步骤操作:1.使用Kotlin DSL作为构建脚本,创建一个新的Android Studio项目。2. 在项...

2019-05-22 10:38:22 554

原创 Android 第三方库常用混淆

ButterKnifeimplementation 'com.jakewharton:butterknife:9.0.0'annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0'# ------------ButterKnife--------------------------------------# R...

2019-05-20 09:46:22 3452

原创 RecyclerView 性能优化一 Prefetch(预取)

如果您使用RecyclerView提供的默认布局管理器,您将自动获得此优化。但是,如果您使用的是嵌套的RecyclerViews,或者您编写了自己的布局管理器,则需要更改代码才能利用此功能。对于嵌套的RecyclerViews,在内部LayoutManagers上调用LinearLayoutManager的新setInitialItemPrefetchCount()方法(在v25.1中可用)以...

2019-05-17 13:59:06 3800

原创 TableLayout中stretchColumns和shrinkColumns使用

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_paren...

2019-05-16 23:23:13 513

原创 Android 常见异常及处理

错误一:Fatal signal 11 (SIGSEGV) at 0x0000000c (code=1), thread 15888解决:关闭硬件加速,在Android清单应用程序中添加:android:hardwareAccelerated="false"错误二:Error: Invoke-customs are only supported starting with Andr...

2019-05-16 23:04:44 691

原创 Android 中网络请求接口测试用例编写步骤

1.在应用的test目录(app/src/test/)下新建 resources/api-response目录,然后将各个接口的json文件放入在该目录文件下 eg: app/src/test/resources/api-response/popular-movies.json2.添加测试依赖库testImplementation 'junit:junit:4.12'a...

2019-05-16 17:32:41 960

原创 Android应用程序中实现Dagger2的7个基本步骤

第1步:向应用build.gradle文件添加必要的依赖项(Dagger2)dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'c...

2019-05-16 16:05:34 295

原创 Android 自定义电影标签

public class TagView extends RelativeLayout { private int mWidth; private int lineMargin; private int tagMargin; private int textPaddingLeft; private int textPaddingRight; ...

2019-05-15 17:00:02 324

原创 Android 圆环进度条绘制

实现一个自定义圆环进度条public class CircularProgressBar extends View { // Properties private float progress = 0; private float strokeWidth = getResources().getDimension(R.dimen.default_stroke_wid...

2019-05-15 16:33:25 406

原创 Android中LiveData+Room+Paging简单实现步骤

1.添加依赖库 //for lifecycle and LiveData and ViewModel implementation "android.arch.lifecycle:runtime:$archRuntimeVersion" implementation "android.arch.lifecycle:extensions:$archExtensionVe...

2019-05-14 12:00:14 3477 4

原创 从一个圆角矩形平滑过渡到圆形View

public class Rectangle2CircleView extends View { private static final String PROPERTY_RADIUS = "property_radius"; private static final String PROPERTY_ROTATE = "property_rotate"; pri...

2019-05-13 14:21:49 1541

原创 Linux系统下mongod配置文件

mongod.conf配置文件# mongod.conf# for documentation of all options, see:# http://docs.mongodb.org/manual/reference/configuration-options/# Where and how to store data.storage: dbPath: /var/...

2019-05-13 14:02:27 1345

原创 Android中监听系统时间改变及开机广播后通过AlarmManager进行通知

1.当时间发生改变时,进行广播通知public class TimeChangedReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if ("android.intent.action.TIME_SE...

2019-05-02 00:14:16 5167

原创 Android Studio项目中使用 AndroidX支持库的相关配置说明

1.在项目的 gradle.properties文件中配置如下:# 启用Androidx生成支持的标志android.useAndroidX=true# 启用Maven库转换的标志android.enableJetifier=true说明:android.useAndroidX=true表示将使用androidx包下相关的类,在导入时注意导入androidx包下相关...

2019-05-01 23:53:41 15794

原创 Android中简单计时器类Chronometer

1.布局文件.<Chronometer android:id="@+id/chronometer" android:layout_width="wrap_content" android:layout_height="wrap_content" />2.使用. Chronometer chronometer = findVi...

2019-05-01 23:50:12 289

原创 Android 沉浸式模式及主题透明

1.设置主题 <style name="NoActionBar" parent="Theme.AppCompat.Light.NoActionBar"> <!-- 避免启动白屏,打开的一瞬间 activity 透明 --> <item name="android:windowBackground">@android:colo...

2019-05-01 23:31:56 643

原创 Android中CircularProgressDrawable类的方法介绍及使用

1.添加依赖implementation 'com.android.support:support-v4:28.0.0'2.CircularProgressDrawable中方法及说明private void circularProgress(Context context) { ImageView imageView = findViewById(R.id....

2019-05-01 23:07:07 2135

原创 Android 字体排版

1.字体指标顶部(Top):给定文本大小的字体中最高字形的基线上方的最大距离。上升(Ascent):单个间隔文本的基线上方的建议距离。平均线(Mean line):没有提升的字母的顶行。基线(Baseline):这是每个字母所在的行。下降(Descent):单个间隔文本的建议距离低于基线。底部(Bottom):给定文本大小的字体中最低字形的基线以下的最大距离。前导...

2019-05-01 22:46:38 523

原创 Kotlin 基础(一)

1.标识符特定标识符field和it。在Kotlin语言中有两个由编译器定义的特定标识符,它们只能在特定场景中使用有特定的作用,而在其他的场景中可以做标识符使用。提示:field标识符用于属性访问器中,访问属性支持字段;it标识符用于Lambda表达式中,在省略参数列表时作为隐式参数,即不需要声明就可以使用的参数。 // 创建一个字符串数组 var arrays = ...

2019-04-21 22:51:41 272

原创 Android 中Bitmap 进行绘制编辑

private void drawBitmap(Bitmap bitmap) { Bitmap newBmp = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), bitmap.getConfig()); Canvas canvas = new Canvas(newBmp); ...

2019-04-18 22:49:47 2113

原创 Android 中设置字体

class Typefaces { private static final String TAG = "Typefaces"; private static final Hashtable<String, Typeface> CACHE = new Hashtable<>(); private Typefaces() { } ...

2019-04-18 22:41:36 121

原创 Java 中冒泡排序和选择排序

1.冒泡排序 /** * 冒泡排序 * * @param array 需要排序的数组 * @param size 数组的长度 * @return 排序后的数组 */ private static int[] bubbleSort(int[] array, int size) { for (int i...

2019-04-14 15:04:20 307

原创 Android 8.0(Oreo) 启动页面

1.为什么需要启动画面?Android应用程序首次启动应用程序时需要一些时间来加载(冷启动)。这是应用程序需要自行配置的时间。在此延迟期间,布局不会加载,因此会弹出一个空白屏幕,直到应用程序完全加载,然后继续其正常行为。所以为了提升用户的体验,需要显示一个启动画面,我们不会使用布局文件,而是将启动画面的背景指定为Activity的主题背景。2.怎么使用?2.1 创建一个Splash...

2019-04-07 18:46:42 1225

daggermultibindings.zip

对于在 Application 中进行初始化(如第三方依赖库) 使用 Dagger 进行包装处理,减少Application 代码的冗余。

2019-09-02

Linux 服务器构建- Samba

Linux 服务器构建- Samba Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,能够完成在windows、mac操作系统下访问linux系统下的共享文件.

2019-04-27

Python数据结构与算法

对python中数据结构和算法进行详细讲解及代码实例,分析每一种算法的实现原理及 代码编写

2019-02-12

数据分析课程文档

数据分析(环境的搭建和配置,数据分析, matplotlib,numpy, pandas)

2018-11-14

shell课件编程知识

运维第一工具-shell编程,包含shell基本语法及常用shell 命令。

2018-11-12

nginx 安装及配置文档

nginx 安装及配置文档包含 下载安装及相关配置步(反向代理,负载均衡)骤说明。

2018-11-12

Flask开发笔记总结

开发中Flask 相关知识点记录和总结,以及开发中遇到的问题及相关解决方法。

2018-11-11

Flask开发文档

1.Flask 安装环境 2.视图 3.模板 4.数据库 5.部署及测试

2018-11-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除