android蓝牙锁,android 蓝牙锁应用实例开发(一) 简介-Go语言中文社区
本人水平有限,文章中如果出现什么不正确或者模糊的地方,还请各位小伙伴留下评论,多多指教 : )
前记
咳咳,这是小生第一次写博文,所记录的内容也是小生第一次所做的较为完整且复杂的一个项目。之所以写下来,一方面是积累宝贵经验,自己可以多多复习,若能对一些其他正在坑中徘徊的朋友起到些帮助,那当然是更好的啦~另一方面……好吧,小生学生党,也算是为将来找工作打下些资本吧(目前而言,这个才是最大的动力吧- -。。)
本系列博文将分为若干篇文章,将全方位地讲解项目实践当中遇到的问题。当然了,本系列的博文自然也参考了其他非常多的博文,届时我将一一附上原博文链接,以供大家参考。同时也非常感谢那些博文的作者,正是他们的……(无数赞美之词),才能有如今这一系列的文章。
啰嗦了这么多,最后,若文章中出现什么不妥支出,还望大家多多包涵,同时热烈欢迎大家指正项目当中的错误,小生将不尽感激!
项目简介
本项目是一个手机端app控制蓝牙锁的案例,既有软件端的编程(android app)又有单片机的编程(arduino开发板),具体涉及到的技术有如下几个内容:
【android客户端蓝牙相关操作】:
蓝牙的打开和关闭
附近蓝牙设备的扫描
将扫描到的设备以列表的方式在客户端显示
连接蓝牙设备
手机客户端与单片机之间的数据通信
【android客户端UI及主要功能实现】:
打开客户端的图形锁界面
Fragment的使用
自定义listView的使用
android 自带数据库 sqlite的使用
【硬件端线路连接及编程】:
蓝牙模块的使用
arduino 单片机编程
控制电子锁
因此在项目正式开发前,大家应该准备的内容有:
arduino单片机
蓝牙模块 BlueTooth Bee 2.0
android 开发环境 android studio
具体的配置过程可参考
史上最详细的Android Studio系列教程一–下载和安装
arduino 开发环境下载
具体参考 Arduino教程汇总贴
接下来,我们来简单地看看整个系统的架构
系统设计
【需求分析】
客户端将有如下需求
硬件端将有如下需求:
android客户端整体的框架待整个项目编写完成后再在此处附上。
在本篇文章的最后附上几张效果图
有兴趣的小伙伴可以去看看源码(当时写的比较水(:з」∠)……阅读性不是很强,慎阅)
GitHub地址:https://github.com/huyifan/BlueTooth_lock
android蓝牙锁,android 蓝牙锁应用实例开发(一) 简介-Go语言中文社区相关推荐
- mysql隐式锁定辅助索引_当Mysql - InnoDB行锁遇到复合主键和多列索引-Go语言中文社区...
背景 今天在配合其他项目组做系统压测,过程中出现了偶发的死锁问题.分析代码后发现有复合主键的update情况,更新复合主键表时只使用了一个字段更新,同时在事务内又有对该表的insert操作,结果出现了 ...
- 拼写检查工具是android,Android的文本和输入---拼写检查器(一)-Go语言中文社区...
Android平台提供能够让你在应用程序中执行和访问拼写检查的拼写检查器框架.这个框架是由Android平台提供的文本服务API之一. 要在应用程序中使用该框架,你就要创建一个特殊的Android服务 ...
- android 开源图表动画,Android 图表开发开源库MPAndroidChart-Go语言中文社区
上面是APP中实现的效果图(点击可以放大查看) 图1的效果不是用这个实现的,如果感兴趣可以参考我这篇文章 Android渐变圆环 总体来说,MPAndroidChart可能是目前Android 开发 ...
- 荣耀5a android go,vue项目解决android版本过低引起兼容问题(例如华为荣耀6)-Go语言中文社区...
问题描述: 在项目中发现在华为荣耀6手机上,出现页面白屏,抓包后显示接口调用并没有执行,查找后认为是android版本过低(升级测试android4.4.2已是华为荣耀6的最新系统). 华为荣耀6:a ...
- vue开发android tv,h5做APP TV(电视端APP vue框架)-Go语言中文社区
先px转rem,然后把psd上传蓝湖,把尺寸改为750的图纸,按照上面的尺寸来写代码 1.安装px2rem-loader npm install px2rem-loader 2.配置px2rem-lo ...
- Android心电数据分析,Android SurfaceView+Canvas画脉搏/心电数据图-Go语言中文社区
实际演示效果: Canvas 画图基本步骤: 1.布局添加一个SurfaceView<?xml version="1.0" encoding="utf-8" ...
- 管理学生信息android,Android 学生信息管理系统-Go语言中文社区
android:layout_width="fill_parent"android:layout_height="wrap_content"android:gr ...
- java adt简单开发,android java开发 第一天 之熟悉eclipse adt-Go语言中文社区
1.下载并安装好android-sdk后(android-sdk里包含了android 1.6 ~ android4.0的所有api,支持各种版本的android) 2.下载adt(android d ...
- android go怎么安装,Android studio3.0安装教程-Go语言中文社区
Android studio是目前开发Android主流的软件 但是因为被墙缘故 ,导致很多人一直refreshiing gradle project 或者其他安装问题 网上虽然有很多解决方法,但是大 ...
最新文章
- MySQL 性能调优之存储引擎
- 将Spring Boot作为守护进程启动的一种简单的方法
- 信息安全系统设计基础第三周学习总结—20135227黄晓妍
- Invalid Gradle JDK configuration found_带你了解Gradle编译速度是如何提升70%的
- 三次握手和四次挥手图解_TCP三次握手和四次挥手详解
- python面试100讲
- 动手学深度学习Pytorch Task01
- lm358 pdf应用电路资料及引脚图
- android最好的数独游戏,安卓好数独游戏是哪个?
- java 梯形校正_高清投影神器 联想YOGA平板2 Pro评测
- 21年11月第二周 力扣每日一题记录
- Caused by : java.lang.NoSuchMethodError
- INNODB记录格式
- 【无标题】HTMLCSS学习总结
- libiconv库编译undefined reference to `aliases_lookup‘
- 《第一财经周刊》不一样的Startup:中国创业者喜欢时尚娱乐
- 虚拟机是什么?有什么用
- 台式计算机耳机有杂音怎么办,电脑耳机有杂音滋滋怎么办
- 福彩3d开奖结果接口文档及示例分享
- Fiddler 如何抓取手机app包以及抓取https 响应
热门文章
- typescript笔记一:基础类型
- 最短路:路径还原(dijkstra,模板)
- /usr/include/c++/7/bits中头文件被破坏/环境破坏
- 【中国善网】ESG周报:小鹏汽车发布ESG报告,领跑国产运动品牌
- oracle asm 更换主机,oracle rac 迁移asm 方式更换主机
- hexo双线部署coding+github pages,实现https并开启又拍云CDN全站加速
- react如何控制全局loading_React Loading组件的正确姿势
- 如何做一个超级马里奥顶方块的效果
- 【总结】Python数据处理-操作Excel
- android 放大镜功能,Android实现放大镜效果的方法实例(附源码)