2017-10-30 11 views
0

「を含む」ローカルWebページを呼び出し中に、WebViewのを呼び出そうとそれはそれ以下はキットカットとにエラーを与えますエラーにアンドロイド - のWebView(キットカットと下):Javaスクリプト機能でエラーが

Uncaught TypeError: Object ["Some Object"] has no method : 'includes', source: file:///storage/sdcard0/MyDemo/js/fileName.js

を与えます。 これはKitkatよりも適切に機能します。

それは

compileSdkVersion 25 
buildToolsVersion "25.0.2" 

と依存

現在のGradleの設定を使用して
compile 'com.android.support:design:25.3.1' 
compile 'com.android.support:support-v4:25.3.1 

以下のGradleの設定で正常に動作しました。

compileSdkVersion 26 
buildToolsVersion "26.0.2" 
defaultConfig { 
    applicationId "" 
    minSdkVersion 16 
    targetSdkVersion 26 
    versionCode 1 
    versionName "1.0" 
    multiDexEnabled true  
} 

compile 'com.android.support:design:26.1.0' 
compile 'com.android.support:support-v13:26.1.0' 
compile 'com.android.support:appcompat-v7:26.1.0' 
+0

を利用する必要があります。ファイルとしてリンクする必要があります:///android_asset/js/filename.js –

+0

@Amod - 'ローカル' Webページがアンドロイドアセットから呼び出された場合、 'file:/// android_asset /'としてリンクする必要があります。上記の 'ローカル'ページは 'デバイスのSDカードから読み込まれました'。 – SHS

答えて

1

あなたはのECMAScript 6が最新のJavaScriptのバージョンでサポートされている、あなたのjsファイル内の文字列にincludes方法を使用しており、AndroidのキットカットのWebViewのは、このバージョンをサポートしていないので、これが起こっています。

は、あなたの質問にあなたがfilename.jsを参照してくださいhtmlコードを更新してくださいindexOf代わりincludes

var str = "Hello world, welcome to the universe."; 

var n = str.includes("world"); 
# Replace above line of code and use indexOf. 

var n = str.indexOf("world") > -1; 
+0

ありがとうございます。 –

関連する問題