AndroidThings之First App With Raspberry Pi 3

一、物料準(zhǔn)備

二、創(chuàng)建Android Things項(xiàng)目

1. 新建Android Studio項(xiàng)目

Android Things項(xiàng)目和普通的Android App項(xiàng)目結(jié)構(gòu)相同,直接在Android Studio中新建項(xiàng)目

  • 項(xiàng)目類型:手機(jī)和平板
  • Minimum SDK :API 24: Android 7.0(Nougat)
  • 選擇Empty Activity
  • 可以取消創(chuàng)建布局文件和向后兼容選項(xiàng)
    creates activity
    creates activity

2. 在app級(jí)別的gradle文件中添加依賴

dependencies {
    ...
    provided 'com.google.android.things:androidthings:0.1-devpreview'
}

3. 配置manifest文件

  1. 在manifest文件中添加things shared library
<application ...>
    <uses-library android:name="com.google.android.things"/>
    ...
</application>
  1. 聲明MainActivity
    因?yàn)樵摮绦蜻\(yùn)行在嵌入式設(shè)備上,需要在manifest中聲明一個(gè)Activity作為程序的主入口,該Activity需要添加一個(gè)intent filter,包含一下屬性:
<application
    android:label="@string/app_name">
    <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>

        <!-- 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>

4. 打印可用的General Purpose Input/Output(GPIO)端口

系統(tǒng)服務(wù)PeripheralManagerService負(fù)責(zé)管理外設(shè)的連接,可以使用該服務(wù)列出所連接外設(shè)的所有可用GPIO端口。

public class MainActivity extends Activity {
    private static final String TAG = "MainActivity";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 創(chuàng)建PeripheralManagerService的實(shí)例
        PeripheralManagerService service = new PeripheralManagerService();
        // 打印可用的GPIO端口
        Log.d(TAG, "Available GPIO: " + service.getGpioList());
    }
}

三、連接設(shè)備并運(yùn)行程序

啟動(dòng)樹莓派并通過adb工具連接到樹莓派,可以參考《AndroidThings之Start With Raspberry Pi 3》,連接成功后在Android Studio運(yùn)行項(xiàng)目,選擇安裝到樹莓派。

選擇安裝到樹莓派
選擇安裝到樹莓派

運(yùn)行成功后可以看到logcat中看到打印打端口列表

logcat
logcat
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容