Tuesday, July 6, 2021

How to create a WebView in Android

WebView is a view that display web pages inside your application. You can also specify HTML string and can show it inside your application using WebView. WebView Android makes turns your application to a web application.

In order to add WebView to your application, you have to add <WebView> element to your xml layout file.

Step 1 − Create a new project in Android Studio, go to File ⇒ New Project and fill all required details to create a new project.

Step 2: Create layout res/layout/activity_main.xml.

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android = "http://schemas.android.com/apk/res/android"

   android:id = "@+id/parent"

   xmlns:tools = "http://schemas.android.com/tools"

   android:layout_width = "match_parent"

   android:layout_height = "match_parent"

   tools:context = ".MainActivity">

   <WebView

      android:id="@+id/webView"

      android:layout_width="match_parent"

      android:layout_height="match_parent">

   </WebView>

</RlativeLayout>

Step 3: Create class to src/MainActivity.java

public class MainActivity extends AppCompatActivity {

   private WebView webView;

   @Override

   protected void onCreate(Bundle savedInstanceState) {

      super.onCreate(savedInstanceState);

      setContentView(R.layout.activity_main);

      WebView webView = (WebView)findViewById(R.id.webView);

      webView.setWebViewClient(new WebViewClient());

      webView.loadUrl("https://www.google.com");

      WebSettings webSettings = webView.getSettings();

      webSettings.setJavaScriptEnabled(true);

   }

   public void onBackPressed(){

      if (webView.canGoBack()){

         webView.goBack();

    } else {

         super.onBackPressed();

      }

   }

}

Step 4:  Add the following code to androidManifest.xml

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="app.com.sample">

   <uses-permission android:name="android.permission.INTERNET"></uses-permission>

   <application

      android:allowBackup="true"

      android:icon="@mipmap/ic_launcher"

      android:label="@string/app_name"

      android:roundIcon="@mipmap/ic_launcher_round"

      android:supportsRtl="true"

      android:theme="@style/AppTheme">

      <activity android:name=".MainActivity">

         <intent-filter>

            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />

         </intent-filter>

      </activity>

   </application>

</manifest>

No comments:

Post a Comment