《MonoTouch开发实践指南》一1.1 搭建开发环境-阿里云开发者社区

开发者社区> 华章计算机> 正文

《MonoTouch开发实践指南》一1.1 搭建开发环境

简介: 本节书摘来自华章出版社《MonoTouch开发实践指南》一 书中的第1章,第1.1节,作者:(美)Michael Bluestein,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
+关注继续查看

1.1 搭建开发环境

在使用MonoTouch开发之前,有许多事情需要先验知识(priori)。首先从苹果(Apple)入手获取所需要的一切,然后过渡到必不可少的MonoTouch上。

1.1.1 安装iOS SDK和苹果开发工具

欢迎来到使用.NET进行iOS应用开发的世界。我敢肯定,你现在会兴奋得想立刻开始编写程序,不过,首先要做的是在手头那部闪闪发亮的Mac上搭建开发环境。然后熟悉一下在模拟器和iPhone上进行开发所需的所有步骤以及应用程序如何在它们中运行。
注意 本书的内容也适用于iPod Touch和iPad。本书将iPhone、iPod Touch或iPad统称为“设备”(device),只有在只适用于某个设备的时候才会提及设备的名称。
现在要做的第一件事是,到iOS开发者计划(iOS Developer Program)中注册。通过免费账号可下载在iOS模拟器中使用的开发工具和iOS SDK,还可以访问iOS开发中心(iOS Dev Center)的其他资源。如果要在设备上部署应用程序并将它发布到iTunes App Store,就要从苹果购买付费许可。可以在图1-1所示的iOS开发者中心主页上找到注册链接。
注册后,登录到iOS开发者中心并下载包含XCode的iOS SDK,它提供了整套使用Objective-C开发iPhone应用程序的工具。没错,你没眼花。MonoTouch建立在苹果开发工具链的顶端,并带来了优雅的C#和.NET。它是一个两全其美的设计,既符合苹果的设计规范,又可以让使用者体验到像使用本地应用程序一样自然。在MonoTouch的旅程中一定会获益良多,不过,现在还是先回到搭建环境上。
如图1-2所示,下载包含XCode的iOS SDK。在本书中,将使用Mac OS X雪豹(Mac OS X Snow Leopard)进行iOS开发。
下载并安装苹果的iOS SDK之后,先要做一个快速的完整性测试,以确保在继续下一步之前的工作一切正常没有错、漏。不用担心这看起来似乎很外行,只要明白验证安装是一件很开心的事就行。在终端中输入命令open –n/Developer/Applications/Xcode.app打开Xcode这个苹果的IDE开发工具。Xcode运行后,在主菜单选择File→New Project,创建一个iPhone应用程序。然后如图1-3所示在New Project(新建工程)对话框的左侧,选择iOS下的Application,并选择View-based Application模板。最后将工程名称修改为LMT1-1,并单击Save(保存)按钮保存新建工程。

screenshot
screenshot
screenshot

在Xcode IDE加载工程模板后,单击顶部工具栏的Build and Run按钮。如果一切正常,将启动iPhone模拟器并加载应用程序,显示如图1-4所示的空白屏幕。

screenshot

关闭模拟器并返回Xcode后,展开如图1-5所示的Group & Files内的NIB Files节点,然后双击LMT1-1ViewController.xib文件。这时,苹果的用户界面设计工具Interface Builder(IB)将会启动,并显示如图1-6所示的LMT1-1ViewController.xib文件的内容。如果以上操作一切正常,说明iOS SDK和苹果开发工具已经正确安装。现在,可以转移到MonoTouch了。

screenshot

screenshot

1.1.2 安装MonoTouch

MonoTouch是基于Mono平台、在Linux或Mac OS X平台上使用.NET开发应用程序的开源开发环境。在使用MonoTouch之前,需要先安装最新发布的基于OS X平台的Mono(当前版本为2.10.1),可以到www.go-mono.com/mono-downloads/download.html上下载。如图1-7所示,在Select Plantform下选择Mac OS X,然后选择Intel旁边的链接进行下载。

screenshot

安装完Mono后,准备安装MonoTouch SDK。如果要将MonoTouch开发的应用程序部署到设备并提交到iTunes App Store,首先要为苹果iOS开发者的账号付费,还要购买一个Novell的MonoTouch商业许可协议。如果只是想在模拟器上进行开发,可以从Novell网站下载MonoTouch的免费试用版本。如果已经为苹果iOS开发者的账号付费,并且想购买MonoTouch许可证,可以到位于商店进行购买,在该页面中,可以对各种许可证版本进行比较,并选择一个适合的版本。购买后,会在浏览器中显示一个带有激活码的确认回执。
注意 记得保存好回执,因为后面需要使用回执里的激活码。
在Novell发回的电子邮件中,会有一个许可授权版本的MonoTouch SDK的下载链接。从下载链接下载安装包后,进行安装。当提示安装完成后,在MonoTouch激活对话框中,将确认回执(购买许可后在浏览器中保存下来的那份确认回执)中的激活码输入进行激活。要验证是否安装成功,可在终端中输入命令/Developer/MonoTouch/usr/bin/mtouch–version,显示当前运行的MonoTouch版本。现在,准备安装MonoDevelop。
注意 iOS平台上基于Mono的新版软件会由一个名为Xamarin的新公司进行开发,该公司由创建Mono和MonoTouch的团队组建。他们的MonoTouch产品向后兼容。要获得更多信息可浏览xamain.com网站。
MonoDevelop是一个用来进行MonoTouch开发及其他事情的IDE工具。它很好地集成了苹果的工具链并支持全部调试功能,这些将在本章后面进行讲述。MonoDevelop安装完成后,打开Finder的Application(应用程序)目录,双击MonoDevelop图标,运行应用程序,将看到如图1-8所示的窗口。

screenshot

注意 也可以在终端中执行命令“open–n /Applications/Monodevelop.app”运行MonoDevelop的多个实例。
MonoDevelop运行后,进行一次之前在Xcode中做过的完整性测试,以确保一切运作正常,步骤如下:
1)在主工具栏中选择File→New→Solution,创建一个新的解决方案。
2)在如图1-9所示的New Solution(新建解决方案)对话框中,在模板树中选择 C#→iPhone and iPad。然后选择iPhone Window-based Project模板。
3)将解决方案的名称修改为LMT1-2后,单击Forward按钮,然后单击OK按钮。(因为 Project Features选项不适用于MonoTouch,因而可忽略该选项,保留复选框为未选状态。)
4)在下拉菜单中选择Run→Run。让MonoDevelop生成应用程序,并将它安装到模拟器上。然后在模拟器内运行应用程序,将会看到与之前在Xcode中创建的应用程序一样的空白屏幕。
5)退出模拟器并返回MonoDevelop,开始检查集成的IB。
注意 在初次运行MonoDevelop时,如果有任何升级提示,应该安装它们。

screenshot

MonoDevelop很好地与IB集成开发原生应用程序,该程序与使用Xcode和Objectitve-C开发的应用程序不但观感(look and feel)一样,而且使用的控件实际上也是一样的,这在本章后面将会讲述,目前继续进行与之前Xcode一样的检测工作。在解决方案标签页内展开解决方案和工程,会看到MainWindow.xib文件和其他一些工程文件。双击MainWindow.xib就可打开IB并看到一个空白窗口。
如果一切正常,说明MonoTouch已安装成功。当创建了一个非空白窗口的应用程序后,要将它部署到设备上,还需要花点儿时间。现在开始去做吧!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
测试开发是什么?为什么现在那么多公司都要招聘测试开发?
测试开发是什么?为什么现在那么多公司都要招聘测试开发?
172 0
《Lua游戏开发实践指南》一第2章 脚 本 语 言
本节书摘来华章计算机《Lua游戏开发实践指南》一书中的第2章 ,(美)Paul SchuytemaMark Manyen著 田剑译 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
916 0
Apache Mina开发手册之二
Apache Mina开发手册之二 四、NIO概述 NIO API是Java 1.4版引入的,NIO的意思是非阻塞的I/O通信。 要知道Mina的NIO是基于NIO-1开发的,而在JDK 7中引入了NIO-2的库,但Mina还没有从NIO-2中获得各方面的提升,因此Mina还是基于NIO-1的。
869 0
Apache Mina开发手册之三
Apache Mina开发手册之三 2、Mina服务器的架构 Mina服务器的架构图如下所示: 1)IOAcceptor即I/O接收器,负责监听网络连接和发过来的数据包。
762 0
【阿里云ACE】北京同城会 | 线下WORKSHOP 小白秒变大神搭建博客圆满完成
零基础小白也想上手实践?想体验用ECS搭建云上博客?想结识更多对ECS感兴趣的开发小伙伴?想获得阿里云限量周边?5月30号阿里云ACE同城会北京会长张维带你玩转ECS,快速搭建云上博客。
88 0
带你读《区块链开发实战: 基于JavaScript的公链与DApp开发》之三:Asch——区块链应用开发平台
本书用三个部分讲解了区块链技术以及Asch的相关实践,第一部分讲解了区块链技术的基本概念,并用300行代码实现了一个最小的、可运行的区块链;第二部分分析Asch的源码,讲解Asch的实现原理;第三部分介绍了基于Asch的侧链技术的DApp开发实战。
1460 0
《React Native移动开发实战》一一2.1 开发具备的基础知识说明
本节书摘来自华章出版社《React Native移动开发实战》一 书中的第2章,第2.1节,作者:袁林 著 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
937 0
10059
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载