Java findviewbyd dosen';我不能在安卓工作室的服务课上工作

Java findviewbyd dosen';我不能在安卓工作室的服务课上工作,java,android,class,android-studio,apk,Java,Android,Class,Android Studio,Apk,我需要使用WebView显示网页,我可以在MainActivity中显示,但我希望始终在服务中使用此WebView。 如果要在网站中关闭应用程序运行服务和用户联机 用户如何在关闭应用程序并在此网站上运行javascript后保持在线 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) {

我需要使用WebView显示网页,我可以在MainActivity中显示,但我希望始终在服务中使用此WebView。 如果要在网站中关闭应用程序运行服务和用户联机
用户如何在关闭应用程序并在此网站上运行javascript后保持在线

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Intent intent = new Intent(this, MyService.class);
        startService(intent);

    }
}


public class MyService extends Service {

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {

        WebView myWebView = (WebView) findViewById(R.id.webview1);
        myWebView.setWebViewClient(new WebViewClient());
        myWebView.getSettings().setJavaScriptEnabled(true);
        myWebView.getSettings().setLoadWithOverviewMode(true);
        myWebView.getSettings().setUseWideViewPort(true);
        myWebView.getSettings().setBuiltInZoomControls(true);
        myWebView.loadUrl("http://google.com");

        return Service.START_NOT_STICKY;
    }

    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }
}

不,“在服务中使用webview”是个坏主意。服务是为了在后台发生的事情。视图(任何视图)用于向用户显示某些内容。鉴于视图和服务的自然关注点,它们之间没有交叉点,因此服务中不应该有类似于
findviewbyd
的内容。您需要为实际存在的XY问题搜索另一个解决方案。findViewById可以在视图上调用。服务是一个后台组件,不代表它的ui。你到底需要什么??编辑您的问题。用户如何在关闭应用程序并在此网站上运行javascript后保持在线