2017-10-04 15 views
1

ロードページFile.htmlに問題があります。私はHTMLで私のマップをロードしたいが、エミュレータは表示されません。Xamarinローカルリソースファイルをロードできません。

"[INFO:CONSOLE(0)]"ローカルリソースを読み込むことができません:file:///android_asset/HTMLPage1.html "、ソース:data:text/html、chromewebdata(0)"

「I /クロム(11080):[INFO:CONSOLE(0)] "ローカルリソースをロードするために許可されていません:ファイル:///android_asset/webkit/android-weberror.png"、ソース:データ:テキスト/ HTML、chromewebdata(0) "のWebPageは利用できません」エミュレータページ

を示し、"

XAMLファイル:

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
     xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
     xmlns:local="clr-namespace:Mapaht" 
     x:Class="Mapaht.Mapahet"> 


    <WebView 
    x:Name="webviewjava"></WebView> 
</ContentPage> 

ページファイル

public Mapahet() 
    { 
     InitializeComponent(); 


     webviewjava.Source = "file:///android_asset/HTMLPage1.html"; 
    } 
+0

https://developer.xamarin.com/guides/xamarin-forms/user-interface/webview/ #Android – SushiHangover

+0

私は試しましたが、動作していません –

+0

Forms 'WebView内で 'file:/// android_asset'を使用してコンテンツをロードすると、リンク先のガイドに従わない場合、' file:/// android_asset'はAndroidの 'WebView'ウィジェットで使用され、フォームの' WebView'では使用されません – SushiHangover

答えて

0

私はロードページFile.htmlに問題があります。

XAML:あなたPCL

<WebView 
    x:Name="webviewjava" 
    HorizontalOptions="FillAndExpand" 
    VerticalOptions="FillAndExpand" 
    /> 

インタフェース:

public interface IBaseUrl 
{ 
    string Get(); 
} 

これを実装するには、次の手順を行うと、それは私の側で正常に動作します

インターファーAndroidの中のCe:

[assembly: Dependency(typeof(BaseUrl_Android))] 
namespace FormsWebview.Droid 
{ 
    public class BaseUrl_Android : IBaseUrl 
    { 
     public string Get() 
     { 
      return "file:///android_asset/"; 
     } 
    } 
} 

Assetsフォルダでロードローカルリソースファイル:

public MainPage() 
{ 
    InitializeComponent(); 

    var baseUrl = DependencyService.Get<IBaseUrl>().Get(); 
    string Url = $"{baseUrl}local.html"; 
    webviewjava.Source = Url; 
} 
+0

ありがとう!!その働き –

0

あなたはWVはおそらくnullであるように、コンテンツのビューを設定する前のWebViewを得ています。

protected override void OnCreate (Bundle savedInstanceState) 
     { 
      base.OnCreate (savedInstanceState); 
       SetContentView (Resource.Layout.webview); 
       WebView wv; 
       wv = FindViewById<WebView>(Resource.Id.webviewjava); 
       wv.LoadUrl("file:///android_asset/HTMLPage1.html"); 
      } 
     } 

あなたは、インターネットへのアクセスを持っているAndroidMainfest.xmlファイルの権限を持っている必要があります。

​​
+0

まだ動作していません –

関連する問題