转载请注明原创出处,谢谢!
- GitHub: @Ricco
树莓派3B+ 暂时不支持,跑不起来
如果没有看以前的文章,你的树莓派,连Hello Word都运行不起来,请移步到起那么的文章。先运行一个Hello Word在来看这篇文章。
《Android Things 第二步,树莓派,Raspberry Pi》
在万能的淘宝网,购买了Android Things全家桶后,开始了我真正的开发。
我在开发的时候,永远不是上了就写,先运行别人的案例,在开发自己的东西。你连别人写好的都运行不起来,自己写的怎么玩?
首先感谢淘宝卖家的案例我一一实现了几个,今天拿比较有意思的一个案例,来举例。
案例和警察叔叔的车类似,红色和蓝色的二极管交替闪烁,按下按钮,蜂鸣器会发出声音。
卖家给的案例连接《Android Things入门配件包开发案例教程-报警灯》
按照连接图连接好线路以后,在Github上也下了代码,如果这个时候你还安装我的文章《Android Thigns 第四步,程序安装》来运行程序,程序是会崩溃的。
原因是Android Things运行时权限的问题。
这个问题很X疼。Android Things规定了最低的运行版本,可是树莓派这个东西,是一个和硬件打交道的东西,运行时权限是不应该存在的,很不合理,但是没有办法。
所以我们要换一种安装方式。让他免权限安装,使用adb来完成。
下面列出常用的5个adb命令。
-
adb connect 192.168.x.xxx
adb connect 【IP地址】
连接设备 -
adb shell pm list packages
列出所有安装的应用的包名 -
adb uninstall com.xxx.xxx
-
adb uninstall 【包名】
卸载应用指定包名的应用(将我们的应用打包好以后,如果以前你用文章4的方法安装了应用,再用下面的adb命令安装,是安装不上的,必须先卸载,才能重新安装) -
adb install -g D:\xxx\xxx.apk
-
adb install -g 【绝对路径】
免权限安装指定路径的应用 -
adb shell am start -n com.xxx.xxx/ com.xxx.xxx.MainActivity
-
adb shell am start -n 【包名】/ 【主页面】
运行应用
ps:网上有人给了一种方法,说是直接安装上去(用文章4的方法,直接点击绿三角run),第一次应用会破溃,这时候重启树莓派,就不会报错了。我用这个方法的时候是没有任何作用的。但是他们写出来,说明成功过,我怀疑是文件配置的对MainActivity进行了配置,如下
<application>
<uses-library android:name="com.google.android.things"/>
<activity android:name=".MainActivity">
<!-- 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>
<!-- 开发的时候建议用上面那个,下面这个如果App崩溃会重新启动,不利于调试 -->
<!-- Launch activity automatically on boot, and re-launch if the app terminates. -->
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
</application>
我没有进行验证,说不定,真的可以。。。
![](https://img.haomeiwen.com/i12696679/e610cbfaa8e294d6.jpg)
![](https://img.haomeiwen.com/i12696679/06be044d19ce2b64.png)
网友评论