如何在加载页面之前检查 Internet 连接?

在加载页面之前,我想在 Xamarin 中检查 Internet 连接。但是我遇到了这种类型的问题:


06-21 14: 48: 59.072 E / mono-rt (11985): / proc / self / maps: 执行本机代码时收到 SIGSEGV。这通常表示单声道运行时或您的应用程序使用的本地库之一中存在致命错误。


using System.Collections.Generic;

using System;

using Xamarin.Forms;

using Newtonsoft.Json;

using System.Net;


namespace ConnectBDD

{

public partial class PageLecture : ContentPage 

{


public PageLecture()

{

InitializeComponent();


        //permet de rafraichir les données dans la "listeView" via une action 

        monViews.RefreshCommand = new Command((obj) =>

        {

            Console.WriteLine("refresh command");

            DownloadData((articles) =>

            {

                monViews.ItemsSource = articles;

                monViews.IsRefreshing = false;

            });

        });


        //Appel de la fonction de téléchargement + passage de Paramètre avec la fonction invoke

        DownloadData((articles) =>

            {

                monViews.ItemsSource = articles;

                monViews.IsVisible = true;

                waitLayout.IsVisible = false;

            });


        // permet d'afficher une description en cliquant sur les cellules de la liste

        monViews.ItemSelected += (sender, e) =>

        {

            // si cellule est active la condition est rempli

            if (monViews.SelectedItem != null)

            {

                // assigne item pour selection des données de la liste

                Article item = monViews.SelectedItem as Article;


                // Affiche un message si tu appui sur une cellule de la liste

                DisplayAlert(item.Nom, item.Description, "Ok");

                //si la valeur n'est pas null la cellule sera bloqué si on repush dessus

                monViews.SelectedItem = null;

            }

        };


它适用于模拟器 Andoid Pie 9,但不适用于我的 Huawei P8 lite 2017!


在加载页面之前创建网络检查将是最简单的解决方案,只是我不知道允许我进行此验证的功能。Microsoft 文档帮助不大!


您是否知道如何在加载页面之前检查 Xamarin 中的 Internet 连接?


慕田峪7331174
浏览 103回答 1
1回答

白衣染霜花

您可以使用Xamarin Essentials插件检查 Xamarin 项目中的互联网连接。详细信息,您需要Connectivity API。所以,首先安装Xamarin.Essentials nuget然后添加命名空间:using Xamarin.Essentials;现在您可以检查互联网连接:var current = Connectivity.NetworkAccess;if (current == NetworkAccess.Internet){    // Connection to internet is available}
打开App,查看更多内容
随时随地看视频慕课网APP