沐鸣娱乐


        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        Visual Studio 2019调试 安卓和ioses开发的app

        上图为C# 同一份源码在红米note 1S 的真机上运行安卓app ,和iphoness 13 模拟器运行ioses版app 。 (因为ioses要在iphoness真机中调试,还需要其它操作开发环境配置 ,会在后续文中详解。)


        写在最前:

        本文将以最简单明了阐述 C#一份源码同时开发出ioses和androids的app, 为让不懂技术小白和初学者都一看就懂,故会跳过其它博主已经发布的xamarin建项目每步步骤 ,要学习可以参考他们。


        1、在VS2019中项目解决方案结构:

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        在Visual Studio 2019中项目模板选择 移动应用(Xamarin.Forms)创建项目,会获得上图中的解决方案结构 。

        解决方案结构有三个项目组成,它们是

        • StockDiffEanrs,源码项目,所有的C#源码 ,和UI设计在这里面开发
        • StockDiffEarns.androids ,安卓项目
        • StockDiffEarns.ioses, ioses项目

        重点在这里,不需要同时编写androids项目和ioses项目的源码,只需要在第一个源码项目中完成,即一份c#代码同时完成androids和ioses app开发 。


        2、展开第一个项目开发UI ,如下图

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        1) 新建Views文件夹 ,

        2) 在该文件夹下 ,添加新项 ,选择内容页,取名“CalcT.xaml”

        3) 在CalcT.xaml中编写代码如上图 ,该部分代码就是app的UI 部分

        至此 androids app和ioses app 的UI 界面就同时完成了 !


        3 、编写C# 代码完成实际功能

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        • 该app只有一个按钮功能就是计算差价

        如上图,点开CalcT.xaml在它对应的 CalcT.xaml.cs文件中编写C#代码

        代码原理 :计算差价,差价是负数,显示金额并以绿色显示 ,否则红色显示,并保留2数小数 。


        4、运行调试安卓app

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        1) 如上图选择 “androids设备管理器”

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        2) 在打开窗口中 ,新建一个安卓仿真器。 (过程中会连网下载安卓调试缺失的环境,会因为国内连接GOOGLE服务器不畅问题导致创建失败。根据对应错误网上查找解决办法)

        3) 将第二个安卓项目设为启动项目

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        4) 从创建的安卓仿真器运行 app

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        5) 运行过程VS2019会自动编译,并启动仿真器,将app部署进安卓仿真器中 ,显示运行结果:

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        5、安卓app放到安卓手机中安装运行

        1) 当完成上述过程,仿真器运行后在安卓项目文件夹下已经生成了apk安装包 ,那能直接拿去用呢?

        答案是可以,但是需要改变VS2019编译方式从Debug模式改Release模式,再重新编译一次。要问为什么,原因就是本人亲测不这样做直接在安卓手机中可以安装,但运行会闪退!

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        右击第二个安卓项目,点击属性 。显示上图。 取消两处勾选,将改为Release模式

        2) 更改安卓app最低支持的安卓版本

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        如果最低版本选择安卓5.0,这样安卓4以下都无法安装此安装包。博主要在老手机安卓4.4.4红米note1s 的MIUI中运行,所以这里选择了4.3。 另外有小米MIX4 miui12 同样可以运行

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)


        6 、生成ioses app并运行调试

        安卓的C#代码 开发的app可直接生成ioses app并调试 ,但因为苹果设备特殊限制 ,Winddows电脑需要无线连着苹果电脑 , 同时苹果电脑已经安装相应的XCODE 版本 。

        为了实现这个调试,VS2019需要 XCODE 12以上 苹果电脑进行协同工作 ,不同的XCODE 版本有最低限度支持的macOS版本 。所以,本人的苹果电脑macOS版本不支持运行XCODE 12,不得不将苹果电脑系统升级为了macOS 11.7, 这样就能运行 XCODE 13.1 比 XCODE12 高肯定支持。 经过一番折腾终于让苹果电脑系统和开发环境达到要求 。

        1)连接苹果电脑,右击第三个项目,设置为启动设备,点击VS2019调试按钮,VS2019提示远程连接苹果电脑的步骤后进入状态,

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        VS2019远程连接MAC xcode

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        VS2019会自动检测苹果电脑的Mono版本

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        检查Xamarin SDK版本,如果版本不一致或缺失会自动安装

        最后会检查XCODE版本,这个不一致,则需要我们开发者手动在苹果电脑上安装!~

        一切通过后 ,则显示苹果ioses设备仿真器

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        在iphoness 13仿真器中运行APP

        在iphoness真机中调试后在后续文章 ,喜欢的朋友可以收藏或关注


        7、生成ioses app在iphoness和ipads中部署

        C# 比JAVA弱吗?用C#一份源码同时生成安卓和ioses APP(c反应蛋白高说明什么)

        ​在苹果设备真机中部署ioses app则需要在MAC电脑中USB连接iphoness并启动XCODE远程和Windows连接才能调试,会在后续文章阐述 。


        写在最后:

        本文开宗明义 ,以最简单直白的图文大家能快速了解C#的强大和跨平台特性,一份代码同时生成androids和ioses app。在开发中遇到的情况和避坑文中已尽量做到详细 。

        针对软件产品经理和软件公司老板,或者有意外包的客户 。请不要因为如此觉得程序员的工作量得到的降低。应该看到是一个开发团队同时完成了两个开发团队的工作量。 这样的好处是让app开发效率提高,不是工作量的降低,让app程序在后续中的维护和二次开发、版本管理 ,相应的统一。这样的好处不是针对程序员本身,恰恰这优点是针对软件公司老板 ,和产品源码交付给客户后的管理和二次开发 。

        如今.NET开源, 并在跨平台上得到很全面的发展,C#做为.NET顶流开发语言,它的优点,跨平台性、类库丰富性从PC到移动端开发,可以说是一枝独秀。值得初学者明白和学习 ,开发者在真实的工作中多了一个强有力的移动平台开发语言和工具 !

        相关新闻

        联系我们
        联系我们
        分享本页
        返回顶部

          XML地图