首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

《Android BLE 开发》--初学者

本作者是一位初学者,之前学过JAVA,只学过三天。《BLE Tool》也是我一个项目,因为作者学习加开发只用了10天时间,目前只是把所有接口打通了,只提供如何怎么实现。...device)) { mSearchBluetoothList.add(device); mBLENameList.add(device.getName()); } } } }); } }; 4.扫描到的设备添加到...从第5点到第10的最终事项都需要调用回调函数,调函数的实现,在MainActivity.java中添加以下代码: private final BluetoothGattCallback mGattCallback...intent = new Intent(action); sendBroadcast(intent); } private void broadcastUpdate(final String action..., final BluetoothGattCharacteristic characteristic) { final Intent intent = new Intent(action); final

84920
您找到你想要的搜索结果了吗?
是的
没有找到

Android训练课程(Android Training) - 构建你的第一个应用

构建你的第一个应用(app) 欢迎来到开发! 这个课程教你如何构建你的第一个应用。你讲会学到如何去创建一个工程和启动一个可以调试的应用的版本。...你将会学到一些设计的基础,包括如何构建一个简单的用户界面和处理用户输入。...如何启动你的应用依赖这两项:你是否拥有一个真实的动力的设备,和你是否使用Eclipse。...在真实设备上运行 如果你拥有一个动力的设备,在这里展示了你如何安装和启动你的应用: 1.使用USB线将你的设备插入到你的开发机器(译者注:可能是电脑)上,如果你使用window是开发,你可能需要为你的设备安装适当的...为了在下一个 activity去查询这个扩展数据,你应该使用常量为intent的这个扩展数据定义一个key。

2.1K00

增加或修改现有app apk的功能(apk功能扩展)

摘要: 增加或修改apk android apk app的功能(apk功能扩展)标签: smali,反编译apk,apk修改,apk合并,android app 功能扩展 现有apk不能满足需要...反编译到m目录下面;6、编译命令:java -jar apktool.jar b -f m -o a.apk#m目录下面smali代码编译生成a.apk文件;二、为现有apk添加一个窗体。...= new Intent(context,MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);...4、合并资源文件;副apk的窗体使用到的资源文件复制到主apk的资源目录里面;res\layout\目录下的布局文件;res\drawable\使用到的图片;5、合并smali目录;在主msali目录中...副apk窗体影响主apk的运行。从而达到增加或修改已有apk的功能。8、编译修改后的主smali代码;9、签名编译后的apk文件;10、运行测试合并后的apk,如果报错,根据错误信息修改。图片

56420

第五夜 维纳斯的诞生

之前各讲中,分别讲解了的开发环境、架构和基本概念。从这一讲开始,我制作一个简单的应用,并通过逐步升级它的功能,连带出开发的多个情境。 《维纳斯的诞生》是文艺复兴早期名画。...从第四夜 概念漫游(下)中,我们已经知道,这个XML文件描述了一个视图树。...当应用启动时,调用onCreate()方法。该方法有一个Bundle类型的参数,记录Activity的状态,我将在以后讲解。...可以注意到,中用R来代表资源。 监听按钮的点击事件。因为我们在activity_main.xml中定义了按钮的id,所以可以使用findViewById方法,便捷的引用按钮。...View元素可以使用setOnClickListner()方法,为点击事件增加OnClickListener类型的监听对象。 用户点击按钮后,执行监听对象的onClick()方法。

1.4K70

第五夜 维纳斯的诞生

之前各讲中,分别讲解了的开发环境、架构和基本概念。从这一讲开始,我制作一个简单的应用,并通过逐步升级它的功能,连带出开发的多个情境。 《维纳斯的诞生》是文艺复兴早期名画。...从第四夜 概念漫游(下)中,我们已经知道,这个XML文件描述了一个视图树。...当应用启动时,调用onCreate()方法。该方法有一个Bundle类型的参数,记录Activity的状态,我将在以后讲解。...可以注意到,中用R来代表资源。 监听按钮的点击事件。因为我们在activity_main.xml中定义了按钮的id,所以可以使用findViewById方法,便捷的引用按钮。...View元素可以使用setOnClickListner()方法,为点击事件增加OnClickListener类型的监听对象。 用户点击按钮后,执行监听对象的onClick()方法。

1.1K30

物联网项目 | LeanCloud+树莓派+实现住宅环境异常告警系统

完成后的树莓派和传感器 目录 前言 目录 物料清单 软件架构 室内环境条件监控模块 手机监视APP模块 硬件模块使用 DHT11温湿度传感器 MQ-2烟雾传感器 云后端接入与使用用户端接入LeanCloud...数据及消息推送SDK LeanCloudSDK初始化 LeanCloud消息推送服务初始化 LeanCloud消息推送服务接入完成测试 为用户端监测硬件 —— 树莓派接入LeanCloud...云后端的作用就是充当手机APP和物联网硬件之间的桥梁,也就是我们的树莓派和APP之间用于推送消息以及保存传感器数据的中间人。...为用户端接入LeanCloud数据及消息推送SDK 按照官方文档中对于Java SDK的说明,在Android Studio中使用Gradle引入LeanCloud的数据存储和消息推送的Java SDK...App详细设计 为了减少项目复杂度,本项目采用最简单的开发模式:MVC。一个MainActivity和对应界面即可。

1.3K21

第十夜 亚当的诞生

这一讲我介绍如何内部直接进行HTTP通信。 《亚当的诞生》,西斯廷礼拜堂的吊顶画,米开朗基罗之作。当时的教皇强迫沉迷于雕塑的米开朗基罗画巨幅壁画。...描述 这一讲中,我将使用JSON,数据库备份到远程的数据库中。反过来我也将从远程数据库中抓取条目,并放入数据库。...相关的知识点包括: 线程 HTTP通信 JSON 增加ActionBar 我首先在首页上增加一菜单,用于触发下载和上传功能。这是通过ActionBar实现的。...MainActivity继承ActionBarActivity。这样,MainActivity页面的顶端增加一条ActionBar。接下来,我要覆盖ActionBarActivity的两个方法。...HTTP获得数据 下一步,我增加"Download"按钮点击后的功能。按钮点击后,应用访问互联网,并获得URL指向的.js文件。

1.1K90

第八夜 玛丽莲梦露

事件发生后,调用的该方法。我们用setOnClickListener的方法,让MainActivity同时监听两个按钮的点击事件。当事件触发后,调用onClick()方法。...可以看到,点击id为category的按钮后,启动CategoryActivity按钮。这就是我们下一步将要编写的。...使用ArrayAdapter CategoryActivity将以条目的方式来显示数据库中存储的所有Category,即联系人的类别。我在上一讲中,已经数据存储到了SQLite数据库中。...提供了ArrayAdapter类,可以综合以上功能。它可以为每个数据元素赋予相同的视图格式。ListView与ArrayAdapter绑定后,就可以动态的调整条目了。 ?...使用setTag()优化CategoryAdapter 上面已经提到,ArrayAdapter可以通过重复利用条目视图,来优化应用的效率。

1.9K90

天气预报app(三)——城市管理、数据库操作

✅简易的天气app(一)——解析Json数据数据类封装 ✅简易的天气app(二)——适配器、每小时数据展示 简易的天气app(三)——城市管理、数据库操作 ✅简易的天气app(四)—...(源码见页尾✨) 本项目用到的天气api接口天气api 详细操作内容见第一篇-->简易的天气app(一)——解析Json数据<-- 此接口当我们默认不拼接参数,直接访问会得到当前位置的温度Json...所以接下来就是进行SQLite数据库的一些操作,把当前位置信息保存到数据库中(城市名,城市温度,更新时间) 待实现效果: 数据库成功插入当前位置数据信息(之前测试插入过几条的测试对照用数据):...一些基本的方法写好后就是MainActivity.java文件,用Intent跳转到城市管理界面,注意先引入数据库操作工具 DBUtils dbUtils = new DBUtils(MainActivity.this...intent = new Intent(CityManagerActivity.this,MainActivity.class); intent.putExtra("selectedCity

1.5K30

第八夜 玛丽莲梦露

事件发生后,调用的该方法。我们用setOnClickListener的方法,让MainActivity同时监听两个按钮的点击事件。当事件触发后,调用onClick()方法。...可以看到,点击id为category的按钮后,启动CategoryActivity按钮。这就是我们下一步将要编写的。...使用ArrayAdapter CategoryActivity将以条目的方式来显示数据库中存储的所有Category,即联系人的类别。我在上一讲中,已经数据存储到了SQLite数据库中。...提供了ArrayAdapter类,可以综合以上功能。它可以为每个数据元素赋予相同的视图格式。ListView与ArrayAdapter绑定后,就可以动态的调整条目了。 ?...使用setTag()优化CategoryAdapter 上面已经提到,ArrayAdapter可以通过重复利用条目视图,来优化应用的效率。

59910

第六夜 凡高的自画像

利用Intent,启动一个新的Activity。 文本输入。增加EditText输入栏,让用户输入文本信息。 数据存储。数据存入SharedPreferences,跨Activity读取。...在提交数据后,这个Activity通过EditText的getText()方法获取字符输入。提交的字符串将使用SharedPreferences存储起来。...使用SharedPreferences.Editor类对象写入数据时,我们调用了putString()方法,以存储字符串类型的数据值。commit()方法执行写入。...该方法执行后,新的SelfEditActivity压入栈顶,成为激活的Activity,而MainActivity暂停。 另一方面,我把数据读取部分放入了onResume()方法。...根据的规定,MainActivity第一次运行,以及每次从暂停中复苏时,都会调用该方法。用户在SelfEditActivity修改返回后,就可以立即获得最新的数据

1.1K70

全栈工程师必备:移动端手机开发,第六课

本系列课程 致力于老手程序员可以快速入门学习开发。系统全面的从一个.Net程序员的角度一步步学习总结开发。...上篇课程:一步步从基础到精通自学教程,纯实战,纯干货(五) 简单计算器程序 前台界面如何与后台处理类联系在一起。 上一课我们已经把计算器的前台页面搭建完成了,本次我们实现真正的加法计算器功能。...程序的开发类似于我们学习过的ASP.Net和Winform ,也有前台页面和后台处理程序之分。 所对应的处理程序在这里 不知大家有没有发现。这两个对应的命名方式或有有些规律。是的 。...如图: 所以说 我们这个MainActivity绑定的就是activity_main这个前台界面。 ? 2.前台控件如何与后台处理类联系在一起?...如何获取文本框输入的字符 ? 分析需求: 流程:获取到文本框1和文本框2用户输入的数字 , 点击按钮3时 后台会把前两个数据相加,反馈给4显示。 ? 要想实现很简单: 前台界面: ? ?

53830

BS1057-基于+websocket实现互联网轻博客系统

基于的互联网轻博客系统的设计与实现,系统主要采用+mysql数据技术,通过实现用户注册登录,用户线上发布博客,用户个人资料管理,博文分享等功能,以实现博客资源在朋友圈之间的分享传递,原文地址一、...程序设计本次基于的互联网轻博客系统,主要内容涉及:主要功能模块:用户注册登录,用户线上发布博客,用户个人资料管理,博文分享等功能等主要包含技术:java,,html,javascript,mysql...主要包含算法:数据分析计算等二、效果实现系统效果图片其他效果省略核心代码 public void onClick(View v) { Intent intent=null;...intent = new Intent(LoginActivity.this, MainActivity.class); startActivity...=new Intent(this,RegisterActivity.class); startActivity(intent); overridePendingTransition

36020
领券