Cara Membuat Webview Di Android Studio dengan Mudah

Cara Membuat Webview Di Android Studio dengan Mudah

Kalian kerap membaca postingan pada suatu aplikasi android apk?.. bila betul.. dapat jadi itu cumalah informasi dari web yang diperlihatkan kedalam aplikasi itu. Istilahnya ialah WebView. Cara Membuat Webview Di Android Studio dengan Mudah. Dalam WebView kalian cuma menginginkan suatu link mengarah laman sesuatu web buat setelah itu dibuka dengan memakai aplikasi pada ponsel pintar.

Webview hendak nampak baik apabila design web atau web kalian telah mensupport fitur responsive, maksudnya mensupport bentuk multi device. Cara Membuat Webview Di Android Studio dengan Mudah. Dari pada penasaran mendingan kita langsung untuk saja memakai android sanggar tipe terkini, dalam postingan ini memakai tipe android sanggar 3. 5. 1

Tahap awal untuk terlebih dulu project androidnya serta kasih julukan dengan webviewsaya.

oiya disini aku memakai Empty Activity

Klik next buat meneruskan, buat Name ialah Webviewsaya

package name: com. paketsaya. webviewsaya serta penjulukan paket ini tergantung kalian yang berarti dimulai dengan com. serta setelah itu julukan industri ataupun pengembang terkini terakhir merupakan julukan aplikasinya, itu sih bentuk penjulukan paketnya dengan cara bawah.

Janganlah kurang ingat seleksi Language dengan Kotlin serta Minimal API tingkat 14. Klik Finish. serta berakhir membuat projectnya, biasa bukan.

Yakinkan pc kalian terkoneksi internet, sebab android sanggar hendak mendownload sebagian keterbatasan bonus yang di benamkan dalam project kalian.

Tahap berikutnya Pada MainActivity. kt ketikkan isyarat selanjutnya ini:

package com. initekno. inputnilaitfmt1 atau atau paket ini berdeda dari tiap project yang kalian buat

atau atau sebab paket ini jadi bukti diri esok kala aplikasi

atau atau di upload ke playstore

import androidx. appcompat. app. AppCompatActivity

import android. os. Bundle

import android. webkit. WebView

import android. graphics. Bitmap

import android. os. Build

import android. view. View

import android. webkit. WebSettings

import android. webkit. WebViewClient

import kotlinx. android. synthetic. bermain. activity_main.*

class MainActivity: AppCompatActivity()

private val url=” http: atau atau namaurlwebsitekamu atau namapage”

override senang onCreate( savedInstanceState: Bundle?)

luar biasa. onCreate( savedInstanceState)

setContentView( R. layout. activity_main)

atau atau pengaturan webview

val settings= webview. settings;

atau atau mengaktifkan fitur javascript dalam webview

settings. javaScriptEnabled= true

atau atau mengaktifkan fitur cache

settings. setAppCacheEnabled( true)

settings. cacheMode= WebSettings. LOAD_DEFAULT

settings. setAppCachePath( cacheDir. path)

atau atau mengaktifkan fitur zoom in serta zoom out

settings. setSupportZoom( true)

settings. builtInZoomControls= true

settings. displayZoomControls= true

atau atau pengaturan lukisan dalam webview, ingin di aktifin ataupun tidaknya

settings. blockNetworkImage= false

atau atau meload lukisan dengan cara otomatis

settings. loadsImagesAutomatically= true

atau atau pengaturan lain buat webview

if( Build. VERSION. SDK_INT
=Build. VERSION_CODES. O)

settings. safeBrowsingEnabled= true

atau atau api 26

 

atau atau atur pluginstate

settings. useWideViewPort= true

settings. loadWithOverviewMode= true

settings. javaScriptCanOpenWindowsAutomatically= true

if( Build. VERSION. SDK_INT
=Build. VERSION_CODES. JELLY_BEAN_MR1)

settings. mediaPlaybackRequiresUserGesture= false

 

settings. domStorageEnabled= true

settings. setSupportMultipleWindows( true)

settings. loadWithOverviewMode= true

settings. allowContentAccess= true

settings. setGeolocationEnabled( true)

if( Build. VERSION. SDK_INT
=Build. VERSION_CODES. JELLY_BEAN)

settings. allowUniversalAccessFromFileURLs= true

 

settings. allowFileAccess= true

webview. fitsSystemWindows= true

webview. setLayerType( View. LAYER_TYPE_HARDWARE, null)

webview. loadUrl( url)

webview. webViewClient= object: WebViewClient()

override senang onPageStarted( view: WebView, url: String, favicon: Bitmap?)

 

override senang onPageFinished( view: WebView, url: String)

 

 

 

override senang onBackPressed()

if( webview. canGoBack())

webview. goBack()

 

 

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

package com. initekno. inputnilaitfmt1 atau atau paket ini berdeda dari tiap project yang kalian buat

Lagi Trending :  Seru Go Back Couple Sub Indonesia

atau atau sebab paket ini jadi bukti diri esok kala aplikasi

atau atau di upload ke playstore

import androidx. appcompat. app. AppCompatActivity

import android. os. Bundle

import android. webkit. WebView

import android. graphics. Bitmap

import android. os. Build

import android. view. View

import android. webkit. WebSettings

import android. webkit. WebViewClient

import kotlinx. android. synthetic. bermain. activity_main.*

class MainActivity: AppCompatActivity()

private val url=” http: atau atau namaurlwebsitekamu atau namapage”

override senang onCreate( savedInstanceState: Bundle?)

luar biasa. onCreate( savedInstanceState)

setContentView( R. layout. activity_main)

atau atau pengaturan webview

val settings= webview. settings;

atau atau mengaktifkan fitur javascript dalam webview

settings. javaScriptEnabled= true

atau atau mengaktifkan fitur cache

settings. setAppCacheEnabled( true)

settings. cacheMode= WebSettings. LOAD_DEFAULT

settings. setAppCachePath( cacheDir. path)

atau atau mengaktifkan fitur zoom in serta zoom out

settings. setSupportZoom( true)

settings. builtInZoomControls= true

settings. displayZoomControls= true

atau atau pengaturan lukisan dalam webview, ingin di aktifin ataupun tidaknya

settings. blockNetworkImage= false

atau atau meload lukisan dengan cara otomatis

settings. loadsImagesAutomatically= true

atau atau pengaturan lain buat webview

if( Build. VERSION. SDK_INT
=Build. VERSION_CODES. O)

settings. safeBrowsingEnabled= true

atau atau api 26

 

atau atau atur pluginstate

settings. useWideViewPort= true

settings. loadWithOverviewMode= true

settings. javaScriptCanOpenWindowsAutomatically= true

if( Build. VERSION. SDK_INT
=Build. VERSION_CODES. JELLY_BEAN_MR1)

settings. mediaPlaybackRequiresUserGesture= false

 

settings. domStorageEnabled= true

settings. setSupportMultipleWindows( true)

settings. loadWithOverviewMode= true

settings. allowContentAccess= true

settings. setGeolocationEnabled( true)

if( Build. VERSION. SDK_INT
=Build. VERSION_CODES. JELLY_BEAN)

settings. allowUniversalAccessFromFileURLs= true

 

settings. allowFileAccess= true

webview. fitsSystemWindows= true

webview. setLayerType( View. LAYER_TYPE_HARDWARE, null)

webview. loadUrl( url)

webview. webViewClient= object: WebViewClient()

override senang onPageStarted( view: WebView, url: String, favicon: Bitmap?)

 

override senang onPageFinished( view: WebView, url: String)

 

 

 

override senang onBackPressed()

if( webview. canGoBack())

webview. goBack()

 

 

 

Buat isyarat ini silahkan diisi dengan URL web kamu

private val url=” http: atau atau namaurlwebsitekamu atau namapage”

1

private val url=” http: atau atau namaurlwebsitekamu atau namapage”

Pada Direktori res atau layout atau activity_main. xml. tambahkan isyarat semacam selanjutnya ini:

<? xml version=” 1. 0″ encoding=” utf- 8″?

<androidx. constraintlayout. widget. ConstraintLayout xmlns: android=” http: atau atau schemas. android. com atau apk atau res atau android”

xmlns: app=” http: atau atau schemas. android. com atau apk atau res- auto”

xmlns: tools=” http: atau atau schemas. android. com atau tools”

android: layout_width=” match_parent”

android: layout_height=” match_parent”

tools: context=”. MainActivity”

<WebView

android: id=”@+id atau webview”

android: layout_width=” match_parent”

android: layout_height=” match_parent”

android: layout_marginBottom=” 8dp”

android: layout_marginEnd=” 8dp”

android: layout_marginStart=” 8dp”

android: layout_marginTop=” 8dp”

app: layout_constraintBottom_toBottomOf=” parent”

app: layout_constraintEnd_toEndOf=” parent”

app: layout_constraintStart_toStartOf=” parent”

app: layout_constraintTop_toTopOf=” parent” atau

< atau androidx. constraintlayout. widget. ConstraintLayout

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

<? xml version=” 1. 0″ encoding=” utf- 8″?

<androidx. constraintlayout. widget. ConstraintLayout xmlns: android=” http: atau atau schemas. android. com atau apk atau res atau android”

xmlns: app=” http: atau atau schemas. android. com atau apk atau res- auto”

xmlns: tools=” http: atau atau schemas. android. com atau tools”

android: layout_width=” match_parent”

android: layout_height=” match_parent”

tools: context=”. MainActivity”

<WebView

android: id=”@+id atau webview”

android: layout_width=” match_parent”

android: layout_height=” match_parent”

android: layout_marginBottom=” 8dp”

android: layout_marginEnd=” 8dp”

android: layout_marginStart=” 8dp”

android: layout_marginTop=” 8dp”

app: layout_constraintBottom_toBottomOf=” parent”

app: layout_constraintEnd_toEndOf=” parent”

app: layout_constraintStart_toStartOf=” parent”

app: layout_constraintTop_toTopOf=” parent” atau

< atau androidx. constraintlayout. widget. ConstraintLayout

Ganti seperangkat AndroidManifast. xml kalian pada direktori manifests ganti jadi semacam selanjutnya ini:

seperangkat ini mencakup users permission internet serta access jaringan state

<? xml version=” 1. 0″ encoding=” utf- 8″?

<manifest xmlns: android=” http: atau atau schemas. android. com atau apk atau res atau android”

package=” com. initekno. inputnilaitfmt1″

<uses- permission android: name=” android. permission. INTERNET” atau

<uses- permission android: name=” android. permission. ACCESS_NETWORK_STATE” atau

<application

Lagi Trending :  Beberapa Evertale Mod Apk

android: networkSecurityConfig=”@xml atau network_security_config”

android: allowBackup=” true”

android: icon=”@mipmap atau icon_android”

android: label=”@string atau app_name”

android: roundIcon=”@mipmap atau icon_android_round”

android: supportsRtl=” true”

android: theme=”@style atau AppTheme”

<activity android: name=”. MainActivity”

<intent- filter

<action android: name=” android. intent. action. Bermain” atau

<category android: name=” android. intent. category. LAUNCHER” atau

< atau intent- filter

< atau activity

< atau application

< atau manifest

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

<? xml version=” 1. 0″ encoding=” utf- 8″?

<manifest xmlns: android=” http: atau atau schemas. android. com atau apk atau res atau android”

package=” com. initekno. inputnilaitfmt1″

<uses- permission android: name=” android. permission. INTERNET” atau

<uses- permission android: name=” android. permission. ACCESS_NETWORK_STATE” atau

<application

android: networkSecurityConfig=”@xml atau network_security_config”

android: allowBackup=” true”

android: icon=”@mipmap atau icon_android”

android: label=”@string atau app_name”

android: roundIcon=”@mipmap atau icon_android_round”

android: supportsRtl=” true”

android: theme=”@style atau AppTheme”

<activity android: name=”. MainActivity”

<intent- filter

<action android: name=” android. intent. action. Bermain” atau

<category android: name=” android. intent. category. LAUNCHER” atau

< atau intent- filter

< atau activity

< atau application

< atau manifest

Tambahkan berkas terkini pada direktori res serta kasih julukan xml. Untuk serta simpan file xml kalian dengan julukan network_security_config. xml simpan pada direktori res atau xml

catat kodenya semacam selanjutnya ini:

<? xml version=” 1. 0″ encoding=” utf- 8″?

<network- security- config

<base- config cleartextTrafficPermitted=” true”

<trust- anchors

<certificates src=” system” atau

< atau trust- anchors

< atau base- config

< atau network- security- config

1

2

3

4

5

6

7

8

<? xml version=” 1. 0″ encoding=” utf- 8″?

<network- security- config

<base- config cleartextTrafficPermitted=” true”

<trust- anchors

<certificates src=” system” atau

< atau trust- anchors

< atau base- config

< atau network- security- config

Dan…ya, profesi kita nyaris berakhir. saat ini coba cermati kalau xml network_security_config. xml hendak di load kedalam android AndroidManifest. xml kita alhasil webview kita bisa mengakses seluruh konten yang terdapat di web kita.

android: networkSecurityConfig=”@xml atau network_security_config”

1

android: networkSecurityConfig=”@xml atau network_security_config”

Sedikit bonus, siapa ketahui dapat jadi data berarti. Buat seperangkat build. gradle( Module: app) aku semacam ini, silahkan disamakan bila terdapat yang beda. Setelah itu buat seperangkat build. gradle( Project) perkenankan saja default

apply plugin: com. android. application

apply plugin: kotlin- android

apply plugin: kotlin- android- extensions

android

compileSdkVersion 28

buildToolsVersion” 29. 0. 2″

defaultConfig

applicationId” com. initekno. inputnilaitfmt1″

minSdkVersion 14

targetSdkVersion 28

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” org. jetbrains. kotlin: kotlin- stdlib- jdk7:$kotlin_version”

implementation androidx. appcompat: appcompat: 1. 0. 2

implementation androidx. core: core- ktx: 1. 0. 2

implementation androidx. constraintlayout: constraintlayout: 1. 1. 3

testImplementation junit: junit: 4. 12

androidTestImplementation androidx. test: runner: 1. 1. 1

androidTestImplementation androidx. test. espresso: espresso- core: 3. 1. 1

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

apply plugin: com. android. application

apply plugin: kotlin- android

apply plugin: kotlin- android- extensions

android

compileSdkVersion 28

buildToolsVersion” 29. 0. 2″

defaultConfig

applicationId” com. initekno. inputnilaitfmt1″

minSdkVersion 14

targetSdkVersion 28

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” org. jetbrains. kotlin: kotlin- stdlib- jdk7:$kotlin_version”

implementation androidx. appcompat: appcompat: 1. 0. 2

implementation androidx. core: core- ktx: 1. 0. 2

implementation androidx. constraintlayout: constraintlayout: 1. 1. 3

testImplementation junit: junit: 4. 12

androidTestImplementation androidx. test: runner: 1. 1. 1

androidTestImplementation androidx. test. espresso: espresso- core: 3. 1. 1

 

Saat ini coba jalankan, dengan memencet tombol Alt+Shift+F10 ataupun klik aja Run pada android sanggar kalian. Demikian mudah- mudahan berguna, jadi akhirnya supaya kalian ketahui saja bagaimanasih sesungguhnya membuat web kita tampak dalam apk android, gitu aja, biasa bukan.. hahaha. Mudah- mudahan postingan ini berguna untuk kalian diluaran situ yang lagi berlatih android sanggar.