Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行

摘要:
2、 创建一个新的Xamarin.Forms项目,编译、部署和调试Xamarin.form是Xamarin为跨移动平台的表单应用程序开发提供的套件。因此,如果Xamarin用于开发应用程序,Xamarin.Forms将是一个不错的选择。ESFramework.XamarinDemo是一个可移植类库,其中完成了App的大部分逻辑和UI。它还需要经过最终发行版。

   (本文是基于老版本的VS和Xamarin,而VS2017已经集成了Xamarin,所以,本文已经过时,最新的Xamarin开发介绍请参见 使用 Xamarin开发手机聊天程序 。)

   如果是.NET开发人员,想学习手机应用开发(Android和iOS),Xamarin 无疑是最好的选择,编写一次,即可发布到Android和iOS平台,真是利器中的利器啊!好了,废话不多说,就开始吧,本文将描述基础环境的搭建,以及将应用在android环境中调试、发布、运行,iOS部分将在后面的文章中专门讲解。

一.搭建环境

1. 安装 VS2015。

2. 安装 Xamarin。我安装的是目前的最新版本:Xamarin.VisualStudio_4.2.0.703.msi。

3. 安装JDK:我安装的是目前的最新版本:jdk1.7.0_71。

4. 下载 Android SDK。

(1)下载完成后, Android SDK 目录下有两个exe:AVD Manager.exe 和 SDK Manager.exe。

(2)SDK Manager 用于管理不同版本的SDK,在其管理界面中可以下载新版本的SDK或升级旧版本的SDK。

    Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第1张

    我下载了版本号的5.1.1,6.0,7.0的SDK(其文件目录在子文件夹platforms下)。这些版本的SDK会在项目编译时用到,以及安卓模拟器也会用到它们。

(3)AVD Manager.exe 用于管理安卓模拟器。

   Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第2张

    与SDK的版本号对应,我创建了三个安卓模拟器,供调试时使用。

5. 在VS中配置Xamarin选项。

     Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第3张

  由于我暂时没有用到原生的安卓开发,所以,我没有配置NDK。

二. 新建Xamarin.Forms项目、编译、部署、调试

  Xamarin.Forms 是Xamarin提供的一个套件,用于跨移动平台的Form应用开发,所以,如果是使用Xamarin开发App,那么,Xamarin.Forms 将是很好的选择。

1.新建一个Cross-Platform跨平台项目,选择Xaml App(Portable)。

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第4张

   Xaml App 与 普通的App的区别在于, Xaml App是使用Xaml文件来控制Form上的控件的布局的。

2.项目新建成功后,会在解决方案管理器中,生成三个项目。

   Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第5张

   ESFramework.XamarinDemo 是可移植的类库,App的绝大部分逻辑和UI都是在其中完成。

   ESFramework.XamarinDemo.Droid 对应了安卓版本,ESFramework.XamarinDemo.iOS 对应了iOS版本,它们都引用了 ESFramework.XamarinDemo 项目。

   对于一般简单的应用而言,只需要在ESFramework.XamarinDemo中编写代码就可以了,ESFramework.XamarinDemo.Droid 和 ESFramework.XamarinDemo.iOS中的代码几乎不用动。   

3.编译 ESFramework.XamarinDemo.Droid 项目

   Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第6张

  在项目属性面板中,要选择编译所使用的安卓SDK的版本号,我选择的是6.0。

4.部署、调试

  编译成功后,就可以尝试部署到虚拟机,并运行调试了。

(1)启动安卓虚拟机。

  运行上述的AVD Manager.exe ,我选择了自己创建的and6虚拟机,点击界面右侧的Start按钮,启动一个虚拟机实例。

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第7张

(2)部署并运行

  在VS上的工具栏,选择刚才启动的虚拟机实例and6,点击调试按钮(绿色的三角形),即可开始部署、运行的流程。(注意,要选择Debug模式)

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第8张 

(3)调试

  部署运行成功后,模拟器就会显示demo App 的UI界面:

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第9张  

  此时,可以在源码中加入断点开始调试程序了。

三. 发布 apk

1.将项目切换到Release。

2.设置清单信息Manifest

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第10张

  包括:应用的名称、apk包的名称、图标、版本号、权限等。

3.设置Linker

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第11张

  Linking 设置为none,意味着要将所有的SDK打包到apk中,这样,一个apk至少是40多M。

  Linking 一般设置为 SDK Assemblies Only,表示 apk 使用手机中自带的SDK。

4.Archive - 存档apk

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第12张

  在发布apk之前,先要Archive得到apk。注意:Archive得到的apk不能直接部署到手机真机,运行会闪退。还需要经过最后的Distribute正式发布。

5.Distribute

  在Archive成功后,会出现如下界面:

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第13张

    点击Distribute按钮,进入发布apk的流程。首先,要对apk进行签名:

  Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行第14张

  如果是第一次走这个流程,先要点击绿色的“+”,创建一个密钥文件,然后选择它,再点击“Save As”按钮,即可保存签名后的apk。  

6.拷贝到真机

  将上述得到的ESFramework.XamarinDemo.apk,拷贝到真机,就可以安装了。晚装完毕,点击图标,即可运行我们的demo App了。

四.结语

  以上的整个流程是我们在为ESFramework通信框架的Xamrain版本实现一个入门Demo时,完整的记录,希望对刚刚开始研究Xamrain开发的朋友有所帮助。

  后续的文章,我们将介绍这个Demo的后续开发过程,基于Xamarin实现手机与PC互通的的IM 聊天小程序。

免责声明:文章转载自《Xamarin 跨移动端开发系列(01) -- 搭建环境、编译、调试、部署、运行》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Hutool-二维码生成Octotree Chrome安装与使用方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

扒一扒安卓渲染原理

导语:在测试流畅度的过程中,必不可免的要与FPS,Jank等指标接触,但为了加深理解,今天来简单扒一扒安卓的渲染原理;PerfDog使用Jank作为来代表游戏流畅度的指标,详情可以看APP&游戏需要关注Jank卡顿吗? 一.CPU与GPU结构 现在大部分移动端都会配有CPU(中央处理器)和GPU(图形处理器),有的现在还有一块NPU用于处理智能运算...

JVM 详解

1 jdk  和jre 的区别     jre 石 Java 运行环境,只能运行 class 不能编辑 Java文件,不能dubug。  2  jdk下面的  bin/jconsole.exe 监控 一些内存,线程,jvm 。 3 Java 的 层级 ,以前我们关注的是三面 三次。jvm 是最下面一层    4 Java的  作者是  詹姆斯·高斯林   ...

Visual Studio2015 简体中文版 安装

VS2015简体中文版安装 导航 介绍 解决安装先决条件 安装 VS2015 创建桌面快捷方式 启动 VS2015 命令启动VS2015 配置 VS2015 启动完成 Visual Studio的功能添加和删除 Visual Studio的卸载 MSDN介绍 MSDN安装 第一步 移动默认存储路径 第二步 剪切粘贴帮助文档 启动MSDN...

Android平台Overlay机制

Android overlay 机制允许在不修改packages中apk的情况下,来自定义 framework和package中的资源文件,实现资源的定制。来达到显示不同的UI得目的(如MIUI)。 以下几类能够通过该机制定义: (1),Configurations (string, bool, bool-array) (2),Localization...

友盟官方文档

#  产品概述 关于分享和授权的sdk接口,我们在v4.4.0做出了巨大的改变,精简了接口调用的代码。并将分享授权,与评论等功能做出了隔离,使结构更加清晰。所以本版本的功能也只有分享与授权并无其他功能,请开发者注意。 注意:本文示例代码只有分享与授权功能,并对接口进行了调整,如需要原功能的开发者,请继续使用v4.3.0版本。 # 获取友盟Appkey 如果你...

【Android 应用开发】 ActionBar 基础

作者 : 万境绝尘 (octopus_truth@163.com) 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/39204393 示例代码下载 :  -- GitHub : https://github.com/han1202012/Octopus_ActionBar.git -...