
android
文章平均质量分 51
码农xo
诚恳
展开
-
定位相关常识高德百度国家地理局
一般用国际标准的GPS记录仪记录下来的坐标,都是GPS的坐标。earth上采集到的是39°31’20.51,那么应该这样换算,31分就是31/60度,20.51秒就是20.51/3600度,结果就是39。earth上采集到的是39°31’20.51,那么应该这样换算,31分就是31/60度,20.51秒就是20.51/3600度,结果就是39。解决方案:请确保采集到的数据是哪个坐标体系,需要转换到哪个坐标系,再进行坐标转换。A、原始坐标系弄错,比如以为自己是GPS坐标,但其实已经是GCJ-02坐标。原创 2023-08-23 15:58:20 · 437 阅读 · 0 评论 -
通过usb利用adb实现android手机和pc机通信
如:adb forward tcp:8000 tcp:9000 的意思是,将PC端的 8000 端口收到的数据,转发给手机中的 9000 端口。(3)启动PC端应用,连接端口为8000的 server(adb 创建的)之后,就可以传输数据了。(3)adbd 进程将数据发送给端口为9000的 server(手机端应用创建的)传递是双向的,(2)启动手机端应用,建立端口为9000的 server,并处于监听状态(LISTENING)(1)PC端应用将数据发送给端口为8000的 server(adb 创建的)原创 2023-01-12 17:18:35 · 3584 阅读 · 1 评论 -
andoird基础-事件分发
在 Activity 的 dispatchTouchEvent 方法中拦截消息后,消息会直接断掉,不会往任何地方传递,只有 Activity 的 dispatchTouchEvent 方法收到 ACTION_DOWN 消息。当 dispatchTouchEvent 方法,返回 false 时,首先会拦截 ACTION_DOWN 消息,消息不会继续传给子控件,而是传给父控件的 onTouchEvent,然后继续回传。同样,如果 onTouchEvent 方法没有拦截继续拦截消息,则消息会继续传递。原创 2022-10-15 16:31:46 · 818 阅读 · 0 评论 -
android使用java添加图片预览压缩库Android Image Cropper
这里注意一点就是对文件的获取。原创 2022-10-05 08:55:30 · 359 阅读 · 0 评论 -
android okhttp get 请求带参数
为HttpGet 的 url 方便的添加多个name value 参数。原创 2022-08-23 09:08:26 · 1137 阅读 · 0 评论 -
SnapHelper翻页效果两行代码带你实现不一样的RecyclerView
比如我们实现的第一个效果,当RecyclerView处于静止的时候,SnapHelper处理的方式就是把停止后的Item的中心依附于RecyclerView的中心。当我们进行滑动的时候,RecyclerView中的Item停止的位置是取决于你滑动时的速度(Fling),可能会出现的情况是最终我们停止的位置可能位于两个item之间,当然也有可能正好位于某个item的中间。效果滑动停止后Item的中心会被附加到RecyclerView的中心,说的直白点就是滑动停止后会显示一个完整的Item。...原创 2022-07-30 13:41:11 · 1171 阅读 · 0 评论 -
Android不同应用之间实现共享数据
Android不同应用之间数据的共享有许多方式,但是我觉得还是使用sharedPreference比较简单和轻量级。如果程序B想要访问程序A的sharedPreference可以通过下面的语句来实现当然在A程序里创建SharedPreference的时候也需要使用Context.MODE_WORLD_READABLE属性。另外 SharedPreference还有Context.MODE_WORLD_WRITEABLE属性。根据SDK的解释,就是允许别的应用程序来对 SharedPreference进行写原创 2022-06-15 09:04:35 · 2415 阅读 · 0 评论 -
Android性能优化之UncaughtExceptionHandler定制自己的错误日志系统
前言:每当我们app测试的时候,测试人员总是对我们说这里崩溃了,那里挂掉了!我们只能默默接受,然后尝试着重现bug,更可悲的是有时候bug很难复现,为了解决这种现状所以我们要尝试这建立一个自己的bug日志系统。实现原理:Java为我们提供了一个机制,用来捕获并处理在一个线程对象中抛出的未检测异常,以避免程序终止。我们可以通过UncaughtExceptionHandler来实现这种机制。具体实现:public class CrashManager implements UncaughtExcept转载 2022-03-08 10:45:06 · 829 阅读 · 0 评论 -
android的基本使用和常见问题
对Android中的finish()方法的简单使用finish()官方解析:Call this when your activity is done and should be closed. The ActivityResult is propagated back to whoever launched you via onActivityResult().也就是说,当你打开的Activity已经执行完成并且需要被关闭的时候可以调用这个方法,当你按返回的时候,他将返回到当前Activity的发起者。原创 2021-12-06 11:44:53 · 118 阅读 · 0 评论 -
svga2.6 引入编译报错 解决方案
加入//SVGAimplementation’com.github.yyued:SVGAPlayer-Android:2.6.1’编译老是报错原创 2021-11-24 15:44:25 · 858 阅读 · 0 评论 -
JAVA的(PO,VO,TO,BO,DAO,POJO)解释
java的(PO,VO,TO,BO,DAO,POJO)解释PO(persistant object) 持久对象在o/r映射的时候出现的概念,如果没有o/r映射,没有这个概念存在了。通常对应数据模型(数据库),本身还有部分业务逻辑的处理。可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作。VO(value object) 值对象通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象转载 2021-11-24 09:37:58 · 265 阅读 · 0 评论 -
anroid 数据库 LitePal
LitePal 数据库的关系查询的时候LitePal.find(PcmAMeasurePointDb.class, it.getId(), true);true 只能查询到一级的关系 再深的话不能查询不到 需要再次使用查询语句查询原创 2021-10-10 10:28:48 · 76 阅读 · 0 评论 -
安卓蓝牙通信
这篇文章使用的是传统蓝牙的技术,Android4.0以后推出了BLE蓝牙机制。开始我也下尝试使用BLE实现两台平板间数据传输。但是仔细深入了解以后,BLE分外围设备和中央设备,通常我们手机连接手表或者一些智能设备都使用BLE的方式进行的数据传输。但是手机和手机通过BLE方式传输会有一个问题,需要我们自己将其中一台设备通过API处理成模拟外围设备,但是我在将一台设备模拟成外围设备进行数据传输的时候还是无法成功发送数据,网上很多地方说Android自身不支持手机和手机间通过BLE传输数据,但我也没有在官网找到明原创 2021-07-24 16:38:17 · 597 阅读 · 1 评论 -
java 基础知识 常见错误记录
java byte类型如何存取大于127的整数当我们给b赋值成130后,会出现错误信息,这是因为byte的取值范围时-128到127我们知道130的二进制位10000010,我们把它当成有符号的数值看的话,应该是个负数,而计算机中是以补码的形式存储的数字,因此要在此数值的基础上“符号位不变,其他位取反加一”,然后就是我们所需要的值,取反:11111101,加一:111111110,该数值为-126;最后说一下大于127的整数被存储的简单规则就是用这个数值减去256,比如130-256=-126by原创 2021-06-17 10:26:08 · 175 阅读 · 0 评论 -
什么是Maven、JCenter、MavenCenter、JitPack、Bintray
Maven仓库在用Eclipse+Ant组合的时候,我们往往引入一个库都是下载jar包或者aar包放到lib目录下,然后右键添加引用。But!这并不友好,比如当升级版本库的时候往往需要下载新的包替换引用,非常麻烦。所以,当升级到Android Studio + Gradle 组合后 gradle中提供了可以从远端拉取jar包和aar包引入本地。这个概念我们懂了。但是这个下载源是哪呢,就是maven仓库。那maven仓库的地址是什么呢,是不是Android Studio都是从一个仓库获取包呢,这时原创 2021-05-09 09:12:33 · 3992 阅读 · 0 评论 -
andorid 绘制
// 指南针上和下// Path compass_top = new Path();// compass_top.moveTo(0, -mRadius);// compass_top.lineTo(-mHeartPaintWidth * 3, 0);// compass_top.lineTo(mHeartPaintWidth * 3, 0);// compass_top.lineTo(0, -mRadius);...原创 2021-03-30 15:38:26 · 127 阅读 · 0 评论 -
常见错误汇集
迭代器必须取了数据才能结束Iterator<GpsSatellite> iters = gpsStatus.getSatellites() .iterator();int count = 0;while (iters.hasNext() && count <= maxSatellites) { iters.next(); count++;}这里容易出的问题就是关于next的问题...原创 2021-03-11 16:50:49 · 97 阅读 · 0 评论 -
如何下载通过 jitpack 发布的 jar,arr文件
https://github.com/jitpack/jitpack.io/issues/4002https://blog.youkuaiyun.com/zhijiandedaima/article/details/114117047转载 2021-02-26 14:23:30 · 1682 阅读 · 0 评论 -
mtk添加更换华大北斗gps驱动
修改流程:在hal层添加gps驱动添加命令:切换到gps模块命令添加gps模块的代码 这个华大的已经给我们了mkdir gps添加模块的源码这里需要修改里面的部分代码源码根目录下添加环境source ./build/envsetup.shlunch 114单独编译模块 mmm hardware/libhardware/modules/gps/原理讲解如上图所示: 定位服务共分为四层: 最上面是应用层,以java为主。 第二层是框架层,这一层包含了供应用调用的接口及其系统服务的实现,主原创 2021-01-19 14:59:59 · 1221 阅读 · 1 评论 -
常用控件记录
<android.support.v7.widget.CardView android:id="@+id/cv_demo" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="50dp" android:layout_centerInParent="true" app:cardBackgroundColor="@c.原创 2021-01-05 19:49:10 · 359 阅读 · 1 评论 -
手机输入法切换
adb shell pm enable com.android.inputmethod.latin 恢复到原状adb shell pm disable-user com.android.inputmethod.latin原创 2020-12-30 17:32:35 · 184 阅读 · 0 评论 -
as编译代码错误卡顿相关问题
compileSdkVersion = 28buildToolsVersion = '28.0.3'minSdkVersion = 19targetSdkVersion = 26supportLibVersion = '28+'maven { url 'https://maven.aliyun.com/repository/public/' }jcenter() { 'https://maven.aliyun.com/repository/public/' }maven { url 'h.原创 2020-12-29 20:59:28 · 344 阅读 · 1 评论 -
View和SurfaceView实现自定义View
概述android系统提供了View来进行绘图处理,View可以满足大部分的绘图要求,但是在某一些时候就显得有些不足了。因为View是通过刷新来重绘视图,android系统是通过发送VSYNC信号来进行屏幕的绘制,刷新的时间间隔为16ms,如果在16ms内View没有完成重绘刷新的操作,那么用户在视觉上就会有卡顿的现象。打印日志会发现有下面的警告:"skipped 47 frames! The application may be doing too much work on its main thre原创 2020-12-18 14:38:08 · 376 阅读 · 0 评论 -
SurfaceView自定义绘图
当SurfaceView和GLSurfaceView同时在一个布局里面,如果想让SurfaveView显示图片或者视频必须要调用SurfaceView.setZOrderOnTop(true),也就是说必须把SurfaceView置于Activity显示窗口的最顶层才能正常显示,然后调用了SurfaceView.setZOrderOnTop(true)又导致了其他控件比如播放、快进等按钮被遮挡。解决:在调用setZOrderOnTop(true)之后调用了setZOrderMediaOverl.原创 2020-12-18 14:34:34 · 441 阅读 · 0 评论 -
开发60条规则
1. 全部 Activity 可继承自 BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。 2. 数据库表段字段常量和 SQL 逻辑分离,更清晰,建议使用 Lite 系列框架 LiteOrm 库,超级清晰且重心可以放在业务上不用关心数据库细节。 3. 全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中. 4. 不要相信庞大的管理类的东西会带来什么好处,可能是一场灾难,而要时刻注意单一职责原则,一个类专心...原创 2020-12-16 21:39:25 · 340 阅读 · 0 评论 -
android 编译源码 持续更新
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc lib原创 2018-09-11 08:55:17 · 518 阅读 · 0 评论 -
android seekbar 设置最大值也会调用change的函数
android seekbar 设置最大值也会调用change的函数原创 2020-11-16 17:19:07 · 548 阅读 · 0 评论 -
android studio 小齿轮的显示和隐藏(Autoscroll from Source)
原创 2020-10-07 08:08:53 · 678 阅读 · 0 评论 -
Android Studio库Module引用aar简单设置
1:在最外层的build中定义ext { COMMON_MODULE_DIR_PATH = projectDir.getPath() + "/callvideo/libs"}2.引用的里面加repositories { flatDir { dirs 'libs',rootProject.ext.COMMON_MODULE_DIR_PATH }}3.需要加arr的地方加repositories { flatDir {原创 2020-09-28 12:04:03 · 963 阅读 · 0 评论 -
Android Studio加载流程
productFlavors { user { applicationId "com.cmy.live" versionCode 2020092701 versionName "3.0" buildConfigField 'String', 'SERVER_URL', '"http://www.text.com"' }}原创 2020-09-27 21:10:08 · 149 阅读 · 0 评论 -
android 开发中sound pool 的坑
初始化SoundPool初始化SoundPool 我们直接new SoundPool (int maxStreams, int streamType, int srcQuality)即可参数解释:参数 解释 maxStreams 最大的流的数量 streamType 流的类型(看下图)建议AudioManager.STREAM_SYSTEM srcQuality 频的质量,默认是0,目前没有影响 加载音频在load方法中我们一般是把音频文件放到res的原创 2020-09-25 22:22:05 · 883 阅读 · 0 评论 -
gradle配置项packagingOptions注意问题
exclude,过滤掉某些文件或者目录不添加到APK中,作用于APK,不能过滤aar和jar中的内容pickFirst,匹配到多个相同文件,只提取第一个,作用于APK,不能过滤aar和jar中的文件doNotStrip,可以设置某些动态库不被优化压缩merge,将匹配的文件都添加到APK中,和pickFirst有些相反,会合并所有文件。...原创 2020-09-25 21:30:02 · 1375 阅读 · 0 评论 -
hellocharts与MPAndroidChart的比较
http://loody.github.io/2015/03/08/2015-03-08-hellocharts/前言记得之前介绍过关于MPAndroidChart的使用方法,但是长江后浪推前浪,最近github有出了一个新的开源曲线库,hellocharts,个人觉得这个库比MPAndroidChart更加酷炫,下面就介绍下它的一些使用方法github地址:https://github.com/lecho/hellocharts-androidhellocharts和MPAndroidCh原创 2020-09-20 21:33:59 · 790 阅读 · 0 评论 -
anroid studio 导入低版本工程出现只有一个model的问题
anroid studio 导入低版本工程出现只有一个model的问题解决方案:buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.6.3' // NOTE: Do not place your application dependenci原创 2020-09-17 08:37:47 · 99 阅读 · 0 评论