Tony的个人专栏

Git撤销最后一次提交

Git可以使用reset重置来撤销提交。方法一撤销最后一次提交git reset HEAD~1 执行后,状态重置为上一次提交,且撤回提交的文件的状态变回unstaged,即文件没有被git跟踪。示例$ git commit -m 'add test.html' [master ade6d7e] add&nbs
阅读更多

Gradle手动安装说明

环境要求Gradle依赖于JDK8或以上版本。在安装之前,先执行java -version检查JDK版本:>java -version java version "11.0.13" 2021-10-19 LTS Java(TM) SE Runtime Environment 18.9 (build 11.0.13+10-LTS-370) Java HotSpot(TM) 64-Bit
阅读更多

Kotlin与Java相互调用

Kotlin的设计过程中就考虑到了与Java的互操作性。在Kotlin中可以直接调用既有的Java代码, 反过来在Java中也可以很流畅地使用Kotlin代码。 Kotlin 调用 Java一、大多数Java代码,可以直接调用:fun () { val list = ArrayList<string>() list.add("hello world") }二、
阅读更多

Flutter移除在Android模拟器上debug banner的方法

Flutter使用Android模拟器时,会有一个debug banner,有以下的方法可以把它移除掉。方法一、在MaterialApp里,把debugShowCheckedModeBanner值设置为false。... return new MaterialApp( title: 'Flutter Test', debugShowCheckedModeBanner: false,
阅读更多

Maven使用本地jar包

Maven导入本地的jar包,有下面两种方法。方法一:使用mvn安装本地jar包到本地仓库mvn install:install-file \ -Dfile=<path-to-file> \ -DgroupId=<group-id> \ -DartifactId=<artifact-id> \ -Dversion=<version&
阅读更多

git bash配置代理解决下载慢的方法

首先找到一个代理服务地址,也可以使用shadowsocks,蓝灯。假设本地使用了蓝灯,http(s)代理地址为:127.0.0.1:52427。Git配置代理>git config http.proxy http://127.0.1:52427 >git config https.proxy https://127.0.1:52427Git设置为全局代理git config --glo
阅读更多

SpringBoot项目集成maven-shade-plugin

因为项目是基于springboot搭建的,按springboot的教程,打包只需要在pom添加以下即可:<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin
阅读更多

使用ANDROID_ID唯一标识Android设备

使用Settings.Secure#ANDROID_ID 会返回每个用户唯一的64位hex字符串,它是在设备首次boot时生成。我们可以使用它来唯一标识Android设备。import android.provider.Settings.Secure; private String android_id = Secure.getStri
阅读更多

SpringBoot 打包跳过单元测试的几种方法

SpringBoot打包时要跳过单元测试有几种方法。方法一:在properties定义<skipTests>,设置其值为true。<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEnc
阅读更多

IntelliJ IDEA新建Groovy项目

目前Groovy稳定版本是Groovy 3.x,开发中的版本是Groovy4。这里以Groovy3作为开发环境。环境要求在使用IntelliJ IDEA新建Groovy项目前,需要确保满足以下的环境要求。1. Groovy3要求安装Java 8+这里不详细说Java 8的安装,检查安装Java安装的版,java -version>java -version java version "14"
阅读更多

IntelliJ IDEA运行Groovy报错:NoClassDefFoundError: Unable to load class org.apache.groovy.jaxb.extensions.JaxbExtensions due to missing dependency javax/xml/bind/JAXBContext

运行环境IntelliJ IDEA Community 2020.1(社区版)JDK 11Groovy3.0.9报错详情Information:Groovyc: While compiling groovy-tutorial:java.lang.NoClassDefFoundError: Unable to load class org.apache.groovy.jaxb.extensions.
阅读更多

Android Studio 3.0 Beta4 Dex错误:com.android.dex.DexException: Multiple dex files define

Android Studio切换到3.0 beta4,构建时报dex错误。错误信息:Error:java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to&nb
阅读更多

Git Warning : LF will be replaced by CRLF

WHAT CR = Carriage Return 即 回车LF = Line Feed 即 换行 Windows 换行使用 CRLF, Linux 和 macOS 则使用 LF 进行换行这是一个历史遗留问题, 没有优劣之分 WHY 在 Windows 下使用 Git 时经常会提示类似的 Warning :The file will have its origin
阅读更多

解决问题flutter run: No connected devices found; please connect a device, or see flutter.io/setup for getting started instructions.

使用flutter搭建了一个简单的示例,在android studio运行flutter run时提示:No connected devices found; please connect a device, or see flutter.io/setup for getting started instructions.从提示可以看到,原因是flutter没有找到连接的设备或者模拟器。搜索了下,
阅读更多

Android Studio 3.1 EditText 循环调用导致:StackOverflowError: stack size 8MB

升级到Android Studio 3.1后,原来项目中一个简单的EditText都会报StackOverflowError错误。代码如:<EditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height=&qu
阅读更多

Android获取view的绝对坐标

Android提供了两种方法来获取视图的绝对坐标:void getLocationOnScreen (int[] outLocation):获取视图在屏幕的坐标void getLocationInWindow (int[] outLocation):获取视图在Activity窗口的坐标这两个方法都是接收一个数组作为参数,获取的x,y值会存
阅读更多

使用RecyclerView和LayoutAnimation给列表添加进入动画

这里讲解下使用RecyclerView和LayoutAnimation给列表添加进入动画。分为三个步骤:给列表项添加动画使用列表项的动画定义LayoutAnimationRecyclerView应用LayoutAnimation的动画使用LayoutAnimation定义动画的好处是,它是单独定义,可以应用于任何ViewGroup的子类。这里是以RecyclerView为示例。示例效果示例是一个向
阅读更多

Android Studio旋转模拟器屏幕的快捷键

Android Studio旋转模拟器屏幕的快捷键:Windows:键盘左下角 Ctrl + F12Mac:Fn + Ctrl + F12Linux:Ctrl + F12
阅读更多

Android常见的图片压缩方法:质量压缩,尺寸压缩和采样率压缩

这里记录下Android三种常见的图片压缩方法:质量压缩,尺寸压缩和采样率压缩质量压缩采用系统自带的质量压缩算法,将图片压缩成JPEG格式public static Bitmap compressQuality(Bitmap bitmap, int quality) {     ByteArrayOutput
阅读更多

Android使用InputMethodManager显示和隐藏软键盘

Android主要用InputMethodManager来对软键盘进行管理。手动显示或隐藏软键盘前需要先获取InputMethodManager。InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); if (imm&
阅读更多

关闭Android Studio的新特性Instant Run

Android Studio版本:2.3.3File → Settings → Build, Execution, Deployment → Instant Run 在Instant Run的设置界面把Enable Instant Run勾选去掉如图
阅读更多

Android Gradle Plugin 3.0使用Annotation Processor配置依赖说明

在Android Gradle  3.0之前的版本,compile classpath里的依赖会自动添加到processor classpath,这样在compile classpath里的annotation processor也被添加到processor classpath里,所以插件运行正常。从Android&n
阅读更多

Android Studio 3.0报错:Error:android-apt plugin is incompatible with the Android Gradle plugin. Please use 'annotationProcessor' configuration instead.

Android Studio 3.0执行android-apt报错:Error:android-apt plugin is incompatible with the Android Gradle plugin.  Please use 'annotation
阅读更多

Android使用CountDownTimer实现倒计时示例(Kotlin)

CountDownTimer是一个抽象类,它的构造函数为CountDownTimer(long millisInFuture, long countDownInterval) millisInFuture:倒计时的总时间,从调用start()方法开始。毫秒数countDownInterval:倒计时的时间间隔。毫秒数。CountDownTimer主要有四个方法:syn
阅读更多

Android使用Kotlin新特性Parcelize序列化对象

Android对对象序列化主要有两种方式:Serializable和Parcelable。Serializable实际是使用Java的放射机制对对象做序列化和反序列化,其性能远低于使用Parcelable。但是使用Java写的Parcelable有点繁琐,需要我们实现Parcelable接口,手写很多模板代码。Java版Parcelable示例public class User
阅读更多
X

欢迎加群学习交流

联系我们