树莓派+Android Things
来源:互联网 发布:大数据行业什么意思 编辑:程序博客网 时间:2024/05/16 11:39
在开始之前
谷歌前不久发布了Android Things面向物联网的系统,用意是想让android开发者用原来开发app的方式开发硬件相关的应用,扩展了android开发的方向和前景,而谷歌的Android Things已经支持了主流的几个面向互联网的几个芯片(Intel® Edison,NXP Pico i.MX6UL,Raspberry Pi 3)。鉴于开发难度和集成度高低的选择,选择了树莓派作(Raspberry Pi 3)作为实践的。
1.材料准备
材料都可以在淘宝上轻易购买的,包括树莓派主板,sdcard(最好8g或者以上),sdcard读卡器,电源,HDMI转VGA转换器(如果显示器支持hdmi可以直接用HDMI线,因为树莓派主板视频口是HDMI),网线。
2.刷系统镜像
(1)首先需要下载Android Things系统镜像,目前最新的android Things是预览版,可以到下面的地址下载相对应芯片的系统镜像。
Android Things镜像地址 https://developer.android.google.cn/things/preview/download.html
(2)用sdcard读卡器连接sdcard到电脑上。
(3)解压刚才下载的系统镜像。
(4)需要下载写入镜像到sdcard的工具根据不同系统自己选择,本教程首选windows系统可以到https://sourceforge.net/projects/win32diskimager/ 这个网站下载Win32 Disk Imager工具。运行win32 DiskImager ,最右边选择你sdcard的盘符(备注不要选到了其他的硬盘或移动存储设备,导致造成不必要的损失),然后选择镜像路径,再然后点击write等待写入结果。写入完后把sdcard插到树莓派上,插上网线(网线另一端连接路由),插上视频输出线连接到显示器,USB数据线连接电脑到树莓派,树莓派就会开始启动系统了,系统启动后,屏幕会出现局域网的ip。
(5)打开命令行工具,输入下面命令(ip -address就是显示器上android things系统显示的界面),不出情况的话就提示connected to <ip-address>:5555 这样就成功连接到树莓派。
adb connect <ip-address>
3.连接WIFI
如果不想每次调试都要电脑连接树莓派的话,可以设置树莓派连接wifi(必须要完成上面连接到树莓派才能设置无线wifi连接)
(1)发送意图到Android Things的wifi服务模块的命令如下
$ adb shell am startservice \ -n com.google.wifisetup/.WifiSetupService \ -a WifiSetupService.Connect \ -e ssid <Network_SSID> \ -e passphrase <Network_Passcode>
(2)通过adb 的logcat确定你的连接是否成功
$ adb logcat -d | grep Wifi
输入命令行后,不出情况一般出现下面的输出
...V WifiWatcher: Network state changed to CONNECTEDV WifiWatcher: SSID changed: ...I WifiConfigurator: Successfully connected to ...
(3)测试你的树莓派是否能访问外网,命令
$ adb shell ping 8.8.8.8PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=6.67 ms64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=55.5 ms64 bytes from 8.8.8.8: icmp_seq=3 ttl=57 time=23.0 ms64 bytes from 8.8.8.8: icmp_seq=4 ttl=57 time=245 ms
4.编写Android Things程序(Android Studio编写)
在开始编写Android Things程序之前,
(1)确保你的sdK tools版本是24或者24以上
(2)确保你的sdk 支持API支持24或者更高版本。
添加依赖
(1)往app的模块里的build.gradle文件添加如下依赖
dependencies { provided 'com.google.android.things:androidthings:0.1-devpreview'}
(2)往 manifest .xml文件添加
<application ...> <uses-library android:name="com.google.android.things"/> ...</application>
声明主Activity
要把应用运行在嵌入式设备(本教程中的树莓派),必须包含一个 CATEGORY_LAUNCHER 这样的Intent Filter,这样,才能在部署和调试应用的时候,Android Studio才能启动默认的Activity。
具体需要在Manifest声明的设置如下。
<application android:label="@string/app_name"> <uses-library android:name="com.google.android.things"/> <activity android:name=".HomeActivity"> <!-- Launch activity as default from Android Studio --> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> <!-- Launch activity automatically on boot --> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.IOT_LAUNCHER"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity></application>
0 0
- 树莓派+Android Things
- 树莓派3 + Android Things
- 树莓派Android Things物联网开发:创建一个Things项目
- 树莓派开发板Android Things镜像烧录
- 基于树莓派的 Android Things 开发环境
- Android Things:“1024工场”店铺开张啦!树莓派套装首发—专为Android Things打造!
- 树莓派遇见Android Things(一):Raspberry Pi 3B安装Android Things
- Android Things之---Android Things专题讲解
- Android与Android Things
- Android Things简介
- Android Things来了
- Android Things简介
- Android Things 开发
- Android Things HelloWorld
- Android Things 入门篇
- Android Things在 #io17
- Android Things资源汇总
- Android things Wifi setting
- HTML5学习笔记9-编辑API之Range对象(二)
- JS作用域
- Centos 安装Java配置环境变量
- How to Change Default Web ADI Upload Parameters for FlexField Import / Validation
- 在centos7中发布django项目
- 树莓派+Android Things
- 二叉树水平遍历
- MangoDB在java中的实现
- CCNA考试复习总结
- JavaScript函数作用域
- FragmentPagerAdapter与FragmentStatePagerAdapter区别
- win sc 命令使用记录
- 本人在使用PopupMenu,遇到的问题,和解决过程
- 367. Valid Perfect Square