自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Android菜鸟的专栏

我是一个Android菜鸟,好希望有人能写一些菜鸟能轻松看得懂的教程给我学习学习!我渴望学习!

  • 博客(14)
  • 收藏
  • 关注

原创 广州图书馆

写篇博客记录一下广州图书馆吧!今年的某一天第一次去广州图书馆,里面是真的宽广、干净又安静,图书很多,我想要的书几乎都有,可以说,你平时在广州购书中心想要买的书,在图书馆绝大多数都有,所以,为什么要花钱去买呢!而且图书馆里的书很多都是很新的,我以前天真的以为图书馆的书都是很旧的,我错了!广州图书馆里面环境真的很好,坐位超级多的,生怕你没地方做似的,可能是疫情期间,进馆需要预约,所以我看到坐位那么多,还没几个人做,不知道没疫情时没人数限制那时是不是坐位暴满的场面,就恨自己以前为什么不早点去图书馆逛逛,这样就

2021-02-03 15:47:16 840 4

原创 Camera预览旋转设置

实现效果如下:点击4个按钮分别实现4个角度的旋转。目标版本设置为21,这样不需要动态申请权限。在清单文件申请CAMERA权限布局<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" andro

2021-02-25 14:34:15 1764

原创 AES加密

Java版本import javax.crypto.Cipher;import javax.crypto.spec.SecretKeySpec;import java.util.Base64;public class Aes { public static String encrypt(String rawData) { try { return Base64.getEncoder().encodeToString(getCipher(Cipher

2021-02-24 17:03:27 398

原创 Kotlin编程技巧

假设有一个集合,List或Map,我只需要取集合里面的第1个元素,普通代码实现如下: val list = mutableListOf("一", "二", "三") val map = mutableMapOf("一" to "1", "二" to "2") val result01 = if (list.isNotEmpty()) list[0] else "" val result02 = if (map.isNotEmpty()) {

2021-02-23 18:51:11 599

原创 Linux修改Hosts文件

sudo vim /etc/hosts

2021-02-20 09:27:09 703

原创 Linux下安装Tomcat

首先要安装好JDK,安装教程:https://blog.csdn.net/android_cai_niao/article/details/113858663安装Tomcat,参照JDK的安装即可。环境变量设置#javaexport JAVA_HOME=/usr/local/jdk1.8.0_261export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PAT..

2021-02-19 17:12:20 170 1

原创 Linux安装Openfire、Spark

首先要安装好JDK,安装教程:https://blog.csdn.net/android_cai_niao/article/details/113858663安装Spark,参照JDK的安装即可。启动Spark假设Spark安装在:/usr/local/Spark目录下,则cmd先进入到该目录下:cd /usr/local/Spark然后有以下几种方式可以启动Spark,输入命令:Spark.Spark./Sparkbash Sparksh Spark快捷方式:..

2021-02-19 15:23:16 510

原创 Linux安装JDK

1、设置虚拟机网络VM VirtualBox中安装好Linux系统,如Ubuntu,网络设置选桥接网卡,如下:如果“界面名称”处显示为“未指定”,下拉时没有显示可用的网卡,则需要先安装网络桥接,安装步骤如下:浏览VirtualBox安装的目录,找到VirtualBox\drivers\network\netlwf\VBoxNetLwf.inf安装完成后,这里会多出一个东西:然后,重启VirtualBox,网络设置中就可以选择桥接网卡了,如下:启动虚拟机,查看虚拟机ip,输入ifcon

2021-02-19 11:03:11 727

原创 轻轻松松理解Base64

前言在开发中,Base64编码会经常使用到,平时也就是使用,没有去真正了解过Base64的原理,今天开发的时候,使用key、value的方式保存Base64编码之后的字符串,文件中的形式为key=value,但是Base64字符串本身就有等于号(=),所以,我担心这会不会出问题啊?我使用的是Properties类来保存key/value的,我发现Properties会自动对保存的字符串中出现的等于号做转义,示例如下:weOcndflNzFLAyseO/JcBA\=\==bjWJ6o9guMCPxAjg

2021-02-09 17:28:22 2882

原创 Android屏幕密度的深刻理解

Android中有一个类:DisplayMetrics,官方文档在此:https://developer.android.google.cn/reference/android/util/DisplayMetrics?hl=enDisplayMetrics类描述有关显示器的一般信息的结构,例如其大小,密度和字体缩放。DisplayMetrics实例对象的获取方式:context.getResources().getDisplayMetrics();属性并不多,对于屏幕密度官方描述不够详细,所以这里记录

2021-02-04 19:25:39 8607 1

原创 AndroidManifest.xml中的package和build.gradle中的applicationId的区别

package用于指定自动生成的文件的包名,而applicationId用于指定应用的进程名称,即应用的唯一标识符,package可以和applicationId不一样,但一般情况都是一样的。当我们要改变一个应用的进程名称时,直接修改applicationId即可,其他任何都方都不需要改动。而如果你改package的话,就需要小心了,因为很有可能会出问题,示例如下:1、我们创建一个全新的Android项目,创建时指定包名为:a.a.aaa,然后再创建一个工具类,如下:import a.a.aaa.R

2021-02-02 21:09:45 5231 1

原创 Java中的常量编译

今天在查看自己之前写的代码时,突然发现有点不对劲,代码如下:if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) { // TODO}这里只复制了关键代码,我的问题是:Build.VERSION_CODES.Q这个常量代表Android的版本Android Q,也就是Android 10(API level 29),这个变量是在API 29才出来的呀,为什么我的程序跑到低于API 29的手机上时并没有挂异常呢?官方文档声明如下:没错啊

2021-02-02 18:55:56 694

原创 Android App调试类型设置

在Android项目中可以写JNI,也就是可以写C的代码,C里面的代码也可以使用断点调试,AndroidStudio支持4种调试模式:自动检测仅Java(包含Kotlin)仅Native(即C)、Java + Native当我们点击调试运行时,默认使用的是自动检测,即如果没有C代表,则使用仅Java的模式,如果有C代码,则使用Java + Native的模式,即使我们没有在C中打断点,只在Java代码中打了断点,它也会使用双模式来运行调试,今天我就发现我调式模式运行不起来,很是奇怪,后来稳约记

2021-02-02 17:36:01 1814

原创 shape图形中的stroke和solid中的细节

通过shape可以创建一个图形,比如圆形、四方形,定义一个圆形如下:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> <stroke android:color="@color/transparent_white" android:width="20dp"/

2021-02-02 11:55:26 4007 2

sokit-1.3-win32-chs(中文版)

sokit是一个开源项目,是一个TCP / UDP 测试工具,用来接收,发送,转发TCP或UDP数据包。 项目地址: http://code.google.com/p/sokit/、https://github.com/sinpolib/sokit。

2023-02-21

空空如也

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

TA关注的人

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