当前位置: 首页 > news >正文

Avaloni11开发笔记

如何实现多端

本质上,是一个核心程序+多个启动器。Desktop和移动端(Android和IOS)需要分别写启动器。

例如,核心程序=AvaloniaDemo,如果需要在移动端运行,就需要创建移动端的启动程序。

移动端启动程序

  1. 首先,我们创建新项目,项目模板选择Avalonia.Net App,随便起个名字。我们这里叫AvaloniaDemo.Android。
    46ECA427-A730-43dd-910D-A2976BA3B986
    创建完成后,我们使用编辑项目文件来查看项目文件,这时文件里的内容应该是
<Project Sdk="Microsoft.NET.Sdk"><PropertyGroup><TargetFramework>net9.0-android</TargetFramework><OutputType>Exe</OutputType><Nullable>enable</Nullable><UseMaui>false</UseMaui><SupportedOSPlatformVersion>21</SupportedOSPlatformVersion></PropertyGroup><ItemGroup><PackageReference Include="Avalonia.Android" Version="11.3.6" /></ItemGroup><ItemGroup><ProjectReference Include="..\AvaloniaDemo\AvaloniaDemo.csproj" /></ItemGroup>
</Project>

注意TargetFramework标签和outputType标签

  1. 然后编辑MainActivity.CS,代码是
[Activity(Label = "AvaloniaDemo", MainLauncher = true,Theme = "@style/Theme.AppCompat.Light.NoActionBar")]
public class MainActivity : AvaloniaMainActivity<AvaloniaDemo.App>
{protected override void OnCreate(Bundle savedInstanceState){base.OnCreate(savedInstanceState);}
}

关键代码是当前类一定要继承自AvaloniaMainActivity,泛型是主程序的App。

  1. 编辑AvaloniaDemo的App.cs
    • 移动端必须要使用View而不是Window,否则在运行到MainWindow的构造函数时会报错。
    • 判断当前是不是移动端程序,使用
if (ApplicationLifetime is ISingleViewApplicationLifetime singleViewPlatform)
  1. 最后,就可以启动AvaloniaDemo.Android了
    C61EC70A-48CB-4aae-90A0-4D2FFC6205B0
http://www.rkmt.cn/news/22977.html

相关文章:

  • 题解:P12550 [UOI 2025] Reversal ABC
  • 编译安装gdb 编译安装gdb
  • 2025年10月商标注册公司推荐榜:五强对比与中立评测助您高效决策
  • 2025年发电机组厂家推荐排行榜,柴油/燃气/船用/静音箱式/移动拖车式/集装箱式/上柴/玉柴/潍柴/康明斯/沃尔沃/道依茨/帕金斯/MTU发电机组公司推荐!
  • 2025年10月敏感皮肤修复产品推荐榜:五款热门单品深度对比与客观评析
  • 题解:P7275 计树
  • mysql新建用户并授权,mysql新建用户并授权完整指南
  • CRC32的直接和反转模式
  • 2025年10月石墨电极厂家推荐榜单详解:从产线到应用看晶碳科技真实表现
  • 2025年西安买房新楼盘口碑排行榜:地建嘉信臻城领跑高端住宅市场
  • 2025年数粒机厂家推荐排行榜,防爆/新型/高速/高精度/智能/大容量/多通道/电子/视觉/全自动/低噪音/制药用/农业用/食品用/电子元件/光电/定制化/鹌鹑蛋/糖果/坚果/药品/片剂数粒机公司推荐
  • git和gitee的学习研究
  • 从“看得见”到“看得懂”:国标GB28181算法算力平台EasyGBS与公安安防数字化的深度融合
  • 山海鲸可视化可以导入哪些常用的3D模型?
  • 读书笔记:什么时候该用B*树索引?一个接地气的解读
  • 2025年工作服厂家权威推荐榜:防静电/劳保/国网/餐厅/工厂/电工/防酸碱/电力/车间/航空/员工工作服,文化衫/T恤/POLO衫/冲锋衣全品类精选
  • 误删 Stash 后的数据恢复实践
  • 2025年10月重庆保洁公司推荐排名:聚焦服务细节与合规风险的避坑手册
  • 2025年10月床垫品牌推荐榜:围绕环保认证与试睡政策的系统化评析
  • 2025年10月上海装修公司推荐榜:极家家居设计标准与施工节点全维度对比
  • 2025年浓缩机厂家权威推荐榜:高效浓缩机/尾矿浓缩机/污泥浓缩机/新型浓缩机/矿用浓缩机/浓密机/中心转动浓缩机/真空浓缩机/污泥脱水机
  • Clip Studio Paint 4.0.3下载地址与安装教程
  • 低代码平台核心概念与设计理念
  • PyTorch nn.Linear 终极详解:从零理解线性层的一切(含可视化+完整代码) - 指南
  • 2025年陶瓷过滤机厂家权威推荐榜:盘式/矿用/全自动陶瓷真空过滤机,真空脱水机,尾矿干排设备,圆盘过滤机源头企业深度解析
  • 使用python脚本大批量自动化处理图片上的ai水印
  • springboot结合阿里巴巴easyexcel,实现一键导出数据到Excel中
  • 深入解析:PX4 无人机地面调试全攻略:从机械到参数的系统优化
  • 2025年陶瓷过滤板厂家推荐排行榜,白刚玉陶瓷过滤板,棕刚玉陶瓷过滤板,扇形陶瓷板,真空陶瓷过滤板,陶瓷滤膜,陶瓷过滤机配件公司推荐
  • springboot结合阿里巴巴easyexcel,实现一键把Excel数据导入数据库