最佳答案
我开始在Android上开发一个应用程序,所以我手头没有太多东西。到目前为止,我只有一个WebView。我在Android Studio中创建了这个项目,我的项目设置为Android InstantApp。我不确定为什么/如何,但我猜是我在创建项目时忽略了它的一个选项。
我从WebView得到一个错误说net:: err_cleartext_not_allowed。当我谷歌这个错误时,我看到当一个应用程序是一个InstantApp, WebViews只能加载HTTPS网站,而不能加载HTTP网站。
这个应用程序的目的是成为一个非常简单的Flash播放器,只有一个网站。这是为了更好地运行需要Flash的游戏。这个游戏在darkorbit.com上,是HTTPS协议。
MainActivity.java:
package com.tylerr147.darkorbit;
import android.content.ComponentName;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView wv = findViewById(R.id.webView1);
wv.loadUrl("https://darkorbit.com/");
wv.setWebViewClient(new CustomWebViewClient());
WebSettings webSettings = wv.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setPluginState(WebSettings.PluginState.ON);
}
}
和CustomWebViewClient.java
package com.tylerr147.darkorbit;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class CustomWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
< p >我的问题:
我如何禁用我的应用程序作为一个InstantApp,或者我如何让这个WebView显示网站?< / p >
我觉得还有一些细节也很重要:
在应用程序中,它正在显示WebView,它还说“在http://darkorbit.com/的网页”无法加载,因为:
net:: ERR_CLEARTEXT_NOT_PERMITTED < / p >
注意它说的是“…而不是http://darkorbit.com/…即使URL的字符串是硬编码的,并且说“https://darkorbit.com/”。此外,我正在运行Android 9的谷歌Pixel 2模拟器上测试该应用程序。
任何帮助都将不胜感激。谢谢你!