I am using baidu push service in my android app. It is working fine except in lollipop version. When i run the app in device with lollipop version it crashes.i am getting the below crash log.
02-03 11:55:39.772: E/AndroidRuntime(17430): java.lang.RuntimeException: Unable to create application com.sample.myapp: java.lang.IllegalArgumentException: Service Intent must be explicit: Intent { act=com.baidu.android.pushservice.action.PUSH_SERVICE (has extras) }
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4521)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.ActivityThread.access$1500(ActivityThread.java:144)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1339)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.os.Handler.dispatchMessage(Handler.java:102)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.os.Looper.loop(Looper.java:135)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.ActivityThread.main(ActivityThread.java:5221)
02-03 11:55:39.772: E/AndroidRuntime(17430): at java.lang.reflect.Method.invoke(Native Method)
02-03 11:55:39.772: E/AndroidRuntime(17430): at java.lang.reflect.Method.invoke(Method.java:372)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
02-03 11:55:39.772: E/AndroidRuntime(17430): Caused by: java.lang.IllegalArgumentException: Service Intent must be explicit: Intent { act=com.baidu.android.pushservice.action.PUSH_SERVICE (has extras) }
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.ContextImpl.validateServiceIntent(ContextImpl.java:1674)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1703)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.ContextImpl.startService(ContextImpl.java:1687)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.content.ContextWrapper.startService(ContextWrapper.java:515)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.baidu.android.pushservice.util.q.i(Unknown Source)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.baidu.android.pushservice.util.q.l(Unknown Source)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.baidu.android.pushservice.internal.PushManager.startWork(Unknown Source)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.baidu.android.pushservice.apiproxy.BridgePushManager.startWork(Unknown Source)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.baidu.android.pushservice.PushManager$40.run(Unknown Source)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.baidu.android.pushservice.LoadExecutor.excuteMethod(Unknown Source)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.baidu.android.pushservice.PushManager.startWork(Unknown Source)
02-03 11:55:39.772: E/AndroidRuntime(17430): at com.sample.myapp.onCreate(HUSApp.java:62)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1011)
02-03 11:55:39.772: E/AndroidRuntime(17430): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4518)
02-03 11:55:39.772: E/AndroidRuntime(17430): ... 9 more
And given below is the code which throws exception
PushManager
.startWork(getApplicationContext(),
PushConstants.LOGIN_TYPE_API_KEY, BaiduUtils
.getMetaValue(getApplicationContext(),
"api_key"));