- 博客(112)
- 资源 (5)
- 收藏
- 关注
原创 JAVA 字节运算 取低5位 获取低位第一位
一个二进制数字可以由多个位组成,每一位都可以是 0 或者 1。取低5位即表示只取二进制数字的最后5位(从右向左数)。// 取低5位 (& 每位进行&运算都为1则为1 有一个为0就为0)在 JAVA 中,可以通过按位与运算符 & 和一个二进制掩码来取低5位。二进制掩码是一个具有5个1和其他位置0的二进制数字。// 二进制为 00011111 0x1F。// 二进制为 11111111。1、JAVA 取低5位。
2024-06-14 15:33:03 307
原创 greendao升级数据库GreenDaoUpgradeHelper
1、修改model文件(比如增加一个字段)2、makeproject 查看dao文件是否修改了3、greendao { schemaVersion 1//数据库版本号 版本号+13、implementation 'io.github.yuweiguocn:GreenDaoUpgradeHelper:2.2.1'4、初始化数据库改为//用于升级// MySQLiteOpenHelper helper = new MySQLiteOpenHelper(context, Cons...
2021-10-12 14:17:17 876
转载 Springboot打成war包并在tomcat中运行的部署方法
https://www.jb51.net/article/133160.htm把spring-boot项目按照平常的web项目一样发布到tomcat容器下一、修改打包形式在pom.xml里设置 <packaging>war</packaging>二、移除嵌入式tomcat插件在pom.xml里找到spring-boot-starter-web依赖节点,在其中添加如下代码,? 1 2 3 4 5 6 .
2020-07-20 14:42:13 193
转载 No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><plugin>...
2020-07-20 14:40:09 95
原创 HTTP Status 500 - Handler processing failed; nested exception is java.lang.NoClassDefFoundError: jav
HTTP Status 500 - Handler processing failed; nested exception is java.lang.NoClassDefFoundError: javhttps://blog.csdn.net/twj_wsy_twj/article/details/73550070
2019-12-20 08:50:27 869
原创 IntelliJ IDEA 建立web项目 接入tomcat 然后导入SpringMVC 出现Artifact WEB:war exploded: Error during artifact de
IntelliJ IDEA 建立web项目 接入tomcat 然后导入SpringMVC 出现Artifact WEB:war exploded: Error during artifact de还是Artifact WEB:war exploded: Error during artifact deployment.https://blog.csdn.net/wy757510722...
2019-12-19 16:51:42 920
原创 微信小程序 蓝牙遇到的问题
微信小程序的蓝牙使用第一步是调用openBluetoothAdapter,但是有时候现在 版本的openBluetoothAdapter有时候不会返回任何结果()可能是我程序的问题)那么设置一个标记位isUserOpenAdapter 调用openBluetoothAdapter,再设置一个3s延时器,如果openBluetoothAdapter有返回值则把isUserOpenAdapter置...
2018-10-31 16:49:45 1912
转载 微信小程序setData()方法的详解以及对数组/json操作
转载至:https://blog.csdn.net/NAMECZ/article/details/79623550?utm_source=blogxgwz1一、setData()方法:1、参数接受一个对象,以key,value的形式表示;2、参数和变量名称一致,可用一个值代替(es6新语法特性)如上图所示,在this.data中设置ceshi这条数据,在方法中,我们定义ceshi变量...
2018-10-16 10:16:43 305
原创 Android 蓝牙4.0多蓝牙连接
当连接了7个蓝牙的时候再次连接蓝牙都出现如下日志09-03 16:19:36.436 1873-2561/? I/bt_att: GATT_Register09-03 16:19:36.436 1873-2561/? E/bt_att: GATT_Register: can't Register GATT client, MAX client reached!09-03 16:19:36....
2018-09-03 16:43:59 638
转载 Android socket通信的长连接与心跳检测
Android socket通信的长连接与心跳检测2017年08月02日 17:13:15 阅读数:1804 标签: socketandroid通信心跳检测 更多个人分类: android-杂项在Android开发中,我们可能需要和服务器保持连接不断开,这时需要用到socket通信的长连接,并且定时发送消息检测是否是连接状态——心跳检测。 我们需要一个客户端和一个服务器端的demo,...
2018-08-23 16:33:47 580 1
转载 性能优化
Android性能优化之利用LeakCanary检测内存泄漏及解决办法转发:https://www.cnblogs.com/whoislcj/p/6001422.html前言: 最近公司C轮融资成功了,移动团队准备扩大一下,需要招聘Android开发工程师,陆陆续续面试了几位Android应聘者,面试过程中聊到性能优化中如何避免内存泄漏问题时,很少有人全面的回答上来。所以决定抽空学...
2018-08-22 16:53:02 111
转载 LeakCanary使用经验小结
LeakCanary使用经验小结转载:https://blog.csdn.net/baidu_27196493/article/details/78846817 LeakCanary是Android查找内存泄漏的主要工具,由Square公司开发,可以直接在手机端查看内存泄露的工具。其使用方法如下:1、 导入依赖包debugCompile'com.squareup.leakca...
2018-08-22 14:59:13 268
原创 android 蓝牙writeCharacteristic不成功
当多个writeCharacteristic连续发送的时候可能不成功,需要延时发送new Thread(){ @Override public void run() { super.run(); setCharacteristicNotification(mCharacteristicNotify, true); try { ...
2018-07-31 18:16:00 8160 1
原创 android padapp在竖屏亮屏的情况出现的问题
亮屏的时候如果会出现软件先竖屏后横屏的情况,这个时候布局文件就会在port里面去找,如果找不到就会destory所以在开发横屏软件的时候要给一个port文件 以免切换导致的程序崩溃...
2018-07-28 17:46:25 252
转载 android 进程保活
转发:https://blog.csdn.net/u013692888/article/details/77914181背景最近公司的项目需要及时聊天功能,聊天功能基本上已经完成,采用的是自己搭建的socket长连接来实现聊天的方按。安排我研究消息推送,主要确保杀死App后还能正常接收消息,重启后也能收到消息。消息推送的重难点1.长连接消息收发功能的实现。 2.消息的实时推送...
2018-07-27 15:54:57 397
转载 JobService和JobScheduler机制在Android5.0以上保活
转载https://blog.csdn.net/qq_33689414/article/details/54668889JobService和JobScheduler机制在Android5.0以上保活我们知道在Android5.0之前,Android源代码还是有不小漏洞的,导致很多不光明的手段来进行++保活++。但是在Android5.0之后,很多都是可以被APP杀死的。Android5....
2018-07-26 18:11:54 397
转载 android service
转载:https://blog.csdn.net/javazejian/article/details/527098571、bindservice 能够让service和组件进行通信1)在activity中定义一个ServiceConnection//socket返回结果private ServiceConnection socketConnection = new Service...
2018-07-25 10:45:27 126
转载 ValueAnimator设置时长无效
转载:https://blog.csdn.net/u011387817/article/details/78628956今天在低端机上面测试,发现里面的属性动画竟然无法正常播放, 一下子就从起点跳到终点。一番调试无果后,就感觉是手机本身问题, 于是就想看看其他应用的属性动画在这台手机上是否也这样:记得之开布局边界时,看到 网易云音乐客户端 的音乐播放界面中的光盘旋转效果是属性动画...
2018-07-25 09:39:53 1792
原创 android 蓝牙不能立刻连接
在离开蓝牙操作界面后 在进入可能不能够找到该设备,是因为离开activity后关于蓝牙的类还没有被gc回收,需要调用BluetoothGatt.disconnect();来主动断开
2018-07-05 17:41:43 343
转载 android dialog 上面listview的item如何设置高度
转载:https://blog.csdn.net/coderinchina/article/details/50670505关于listview,做andriod开发都必须知道的,我写了一个简单的adapter,在这不考虑什么缓存机制就单单为了显示一下而已:public class MainActivity extends Activity { private static final St...
2018-07-04 16:30:57 453
转载 大于6.0系统 蓝牙扫描 LeScanCallback 方法 不回调
转载:https://blog.csdn.net/hepann44/article/details/72188521 问题描述公司的 app 要链接BLE蓝牙设备,最近发现在 6.0 系统,startLeScan(mLeScanCallback);回调不触发.查资料发现 >6.0 需要一个模糊位置权限才能使用蓝牙,至于为什么蓝牙需要位置权限,我也很意外.解决思路 1.1...
2018-07-04 15:50:38 570
原创 Android Path、贝塞尔曲线 自定义view
公司需求需要在每一段做暂停和播放 还有每一段时间不一样 ,所以不能整段用一个path和一个动画 ,那样时间就会根据整段的长度来平均总时间, 长度可以通过pathMeasure = new PathMeasure();mMovePath.lineTo(pointX[1], pointY[1]);pathMeasure.setPath(mMovePath, false);mLenght = (int...
2018-07-03 18:14:13 241
原创 Android GreenDao
每次都会重建数据库的问题 ,如果在最开始就需要数据库里面有大量东西(比如地址) 那么是不希望重建的greendao {// schemaVersion 1//数据库版本号// daoPackage 'cn.blemed.ems.database'//设置DaoMaster、DaoSession、Dao包名// targetGenDir 'src/main/java'//设置...
2018-06-25 16:05:17 209
原创 Android自定义view 滑动控制圆弧
项目要求需要在滑动圆弧的时候设置蓝牙针灸的强度,只能够在触碰圆弧的时候才能够滑动主要原理是1、判断手指是否触碰到的是圆弧,在Event事件的能够在ACTION_MOVE 根据触摸点到圆中心的距离, 2、通过点的x和y轴到原点的坐标通过tan算出夹角package com.example.customviewarctest.widget;import a...
2018-06-15 17:38:53 933
转载 (byte)0xaa 0xff
final byte[] datas = {(byte)0xaa };byte aa= 0xff; 用int表示为-1内存里的数是用补码存储的正数的补码=正数本身负数的补码=负数的绝对值按位取反后再加1char duan定义的是一个字节的有符号数0xff在内存中是11111111,最高位是1,说明是负数按负数补码的定义,11111111-1=11111110再按位取反=00...
2017-11-29 18:05:18 3633
原创 二进制、八进制、十进制、十六进制
二进制转十进制二进制1101 1x2的3次方+1x2的二次方+1x2的1次方+1x2的0次方转换为十进制 1x8+1x4+0x2+1x1=13
2017-10-31 17:19:12 409
原创 c++ malloc
#include #include#include void main() { double* ptd; int max; int number; int i = 0; ptd = (double *)malloc(30*sizeof(double)); long*newmem; newmem = (long*)calloc(100,sizeof(long));
2017-10-31 15:55:10 526
原创 c++ 字符串
//初始化一个大小已确定的char数组 const char m1[40] = "Limit yourself to one line's worth."; //让编译器计算数组大小 const char m2[] = "If you can't think of anything,fake it."; //初始化一个指针 const char *m3 = "\nEnough about
2017-10-31 14:26:19 193
原创 c++ 二维数组
int zippo[4][2] = { {1,2},{2,3},{3,4},{4,5} };int(*pz)[2];pz = zippo;pz++;getchar();
2017-10-31 11:01:38 297
原创 c++ const修饰指针
#include #define MONTH 12void main() { const int days[MONTH] = {11,22,33,44,55,55,66,77,88,88,99,99}; //days[4] = 11;编译错误 指向常亮的指针不能用于修改数值 double rates[5] = {88.99,100.12,59.45,183.11,11.11};
2017-10-31 10:24:12 215
原创 c++ *和++同时作用变量
total +=*start++;(start是指向数组的指针)*和++有同样的优先级 但它在结合时是从右向左进行的,这就意味着++是应用于start的而不是*start。也就是说是指针自增1,而不是指针所指向的数据自增1 ,即先把指针指向的数据加到total上然后指针在自增1,为了清晰可见 还是使用 *(strat)++.(如果程序是*++start,则变成了指针先自增1,然后再使用其所
2017-10-30 17:41:45 304
原创 linux配置ndk环境
1、echo export ANDROID_NDK_HOME=/home/quan/ffmpeg/android-ndk-r10b >> ~/.bashrc 2、echo export PATH=\$ANDROID_NDK_HOME:\$PATH >> ~/.bashrc
2017-10-24 16:13:36 441
转载 java设计模式04
其实每个设计模式都是很重要的一种思想,看上去很熟,其实是因为我们在学到的东西中都有涉及,尽管有时我们并不知道,其实在Java本身的设计之中处处都有体现,像AWT、JDBC、集合类、IO管道或者是Web框架,里面设计模式无处不在。因为我们篇幅有限,很难讲每一个设计模式都讲的很详细,不过我会尽我所能,尽量在有限的空间和篇幅内,把意思写清楚了,更好让大家明白。本章不出意外的话,应该是设计模式最后一讲了,
2017-10-19 15:31:19 210
转载 java设计模式03
第一类:通过父类与子类的关系进行实现。第二类:两个类之间。第三类:类的状态。第四类:通过中间类13、策略模式(strategy)策略模式定义了一系列算法,并将每个算法封装起来,使他们可以相互替换,且算法的变化不会影响到使用算法的客户。需要设计一个接口,为一系列实现类提供统一的方法,多个实现类实现该接口,设计一个抽象类(可有可无,属于辅助类),提供辅助函数,关系图如下:
2017-10-19 15:21:48 653
转载 java设计模式02
我们接着讨论设计模式,上篇文章我讲完了5种创建型模式,这章开始,我将讲下7种结构型模式:适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式。其中对象的适配器模式是各种模式的起源,我们看下面的图:6、适配器模式(Adapter) 适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。主要分为三类:类的适配
2017-10-19 15:19:09 181
转载 java设计模式01
设计模式(Design Patterns) ——可复用面向对象软件的基础设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真
2017-10-19 15:17:16 337
C-C++函数手册.chm
2017-05-13
android蓝牙官方demo
2017-05-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人