Android ThingsでClovaを動かしてみた
Kenichi Nakahara
Clova Development Dept.
Clova開発4チーム
Clova開発室
ABOUT ME
スマートプロダクトチーム
New
Products
● Android デバイスへ簡単に Clova を実装可能な Clova Client SDK
を開発した
● この SDK を用いて Raspberry Pi3 上の Android Things で Clova
を動かしてみた
● 競合他社と同じく開発者やデバイスメーカーの方が簡単に Clova
をRaspberry Pi3上で動かせる環境を構築できた
OVERVIEW
Clova Client SDK
SDKを用意してClova対応デバイスを拡大したい
EXPAND Clova DEVICES
https://www.amazon.co.jp/b?ie=UTF8&node=5364388051
Google
Google Assistant SDK for devices
Linuxデバイス用のSDKをリリース済み
COMPETITORS
Amazon
AVS Device SDK
https://developer.amazon.com/ja/alexa-voice-service/sdk https://developers.google.com/assistant/sdk/
• 開発者が自身のデバイスへ容易に実装可能
• Clova Interface Connect (CIC)へ接続するためのSDK
• 音声の録音、アップロード、結果の取得
Android/iOS向けに開発されている Clova Client SDK
Clova Client SDK
Android Things
• プロトタイピングやテスト用に開発プラットフォームが提供済
み
• Android Things は IoT 向けの Android サブセット OS
• 既存の開発ツールでアプリ(apk)の開発が可能
Androidベースの組み込み用OS
Android Things
https://developer.android.com/things/
DEMO
• Clova Client SDKを組み込んだapkを作成する
• 各種ハードウェアを用意する
• Android Thingsをセットアップする
ボタンを押すと Clova が 起動し会話中は LED が点灯するデバイス
PROCEDURE
Operate Clova with Android Things
IMPLEMENTATION
Button and LED: Android Things 公式サンプルアプリ
READY
https://github.com/androidthings/sample-button
<uses-permission
android:name="com.google.android.things.permission.USE_PERIPHERAL_IO" /> //追加
<uses-library android:name=“com.google.android.things"/> //追加
<activity android:name="ai.clova.cic.clientlib.sample.MainActivity">
・・・
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name=“android.intent.category.IOT_LAUNCHER"/> //追加
</intent-filter>
・・・
</activity>
AndroidManifest.xmlへ以下を追加
For Android Things
・・・
minSdkVersion 27 //設定
・・・
dependencies {
・・・
implementation ‘com.google.android.things.contrib:driver-button:0.7' //追加
compileOnly ‘com.google.android.things:androidthings:0.8-devpreview' //追
加
・・・
}
build.gradeへ以下を追加
Button and LEDアプリのBoardDefaultsクラスをサンプルアプリへ追加
For Android Things
protected void onCreate(final Bundle savedInstanceState) {
・・・
guestModeLogin(); //guest modeでClovaログインする(将来的にはAPIキー発行のような形で提供検討)
・・・
try {
Log.i(TAG, "Registering button driver " + BoardDefaults.getGPIOForButton());
mButtonInputDriver = new ButtonInputDriver( //ボタンを押すと指定のKEYCODEが発行されるようにする
BoardDefaults.getGPIOForButton(),
com.google.android.things.contrib.driver.button.Button.LogicState.PRESSED_WHEN_LOW,
KeyEvent.KEYCODE_TV); //SWキーにはないKEYCODE_TVを割り当てている
mButtonInputDriver.register();
} catch (IOException e) {
Log.e(TAG, "Error configuring GPIO pins", e);
}
・・・
MainActivity の onCreate() でログイン設定とボタン有効化
For Android Things
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_TV) {
startRecording(); //音声認識開始
setLedValue(true); //LED点灯開始
return true;
}
return super.onKeyDown(keyCode, event);
}
private void setLedValue(boolean value) {
try {
mLedGpio.setValue(value);
} catch (IOException e) {
Log.e(TAG, "Error updating GPIO value", e);
}
}
ボタンに連動してLEDを点灯
For Android Things
public void onMultiturnConversationCompleted() {
closeBtSco();
setLedValue(false); //追加
}
マルチターンが終わったらLEDを消灯
For Android Things
● Android Thingsで簡単にClovaを実装出来たので、SDK含めて後日
公開したい
● 新しい Clova デバイスを一緒に考えたいプランナーや、開発した
いエンジニアの方はぜひ一緒に働きましょう
● ご興味のあるデバイスメーカー様もご相談ください
SUMMARY
THANK YOU
BUILD SAMPLE APP
Android CIC SDK サンプルアプリをビルド

More Related Content

PPTX
Scalaコーディングの準備
PPTX
C#エンジニアのためのdocker kubernetesハンズオン (再)
PPTX
202202 open telemetry .net handson
PDF
.NET Core向けコンテナおよびデバッグ関連のVisual Studio 2019の機能
PPTX
C# Tokyo コミュニティについて
PPTX
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
PDF
Androidアプリ入門
PDF
alphawing meets heroku
Scalaコーディングの準備
C#エンジニアのためのdocker kubernetesハンズオン (再)
202202 open telemetry .net handson
.NET Core向けコンテナおよびデバッグ関連のVisual Studio 2019の機能
C# Tokyo コミュニティについて
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
Androidアプリ入門
alphawing meets heroku

What's hot (20)

PPTX
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
PPTX
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
PDF
実践! Argo cd &amp; rollouts による canary release(cndt2021)
PDF
Azure と Visual Studio で実践するモダナイゼーションとクラウド ネイティブ アプリケーション開発
PDF
Docker webinar 20170426−02
PPTX
Azureで作るnodeアプリケーション①
PPTX
最近のQ#について
PPTX
Docker webinar 20170616 - Modernize Traditional Apps with Docker Enterprise E...
PPTX
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
PDF
【デブサミ福岡B4】MAGELLANの開発におけるDockerの使い方
PPTX
Docker webinar 20170426−01
PPTX
使い倒そう Visual Studio Code!!! ~ここからはじめる基本のキ~
PPTX
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
PDF
DevOps with GitLabで始める簡単DevOps
PDF
AWS SDK for Go を使って作ってみた話
PDF
【Swift】SDKの読み込みにuse framework!が使えない場合の対処方法
PDF
de:code 2019 DT06 vs-show どっちのVSショー
PDF
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
PDF
Try! Visual Studio 209 git feature
PDF
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
実践! Argo cd &amp; rollouts による canary release(cndt2021)
Azure と Visual Studio で実践するモダナイゼーションとクラウド ネイティブ アプリケーション開発
Docker webinar 20170426−02
Azureで作るnodeアプリケーション①
最近のQ#について
Docker webinar 20170616 - Modernize Traditional Apps with Docker Enterprise E...
C++CLIで、ネイティブCの保守開発に.NETを使って楽をしよう
【デブサミ福岡B4】MAGELLANの開発におけるDockerの使い方
Docker webinar 20170426−01
使い倒そう Visual Studio Code!!! ~ここからはじめる基本のキ~
Visual Studio Codeを使い倒そう! ~プログラミングから機械学習、クラウド連携、遠隔ペアプロまで~
DevOps with GitLabで始める簡単DevOps
AWS SDK for Go を使って作ってみた話
【Swift】SDKの読み込みにuse framework!が使えない場合の対処方法
de:code 2019 DT06 vs-show どっちのVSショー
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
Try! Visual Studio 209 git feature
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
Ad

Similar to Operate Clova with Android Things (20)

PDF
Android Studioの魅力
PDF
Docker Enterprise Editionで実践するCaaS
PPTX
Androidプログラミング入門
PDF
20190201 Cloud Native Kansai AKS Azure
PDF
Developer-Controlled Packages (DCPs) を試してみた
PDF
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
PDF
Google I/O 2011 HowToADK
PDF
Azure DevOps 関西 2019 - Overview
PPTX
静的解析ツール Klocworkによる 機能安全規格への対応
PDF
Gaming cicd-pipeline gaming-technight-2
PDF
kintone 連携スマホアプリの開発・配布体験
PDF
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
PDF
【第33回コンピュータビジョン勉強会@関東】OpenVX、 NVIDIA VisionWorks使ってみた
PDF
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
PPTX
Cordovaコトハジメ( Html5fun×senchUG )
PDF
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
PDF
Azure DevOps - ALGYAN Oct 2022.pdf
PPTX
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
PDF
MicrosoftのOSSへの取り組み
PDF
Introduction to extensions and other useful features for developing apps usin...
Android Studioの魅力
Docker Enterprise Editionで実践するCaaS
Androidプログラミング入門
20190201 Cloud Native Kansai AKS Azure
Developer-Controlled Packages (DCPs) を試してみた
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
Google I/O 2011 HowToADK
Azure DevOps 関西 2019 - Overview
静的解析ツール Klocworkによる 機能安全規格への対応
Gaming cicd-pipeline gaming-technight-2
kintone 連携スマホアプリの開発・配布体験
Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える
【第33回コンピュータビジョン勉強会@関東】OpenVX、 NVIDIA VisionWorks使ってみた
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Cordovaコトハジメ( Html5fun×senchUG )
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
Azure DevOps - ALGYAN Oct 2022.pdf
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
MicrosoftのOSSへの取り組み
Introduction to extensions and other useful features for developing apps usin...
Ad

More from LINE Corporation (20)

PDF
JJUG CCC 2018 Fall 懇親会LT
PDF
Reduce dependency on Rx with Kotlin Coroutines
PDF
Kotlin/NativeでAndroidのNativeメソッドを実装してみた
PDF
Use Kotlin scripts and Clova SDK to build your Clova extension
PDF
The Magic of LINE 購物 Testing
PPTX
GA Test Automation
PDF
UI Automation Test with JUnit5
PDF
Feature Detection for UI Testing
PDF
LINE 新星計劃介紹與新創團隊分享
PDF
​LINE 技術合作夥伴與應用分享
PDF
LINE 開發者社群經營與技術推廣
PDF
日本開發者大會短講分享
PDF
LINE Chatbot - 活動報名報到設計分享
PDF
在 LINE 私有雲中使用 Managed Kubernetes
PDF
LINE TODAY高效率的敏捷測試開發技巧
PDF
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
PDF
LINE Things - LINE IoT平台新技術分享
PDF
LINE Pay - 一卡通支付新體驗
PDF
LINE Platform API Update - 打造一個更好的Chatbot服務
PDF
Keynote - ​LINE 的技術策略佈局與跨國產品開發
JJUG CCC 2018 Fall 懇親会LT
Reduce dependency on Rx with Kotlin Coroutines
Kotlin/NativeでAndroidのNativeメソッドを実装してみた
Use Kotlin scripts and Clova SDK to build your Clova extension
The Magic of LINE 購物 Testing
GA Test Automation
UI Automation Test with JUnit5
Feature Detection for UI Testing
LINE 新星計劃介紹與新創團隊分享
​LINE 技術合作夥伴與應用分享
LINE 開發者社群經營與技術推廣
日本開發者大會短講分享
LINE Chatbot - 活動報名報到設計分享
在 LINE 私有雲中使用 Managed Kubernetes
LINE TODAY高效率的敏捷測試開發技巧
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
LINE Things - LINE IoT平台新技術分享
LINE Pay - 一卡通支付新體驗
LINE Platform API Update - 打造一個更好的Chatbot服務
Keynote - ​LINE 的技術策略佈局與跨國產品開發

Operate Clova with Android Things