0

現在、Java で Android 用のアプリケーションを作成していますが、これを iOS サポート用に Xamarin.Forms で書き直しています。Android アプリでは Jsoup を使用し、Xamarin アプリでは AngleSharp を使用しています。

以下のコードは iOS と UWP では機能しますが、Droid プロジェクトでは機能しないという問題があります。

私の疑いは、 context.OpenAsync(url); を呼び出すときに接続が確立されていないことです。

私が持っています

<uses-permission android:name="android.permission.INTERNET" />

私のAndroidマニフェストで。minSdk=17、targetSdk=24 をターゲットにしています。この問題は、エミュレーターと Galaxy S7 の両方で持続します。

コード:

try
        {
                var url = "<URL>";
                var configuration = Configuration.Default.WithDefaultLoader().WithCookies();
                var context = BrowsingContext.New(configuration);
                var document = await context.OpenAsync(url);
                IHtmlInputElement username = document.QuerySelector("input[id='username']") as IHtmlInputElement;
                IHtmlInputElement password = document.QuerySelector("input[id='password']") as IHtmlInputElement;
                IHtmlFormElement loginform = document.QuerySelector("form[id='logonForm']") as IHtmlFormElement;

                username.Value = "<uname>";
                password.Value = "<pword>";
                document = await loginform.SubmitAsync();

                Debug.WriteLine(context.Active.Url);
            }
            catch (Exception e)
            {
                Debug.WriteLine("ERROR " + e);
            }

注意 プライバシーのため、URL またはユーザー名とパスワードは表示していません。どんな助けでも大歓迎です!

4

1 に答える 1