Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d77513d9 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 9084753 from 0fccd038 to tm-qpr1-release

Change-Id: I60482c90a3a715e46c35c027f905d79af1b02e36
parents 1f937e37 0fccd038
Loading
Loading
Loading
Loading
+21 −6
Original line number Diff line number Diff line
@@ -605,7 +605,7 @@ jbyteArray prepareRawLtvArray(
                            (const jbyte*)&kv_pair.first);
    offset += 1;
    // Value
    env->SetByteArrayRegion(raw_metadata, offset, 1,
    env->SetByteArrayRegion(raw_metadata, offset, kv_pair.second.size(),
                            (const jbyte*)kv_pair.second.data());
    offset += kv_pair.second.size();
  }
@@ -839,7 +839,19 @@ jobject prepareBluetoothLeBroadcastMetadataObject(
    return nullptr;
  }

  ScopedLocalRef<jbyteArray> code(env, env->NewByteArray(sizeof(RawAddress)));
  // Skip the leading null char bytes
  int nativeCodeSize = 16;
  int nativeCodeLeadingZeros = 0;
  if (broadcast_metadata.broadcast_code) {
    auto& nativeCode = broadcast_metadata.broadcast_code.value();
    nativeCodeLeadingZeros =
        std::find_if(nativeCode.cbegin(), nativeCode.cend(),
                     [](int x) { return x != 0x00; }) -
        nativeCode.cbegin();
    nativeCodeSize = nativeCode.size() - nativeCodeLeadingZeros;
  }

  ScopedLocalRef<jbyteArray> code(env, env->NewByteArray(nativeCodeSize));
  if (!code.get()) {
    LOG(ERROR) << "Failed to create new jbyteArray for the broadcast code";
    return nullptr;
@@ -847,8 +859,10 @@ jobject prepareBluetoothLeBroadcastMetadataObject(

  if (broadcast_metadata.broadcast_code) {
    env->SetByteArrayRegion(
        code.get(), 0, sizeof(RawAddress),
        (jbyte*)broadcast_metadata.broadcast_code.value().data());
        code.get(), 0, nativeCodeSize,
        (const jbyte*)broadcast_metadata.broadcast_code->data() +
            nativeCodeLeadingZeros);
    CHECK(!env->ExceptionCheck());
  }

  return env->NewObject(
@@ -1150,8 +1164,9 @@ static void CreateBroadcastNative(JNIEnv* env, jobject object,
    }

    // Padding with zeros on LSB positions if code is shorter than 16 octets
    env->GetByteArrayRegion(broadcast_code, code_array.size() - size, size,
                            (jbyte*)code_array.data());
    env->GetByteArrayRegion(
        broadcast_code, 0, size,
        (jbyte*)code_array.data() + code_array.size() - size);
  }

  jbyte* meta = env->GetByteArrayElements(metadata, nullptr);
+7 −7
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothProfile;
import android.bluetooth.IBluetoothAvrcpController;
import android.content.AttributionSource;
import android.content.ComponentName;
import android.content.Intent;
import android.support.v4.media.MediaBrowserCompat.MediaItem;
import android.support.v4.media.session.PlaybackStateCompat;
@@ -471,7 +470,7 @@ public class AvrcpControllerService extends ProfileService {
    private void handlePassthroughRsp(int id, int keyState, byte[] address) {
        if (DBG) {
            Log.d(TAG, "passthrough response received as: key: " + id
                    + " state: " + keyState + "address:" + address);
                    + " state: " + keyState + "address:" + Arrays.toString(address));
        }
    }

@@ -712,7 +711,8 @@ public class AvrcpControllerService extends ProfileService {
            int[] attrIds, String[] attrVals) {
        if (VDBG) {
            Log.d(TAG, "createFromNativeMediaItem uid: " + uid + " type: " + type + " name: " + name
                    + " attrids: " + attrIds + " attrVals: " + attrVals);
                    + " attrids: " + Arrays.toString(attrIds)
                    + " attrVals: " + Arrays.toString(attrVals));
        }

        BluetoothDevice device = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(address);
@@ -750,10 +750,10 @@ public class AvrcpControllerService extends ProfileService {
    AvrcpPlayer createFromNativePlayerItem(byte[] address, int id, String name,
            byte[] transportFlags, int playStatus, int playerType) {
        if (VDBG) {
            Log.d(TAG,
                    "createFromNativePlayerItem name: " + name + " transportFlags "
                            + transportFlags + " play status " + playStatus + " player type "
                            + playerType);
            Log.d(TAG, "createFromNativePlayerItem name: " + name
                    + " transportFlags " + Arrays.toString(transportFlags)
                    + " play status " + playStatus
                    + " player type " + playerType);
        }
        BluetoothDevice device = BluetoothAdapter.getDefaultAdapter().getRemoteDevice(address);
        AvrcpPlayer.Builder apb = new AvrcpPlayer.Builder();
+14 −13
Original line number Diff line number Diff line
@@ -352,7 +352,8 @@ public class BassClientStateMachine extends StateMachine {
        Map<ParcelUuid, byte[]> bmsAdvDataMap = record.getServiceData();
        if (bmsAdvDataMap != null) {
            for (Map.Entry<ParcelUuid, byte[]> entry : bmsAdvDataMap.entrySet()) {
                log("ParcelUUid = " + entry.getKey() + ", Value = " + entry.getValue());
                log("ParcelUUid = " + entry.getKey() + ", Value = "
                        + Arrays.toString(entry.getValue()));
            }
        }
        byte[] advData = record.getServiceData(BassConstants.BASIC_AUDIO_UUID);
@@ -751,18 +752,18 @@ public class BassClientStateMachine extends StateMachine {
                    numSubGroups,
                    audioSyncState,
                    metadataList);
            log("Receiver state: " +
                "\n\tSource ID: " + sourceId +
                "\n\tSource Address Type: " + (int) sourceAddressType +
                "\n\tDevice: " + device +
                "\n\tSource Adv SID: " + sourceAdvSid +
                "\n\tBroadcast ID: " + broadcastId +
                "\n\tMetadata Sync State: " + (int) metaDataSyncState +
                "\n\tEncryption Status: " + (int) encryptionStatus +
                "\n\tBad Broadcast Code: " + badBroadcastCode +
                "\n\tNumber Of Subgroups: " + numSubGroups +
                "\n\tAudio Sync State: " + audioSyncState +
                "\n\tMetadata: " + metadataList);
            log("Receiver state: "
                    + "\n\tSource ID: " + sourceId
                    + "\n\tSource Address Type: " + (int) sourceAddressType
                    + "\n\tDevice: " + device
                    + "\n\tSource Adv SID: " + sourceAdvSid
                    + "\n\tBroadcast ID: " + broadcastId
                    + "\n\tMetadata Sync State: " + (int) metaDataSyncState
                    + "\n\tEncryption Status: " + (int) encryptionStatus
                    + "\n\tBad Broadcast Code: " + Arrays.toString(badBroadcastCode)
                    + "\n\tNumber Of Subgroups: " + numSubGroups
                    + "\n\tAudio Sync State: " + audioSyncState
                    + "\n\tMetadata: " + metadataList);
        }
        return recvState;
    }
+3 −1
Original line number Diff line number Diff line
@@ -25,6 +25,8 @@ import android.util.Log;

import com.android.internal.annotations.GuardedBy;

import java.util.Arrays;

/** ActivityAttribution Native Interface to/from JNI. */
public class ActivityAttributionNativeInterface {
    private static final boolean DBG = false;
@@ -73,7 +75,7 @@ public class ActivityAttributionNativeInterface {
    }

    private void onActivityLogsReady(byte[] logs) {
        Log.i(TAG, "onActivityLogsReady() BTAA: " + logs);
        Log.i(TAG, "onActivityLogsReady() BTAA: " + Arrays.toString(logs));
    }

    // Native methods that call into the JNI interface
+20 −20
Original line number Diff line number Diff line
@@ -340,7 +340,7 @@ public class NativeInterface {
        event.valueInt = state;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onAudioStateChanged: address " + address + " event " + event);
            Log.d(TAG, "onAudioStateChanged: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -356,7 +356,7 @@ public class NativeInterface {
        event.valueInt = state;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onVrStateChanged: address " + address + " event " + event);
            Log.d(TAG, "onVrStateChanged: event " + event);
        }

        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
@@ -373,7 +373,7 @@ public class NativeInterface {
        event.valueInt = state;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onNetworkStateChanged: address " + address + " event " + event);
            Log.d(TAG, "onNetworkStateChanged: event " + event);
        }

        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
@@ -407,7 +407,7 @@ public class NativeInterface {
        event.valueInt = signal;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onNetworkSignal: address " + address + " event " + event);
            Log.d(TAG, "onNetworkSignal: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -422,7 +422,7 @@ public class NativeInterface {
        event.valueInt = level;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onBatteryLevel: address " + address + " event " + event);
            Log.d(TAG, "onBatteryLevel: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -437,7 +437,7 @@ public class NativeInterface {
        event.valueString = name;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onCurrentOperator: address " + address + " event " + event);
            Log.d(TAG, "onCurrentOperator: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -453,7 +453,7 @@ public class NativeInterface {
        event.valueInt = call;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onCall: address " + address + " event " + event);
            Log.d(TAG, "onCall: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -477,8 +477,8 @@ public class NativeInterface {
        event.valueInt = callsetup;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onCallSetup: addr " + address + " device" + event.device);
            Log.d(TAG, "onCallSetup: address " + address + " event " + event);
            Log.d(TAG, "onCallSetup: device" + event.device);
            Log.d(TAG, "onCallSetup: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -502,7 +502,7 @@ public class NativeInterface {
        event.valueInt = callheld;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onCallHeld: address " + address + " event " + event);
            Log.d(TAG, "onCallHeld: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -517,7 +517,7 @@ public class NativeInterface {
        event.valueInt = respAndHold;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onRespAndHold: address " + address + " event " + event);
            Log.d(TAG, "onRespAndHold: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -532,7 +532,7 @@ public class NativeInterface {
        event.valueString = number;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onClip: address " + address + " event " + event);
            Log.d(TAG, "onClip: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -547,7 +547,7 @@ public class NativeInterface {
        event.valueString = number;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onCallWaiting: address " + address + " event " + event);
            Log.d(TAG, "onCallWaiting: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -567,7 +567,7 @@ public class NativeInterface {
        event.valueString = number;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onCurrentCalls: address " + address + " event " + event);
            Log.d(TAG, "onCurrentCalls: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -583,7 +583,7 @@ public class NativeInterface {
        event.valueInt2 = volume;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onVolumeChange: address " + address + " event " + event);
            Log.d(TAG, "onVolumeChange: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -599,7 +599,7 @@ public class NativeInterface {
        event.valueInt2 = cme;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onCmdResult: address " + address + " event " + event);
            Log.d(TAG, "onCmdResult: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -615,7 +615,7 @@ public class NativeInterface {
        event.valueString = number;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onSubscriberInfo: address " + address + " event " + event);
            Log.d(TAG, "onSubscriberInfo: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -631,7 +631,7 @@ public class NativeInterface {
        event.valueInt = inBand;
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onInBandRing: address " + address + " event " + event);
            Log.d(TAG, "onInBandRing: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -650,7 +650,7 @@ public class NativeInterface {
        StackEvent event = new StackEvent(StackEvent.EVENT_TYPE_RING_INDICATION);
        event.device = getDevice(address);
        if (DBG) {
            Log.d(TAG, "onRingIndication: address " + address + " event " + event);
            Log.d(TAG, "onRingIndication: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
@@ -666,7 +666,7 @@ public class NativeInterface {
        event.device = getDevice(address);
        event.valueString = eventString;
        if (DBG) {
            Log.d(TAG, "onUnknownEvent: address " + address + " event " + event);
            Log.d(TAG, "onUnknownEvent: event " + event);
        }
        HeadsetClientService service = HeadsetClientService.getHeadsetClientService();
        if (service != null) {
Loading