Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hello, I found a playback crash caused by a compilation problem.
My app uses compileSdkVersion of 30, but Exoplayer uses 31. I compile the release version of the apk, when minifyEnabled is set to true, the app plays video on Android 12 mobile phones, and when using 5g, there will be java.lang.AbstractMethodError: abstract method "void android.telephony .TelephonyCallback$DisplayInfoListener.onDisplayInfoChanged(android.telephony.TelephonyDisplayInfo)"
crash.
The reason is that when compileSdkVersion 30 is used to compile the release version apk, the compilation environment cannot find the class android.telephony.TelephonyCallback$DisplayInfoListener, and there is no other code calling related logic, so it is deleted or inline optimized. So the logic of keep must be added here to ensure that the onDisplayInfoChanged method is not deleted. I tried a lot of methods, and finally found that -keepattributes LineNumberTable must be added at the same time to make the following keep logic take effect.
As for the keep of DefaultTrackSelector$SpatializerWrapperV32, it is the same reason.