MAUI(C#)安卓开发起步

[复制链接]
发表于 2025-10-20 18:22:52 | 显示全部楼层 |阅读模式
低级代码游戏的专栏先容与文章目次-CSDN博客
我的github:codetoys,全部代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。
这些代码大部分以Linux为目标但部分代码是纯C++的,可以在任何平台上利用。
源码指引:github源码指引_低级代码游戏的博客-CSDN博客

        用visual studio MAUI开发安卓对C#、微软流是个比力方便的方法,固然大概不如原生开发那么霸道,做一样平常性的应用是绰绰有余的。不外实话说,同时给苹果和安卓开发不肯定能节省多少时间,处理处罚平台差异非常头疼,MAUI并没有很美满地办理平台差异。
目次
一、安装Visual Studio组件
二、天生新项目
2.1 应用范例
 ​编辑
2.2 框架版本
2.3 编译运行windows版 
三、安卓模拟器运行
3.1 安装模拟器
3.2 运行
四、模拟器无法启动怎么办
4.1 模拟器自身启动报错
 4.2 启用假造化和Hyper-V
 五、认识项目根本布局
5.1 目次布局
5.2 xaml
5.3 启动次序


一、安装Visual Studio组件


        必须安装“.NET Multi-platform App UI”开发才行。
二、天生新项目

2.1 应用范例

 


        第一个项目可以从“.NET MAUI应用”开始,这是最标准的。
2.2 框架版本

        框架选择一样平常选恒久支持的,如果你必要利用早期.NET版本,固然项目内里可以改,但又不是可以改全部,以是呢,最好安装旧版本的visual studio。我如今用的版本只提供.NET8.0和9.0:

2.3 编译运行windows版 

         创建项目之后就可以直接编译运行,先试试“Windows Machine”的效果:

        挺丢脸的。谁人大按钮可以点击,点击之后按钮上的笔墨变为点击次数:

         这就算项目创建乐成了。但是不算可以起步了,由于我们要的事安卓版。
三、安卓模拟器运行

3.1 安装模拟器

        在菜单栏打开“工具”-“Andriod”-“Android Device Manager”:

        点谁人大大的“+”添加一个装备,默认是Pixel 7,无所谓了。API版本着实越低越好,越低兼容的装备越多。
        必要主动下载一些东西,安装好后是如许:

        不消点“开始”,运行的时间会主动启动。 
3.2 运行

        改一下运行目标,从下拉中找到刚才建好的模拟器装备:

        点一下开始运行…… 第一次会很慢,要先编译,再启动模拟器,然后各种准备,末了才气看收效果:

        点一点也是一样的效果:

        这就算准备工作大功告成,可以开始正式开发了。
四、模拟器无法启动怎么办

4.1 模拟器自身启动报错

        如果运行步伐发现报错:

        如果有个消息框一闪而过,可以打开安装模拟器的谁人界面,手动运行一下,一样会堕落但消息款不会主动消散:

        上面说得很清晰:
HAXM is deprecated and not supported by Intel any more. Please download and install Android Emulator Hypervisor Driver for AMD Processors, which also supports Intel Processors. Installing from SDK Manager is comming soon.
        意思是用于Intel CPU的加速器HAMX已经启用,你要换一个,但谁人还不能主动安装。 
        你去SDK Manager(就是安装模拟器的菜单的下面一个菜单)看,发现着实HAMX没装,Android Emulator Hypervisor Driver也没装,然后你就想是不是装一下这个就行了……
        唉!别动,着实大概率是Hyper-V没装啊,由于没有Hyper-V才会去用HAXM或AEHD(就是Android Emulator Hypervisor Driver)。没有Hyper-V之前我分别装了HAXM或AEHD,统统照旧,堕落信息也稳定,幸好安装了Hyper-V就办理了题目,现实上并不必要这两个。
 4.2 启用假造化和Hyper-V

        假造化一样平常在电脑的BIOS设定里开启,如果支持,一样平常默认是开启的。
        Hyper-V是利用体系的附加组件,在“启用或关闭Windows功能”里添加。对于windows11,在【设置】-【 体系】-【 可选功能】-【 更多windows功能】:

        安装好后重启体系,就会发现模拟器可以或许正确运行了。
        你在其他资料里发现除了Hyper-V尚有个干系必要勾选,但是在我的体系上,谁人条目根本就不存在。(附注:厥后在升级VMWARE的时间提示开了Hyper-V必要安装winodws Hyper-v 管理平台,但是找不到,让升级步伐主动安装,好像是安装了“windows假造机监控监控步伐平台”,以是谁人东西应该是改名字了)
 五、认识项目根本布局

5.1 目次布局


        上面的属性、依靠项、平台目次暂时不消关注,平台目次下是每个平台的专属内容,暂时不必要修改。
        下面的Resources、三个xaml、一个cs是重点。
5.2 xaml

        xaml是界面形貌,每一个都对应一个.xaml.cs文件,xmal内里所需的C#代码就在对应的cs文件里。

        主界面临应的文件“MainPage.xaml”,内容如下:
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
  3.              xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
  4.              x:Class="MauiApp1.MainPage">
  5.     <ScrollView>
  6.         <VerticalStackLayout
  7.             Padding="30,0"
  8.             Spacing="25">
  9.             <Image
  10.                 Source="dotnet_bot.png"
  11.                 HeightRequest="185"
  12.                 Aspect="AspectFit"
  13.                 SemanticProperties.Description="dot net bot in a race car number eight" />
  14.             <Label
  15.                 Text="Hello, World!"
  16.                 Style="{StaticResource Headline}"
  17.                 SemanticProperties.HeadingLevel="Level1" />
  18.             <Label
  19.                 Text="Welcome to &#10;.NET Multi-platform App UI"
  20.                 Style="{StaticResource SubHeadline}"
  21.                 SemanticProperties.HeadingLevel="Level2"
  22.                 SemanticProperties.Description="Welcome to dot net Multi platform App U I" />
  23.             <Button
  24.                 x:Name="CounterBtn"
  25.                 Text="Click me"
  26.                 SemanticProperties.Hint="Counts the number of times you click"
  27.                 Clicked="OnCounterClicked"
  28.                 HorizontalOptions="Fill" />
  29.         </VerticalStackLayout>
  30.     </ScrollView>
  31. </ContentPage>
复制代码
        内里有一句【Clicked="OnCounterClicked"】,这就是点击按钮时发生的事故处理处罚步伐的绑定,从对应的cs文件里很轻易找到实今世码:
  1. namespace MauiApp1
  2. {
  3.     public partial class MainPage : ContentPage
  4.     {
  5.         int count = 0;
  6.         public MainPage()
  7.         {
  8.             InitializeComponent();
  9.         }
  10.         private void OnCounterClicked(object sender, EventArgs e)
  11.         {
  12.             count++;
  13.             if (count == 1)
  14.                 CounterBtn.Text = $"Clicked {count} time";
  15.             else
  16.                 CounterBtn.Text = $"Clicked {count} times";
  17.             SemanticScreenReader.Announce(CounterBtn.Text);
  18.         }
  19.     }
  20. }
复制代码
5.3 启动次序

        步伐从MauiProgram.cs启动,构造了一个“App”给体系,这个“App”就是App.xaml,打开App.maml.cs,可以看到构造了一个AppShell对象,这个AppShell对象就是AppShell.xaml,这个文件内里关联到了MainPage,AppShell的cs文件没什么特殊的代码。
        作为起步,我们只必要在MainPage上修改就可以了。

(这里是文档竣事)

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

×
登录参与点评抽奖,加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表