生活随笔
收集整理的這篇文章主要介紹了
android: 怎么使用腾讯X5WebView
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.進入https://x5.tencent.com/tbs/sdk.html
下載sdk
2.打開android studio
將jar包和so文件復制到你的demo中
修改build.gradle
android
{compileSdkVersion
30buildToolsVersion
"30.0.2"defaultConfig
{applicationId
"com.tcy.tickets"minSdkVersion
15targetSdkVersion
30versionCode
1versionName
"1.0"testInstrumentationRunner
"androidx.test.runner.AndroidJUnitRunner"ndk
{abiFilters
"armeabi", "armeabi-v7a", "x86", "mips"}}buildTypes
{release
{minifyEnabled
falseproguardFiles
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.4'testImplementation
'junit:junit:4.12'androidTestImplementation
'androidx.test.ext:junit:1.1.2'androidTestImplementation
'androidx.test.espresso:espresso-core:3.3.0'implementation
files('libs/tbs_sdk_thirdapp_v4.3.0.67_43967_sharewithdownloadwithfile_withoutGame_obfs_20200923_120452.jar')
}
3.打開VCode,寫一個主頁代碼
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document
</title>
</head>
<body><h1>HybirdDemo
</h1>
</body>
</html>
4.利用anywhere插件,
(下載地址:https://www.npmjs.com/package/anywhere)
打開一個http服務
打開cmd,cd到你的html目錄下面,然后運行anywhere
會自動彈出網頁頁面
4.
在android studio中創建
X5WebView.java
MainActivity.java
MyApplication.java
Constants.java
public class MainActivity extends AppCompatActivity {private X5WebView mWebView
;@Overrideprotected void onCreate(Bundle savedInstanceState
) {super.onCreate(savedInstanceState
);setContentView(R
.layout
.activity_main
);init();}private void init() {mWebView
= findViewById(R
.id
.web_view
);mWebView
.loadUrl(Constants
.WEB_URL
);}}
public class MyApplication extends Application {@Overridepublic void onCreate() {super.onCreate();QbSdk
.PreInitCallback cb
= new QbSdk.PreInitCallback() {@Overridepublic void onViewInitFinished(boolean arg0
) {Log
.d("app", " onViewInitFinished is " + arg0
);}@Overridepublic void onCoreInitFinished() {}};QbSdk
.initX5Environment(getApplicationContext(), cb
);}
}
public class X5WebView extends WebView {private Context mContext
;private OnWebViewListener onWebViewListener
;public void setOnWebViewListener(OnWebViewListener onWebViewListener
) {this.onWebViewListener
= onWebViewListener
;}public X5WebView(Context context
) {super(context
);init(context
);}public X5WebView(Context context
, AttributeSet attributeSet
) {super(context
, attributeSet
);init(context
);}public X5WebView(Context context
, AttributeSet attributeSet
, int i
) {super(context
, attributeSet
, i
);init(context
);}public X5WebView(Context context
, AttributeSet attributeSet
, int i
, boolean b
) {super(context
, attributeSet
, i
, b
);init(context
);}public X5WebView(Context context
, AttributeSet attributeSet
, int i
, Map
<String, Object> map
, boolean b
) {super(context
, attributeSet
, i
, map
, b
);init(context
);}private void init(Context context
) {this.mContext
= context
;
addJavascriptInterface(new MyJaveScriptInterface(mContext
,this),"androidJSBridge");initWebViewSettings();
initWebViewClient();
initChromeClient();}private void initWebViewSettings() {WebSettings webSettings
= getSettings();
webSettings
.setJavaScriptEnabled(true);
webSettings
.setSupportZoom(false);webSettings
.setBuiltInZoomControls(false);webSettings
.setDisplayZoomControls(true);
webSettings
.setCacheMode(WebSettings
.LOAD_DEFAULT
);}private void initWebViewClient() {
setWebViewClient(new WebViewClient() {});}private void initChromeClient() {setWebChromeClient(new WebChromeClient() {@Overridepublic void onProgressChanged(WebView webView
, int i
) {super.onProgressChanged(webView
, i
);if (onWebViewListener
!= null
) {onWebViewListener
.onProgressChanged(webView
, i
);}}@Overridepublic boolean onJsAlert(WebView webView
, String s
, String s1
, JsResult jsResult
) {AlertDialog
.Builder builder
= new AlertDialog.Builder(mContext
);builder
.setMessage(s1
);builder
.setNegativeButton("確定", null
);builder
.create().show();jsResult
.confirm();return true;}});}public interface OnWebViewListener {void onProgressChanged(WebView webView
, int progress
);}
}
public class Constants {public static final String WEB_URL
="你的網頁地址";}
MainActivity.xml
<?xml version
="1.0" encoding
="utf-8"?>
<LinearLayout xmlns
:android
="http://schemas.android.com/apk/res/android"android
:layout_width
="match_parent"android
:layout_height
="match_parent"android
:orientation
="vertical"><com
.tcy
.tickets
.views
.X5WebViewandroid
:id
="@+id/web_view"android
:layout_width
="match_parent"android
:layout_height
="match_parent"></com
.tcy
.tickets
.views
.X5WebView
></LinearLayout
>
5.
開http權限
然后在manifest.xml里面聲明一下
6.點擊運行即可
總結
以上是生活随笔為你收集整理的android: 怎么使用腾讯X5WebView的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。