关于Local Service Sample我已经成功定义了我的ILocalService.java中声明的方法,但我不知道如何在活动的onServiceConnected()之外调用这些方法。我只能从onServiceConnected()中调用它们,这似乎没什么用处。我只限于此吗?这是我的ILocalService.java:
/**************************************************************************************************
* Filename: ILocalService.java
* Project name: Local Service Sample
* Application name: Local Service
* Description: This file contains an example interface for LocalService
**************************************************************************************************/
package com.marie.localservicesample;
public interface ILocalService {
public LocalService getService();
public int getStatusCode();
}
我的假设是我应该能够调用在我的ILocalService.java中声明的方法。这些调用不应仅限于绑定到LocalService.java的活动的 in onServiceConnected()。我该怎么做?
答案 0 :(得分:1)
如果要在serviceConnected方法之外使用服务引用。大多数情况下它会抛出nullpointerexception。
在您的活动中创建一个按钮,并尝试在其onClick中使用服务引用。 点击按钮至少等待10秒钟。它会正常工作。
这表明服务需要时间来绑定到本地引用变量。 ServiceConnected方法仅用于表示服务已连接,现在可以使用。
为了在serviceConnected方法之外使用正确的服务。 您可以在serviceConnected方法中维护一个布尔标志。
根据标志值使用服务随时随地
据我所知。
希望有所帮助:)