Open Asadq518 opened 7 months ago
audio_session does check before all API calls above the minSdkVersion
to ensure that an API is only used if it is available.
However, NewApi
will complain without noticing those checks.
So I would suggest not enabling the NewApi
lint.
here full lint
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:272: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getId [NewApi] "id", device.getId(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:274: Error: Call requires API level 28 (current min is 16): android.media.AudioDeviceInfo#getAddress [NewApi] "address", device.getAddress(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:276: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#isSink [NewApi] "isSink", device.isSink(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:278: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getChannelMasks [NewApi] "channelMasks", device.getChannelMasks(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:280: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getChannelCounts [NewApi] "channelCounts", device.getChannelCounts(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:282: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getType [NewApi] "type", device.getType()
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:305: Error: Call requires API level 23 (current min is 16): android.media.AudioManager#registerAudioDeviceCallback [NewApi] audioManager.registerAudioDeviceCallback((AudioDeviceCallback)audioDeviceCallback, handler);
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:372: Error: Call requires API level 19 (current min is 16): android.media.AudioManager#dispatchMediaKeyEvent [NewApi] audioManager.dispatchMediaKeyEvent(keyEvent);
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:399: Error: Call requires API level 28 (current min is 16): android.media.AudioManager#getStreamMinVolume [NewApi] return audioManager.getStreamMinVolume(streamType);
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:418: Error: Call requires API level 23 (current min is 16): android.media.AudioManager#isStreamMute [NewApi] return audioManager.isStreamMute(streamType);
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:432: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getId [NewApi] if (device.getId() == deviceId) {
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:440: Error: Call requires API level 31 (current min is 16): android.media.AudioManager#getCommunicationDevice [NewApi] return encodeAudioDevice(audioManager.getCommunicationDevice());
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:456: Error: Call requires API level 29 (current min is 16): android.media.AudioManager#setAllowedCapturePolicy [NewApi] audioManager.setAllowedCapturePolicy(capturePolicy);
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:500: Error: Call requires API level 21 (current min is 16): android.media.AudioManager#generateAudioSessionId [NewApi] return audioManager.generateAudioSessionId();
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:532: Error: Call requires API level 23 (current min is 16): android.media.AudioManager#getDevices [NewApi] AudioDeviceInfo[] devices = audioManager.getDevices(flags);
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:541: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getProductName [NewApi] "productName", device.getProductName(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:544: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#isSink [NewApi] "isSink", device.isSink(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:546: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getChannelMasks [NewApi] "channelMasks", intArrayToList(device.getChannelMasks()),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:548: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getChannelCounts [NewApi] "channelCounts", intArrayToList(device.getChannelCounts()),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:550: Error: Call requires API level 23 (current min is 16): android.media.AudioDeviceInfo#getType [NewApi] "type", device.getType()
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:561: Error: Call requires API level 28 (current min is 16): android.media.MicrophoneInfo#getFrequencyResponse [NewApi] for (Pair<Float, Float> pair : microphone.getFrequencyResponse()) {
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:569: Error: Call requires API level 28 (current min is 16): android.media.MicrophoneInfo#getDescription [NewApi] "description", microphone.getDescription(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:571: Error: Call requires API level 28 (current min is 16): android.media.MicrophoneInfo#getType [NewApi] "type", microphone.getType(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:573: Error: Call requires API level 28 (current min is 16): android.media.MicrophoneInfo#getLocation [NewApi] "location", microphone.getLocation(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:575: Error: Call requires API level 28 (current min is 16): android.media.MicrophoneInfo#getIndexInTheGroup [NewApi] "indexInTheGroup", microphone.getIndexInTheGroup(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:577: Error: Call requires API level 28 (current min is 16): android.media.MicrophoneInfo#getOrientation [NewApi] "orientation", coordinate3fToList(microphone.getOrientation()),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:581: Error: Call requires API level 28 (current min is 16): android.media.MicrophoneInfo#getMaxSpl [NewApi] "maxSpl", microphone.getMaxSpl(),
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:583: Error: Call requires API level 28 (current min is 16): android.media.MicrophoneInfo#getDirectionality [NewApi] "directionality", microphone.getDirectionality()
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:666: Error: Call requires API level 23 (current min is 16): android.media.AudioManager#unregisterAudioDeviceCallback [NewApi] audioManager.unregisterAudioDeviceCallback((AudioDeviceCallback)audioDeviceCallback);
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:701: Error: Field requires API level 28 (current min is 16): android.media.MicrophoneInfo.Coordinate3F#x [NewApi] list.add((double)coordinate.x);
/Users/apple/.pub-cache/hosted/pub.dev/audio_session-0.1.16/android/src/main/java/com/ryanheise/audio_session/AndroidAudioManager.java:703: Error: Field requires API level 28 (current min is 16): android.media.MicrophoneInfo.Coordinate3F#z [NewApi] list.add((double)coordinate.z);
Explanation for issues of type "AndroidGradlePluginVersion": This detector looks for usage of the Android Gradle Plugin where the version you are using is not the current stable release. Using older versions is fine, and there are cases where you deliberately want to stick with an older version. However, you may simply not be aware that a more recent version is available, and that is what this lint check helps find.
61 errors, 1 warnings