13 广播数据包

广播数据包

http://code.tutsplus.com/tutorials/how-to-advertise-android-as-a-bluetooth-le-peripheral--cms-25426

获取广播实例BluetoothLeAdvertiser

BluetoothLeAdvertiser advertiser = BluetoothAdapter.getDefaultAdapter().getBluetoothLeAdvertiser();

广播设置

AdvertiseSettings settings = new AdvertiseSettings.Builder()
        .setAdvertiseMode( AdvertiseSettings.ADVERTISE_MODE_LOW_LATENCY )
        .setTxPowerLevel( AdvertiseSettings.ADVERTISE_TX_POWER_HIGH )
        .setConnectable( false )
        .build();

广播数据

ParcelUuid pUuid = new ParcelUuid( UUID.fromString( getString( R.string.ble_uuid ) ) );

AdvertiseData data = new AdvertiseData.Builder()
        .setIncludeDeviceName( true )
        .addServiceUuid( pUuid )
        .addServiceData( pUuid, "Data".getBytes( Charset.forName( "UTF-8" ) ) )
        .build();

启动广播

AdvertiseCallback advertisingCallback = new AdvertiseCallback() {
    @Override
    public void onStartSuccess(AdvertiseSettings settingsInEffect) {
        super.onStartSuccess(settingsInEffect);
    }

    @Override
    public void onStartFailure(int errorCode) {
        Log.e( "BLE", "Advertising onStartFailure: " + errorCode );
        super.onStartFailure(errorCode);
    }
};
 0916 18 18 D8803C0005A9
advertiser.startAdvertising( settings, data, advertisingCallback );

广播数据解析:

3c0005A9

郭子荣

results matching ""

    No results matching ""