標籤:puts iss pos manage roi htm main detail ati
http://blog.csdn.net/p106786860/article/details/60161020
——————————————————————————————————————————————————————————————————————————————————————
在前面的章節,我們利用官方的sample-simplepio項目的blink模組,給大家示範了如何匯入和運行現成的Android Things工程。那麼這個章節,我們來手把手的給大家示範,如何從零開始建立、開發和運行一個Android Things項目。
1.前期準備
在你開始建立你的Android Things項目之前,你必須完成以下事情:
更新你的SDK工具為24或者更高版本,更新的SDK工具可以讓你能構建和測試Things應用。
更新你的SDK為Android 7.0(API 24)或者更高,更新的平台版本為Things應用提供了新的API。
Android Studio->Tools->Android->SDK Manager,如:
2.建立項目
前面我們已經看到了Android Things項目的開發環境、開發工具、項目結構和Android項目都是一致的,其實它就是一個Android項目。那麼我們新建立一個Andoird項目ThingsDemo。
注意:建立和更新你的應用項目,為了訪問Things新的API,你必須建立一個項目或者修改一個已存在的項目,它的目標為Android7.0(API 24)或者更高;
4.添加庫
Android Things裝置通過support library公開API,它並不是Android SDK的一部分。在你的app中聲明Things Support Library依賴。
在你的應用層級的build.gradle檔案中添加依賴映射:
ThingsDemo\app\build.gradle
[plain] view plain copy
- apply plugin: ‘com.android.application‘
- android {
- ... ...
- }
- dependencies {
- compile fileTree(dir: ‘libs‘, include: [‘*.jar‘])
- ... ...
- provided ‘com.google.android.things:androidthings:0.1-devpreview‘
- }
在你的資訊清單檔中添加things共用庫條目:
ThingsDemo\app\src\main\AndroidManifest.xml
[html] view plain copy
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.chengxiang.thingsdemo">
- <application
- android:allowBackup="true"
- android:icon="@mipmap/ic_launcher"
- android:label="@string/app_name"
- android:supportsRtl="true"
- android:theme="@style/AppTheme">
- <uses-library android:name="com.google.android.things"/>
- ... ...
- </application>
- </manifest>
5.聲明主Activity
一個想運行到嵌入式裝置的應用,必須在資訊清單檔中聲明一個Activity,作為系統啟動後的主入口。應用程式套件含下面屬性的Intent Filger;
Action:ACTION_MAIN
Category:CATEGORY_DEFAUULT
Category:IOT_LAUNCHER
ThingsDemo\app\src\main\AndroidManifest.xml
[html] view plain copy
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.chengxiang.thingsdemo">
- <uses-library android:name="com.google.android.things"/>
-
- <application
- ... ...
- android:theme="@style/AppTheme">
- <activity android:name=".MainActivity">
- <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>
- </manifest>
6.編譯運行
這裡我們嘗試使用gradle構建任務的方式編譯和運行項目,運行如下:
[plain] view plain copy
- C:\Users\chengxiang.peng.QUNARSERVERS\AndroidThingsSources\ThingsDemo>gradle app:installDebug
- Starting a Gradle Daemon, 1 incompatible and 2 stopped Daemons could not be reused, use --status for details
- Incremental java compilation is an incubating feature.
- The TaskInputs.source(Object) method has been deprecated and is scheduled to be removed in Gradle 4.0. Please use TaskInputs.file(Object).skipWhenEmpty() instead.
- :app:preBuild UP-TO-DATE
- ... ...
- :app:installDebug
- Unable to get density for device iot_rpi3 - 7.0
- Installing APK ‘app-debug.apk‘ on ‘iot_rpi3 - 7.0‘ for app:debug
- Installed on 1 device.
- BUILD SUCCESSFUL
- Total time: 1 mins 31.038 secs
[plain] view plain copy
- C:\Users\chengxiang.peng.QUNARSERVERS\AndroidThingsSources\ThingsDemo>adb shell am start com.chengxiang.thingsdemo/.MainActivity
- Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.chengxiang.thingsdemo/.MainActivity }
提示1:運行adb shell am start com.chengxiang.thingsdemo/.MainActivity命令的時候,報錯error:unknown host service
分析1:因為運行adb命名需要使用5037連接埠,應該是某個程式佔用的該連接埠,故報錯。
處理1:找到佔用連接埠的程式,並殺死。
1.新技術,新未來!歡迎大家關注“1024工場”服務號,時刻關注我們的最新的技術訊息。2.拋棄各種找元器件的煩惱,來“1024工場”微店,一次性買到你所想要的。3.加入“Android Things開發”QQ討論群,一起學習一起Hi。(甭客氣!盡情的掃描或者長按!)
Android Things:擼起袖子來建立第一個Things工程