自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

We’re here to put a dent in the universe.

站在巨人的肩膀上成就自我

  • 博客(200)
  • 收藏
  • 关注

原创 Flutter BLE应用的开发-flutter_blue

一、写在前面的话本文主要介绍在Flutter环境下开发BLE应用。主要包含以下内容:判断蓝牙是否开启、判断是否有位置权限、扫描设备、连接设备、监听设备上报的数据(Notify)、向设备发送数据、监听设备的断开等。内容虽然简单,但是很详细。二、开始1、使用到的库 flutter_blue: ^0.7.1+1 permission_handler: "^3.2.0" # 权限 众所周知,Flutter要使用原生的能力,就需要有原生库的支持,这里我们使用了flutter_blue...

2021-08-18 16:31:43 1721

原创 Flutter与Android的相互通信

前言本来这篇文章应该讲一下Flutter的插件开发,但是在插件开发的基础是PlatformChannel,也就是Flutter与Android/iOS Native的通信,理解了这一个知识点,Flutter的插件开发也就不在话下。1.PlatformChannel概述Flutter不能完成所有Native的功能,因此需要Flutter与Native的通信,Flutter提供了一套Platform Channel的机制,来满足Flutter与Native通信的需求。下面是PlatformChan

2021-03-23 18:12:59 299

原创 软件私活几个平台

1、程序员客栈https://www.proginn.com/2、快码众包https://www.kuai.ma/crowdsourcing.html3、Coding 码市https://codemart.com/4、开源中国众包平台https://zb.oschina.net/5、码易https://www.mayigeek.com/6、人人开发htt...

2019-10-29 17:29:44 980

原创 Android 字节转化

package cn.com.heaton.blelibrary.ble.utils;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;/** * 字节的转换 * Created by jerry on 2017/4/27. */publi...

2019-07-02 14:12:28 409 1

转载 Android 小米手环蓝牙

上一篇文章中我们已经认识了gatt的基本机构以及如何获得gatt中的Service以及Characteristic,接下来我们将学习对于Characteristic的基本操作,并使用这些基本操作,来操纵小米手环,实现一些有趣的功能。我们可以大体想想一下小米手环所实现的功能:计步获取震动电量信息获取Led颜色控制User信息睡眠监测等等。这里我们选取一些有意思的功能进行实现,比...

2019-06-28 14:48:39 1520

原创 Android 蓝牙开发

蓝牙( Bluetooth®):是一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换(使用2.4—2.485GHz的ISM波段的UHF无线电波)。蓝牙设备最多可以同时和7个其它蓝牙设备建立连接,进行通信,当然并不是每一个蓝牙都可以达到最大值。下面,我们从蓝牙的基本概念开始,一步一步开始了解蓝牙。(尊重劳动成果,转载请注明出处http://blog.cs...

2019-06-28 14:46:52 268

原创 Android SQLite

在Android开发中SQLite起着很重要的作用,网上SQLite的教程有很多很多,不过那些教程大多数都讲得不是很全面。本人总结了一些SQLite的常用的方法,借着论坛的大赛,跟大家分享分享的。一.SQLite的介绍1.SQLite简介SQLite是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低...

2019-06-28 14:43:58 174

原创 IOS 多线程

多线程简单介绍进程和线程1、什么是进程 进程是指在系统中正在运行的一个应用程序,每个进程之间是相互独立的,每个进程均运行在其专用且受保护的内存空间内。  比如同时打开QQ、Xcode,系统会分别启动2个进程,通过“活动监视器”可以查看Mac系统中所开启的进程。 2、什么是线程 1个进程想要执行任务,必须得有线程(每一个进程至少要有一条线程即:主线程),线程是进程的基本执行单元,一...

2019-01-04 09:45:39 232 1

原创 IOS 音频实现以及后台播放音频

1、首先,音频播放的实现,我这里使用的是AVPlayer。 AVAudioPlayer只能播放本地资源。当然还有别的播放方法这里就不列举了。以下代码实现的是如下图所示的效果,点击图标可以暂停或者继续播放: 需要的属性:@property (nonatomic, strong) AVPlayer *player;@property (nonatomic, strong) UIImag...

2019-01-03 09:15:39 1305

原创 IOS 音频播放

对于比较短促的声音,比如系统的推送声音和短信声音,官方要求不要超过30s。开始播放NSString *filePath = [[NSBundle mainBundle] pathForResource:@"done" ofType:@"wav"];NSURL *fileUrl = [NSURL URLWithString:filePath];SystemSoundID soundID ...

2019-01-03 09:10:15 239

原创 超级App链接多个不同的设备

// 超级App链接多个不同的设备 (通信协议必须统一规定格式)。查了很多智能家居 超级App 他们一般都具备以下一些功能:1 信息反馈 :  信息功能产品信息功能需要一些,通过推送方式实时传送给相关人员。2 安全监控:  连接Wifi的摄像头,联网的电子传感器和智能烟雾报警器都可以通过实时视频、电子邮件、短信来进行屋内屋外的监控,实现全天候的安防。3 设备控制:  主要包括定时、远程控制、联动、...

2018-05-03 09:55:55 1190

原创 iphonex 适配

iPhone X 的到来,惊艳的是果粉,苦逼的是程序猿。今天升级到Xcode9.0,运行项目,所谓的全屏 iPhone X,but 页面好像也没有全屏,于是根据之前的适配经验,总算初步解决了这个问题,记录如下,以备后需。App 页面适配适配前问题:App 未全屏显示解决办法LaunchImage 中添加一个和 iPhone X 相关的启动

2018-01-03 15:31:17 398

原创 Service Android

引言Service 服务是 Android 系统最常用的四大部件之一,Android 支持 Service 服务的原因主要目的有两个,一是简化后台任务的实现,二是实现在同一台设备当中跨进程的远程信息通信。Service 服务主要分为 Local Service 本地服务与 Remote Service 远程服务两种,本地服务只支持同一进程内的应用程序进行访问,远程服务可通过AIDL(A

2017-11-07 20:34:44 357

原创 Service2

在上一篇文章中,我们学习了Android Service相关的许多重要内容,包括Service的基本用法、Service和Activity进行通信、Service的销毁方式、Service与Thread的关系、以及如何创建前台Service。以上所提到的这些知识点,基本上涵盖了大部分日常开发工作当中可能使用到的Service技术。不过关于Service其实还有一个更加高端的使用技巧没有介绍,即远程

2017-11-07 20:30:05 263

原创 Service

相信大多数朋友对Service这个名词都不会陌生,没错,一个老练的Android程序员如果连Service都没听说过的话,那确实也太逊了。Service作为Android四大组件之一,在每一个应用程序中都扮演着非常重要的角色。它主要用于在后台处理一些耗时的逻辑,或者去执行某些需要长期运行的任务。必要的时候我们甚至可以在程序退出的情况下,让Service在后台继续保持运行状态。

2017-11-07 20:17:55 243

原创 Tomcat在Linux上的安装与配置

Tomcat在Linux上的安装与配置    以下使用的Linux版本为: Redhat Enterprise Linux 7.0 x86_64,Tomcat版本为tomcat-7.0.54.1.下载JDK与Tomcat.    jdk下载地址:    http://www.oracle.com/technetwork/java/javase/downloads/j

2017-10-18 08:45:41 268

原创 手势识别 翻转算法

引子印度客户的一个需求,希望实现来电时翻转静音的功能。具体如下: 1.电话铃声到来时; 2.采取下面动作: a.手机正面翻到背面 b.手机背面翻到正面 3.来电静音,或者你喜欢的话,可以换成翻转闹铃静音;技术点1.数据来源:ACC传感器(即重力加速度传感器) 2.翻转算法:根据翻转动作的三轴原始数据变化观察,找出规律完成算法;本算法的价值

2017-10-11 17:47:01 779

原创 IOS 常用UI控件

目录下拉刷新模糊效果AutoLayout富文本图表表相关与Tabbar隐藏与显示HUD与Toast对话框其他UI具体内容下拉刷新EGOTableViewPullRefresh - 最早的下拉刷新控件。SVPullToRefresh - 下拉刷新控件。 MJRefresh - 仅需一行代码就可以为UITableView或者CollectionView加上下拉刷

2017-07-05 10:32:37 2417

原创 IOS 传感器

一 传感器什么是传感器 传感器是一种感应\检测周围环境的一种装置传感器的作用用于感应\检测设备周边的信息不同类型的传感器, 检测的信息也不一样iPhone内置的传感器有运动传感器\加速度传感器\加速计(Motion/Accelerometer Sensor)环境光传感器(Ambient Light Sensor)距离传感器(Proximity Sen

2017-07-04 13:34:51 299

原创 换肤 与 静态库

一 换肤基本的换肤功能实现选中皮肤保存至系统偏好 // 记录用户选中的皮肤 [[NSUserDefaults standardUserDefaults] setObject:skinColor forKey:@"skinColor"]; [[NSUserDefaults standardUserDefaults] synchronize];123123抽取SkinTo

2017-07-04 13:28:53 443

原创 公司开发者账号申请资料及流程

由于目前公司需要上传iosapp到appStore 现需申请苹果开发者账号 公司版的:需要以下条件支持:1  D-U-N-S Number(邓白氏编码)2 苹果开发者账号 密码3 准备一张信用卡(visa或master) 99美元4 公司的英文名称、联系方式(座机)、英文地址,公司网址 5 个人申请者的姓名、工作邮箱 电话。

2017-04-01 15:28:49 2788

原创 FMDB

版权声明:本文为博主原创文章,未经博主允许不得转载。       iOS开发常用的存储方案有两种 1)使用基于sqlite的开源框架  2)使用苹果官方的coredata。这里不讨论两类存储方式的区别,主要谈一谈基于sqlit的fmdb框架。      原生的sqlite使用上相当不友好,而且还需要自己去控制多线程的访问,比较麻烦,fmdb因其友好的api,安全的多线程操作以及大量

2016-12-17 10:58:27 390

原创 关于JPush

关于JPush极光推送是国内的服务厂商提供的一站式push服务(同时支持iOS、Android),后面也加入了即时通讯的能力供app使用。致力于打造简单、可靠、价格有竞争力的服务(简单功能全免费,高级版才收费),让应用开发商可以聚焦业务开发,push相关的技术实现全部通过极光推送来解决,仅需调用极光推送的api即可。正因为如此,开发者小伙伴们对其的评价相当不错。笔者的app新增了从服务器往

2016-12-17 10:07:25 618

原创 mysql 笔记

/* 启动MySQL */net start mysql/* 连接与断开服务器 */mysql -h 地址 -P 端口 -u 用户名 -p 密码/* 跳过权限验证登录MySQL */mysqld --skip-grant-tables-- 修改root密码密码加密函数password()update mysql.user set password=password('root'

2016-11-25 17:51:30 384

原创 Hibernate对集合属性的操作之Set集合篇 6

先说一段废话吧,本打算每天把所学的知识总结为博客的,但是昨天为什么没有写呢?没有学习吗?No,那是为什么?贪玩,对,这位同学说对了,老实说昨天感觉身体不怎么舒服,大家都知道,这其实就是为自己懒找借口,好吧,废话先唠到这儿,下面进入正题。------------------------------------------------------------------------------

2016-11-25 17:04:03 370

原创 Hibernate基本查询下篇:Hibernate聚合函数、分组查询及命名查询 5

在上一篇中,大致学习了hibernate的基本查询:HQL基本查询,今天,继续昨天的步伐,继续学习hibernate的基本查询。。。。。--------------------------------------------------------------------------------1、hql聚合函数,先大致列一下hql的聚合函数有哪些吧:在SQL中,我

2016-11-25 16:58:26 350

原创 Hibernate基本查询上篇:HQL基本查询4

紧接着上一篇,今天继续hibernate的学习总结,来聊一聊hibernate的基本查询方法,先说说HQL(hibernate Query Language):它是官方推荐的查询语言。在开始写代码之前,看看需要做哪些准备工作吧,首先,在我们的学生类中新增一个属性“clazz”,其实不加也可以,接着,我们需要重写Student.java类中的toString()方法,代码如下: /*

2016-11-25 15:57:57 304

原创 Session 缓存和持久化生命周期以及Session 基本操作3

Session缓存原理为了能够在控制台更好的看到我们的hibernate干了些什么,可以在hibernate.cfg.xml文件中写入如下配置:  print all generated SQL to the console --> property name="hibernate.show_sql">trueproperty>

2016-11-25 15:54:27 432

原创 Hibernate核心接口和工作机制2

在上一篇文章hibernate学习系列-----(1)开发环境搭建中,大致总结了hibernate的开发环境的搭建步骤,今天,我们继续了解有关hibernate的知识,先说说这篇文章的主要内容吧:Configuration类SessionFactory接口Session接口Transaction接口Query和Criteria接口下面就进行分类别地详细说明:Config

2016-11-25 15:49:13 336

原创 Hibernate学习入门教程1

其实一两个月前就在了解Hibernate方面的知识了,但一直以来,都没有好好的总结,而且一直使用的是myeclipse,感觉有些傻瓜式的操作就可以搭建起Hibernate的开发环境,但这样一点都不好,没有理解到Hibernate到底是怎么配置的,所以你今天特使用Eclipse来一步一步搭建Hibernate的开发环境,下面,正式进入正题。在Hibernate中开启日志 http://www

2016-11-25 15:48:05 409

原创 拦截器 Strut2

1、什么是拦截器(Interceptor)拦截器是动态拦截Action调用的对象。它提供了一种机制,使开发者可以定义一段代码,在Action执行之前或之后被调用执行,也可以在一个Action执行前阻止其执行,同时也可以提取Action中可重用部分的方式。通俗一点说,拦截器是一个实现了一定功能的类,它以一种可插拔的方式被定义在某个Action执行的之前或之后,用来完成特定的功能。 

2016-11-25 10:46:07 468

原创 Struts2

Struts2可以将所有标签分成如下3类:–UI(User Interface,用户界面)标签:主要用于生成HTML元素的标签。–非UI标签:主要用于数据访问、逻辑控制等的标签。–Ajax标签:用于Ajax(Asynchronous JavaScript And XML)支持的标签。Struts 2的OGNL表达式?Struts 2利用内建的OGNL(Object Graph Navi

2016-11-25 10:33:15 359

原创 01 第一个Swifit程序

01 第一个Swift程序1. print(“Welcom swift class !”)//1、标识符        //开发过程中给变量、常量、方法、函数、枚举、结构体、类、协议等指定的名字。        //标识符区需要有一定的规范、分大小写!        //由大小写字母A-Z、下划线_、Unicode、数字、

2016-10-24 17:34:10 395

原创 // 处理日期的格式

class func changeDateTime(_ publish_time:Int) -> String {        // 把秒转化成时间        let publishTime =Date(timeIntervalSince1970:TimeInterval(publish_time))                let date

2016-10-24 17:32:06 312

原创 Object-C 中各数据类型转换 NSData转NSString,Byte,UIImage

1,NSData 与 NSString  NSData --> NSString  NSString *aString = [[NSString alloc] initWithData:adata encoding:NSUTF8StringEncoding];  NSString --> NSData  NSString *aString = @"1234";  NSData

2016-09-07 18:08:23 271

原创 蓝牙数据 传来数据值处理

最近开始学IOS开发,正做蓝牙测试。我们有4.0外设,用pad连接,接收数据。在接收数据过程中,还是遇到了问题:用readValue后读不到value的值。困扰了大半天,现在分享下解决心得,供其他新手参考。由于本人也是水货,写的不好的地方请提出讨论,勿喷。程序中,搜索设备,搜service UUID ,找characteristic 等就不讲了,这方面网上资料还是挺多的。现在就

2016-09-07 17:58:21 951

原创 iOS 蓝牙 基本流程

一、服务端(也叫周边设备吧。。脑残的翻译)1.实现类必须遵守协议 CBPeripheralManagerDelegate2.需要的主要类有:@property(strong,nonatomic) CBPeripheralManager *peripheraManager;@property(strong,nonatomic) CBMutableCharacteris

2016-09-07 17:56:46 356

原创 iOS支持很多种键盘类型

iOS支持很多种键盘类型,在不同的使用情境下使用不同的键盘类型会大大提高便利性,以下为iOS 9下支持的键盘类型:1、UIKeyboardTypeDefault,常用于文本输入2、UIKeyboardTypeASCIICapable,常用于密码输入3、UIKeyboardTypeNumbersAndPunctu

2016-08-23 16:13:34 526

原创 蓝牙 穿戴手环通信原理

1 前言当前有越来越多的可穿戴设备使用了蓝牙4.0 BLE(Bluetooth Low Energy)。对于iOS开发而言,Apple之前专门推出CoreBluetooth的Framework来支持BLE的开发。对于硬件开发有了解的朋友应该知道,在之前使用低版本的蓝牙的设备,要连接到iOS设备上,需要注册MFI,拥有MFI协议才能进行相应的开发。如果大家关注我之前对LEGO EV3的研

2016-05-28 18:12:48 13524

原创 Strut2.0 底层分析

在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处?设计目标    Struts设计的第一目标就是使MVC模式应用于web程序设计。在这儿MVC模式的好处就不在提了。技术优势    Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The Java Serv

2016-05-28 11:34:39 396

空空如也

空空如也

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

TA关注的人

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