Under expected circumstances, those null pointer checks are not
needed: onCreate() is always called before onCreateView(),
and the former creates the objects: mBluetoothSelectA2dpCodec,
mBluetoothSelectA2dpSampleRate, mBluetoothSelectA2dpBitsPerSample,
mBluetoothSelectA2dpChannelMode, mBluetoothSelectA2dpLdacPlaybackQuality .
For some unknown reason, somehow the following chain of calls is executed
before onCreate() :
onCreateView() ->
getActivity().registerReceiver(mBluetoothA2dpReceiver, ...) ->
mBluetoothA2dpReceiver.onReceive(...) ->
updateBluetoothA2dpConfigurationValues()
Adding the null pointer checks until the issue is understood.
Test: Code compilation
Bug: 35204511
Change-Id: I7c1d81015e66b26544b7b26f36cbc75f11713496
Provide calling package name in cell info APIs
BUG=31041780
Merged-In: Iad6e5c67ead2bf50d83d1ccad48c3f0341f53712
Change-Id: Iad6e5c67ead2bf50d83d1ccad48c3f0341f53712
Provide calling package name in cell info APIs
BUG=31041780
Merged-In: Iad6e5c67ead2bf50d83d1ccad48c3f0341f53712
Change-Id: Iad6e5c67ead2bf50d83d1ccad48c3f0341f53712
Test: manually w/ Vzw and Tmo SIM on marlin. UI rotates while preserving
all values
Bug: b/34956985
Change-Id: I1db34893fd91f99e38913565e7b67ccbfdcb0c93
(cherry picked from commit 76ad635ef7)
Add an explicit check when calling getResources() inside
updateBluetoothA2dpConfigurationValues().
This fixes a potential race condition - the latter could be called
in background when processing intent update.
Bug: 35021206
Test: Manual UI testing
Change-Id: I38117c5b1e08f4b2ecfd7637bb3e34920aa0d296
Previously, the JNI upcall would contain only the current codec config.
In the new API, the upcall contains:
1. The current codec config
2. The list of codecs containing the local codecs capabilities
3. The list of codecs containing the selectable codecs capabilities.
This list is the intersection of the local codecs capabilities
and the capabilities of the paired device.
Also, refactored the Java internals to accomodate the extra information:
* Added new class BluetoothCodecStatus that contains the extra info:
current codec config, local codecs capabilities and selectable
codecs capabilities
* Renamed method getCodecConfig() to getCodecStatus() and return the
corresponding BluetoothCodecStatus object.
* Updates to class BluetoothCodecConfig:
new methods isValid(), getCodecName(), and updated toString()
so it is more user friendly
* Removed BluetoothCodecConfig.EXTRA_CODEC_CONFIG and
EXTRA_PREVIOUS_CODEC_CONFIG.
The former is superseded by BluetoothCodecStatus.EXTRA_CODEC_STATUS;
the latter is not really used.
Test: A2DP streaming with headsets and switching the codecs
Change-Id: I490a70c82b686be7105862aeaeafcff495369dae
Use new function getDiscoveryEndMillis() to replace use of shared preferences
and intents.
Test: scan recently, then connect from external BT device
Bug: 34395439
Change-Id: Ia498b3bb4868b656cbbb9fbdc607a49af948343b
This allows for quick performance testing and also for a better
dogfooding experience.
Bug: 34256441
Test: Verification with getprop.
Change-Id: I81c5e0b1044d4569a6fe55a4b30f7e21c4465fc2