开发经历
文章平均质量分 56
记录自己经历的一些开发事情,不具备通用性
时代我西
笨鸟先飞,勤能补拙!
展开
-
地图经纬度计算相关
地图经纬度计算相关两个点于距离public static float distanceBetweenPointsAsFloat(double startLat, double startLng, double endLat, double endLng) {float[] results = new float[3];Location.distanceBetween(startLat, startLng, endLat, endLng, results);retur...原创 2022-03-03 18:01:11 · 244 阅读 · 0 评论 -
RPC和IPC
RPC和IPC什么是RPCRPC(Remote Procedure Call)即远程过程调用,它是一种通过网络从远程计算机程序上请求服务,在不需要了解底层网络技术的协议下,即可获取计算机进程中的数据。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。RPC在OSI网络通信7层模型中,位于传输层与应用层之间,即位于会话层:RPC实现模式,就是我们常说的C/S结构,引用百度百科的定义:RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务原创 2022-03-01 20:34:37 · 2174 阅读 · 0 评论 -
eventBus 流程大图
eventBus 流程原创 2021-11-27 11:46:08 · 119 阅读 · 0 评论 -
gradle 里面找不到编译任务
gradle 里面找不到编译任务Androidstudio4.2去掉勾选就好了吧原创 2021-10-19 12:13:44 · 770 阅读 · 1 评论 -
Scroller滑动对象
Scroller弹性滑动对象,用于实现View的弹性滑动。public class ViewDemo extends View {private final Context mContext;private final Scroller mScroller;public ViewDemo(Context context) {super(context);mContext = context;...原创 2021-09-28 17:02:14 · 92 阅读 · 0 评论 -
ZipUtils
ZipUtilsimport android.util.Log;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.原创 2021-09-27 11:59:34 · 301 阅读 · 0 评论 -
Android EditText 保持焦点
AndroidEditText保持焦点最近项目有个需求,在输入框输入超出值域后锁定当前输入框,不容许切换输入框mLatEdit.setOnFocusChangeListener((v, hasFocus) -> { //失去焦点,重现申请if (mLatExceeded && !hasFocus) {//等待焦点移交另外的控件后,在申请,不然无效...原创 2021-09-23 09:21:58 · 488 阅读 · 0 评论 -
常用的正则表达式工具类
RegExpUtil/*** 常用的正则表达式工具类*/public class RegExpUtil {private static final String REGEX_SPECIAL_CHARACTERS = "[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]";privatestaticfinal String REGEX_ANON...原创 2021-09-11 11:23:30 · 235 阅读 · 0 评论 -
SoftInputEditText
SoftInputEditTextimport android.content.Context;import android.util.AttributeSet;import android.view.View;import android.view.inputmethod.InputMethodManager;import androidx.annotation.NonNull;import androidx.annotation.Nullable;import a原创 2021-09-11 11:21:43 · 97 阅读 · 0 评论 -
BaseDialogView
BaseDialogViewimport android.animation.ValueAnimator;import android.content.Context;import android.graphics.PixelFormat;import android.util.DisplayMetrics;import android.view.Gravity;import android.view.LayoutInflater;import android.view.Mo原创 2021-09-11 11:20:00 · 63 阅读 · 0 评论 -
不同高度ITEM的ViewPage
BottomViewPage项目遇到一个需求,需要不同高度ITEM的ViewPage,import android.content.Context;import android.util.AttributeSet;import android.view.ViewGroup;import androidx.annotation.NonNull;import androidx.annotation.Nullable;import androidx.viewpager.wi原创 2021-09-02 10:07:04 · 159 阅读 · 0 评论 -
自定义时间选择器
自定义时间选择器布局<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"android:id="@...原创 2021-09-01 09:07:20 · 422 阅读 · 0 评论 -
ScrollView 去掉滚动条
ScrollView去掉滚动条android:scrollbars="none"原创 2021-08-18 09:52:36 · 1006 阅读 · 0 评论 -
VelocityTracker 速度追踪
VelocityTracker速度追踪,包括水平和竖直方向的速度,在onTounchEvent方法中调用VelocityTrackervelocityTracker =VelocityTracker.obtain();velocityTracker.addMovement(event)获取速度:速度=(终点位置-起点位置)/时间段velocityTracker.computeCurrentVelocity(1000);float x=velocityTracker.getX...原创 2021-08-18 09:49:17 · 380 阅读 · 0 评论 -
GestureDetector手势检测
GestureDetector手势检测,用于辅助检测用户的单击、滑动、长按、双击等行为。参考如下。GestureDetector gestureDetector=new GestureDetector(this, new GestureDetector.SimpleOnGestureListener(){@Overridepublic boolean onDown(MotionEvent e) {//点了一下屏幕,ACTI...原创 2021-08-18 09:48:00 · 322 阅读 · 0 评论 -
账户更新功能
账户更新一.SyncService账号更新功能需要一个服务来提供,让SyncService继承自Service来实现账号更新功能,和AuthenticatorService一样需要在onBind方法中返回一个IBinder,这里需要借助于SyncAdapter,关于SyncAdapter稍后在做描述,通过syncAdapter.getSyncAdapterBinder()方法就可以获取到IBinder对象。@Overridepublic IBinder onBind(Inte...原创 2021-08-18 09:27:19 · 289 阅读 · 0 评论 -
DatePickerDialog和TimePickerDialog
DatePickerDialog和TimePickerDialog//示例代码,下面会看官网的具体信息final Calendar calendar = Calendar.getInstance();//从日历读取当前日期和时间int year = calendar.get(Calendar.YEAR);int month = calendar.get(Calendar.MONTH);int day = calendar.get(Calendar.DAY_OF_MONTH);in原创 2021-08-11 20:36:41 · 238 阅读 · 0 评论 -
RadioGroup和RadioButton
RadioGroup和RadioButton首先看RadioGroup,它是继承了LinearLayout,属于ViewGroup作为RadioButton的容器,RadioGroup的属性比较简单,和LinearLayout基本差不多,区别是有RadioGroup.OnCheckedChangeListener接口,XML可以默认单选的ID android:checkedButton 默认情况下应在此单选组中选中的子单选按钮的 ID。 看一下公.原创 2021-08-10 13:45:16 · 1597 阅读 · 0 评论 -
Android开机广播
Android开机广播受 Android 8.0(API 级别 26)后台执行限制的影响,以 API 级别 26 或更高级别为目标的应用无法再在其清单中注册用于隐式广播的广播接收器。不过,有几种广播目前不受这些限制的约束。无论应用以哪个 API 级别为目标,都可以继续为以下广播注册监听器。https://developer.android.google.cn/guide/components/broadcast-exceptions开机广播无法接收原因:1. BOOT_COMPLET原创 2021-07-09 09:17:45 · 1506 阅读 · 0 评论 -
chaquopy框架
chaquopy框架Java中调用Python// 调用python代码void callPythonCode(){Python py = Python.getInstance();// 调用hello.py模块中的greet函数,并传一个参数// 等价用法:py.getModule("hello").get("greet").call("Android");py.getModule("hello").c...原创 2021-07-08 17:19:06 · 1117 阅读 · 0 评论 -
Android代码调试
代码调试有以下几种不同的方式和工具。1、采用IDE工具如Android Studio调试------单步、直观、可视2、打印Log调试,结合logcat使用------------收集信息更全3、主动抛出异常-----------------------------------查看堆栈调用链4、断言Assert使用---------------------------------单元测试5、时间戳方法-------------------------------...原创 2021-07-08 16:09:52 · 276 阅读 · 0 评论 -
gradle依赖
gradle依赖依赖项配置 配置 说明 implementation Gradle 会将依赖项添加到编译类路径,并将依赖项打包到编译输出。不过,当模块配置 implementation 依赖项时,其他模块只有在运行时才能使用该依赖项。 api Gradle 会将依赖项添加到编译类路径和编译输出。当一个模块包含 api 依赖项时,会让 Gradle 了解该模块要以传递方式将该依赖项导出到原创 2021-07-08 16:07:46 · 400 阅读 · 0 评论 -
adb 下删除锁屏密码
adb 下删除锁屏密码首先要连得上调试,其次是需要root权限adb shellcd data/system/rm password.key每个系统的密码文件可能不一样,大概都是password.key这样类是命名的,具体要看系统开发那边...原创 2021-07-08 15:53:20 · 4094 阅读 · 0 评论 -
Ntrip协议
Ntrip协议CORS就是网络基准站,通过网络收发GPS差分数据。用户访问CORS后,不用单独架设GPS基准站,即可实现GPS流动站的差分定位。访问CORS系统,就需要网络通讯协议。NTRIP是CORS系统的通讯协议之一,所有的 RTK数据格式(NCT,RTCM,CMR,CMR+等等)都能被传输。主要流程 拉取挂载点列表数据 连接挂载点 收发差分数据 ⼀、拉取挂载点列表建⽴socket连接后,发送拉取挂载点的命令:"GET / HTTP/1.1\r\n"原创 2021-07-08 15:49:13 · 3524 阅读 · 0 评论 -
Android studio 生成JavaDoc文档
Androidstudio 生成JavaDoc文档1.Tools->Generate Javadoc2.在other command line arguments项输入:-encoding utf-8 -charset utf-8在Output directory 处选择存放生成文档的的目录3.生成文档成功,点击index.html即可查看javadoc文档:...原创 2021-07-08 15:48:17 · 1137 阅读 · 0 评论