自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 资源 (5)
  • 收藏
  • 关注

原创 android 蓝牙完美解析协议 蓝牙万能通讯协议

在一次聊天中,突发奇想,解决了一个蓝牙通讯的协议问题。如果有需要制定硬件和App交互协议,同样可以参考本文。问题概述:1:多套协议,多套解析蓝牙通讯时都会定义自己和硬件的通讯协议,不同的硬件,协议也不一样,对应APP解析也不一样2:数据改变,协议改变协议一般是不会变的,但是会变的情况还是很多的,例如需求增加,硬件改动,都会造成数据变更,进而导致协议变更,导致硬件组帧改动,导致手...

2018-08-15 18:50:57 11886 3

原创 Rxjava 封装Socket 网络请求

1项目中接口需要使用socket网络请求,大概有十几个接口。之前用过rxjava简单封装过些简单的http请求的接口,现在也想按照那种思维模式老封装一下。总体思路是发送数据时传一个bean过去,接收时直接返回已经解析好的bean,用面向对象的方法编程。如果像以前一样一个工具类中写死好多socket请求的方法,这样耦合性太强,牵一发动全身。 所以使用rxjava 2.0小小封装一下。2:核...

2018-08-09 18:05:40 2248

原创 烦心事一点

  前段新闻报道,某个产品经理要求程序员根据用户手机壳颜色自动切换APP主题色招致暴打的新闻对此我感谢那位勇敢的程序员,让我看到遇到困难能够勇于解决问题,并能够表达自我的想法真的佩服。还有一个新闻,华山栈道一位中年大叔解开自己的安全绳,纵深跳下绝壁的新闻。感到惋惜。这两件事对我的触动很大,我性格属于胆小甚微,对别人看法敏感,追求完美,遇事恐惧,不敢解决,甚至表达很难表达自己真正的内心想法。...

2018-08-05 16:11:58 223

原创 android中优雅的处理nullPointException(java8 Optional)

 今天和大家一起使用java8中的Optional API解决nullPointException,先来看一段代码: public class Car { private Insurance insurance; public Insurance getInsurance() { return insurance; ...

2018-07-19 07:28:21 1656

原创 android 使用Lambda java8 Lambda

一个致命的例外引发的学习。E / AndroidRuntime:致命例外:主 过程:com.testwifi,PID:15340 java.lang.NoClassDefFoundError:com.testwifi.activity.MainActivity $ 1 在com.testwifi.activity.MainActivity.initView(Main...

2018-07-01 11:55:22 695

原创 android 自定义view 温度控制view

  这个自定义视图是解决用户可以随意设置地暖温度而设置的。看起来很实(JI)用(雷),操作也很简单。作为码农,我们只管专心解决问题,我相信没有人会喜欢温度变来变去,就像上了青藏高原,我只想把核心的原理讲解一下。需要实现的功能:1。画表格 - 温度时间表2.手指在表格上按下,添加一个温度时间点,并把相邻的点连接起来3.已经画好的点可以再次拖动,拖动过程时时显示温度时间,每两个小时只能设置一个温度点4...

2018-06-29 13:23:41 1209

原创 RxJava2 Flowable解决异步回调

1项目中有个需求,假设有N个数据,格式为8位纯数字字符串("00015756"),2需要把N个数据按照尾号0-9分组排好。尾号为“0”的一组,尾号为“1”的一组...最多10组3在每一组之前添加新唤醒数据帧”AAAAAAAA“,在结尾添加新睡眠数据帧“BBBBBBBB”4按照0-9分好组的顺序,蓝牙把这些数据发送给硬件5每组中唤醒帧”AAAAAAAA“发完等待11s,(11s内硬件不回复任何内容)...

2018-06-18 14:30:32 6735

原创 解析数据帧 android蓝牙数据帧解析 物联网数据帧解析2.0

请先参阅我的上篇文章:解析数据帧 android蓝牙数据帧解析 物联网数据帧解析本篇文章主要是针对数据帧解析而做的小工具,.本篇可以说是2.0版主要解决一个问题:把写死的截取位置变成动态获取的位置,能够做到即使修改协议帧也能少改代码,快速更改。例如原来写String subdata = data.substring(2,4)    @Field(value=ORI,location=1)现在Str...

2018-05-24 08:51:15 1051

原创 Android 中使用Protocol Buffer

宝宝其实是根据一老外的文章学习的,原文:https://medium.com/@elye.project/simple-android-protobuf-tutorial-with-actual-code-bfb581299f47本篇文章主要介绍Android中配置Gradle Protocol Buffer,及一个简单的使用demo,下篇文件讲解API在其中一个项目中遇到SharedPerfer...

2018-05-20 22:31:08 1699

原创 NoClassDefFoundError io.reactivex.Flowable

各路宝宝都看看这个异常:你的第一反应是啥?各种百度google,最后呢?还是没有解决。如果说我什么都没干就好了,你信不?宝宝遇到一奇葩情况,同样的代码,只是把网络请求注释掉后便没有了问题,public void requsetDataRetry(BaseRequsetReq req) { Observable.just(req) .subscribeOn(Sched...

2018-05-16 23:09:53 2424 4

原创 RxJava2 延时重试网络请求,任意重试次数网络请求,任意延时时间

项目中有个接口必须要上报成功,否则要进行重试,重试次数为9,重试时间为1,2,4,8,16,24,32,64,128,256,512,1024

2018-05-12 12:29:53 8033 4

原创 recyclerview 实现带标题的Grideview 不嵌套

项目中需要实现微信钱包页面类似的布局,我第一次看到后觉得很容易,用recyclerview嵌套grideview就能实现,往回一想太麻烦,并且要写好多adapter和相应的点击事件。于是我想能不能只用recyclerview不嵌套能不能实现。在网上搜到一个神奇的方法解决了我的问题LayoutManager.setSpanSizeLookup(SpanSizeLookup loopup) pri...

2018-04-27 16:13:03 1736

原创 Identifiers must have user defined types from the XML file. View is missing it

一次粗心大意的记录,大家引以为戒。Error:Execution failed for task ':compileDebugJavaWithJavac'.> android.databinding.tool.util.LoggedErrorException: Found data binding errors. ****/ data binding error ****msg:Id...

2018-04-26 14:46:51 3543

原创 DataBinding 绑定Recyclerview及点击事件

最近在学习DataBinding,在这里记录下学习的轨迹收获:1代码解耦。2少些很多没有营养的代码,美观度高!遇坑:1官方文档 https://developer.android.com/topic/libraries/data-binding/index.html#listener_bindings 写的真是简单,只提供码片段,需要结合博客和别的资料一齐看,才大概明白其中的奥妙。2不容易定位错误...

2018-04-22 22:08:28 6301

原创 databinding新手 Execution failed for task ':app:compileDebugJavaWithJavac'

话说头一回使用databinding,删删改改不知道最后哪里写错了,编译可以通过,就是不能运行,而且报错不能定位信息。表示很尴尬,弄了一上午,终于找到了一个前辈的文章,发现和他的错一样,我就按照他的方法进行排查,首先我报的错误如下org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:compileD...

2018-04-21 13:31:50 8206

原创 java.util.concurrent.ExecutionException 'android.enableAapt2' is deprecated and should not be use

话说每次studio版本更新一次,都要捣鼓一天处理各种错误,我们很感恩google一直在快速更新,真是忙坏了那群大爷大妈。这次更新到了3.1也不例外。先说说这个错:如果你的配置是这样的:并且有如下的错Error: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception:...

2018-04-21 10:56:23 15369

原创 用Rxjava2解决Token过期 自动重新请求 ,网络请求队列

小项目中为了减小体积和精简代码,没有使用rxJava retrofit okhttp这样的组合,但是依然要解决一个问题就是Token过期问题,这个并不是什么很难的问题,以前是使用别人写好的框架,今天比葫芦画瓢自己用rxjava 解决token过期问题。网络请求部分未封装,你可以随意用任何框架请求 。需求是同时N个网络请求,(一个请求也适用。)1,2,3一齐发过来,如果1成功了2,3没有成功我需要请...

2018-04-14 21:25:45 3246

原创 recyclerview 实现viewpager grideview分页效果 GrideSnapHelper

为了逼自己学习,所以瞎折腾一下,让自己张点见识。项目中原来使用的是ViewPager + GrideView 实现的卡片滑动,代码挺多的,我非得想改造成用recyclerView实现,话说折腾成功。先看下效果。每页三列,滑动停止后自动找到最近的一页停下。大多数人都是直接实现SnapHelper,但是我武功没那么高强,况且只要能解决问题的同志就是好裁缝!对于那些没有问题制造困难也要解决问题的好同志,...

2018-03-30 22:18:04 1656 2

原创 android studio工具类打jar包 任意目录打jar包 任意文件打jar包

项目中需要给别人提供jar,但是在网上搜的都是把整个moudle打包的,这个太不科学 了,我只要打包几个类或者某个package下的所有文件。自己研究了下算是解决了。1进入 project\build\intermediates\classes\release 文件夹2 在release目录及其子目录,只保留需要打jar包的目录,子目录和文件,剩下的全部删除3:cd D:\AKE\workspac...

2018-03-13 13:17:10 1714 1

原创 constraintLayout 属性 使用

1:<Barrier> 栅栏 控制view的相对位置相对位置,相对于目标id的值为end,left,right,top,bottom,start,endapp:barrierDirection="end"目标view的id,可以是多个id中间用,分割,不用写@+idapp:constraint_referenced_ids="tv1,tv2"2:<Group> 分组,可以控制多个view显示隐藏目标view的id,可以是多个id中间用,分割,不用写@+idapp:constraint_ref

2018-03-08 11:26:18 640

原创 把枚举替换成注解 Enum替换成Annotation

随手记录下新鲜的Annotation知识,google官网说Enum类比普通静态常量要消耗2倍内存, 所以现在把枚举改成注解.官方说法如下1:首先定义用到的静态常量public class Constants { public static final String TYPE_A = "1"; public static final String TYPE_B = "2"; ...

2018-03-06 09:26:03 1471

原创 蓝牙组帧 优雅组帧 物联网组帧 Android蓝牙组帧

蓝牙发送数据需要组成16进制数据帧,我们今天来讲一种优雅高效到组织放式.没有对比就没有伤害,下面我们来伤害一下原始组帧:byte[] b = new byte[] { (byte) 0x68, bTypes[0], (byte) frames[0], (byte) frames[1], (byte) frames[2], (byte) frames[3], (byte) frames[...

2018-02-26 11:46:56 543

原创 解析数据帧 android蓝牙数据帧解析 物联网数据帧解析

话说我们硬件部门修改了通信协议,我们不得已需要改动软件。当我看到需要改的代码时我傻眼了,请大家仔细看String         data=”565224CA5FF298AAEE775369874178456123784561EEEEEEEEEEE248526549856784561239845613298456123AACCFF45612398546DDCC2398456123985623856...

2018-02-24 22:45:19 1308

原创 环形手势控制条

项目中需要用到环形控制条,查找了资料然后,修改了各位网友的成果,最后达到我们项目中的要求.先看看效果.主要参考文章:http://blog.csdn.net/alijiahua/article/details/51474580  在此感谢alijiahua的博客al

2017-06-18 13:55:57 415

原创 jni 开发 c调用java

上一篇文章是java如何调用c ,这篇文章是c如何调用 java c调用java一共分为5步:1:编写java native方法2生成对应的头文件3复制头文件到visule studio中4查询方法和属性的签名,实现native方法5编译生成.dll动态库,复制动态库到项目,然后调用1:编写java native方法 以及要调用的方法 publi

2017-05-30 21:15:39 494

原创 java 开发 jni

为了做好学习笔记,写下了今天学到的知识:java 开发jni ,从hellow jni开始开发jni 一共分为6布1编写native方法2生成.h头文件3在visual studio中实现头文件中的方法4生成.dll文件,复制到java工程5调用native方法1编写native方法public class test { public na

2017-05-29 17:16:28 351

原创 Android 自定义相机 身份证拍照 自定义身份证相机

项目中需要用到拍摄身份证,拍完照片后直接拿到和身份证比例一致的图片,做成功的结果如下:  拍完照后直接拿到裁剪好的图本文的核心技术来自: https://yq.aliyun.com/articles/26706先看看xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

2017-05-25 15:17:20 9295 1

原创 lib/arm64, /vendor/lib64 couldn't find " .so"

项目中使用图片压缩用的是jni用c代码进行压缩,以前用的好好,突然间测试告诉我在魅族note上崩溃,查看错误日志如下: FATAL EXCEPTION: mainjava.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.mclm.business_sp

2017-05-25 09:17:52 4255

原创 c语音动态内存分配,内存重新分配,内存释放,指针运算

c语音基础,中的基础.大神请直接关闭本页面,多谢合作..总结下这学习到的知识点,#define _CRT_SECURE_NO_WARNINGS#include#include#include//void main(){// int len;// printf("请输入数组长度:");// scanf("%d", &len);//// //开辟内存,大小为len*4字节//

2017-05-10 11:15:56 558

原创 Android 集成FireBase Realtime DataBase实现聊天

在看google 2016年io大会时上面提到FireBase,抱着好奇心态研究了下,当时就觉得觉得这个太酷了.当时我就决定写个聊天的东西出来,因为很多网友都写过了,应该不会太难,于是乎我也玩玩吧,这个项目一共耗费了2周的时间,其中来回改了几次数据结构所以耽误了一些时间下面就是写成的效果(里面还有很多bug).这里完全本着学习的目的来做的,做到现在,已经没有刚开始的兴奋和耐

2017-05-03 20:54:32 1440

原创 FireBase RealTimeDb中遇到的问题 常量为空

第一个小问题: 静态常量为空在集成FireBase RealTimeDb,authentication,storage,在添加数据回调以后出现了一个问题,凡是在回调中出现或使用的静态常量都为null,google的回调拿到不在同一个线程,或者从天上来?第一次遇到静态常量还能为null,debug过程中发现竟然连这个静态常量的类都找不到.....我一脸蒙圈... how should i do?

2017-04-28 09:20:25 545

原创 EditText限制 只能输入0.00 -100保留两位小数

public class MydoubeChangeListener implements TextWatcher { private EditText editText; public MydoubeChangeListener(EditText editText) { this.editText = editText; } @Overr

2017-04-26 10:28:12 1794 1

原创 FireBase 无法访问zzanb类文件

出现问题的代码是在这一行FirebaseAuth.AuthStateListener= FirebaseAuth.getInstance();错误的问题是找不到类Error:(56, 29) 错误: 无法访问zzanb找不到com.google.android.gms.internal.zzanb的类文件Error:(33, 26) 错误: 无法访问AbstractSafe

2017-04-22 06:59:55 2370

原创 Android FirBase RealTimeDb JsonTree设计,基于RealTime聊天的json格式

这一次,我要用 FirBase RealTimeDb实时数据库写个聊天的demo,在存储数据和查询数据时需要规划一下json数据格式,要不然后期就蒙圈了,google的官方文章如下:https://firebase.google.com/docs/database/android/structure-data为举例说明为什么嵌套数据不正确,现假设一个如下所示的多层嵌套结构:

2017-04-21 13:43:08 424

原创 Android 集成FireBase CloudMessage&Notification

忙活了大半天,终于集成了FireBase notification其实集成这个notification我并没有写代码,而且也不需要写代码,只是在这个过程中遇到了些坑,把这些东西记录下来,分享给那些能够用到的小伙伴,我想把整个FireBase中所有的功能都集成上来,只是为了学习一下.  这个notification是集成FireBase全家桶的第一个小功能,先看下集成后的效果图

2017-04-17 06:43:22 3143 2

原创 Android Intent获取不到值

今天遇到了一个奇葩的情况,明明已经putExtra,并且debug时,intent确实是有值的,但是跳转到B Activity后通过getIntent(),getStringExtra()竟然没有值.百思不得解.这个是B  Activity中,获取不到pages的值,debug显示为null同样实在B Activity界面中,我却能收到在A Activity

2017-04-15 10:08:38 2174 1

原创 Couldn't load native-lib from loader dalvik使用cmake编译

出现这个 Couldn't load native-lib from loader dalvik情况是因为没有在apk中找到相应的.so文件,我看了些文章总结原因一共只有两种可能:1:真的没有这个.so文件2:文件名写错了判断原因:1使用Build-Analyze APK菜单工具,选中自己的apk真的没有生成.so文件,正常的应该是这样,有一个lib文件夹,里面

2017-03-03 11:40:32 420

原创 Couldn't load native-lib from loader dalvik使用cmake编译

出现这个 Couldn't load native-lib from loader dalvik情况是因为没有在apk中找到相应的.so文件,我看了些文章总结原因一共只有两种可能:1:真的没有这个.so文件2:文件名写错了判断原因:1使用Build-Analyze APK菜单工具,选中自己的apk真的没有生成.so文件,正常的应该是这样,有一个lib文件夹,里面

2017-03-03 11:14:42 536

原创 Android自定义组合控件

由于项目中使用到一些重复并且不太复杂而且可以复用的控件组合,不停的粘贴复制也挺烦人的,并且布局文件写的很low,于是乎,激发我内心对美的追求和欲望,做一个优雅的码农!大家看下面的情况 这个场景是不是很熟悉,而且很多这样的情况,左图完全可以linearLayout里面放textview,edittext,右图可以linearLayout里面放textview,textview.这样下来,

2017-02-28 22:17:34 364

原创 Android Studio2.2配置MakeList使用cmake编译c文件

初次使用cmake来编译c文件在Android项目中,那个快感能传递到骨髓里,欲罢不能.只能说谁用谁知道.如果还没有使用,请赶快用一次,初次体验一共三部:第一:studio升级到2.2以后的版本,安装NDK,cmake工具第二:创建新项目勾选 Include C++ Support 选项。第三:一路下一步,安装运行项目

2017-02-21 21:59:50 3182

Android视频录制及播放

这是android平台的一个录制视频及播放的简单Demo,里面是个项目,源码有注释,使用系统API,MediaRecorder类,功能简单兼容性强,可以用于学习。

2018-10-04

Android 低版本java8 特性兼容包

java8中optional相关类和java.util.function中的接口函数打成的jar包,有这些可以使用function中的函数接口和optional优雅的处理空指针,用法和java8中类一样,只是包名换成了com.example.rxjavademo

2018-07-28

自定义view温度控制

1.画表格-温度时间表 2.手指在表格上按下,添加一个温度时间点,并把相邻的点连接起来 3.已经画好的点可以再次拖动,拖动过程时时显示温度时间,每两个小时只能设置一个温度点 4.在点内显示设置温度 5.可以设置一周的温度

2018-07-01

图片裁剪裁剪框可动不可动photocat

本框架支持图片旋转,裁剪框可按比例放大缩小,或者图片可以放大缩小,裁剪框不动

2017-05-22

studio使用cmake编译c代码实现图片压缩

使用c进行图片压缩,能够在1秒内完成压缩,压缩后体积大小是小于原图的1/10,测试发现2M左右的图压缩到50K丝毫不影响视觉,眼睛看不出差别,目前测试红米,酷派,魅族手机,没有发现问题

2017-02-22

空空如也

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

TA关注的人

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