之前介绍.NET MAUI的时候介绍说,这是一份跨平台应用框架,其代码可以在多个平台运行。

可以使用C#语言,而不需要深入了解Java。.NET MAUI提供了一个统一的框架,能够编写跨平台的移动应用,包括在Android设备上运行的应用程序

本期介绍如何写的代码在Andriod设备上使用。

其实我一直想在Andriod上进行编程,但是目前我所知道的所有Andriod编程都离不开Java,但是本人精力实在有限,实在腾不出时间去专门了解Java架构和Java的学习。

因此一直在寻找能否使用C语言或其升级语言来替代,Python也有相关的Android编程,但是效率极差,显然不是长久的选择,因此我选择.NET MAUI来尝试Android编程。

上期我们已经安装了.NET MAUI并且运行了其实例。

之后我们在其基础上做出修改,实现我们自己的界面的制作。 本期,我们将代码运行到安卓设备上。

首先我们需要进入手机的开发者模式。(百度搜索开发者模式的教学)

之后开启USB调试和USB安装。

在VS调试中,选择Android本地设备,选择连接到的设备。 可以看到,在我们的手机上运行成功。

全局中的这四个文件为共享代码区,我们通用的文件,例如界面文件启动文件都会在这里编辑。

Platforms为单独的代码区,用以编辑不同平台的代码。

当然在使用共享区代码的时候注意,例如我在Android中调用Android平台的代码的话,不希望在其他平台中使用时,例如我想要点击按钮来显示IP地址,我只希望在Android中实现这个功能。可以使用如下代码


        private void OnButtonClick(object sender, EventArgs e)
        {
#if __ANDROID__
            try
            {
                AndroidWifiService wifiService = new AndroidWifiService();
                string ipAddress = wifiService.GetIpAddress();
                Label.Text = ipAddress;
            }
            catch (Exception ex)
            {
                // 捕捉异常并在调试器中查看
                Label.Text = ($"Exception: {ex.Message}");
            }
#endif
#if WINDOWS10_0_17763_0_OR_GREATER
    Label.Text = "这里是Windows专属"

#endif

        }

使用#if __ANDROID 可以筛选特定平台或者特定版本。

这里我的获取Wifi地址的代码是在Android中新建的一个类来实现的。

可以看到,除了我的显示有点问题(文本倒了),但是功能是没有问题的。而Windows运行的话,这段代码则会显示#if WINDOWS10_0_17763_0_OR_GREATER的内容

#endif#
#endif}使用#
嘉立创PCB

还没有评论,抢个沙发!