# 共通の改修内容 本章では、本SDKで開発した他機種向けアプリを以下の機種で動作させるための手順をまとめます。 - `ASR-M24D` - `ASR-M30S` - `ASR-025S` --- ## SDK の差し替え 下表をご参照の上、対応前のSDKをご使用の場合は、SDKの差し替えを実施してください。 | 機種 | 対応 SDK バージョン | | -------- | ------------------- | | ASR-M24D | 5.2.0 以降 | | ASR-M30S | 5.7.0 以降 | | ASR-025S | 5.8.0 以降 | --- ## xcframework の追加 以下の framework を最新の SDK に含まれるものに置き換えてください。 - `AsReaderBLESDK.framework` または `AsReaderBLESDK.xcframework` - `AsReaderDockSDK.framework` または `AsReaderDockSDK.xcframework` 追加方法は「[SDK を追加](../1_how_to_use.md#add-sdk)」を参照してください。 --- ## AsReader protocol 追加 「Info.plist」の「Supported external accessory protocols」に、対応機種のプロトコルを追加してください。 | 機種 | 追加するプロトコル | | --------------------- | ------------------------------------ | | ASR-M24D | `jp.co.asx.asreader.6dongle.barcode` | | ASR-M30S
ASR-025S | `jp.co.asx.asreader.slim` | --- ## 接続時の処理 接続時に `readerConnected:` が自動で呼ばれるため、`setReaderPower` の呼び出しは不要です。 他機種では `plugged:` 後に `setReaderPower` を実行する必要があります。 `setReaderPower` を実行しても、他の機種のように電源の ON/OFF は行われません。 ```objectivec - (void)plugged:(BOOL)plug { if (plug) { AsReaderInfo *info = [AsReaderInfo sharedInstance]; if (info.isEnginePowerAlwaysOn) { // readerConnected が自動で呼ばれる機種 // setReaderPower の呼び出しは不要 } else { // Other AsReader // setReaderPower を実行する処理をここに記述 } } else { // 接続解除処理 } } - (void)readerConnected:(int)status { if (status) { // パワーオン成功時 } else { // パワーオン失敗時 } } ``` --- ## 接続時のビープ音・バイブレーション制御 `setReaderPower` を呼ぶ代わりに、以下でビープ音やバイブレーションの制御が可能です。 ASR-M30S / ASR-025S では `isBeep` 以外の値は無視されます。 ```objectivec - (BOOL)setBeep:(BOOL)isBeep vibration:(BOOL)isVibration batteryGaugeLed:(BOOL)isbatteryGaugeLed barcodeAimer:(BOOL)isBarcodeAimer barcodePowerOnBeep:(BOOL)isBarcodePowerOnBeep; ``` --- ```{important} スリープから復帰する際に **トリガーキーを押す必要があります**。 ```