1

In my fragment after a user signs in the onActivityResult callback is called. I have logging in the onActivityResult and it is in fact being called but the service is not starting... The service is registered in the Manifest and it gets executed in my onResume fine. The getActivity is not returning NULL as well. I do not know what the issue is... Can anyone give some advice.

@Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        switch (requestCode) {
        case REQUEST_1:
            if (resultCode == Activity.RESULT_OK) {
                Intent intent = new Intent(getActivity(), MyService.class);
                intent.setData(Uri.parse("http://www.google.com");
                getActivity().startService(intent);
            }
            break;
        default:

            super.onActivityResult(requestCode, resultCode, data);
            break;
        }
    }
4

3 回答 3

1

我有类似的问题。

正如@Justin 在回复我时指出的那样,问题可以在清单文件中正确注册服务。

如果您不注册应用程序将崩溃。除非您使用IntentService,默认情况下它在另一个线程中,因此它不会使您的应用程序崩溃,但服务本身会..只是我们无法注意到它,因为主要活动 UI 将保留..

最后,我在声明我的 IntentService 类的清单中有错字..

希望有人会发现这很有用。

于 2013-04-24T14:37:24.380 回答
0

您很可能没有在清单中为您的服务注册正确的标签。

要验证这一点,请查看ComponentNamestartService. 如果它为空,则没有服务符合您的意图。

于 2013-02-19T21:24:01.917 回答
-1

我认为你没有在 android manifest 中声明你的活动名称来声明活动名称在 android menifest.xml 文件中编写以下代码,如下所示

<activity 
        android:name=".YourActivityName">   
</activity>
于 2013-02-19T21:30:39.307 回答