#java #android #android-studio-2.2
#java #Android #android-studio-2.2
Вопрос:
Я конвертирую веб-сайт в приложение для Android, используя веб-просмотр, но он продолжает останавливаться в моем мобильном клиенте. Его телефон — morto E4, его уровень API равен 25, и я установил минимальный SDK для приложения 21, а максимальный — 29. Я не понимаю проблемы. На моем телефоне он работает нормально, и я также тестирую еще на 3 телефонах, что он работает. Ниже приведен мой код и все, что я использую в своем коде. пожалуйста, помогите мне, я не загружаю логотип своего приложения, если потребуется, я это сделаю.
Gradle-приложение
enter code here
apply plugin: 'com.android.application'
android {
compileSdkVersion 29
buildToolsVersion "29.0.3"
defaultConfig {
applicationId "com.farah.tawaqqo"
minSdkVersion 21
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}
основная деятельность
enter code here
package com.farah.tawaqqo;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ProgressDialog;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.Network;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.webkit.WebChromeClient;
import android.webkit.WebResourceRequest;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
import android.widget.Toast;
import com.farah.tawaqqo.Common.Common;
import java.net.ConnectException;
public class MainActivity extends AppCompatActivity {
WebView webView;
ProgressBar progressBar;
ProgressDialog progressDialog;
private String url = "https://tawaqqo.com/";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webView = (WebView) findViewById(R.id.webView);
progressDialog = new ProgressDialog(this);
if (Common.isConnectedInternet(getBaseContext())) {
// progressDialog.dismiss();
WebSettings webSettings = webView.getSettings();
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setJavaScriptEnabled(true);
webSettings.setJavaScriptEnabled(true);
webView.loadUrl(url);
webView.setWebViewClient(new WebViewClient());
} else {
// progressDialog.dismiss();
progressDialog.setTitle("Internet Issue");
progressDialog.setMessage("Please connect to wifi.");
progressDialog.setCanceledOnTouchOutside(false);
progressDialog.show();
}
progressBar = (ProgressBar) findViewById(R.id.progressBar);
webView.setWebChromeClient(new WebChromeClient() {
@Override
public void onProgressChanged(WebView view, int newProgress) {
progressBar.setVisibility(view.VISIBLE);
progressBar.setProgress(newProgress);
setTitle("Loading.....");
if (newProgress == 100) {
progressBar.setVisibility(view.GONE);
setTitle(view.getTitle());
}
super.onProgressChanged(view, newProgress);
}
});
}
@Override
public void onBackPressed() {
if (webView.canGoBack()) {
webView.goBack();
} else
super.onBackPressed();
}
}
всплеск активности
enter code here
package com.farah.tawaqqo;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.view.Window;
import android.view.WindowManager;
public class Splash extends AppCompatActivity {
Handler handler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
handler=new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
Intent intent=new Intent(getApplicationContext(),MainActivity.class);
startActivity(intent);
finish();
}
},3000);
}
}
**Common class for internet connection**
enter code here
package com.farah.tawaqqo.Common;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
public class Common {
public static boolean isConnectedInternet(Context context)
{
ConnectivityManager connectivityManager = (ConnectivityManager)context.getSystemService(context.CONNECTIVITY_SERVICE);
if(connectivityManager != null)
{
NetworkInfo[] info = connectivityManager.getAllNetworkInfo();
if( info != null)
{
for(int i=0;i<info.length;i )
{
if(info[i].getState() == NetworkInfo.State.CONNECTED)
return true;
}
}
}
return false;
}
}
Комментарии:
1. Пожалуйста, опубликуйте свой logcat.
2. Спасибо, я решил свою проблему, это связано с файлом .png, который я добавляю в свой проект