Skip to content

Latest commit

 

History

History
145 lines (124 loc) · 5.45 KB

README-JP.md

File metadata and controls

145 lines (124 loc) · 5.45 KB

English / 日本語

Controller SDK for Java

Maven Central License Join the community on Spectrum

Aroma Shooterとの通信に使用されるAromaShooterController SDKのJava版です。

目次

  1. 対応デバイス
  2. 前提条件
  3. インストール
  4. 使用法
  5. 問題
  6. ライセンス

対応デバイス

  • Aroma Shooter USBタイプ
  • Aroma Shooter 2

対応接続

  • USB

前提条件

  • JRE版: >= 1.8+
  • ドライバをダウンロードしてインストールしてください。

インストール

Gradle

controller-sdk依存関係を追加します。

dependencies {
    // ... other dependencies
    compile 'com.aromajoin.sdk:jvm:2.4.0'
}

Maven

<dependency>
  <groupId>com.aromajoin.sdk</groupId>
  <artifactId>jvm</artifactId>
  <version>2.4.0</version>
  <type>pom</type>
</dependency>

バイナリファイル(.jar)

  1. 最新のcontroller-sdk-java.jarファイルをダウンロードしてください。
  2. それをプロジェクトのビルドパスに追加します。

使用法

詳細はサンプルプロジェクトをチェックしてください。

セットアップ

// USBAromaShooterを初期化する
USBASController usbController = new USBASController();

デバイスのスキャンと接続

usbController.scanAndConnect(new DiscoverCallback() {
    @Override
    public void onDiscovered(List<AromaShooter> aromaShooters) {
        for(AromaShooter aromaShooter : aromaShooters){
            // Detected Aroma Shooter.
        }
    }

    @Override
    public void onFailed(String msg) {
       // Failed on scanning.
    }
});

接続されたデバイス

List<AromaShooter> connectedDevices = usbController.getConnectedDevices();

香りを噴射する

/**
 * @param duration     噴射持続時間(ミリ秒)。
 * @param booster      ブースターが使用されているかどうかを判定する。(true: より強く噴射する, false: より弱く噴射する)
 * @param ports        カートリッジ番号を噴射する。値:1 ~ 6.
 */
// 例:以下のコードは、カートリッジ2と5を3秒間噴射します。
usbController.diffuseAll(duration, boosterIntensity, fanIntensity, ports);
  • AS2(Aroma Shooter 2)デバイスのみのディフューザー香りメソッド
/**
 * AS2のすべての接続デバイスからの特定のポートでの香りの拡散
 * @param duration              拡散時間(ミリ秒)
 * @param boosterIntensity      ブースターポート。値: 0~100
 * @param fanIntensity          ファンポート。値: 0~100
 * @param ports                 ポートの配列。値: Port(portNumber, portIntensity)
 */
 
usbController.diffuseAll(duration, boosterIntensity, fanIntensity, ports);
  • その他の噴射法
// 1つのアロマシューターに香りを噴射する
controller.diffuse(aromaShooter, duration, booster, ports);
// シリアル番号入力で1つのアロマシューターに香りを噴射する
controller.diffuse(aromaShooterSerial, duration, booster, ports);
// 1つのアロマシューターに香りを噴射する [アロマシューター2のみがサポートされています](香りの強度を調整可)
controller.diffuse(aromaShooter, durationMilliSec, boosterIntensity, fanIntensity, ports);
// シリアル番号入力で1つのアロマシューターに香りを噴射する [アロマシューター2のみがサポートされています](香りの強度を調整可)
controller.diffuse(aromaShooterSerial, durationMilliSec, boosterIntensity, fanIntensity, ports);

噴射を止める

  • 噴射している場合は、接続されているデバイスのすべてのポートを停止します。
usbController.stopAllPorts();
  • 噴射している場合は、1つのデバイスのすべてのポートを停止します。
usbController.stopAllPorts(aromaShooter);

切断する

すべてのデバイスを切断します。

usbController.disconnectAll();

問題

問題が発生したり、新機能が必要な場合は、新しい問題を作成してください。

ライセンス

こちらを参照してください。