Bluetooth Low Energy を搭載したすべてのデバイスで実行される Android アプリを構築しています。つまり、minSDK は 18 です。ただし、どの targetSDK を使用すればよいかわかりません。これには常に最新バージョン(API 22)を使用することをお勧めします。それとも、サポートしているすべての targetSDK を使用してアプリケーションをビルドする必要がありますか。つまり、API 18 を実行するアプリケーションには SDK 18 を使用してビルドし、API 19 を使用するデバイスには SDK 19 を使用してビルドする必要がありますか?
BLE 検出を開始するには、startScan() または startLeScan() のいずれかを使用できるため、混乱しています。Android のドキュメントには、「startLeScan() は API レベル 21 で廃止されました。代わりに startScan() を使用してください」と書かれています。アプリのコンパイルに使用する targetSDK にこれがどのような影響を与えるかはわかりません。SDK 22 でコンパイルして startScan() を使用すると、API 18 を実行しているデバイスでアプリを実行できますか? また、API 18 でコンパイルして startLeScan() を使用すると、API 22 を実行しているデバイスでアプリを実行できますか? それとも、上記のようにサポートするすべての targetSDK を使用してアプリケーションをビルドする必要がありますか?