Windows Phone 8 の WebBrowser コントロールで問題が発生しました。コマンドを送信できるカスタム uriparser を登録しましたがwindow.location.href = "myprotocoll://processCommand(17, 'jscriptcallback', '{\"data0\":\"hello\"}')"
、私の例のように二重引用符を追加し始めた場合を除いて、うまく機能します。({"data0":"hello"})
json文字列を送信したい場合に何が必要になりますか。window.location.href を介してその URL に移動しようとしても、私のアプリにはエラー出力も例外もありません。何も起こりません。これは非常に奇妙な振る舞いだと思います。
私の UriParser:
public class MyUriParser : UriParser
{
public MyUriParser()
{
}
protected override string GetComponents(Uri uri, UriComponents components, UriFormat format)
{
return "";
}
protected override bool IsWellFormedOriginalString(Uri uri)
{
return true;
}
protected override void InitializeAndValidate(Uri uri, out UriFormatException parsingError)
{
parsingError = null;
}
protected override bool IsBaseOf(Uri baseUri, Uri relativeUri)
{
return false;
}
protected override string Resolve(Uri baseUri, Uri relativeUri, out UriFormatException parsingError)
{
parsingError = null;
return "";
}
}
登録方法:
if (!UriParser.IsKnownScheme(SCHEMENAME_0))
UriParser.Register(new MyUriParser(), SCHEMENAME_0, 80);