06-12 15:38:35.725: E/AndroidRuntime(6482): java.lang.RuntimeException: Unable to create service com.avos.avoscloud.PushService: java.lang.IllegalStateException: Please call AVOSCloud.initialize at first in Application
06-12 15:38:35.725: E/AndroidRuntime(6482): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2927)
06-12 15:38:35.725: E/AndroidRuntime(6482): at android.app.ActivityThread.access$2200(ActivityThread.java:165)
06-12 15:38:35.725: E/AndroidRuntime(6482): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1478)
06-12 15:38:35.725: E/AndroidRuntime(6482): at android.os.Handler.dispatchMessage(Handler.java:102)
06-12 15:38:35.725: E/AndroidRuntime(6482): at android.os.Looper.loop(Looper.java:135)
06-12 15:38:35.725: E/AndroidRuntime(6482): at android.app.ActivityThread.main(ActivityThread.java:5593)
06-12 15:38:35.725: E/AndroidRuntime(6482): at java.lang.reflect.Method.invoke(Native Method)
06-12 15:38:35.725: E/AndroidRuntime(6482): at java.lang.reflect.Method.invoke(Method.java:372)
06-12 15:38:35.725: E/AndroidRuntime(6482): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:967)
06-12 15:38:35.725: E/AndroidRuntime(6482): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:762)
06-12 15:38:35.725: E/AndroidRuntime(6482): Caused by: java.lang.IllegalStateException: Please call AVOSCloud.initialize at first in Application
06-12 15:38:35.725: E/AndroidRuntime(6482): at com.avos.avoscloud.AVInstallation.readInstallationFile(AVInstallation.java:227)
06-12 15:38:35.725: E/AndroidRuntime(6482): at com.avos.avoscloud.AVInstallation.getCurrentInstallation(AVInstallation.java:52)
06-12 15:38:35.725: E/AndroidRuntime(6482): at com.avos.avoscloud.PushService.getConnectionManagerInstance(PushService.java:674)
06-12 15:38:35.725: E/AndroidRuntime(6482): at com.avos.avoscloud.PushService.onCreate(PushService.java:90)
06-12 15:38:35.725: E/AndroidRuntime(6482): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2907)
06-12 15:38:35.725: E/AndroidRuntime(6482): ... 9 more

这个错误是在我应用退出之后出现的,在退出应用时我已经close了client了,请问下如何在应用退出时关闭这个东西,防止报错?

有童鞋大大能看看嘛???感谢了~~~~

你好,推送和聊天基于 PushService 的长链接,不能关闭。

对于报错:

Please call AVOSCloud.initialize at first in Application

请检查下 AVOSCloud.initialize() 的调用位置,是不是在其他代码之前。

实际上报错的时候是我使用应用退出的功能之后,会报'请先初始化AVOSCloud'的错误可以理解,但是我想在应用退出之后不再使用相应功能,请问可以实现吗?

你说的「相应功能」是指?

实际上我也只使用了IM的功能,我只是想应用退出之后停止IM的收发功能,因为我会杀掉mainActivity的

Andorid 的后台就是 Service,如果提供主动杀死 Service 的方法,也就等于 IM 功能没用了。

你所说的需求,可以在每次退出 App 时,close 当前 clientId,然后重新打开时,open 当前的 clientId。

这位的情况与我差不多,可能我的退出方法有点不太正确,毕竟是游戏引擎提供的,但表现的情况与他一致,都是会报错

我是native层crash后才会出现这种情况,在java层kill进程,或finish 进程没问题。

你是kill activity后导致OnDestroy没调用造成的吧