آموزش LoadUrl در WebView در برنامه نویسی اندروید رو در این مقاله منتشر خواهیم کرد. که به با استفاده از این آموزش بتوانید صفحه وب را از طریق آدرس که میتونه به صورت لوکال یا آنلاین باشه رو از طریق متد LoadUrl باز کنید. یک فنجان قهوه برای خودتان بردارید و در ادامه با وبلاگ مارکت اندروید ریور همراه باشید .
نحوه بازکردن صفحه وب در WebView از طریق LoadUrl
از این طریق می توانید یک صفحه وب را لوکال یا آنلاین رو درون وب ویو اپلیکیشن لود کنید که البته می تونه استفاده هایی از قبیل باز کردن یک صفحه خاص وب آنلاین یا لود یک صفحه لوکال که درون assets قرار دارد را درون وب ویو بارگزاری کرد و موارد از این دست.
چگونه یک صفحه وب را درون وب ویو لود کنیم :
public class Main extends Activity { private WebView mWebview ; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mWebview = new WebView(this); mWebview.getSettings().setJavaScriptEnabled(true); // enable javascript final Activity activity = this; mWebview.setWebViewClient(new WebViewClient() { @SuppressWarnings("deprecation") @Override public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { Toast.makeText(activity, description, Toast.LENGTH_SHORT).show(); } @TargetApi(android.os.Build.VERSION_CODES.M) @Override public void onReceivedError(WebView view, WebResourceRequest req, WebResourceError rerr) { // Redirect to deprecated method, so you can use it in all SDK versions onReceivedError(view, rerr.getErrorCode(), rerr.getDescription().toString(), req.getUrl().toString()); } }); /** #برای بازکردن یک صفحه وب به صورت فایل لوکال از کد زیر استفاده کنید. #webview.loadurl("file:///android_asset/www/index.html"); */ mWebview .loadUrl("https://rtl-android.ir"); setContentView(mWebview ); } }
نکته : در کد بالا لود صفحه وب از طریق لود فایل html (و..) رو به صورت یک کامنت قرار دادیم که به طبع می تونید جایگزین لود از طریق یک صفحه وب آنلاین کنید.
ما در کد بالا چه می کنیم ؟
- همونطور که در کد بالا میبینید ابتدا یک
WebView
در اکتیویتی تعریف میکنیم - سپس قابلیت شناسایی جاوا اسکریپت رو ( بیشتر برای صفحات غیر لوکال یا لوکال خاص نه صرفا نوشتاری کاربرد دارد ) فعال کردیم که از طریق متد
getSettings
قابل انجام است.
نکته : شما با فراخوانی این متد میتونید تنظیمات سفارشی تری رو هم تعریف و فعال کنید.
- و برای لود آدرس فایل یا صفحه وب کلاینت وب ویو رو از طریق
setWebViewClient
تعریف میکنیم و می سازیم - از طریق تعریف متد
Public void
برایonReceivedError
که خطا هارو گرفته و چاپ می کند برای بروز خطاهای احتمالی و درک بهتر مشکل تعریف میکنیم - و در نهایت هم دستور لود رو از طریق متد
LoadUrl
تعریف میکنیم که به دو صورت خواندن فایل از حافظه یا صفحه وب آنلاین انجام پذیره