Java 尝试在Android中启动服务时出错

Java 尝试在Android中启动服务时出错,java,android,Java,Android,我正在尝试编写一个服务,通过Android中的GPs定位来定位用户。我为此而服务。但是当我尝试启动服务时,总是会出现错误 android.util.AndroidRuntimeException:从活动上下文外部调用startActivity()需要标志“活动”新任务标志。这真的是您想要的吗?出现。我已经在google上搜索了这个问题,并在我的源代码中添加了以下行: intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 但是错误仍然出现。为了使服务启动

我正在尝试编写一个服务,通过Android中的GPs定位来定位用户。我为此而服务。但是当我尝试启动服务时,总是会出现错误

android.util.AndroidRuntimeException:从活动上下文外部调用startActivity()需要标志“活动”新任务标志。这真的是您想要的吗?
出现。我已经在google上搜索了这个问题,并在我的源代码中添加了以下行:

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
但是错误仍然出现。为了使服务启动时没有任何错误,我可以做些什么?这是我的密码: MainActivity.java:

public class MainActivity extends Activity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.start);

        //GPs Standort bestimmung starten
        Intent intent;
        intent = new Intent(this, Gps_Service.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startService(intent);

        initButtons();
    }
}
“Gps_service.java”:


与其通过GPS运行服务来检索用户的位置,不如使用谷歌的

提供的链接有一个关于如何实现它的详细指南,并且在接收位置数据时更加可靠和准确

也不要忘记这个渐变依赖项:

compile 'com.google.android.gms:play-services-location:8.4.0'

根据提到
startActivity
的错误消息,我认为您的错误可能发生在未显示的代码中的其他地方。您确定错误是由启动服务引起的吗?您能显示异常的整个堆栈吗?
compile 'com.google.android.gms:play-services-location:8.4.0'