Приложение для веб-сайта с помощью webView, и оно отлично работает на моем SAMSUNG GALAXY A5, но на HUAWEI INE-LX1. Вместо webView появляется белый экран
Это моя основная деятельность xml. Я использую линейный макет. Внутри у меня есть веб-просмотр и относительный макет. Относительный макет рассчитан на автономное состояние. Который имеет текст и кнопку. при нажатии кнопки он отправит в веб-просмотр, если Интернет подключен.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorPrimary"
android:orientation="vertical"
tools:context=".MainActivity">
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent">
</WebView>
<RelativeLayout
android:id="@+id/relative_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<Button
android:id="@+id/btn_no_connection"
android:layout_width="140dp"
android:layout_height="65dp"
android:background="@drawable/button_background"
android:text="Retry"
android:textColor="#ffffff"
android:layout_centerHorizontal="true"
android:textSize="22sp" />
<TextView
android:id="@+id/txt_no_connection"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/colorAccent"
android:layout_below="@+id/btn_no_connection"
android:layout_marginTop="12dp"
android:text="Make sure your internet is Active!"
android:textAlignment="center"
android:textSize="21sp" />
</RelativeLayout>
</LinearLayout>
Это основной файл java, где веб-просмотр инициируется внутри метода Create. Все работает нормально. Когда я запускаю это на своем устройстве Samsung Galaxy, apk работает так, как я ожидал, но он не работает с устройством HUWAI INE-LX1. Просто показывает белую осыпь всякий раз, когда процесс достигает веб-просмотра. Есть ли какие-либо новые обновления в веб-просмотре для последних устройств Android или ОС. Может ли кто-нибудь предложить мне какое-либо решение.
MainActivity.java
public class MainActivity extends AppCompatActivity {
private WebView wbView;
private String url = "https://google.com";
RelativeLayout relativeLayout;
Button noInternetConnection;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Window window =getWindow();
setContentView(R.layout.activity_main);
wbView = (WebView)findViewById(R.id.webview);
relativeLayout = (RelativeLayout)findViewById(R.id.relative_layout);
noInternetConnection = (Button) findViewById(R.id.btn_no_connection);
if(savedInstanceState != null){
settings();
wbView.restoreState(savedInstanceState);
}
else{
settings();
checkConnection();
}
wbView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
view.loadUrl(url);
return true;
}
@Override
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
checkConnection();
super.onReceivedError(view, request, error);
}
});
noInternetConnection.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"Connecting...",Toast.LENGTH_SHORT).show();
checkConnection();
}
});
}
@Override
public void onBackPressed() {
if (wbView.canGoBack()) {
wbView.goBack();
} else {
super.onBackPressed();
}
}
public void checkConnection(){
ConnectivityManager connectivityManager = (ConnectivityManager)
this.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo wifi = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
NetworkInfo mobileNetwork = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if(wifi.isConnected()){
wbView.loadUrl(url);
wbView.setVisibility(View.VISIBLE);
relativeLayout.setVisibility(View.GONE);
}
else if(mobileNetwork.isConnected()){
wbView.loadUrl(url);
wbView.setVisibility(View.VISIBLE);
relativeLayout.setVisibility(View.GONE);
}
else{
wbView.setVisibility(View.GONE);
relativeLayout.setVisibility(View.VISIBLE);
}
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
wbView.saveState(outState);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
wbView.restoreState(savedInstanceState);
}
public void settings(){
WebSettings webSettings = wbView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setUseWideViewPort(true);
webSettings.setLoadsImagesAutomatically(true);
}
}
разрешения