[Solved] Android 9.0 APP Install Android 4.4 Error: IllegalArgumentException

 

Problem Description.
App works on Android 9.0, but the installation to version 4.4 program crashes with the error:

IllegalArgumentException
10-25 17:07:12.475 14178 14178 E AndroidRuntime: FATAL EXCEPTION: main
10-25 17:07:12.475 14178 14178 E AndroidRuntime: Process: com.xx.app, PID: 14178
10-25 17:07:12.475 14178 14178 E AndroidRuntime: java.lang.RuntimeException: Unable to create service com.xx.service.XXService: java.lang.IllegalArgumentException:

 

Stack:

10-25 17:07:12.475 14178 14178 E AndroidRuntime: FATAL EXCEPTION: main
10-25 17:07:12.475 14178 14178 E AndroidRuntime: Process: com.xx.app, PID: 14178
10-25 17:07:12.475 14178 14178 E AndroidRuntime: java.lang.RuntimeException: Unable to create service com.xx.service.XXService: java.lang.IllegalArgumentException: MediaButtonReceiver component may not be null
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at android.app.ActivityThread.handleCreateService(ActivityThread.java:2582)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at android.app.ActivityThread.access$1800(ActivityThread.java:135)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at android.os.Looper.loop(Looper.java:136)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5047)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at java.lang.reflect.Method.invokeNative(Native Method)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at java.lang.reflect.Method.invoke(Method.java:515)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
10-25 17:07:12.475 14178 14178 E AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:658)

 

Solution:
Register MediaButtonReceiver in Manifest

<receiver android:name="androidx.media.session.MediaButtonReceiver" >
    <intent-filter>
        <action android:name="android.intent.action.MEDIA_BUTTON" />
    </intent-filter>
</receiver>

Read More: