使用Xamarin开发手机聊天程序 -- 基础篇(大量图文讲解 step by step,附源码下载)
如果是.NET开发人员,想学习手机应用开发(Android和iOS),Xamarin 无疑是最好的选择,编写一次,即可发布到Android和iOS平台,真是利器中的利器啊!而且,Xamarin已经被微软收购并被大力推广,.NET开发人员将时间投资在Xamarin上,以应对移动开发的热潮,应该是值得的。
好了,废话不多说,就开始吧。本系列文章将详细介绍如何使用Xamarin开发出一个简单的即时通信IM聊天系统(文末有源码下载,可先睹为快),本文作为第一篇基础篇,将着重介绍Xamarin Android和Xamarin iOS环境的搭建,包括安装、设置、模拟器、部署、运行调试等。本系列后面的文章将详细介绍手机聊天系统结构原理和具体代码实现。
一.搭建环境
1. 安装 Xamarin。
VS2017已经集成了Xamarin,只要在安装的时候,将“使用.NET的移动开发”选项勾选上,即可。
2.设置Xamarin Android。
(1)启动VS 2017之后,打开菜单 工具->选项->Xamarin->Android设置,在设置面板上做如下设置:
(2)使用 Genymotion 作为安卓模拟器。
3.设置Xamarin iOS。
(1)在我的MacBook笔记本上安装 Visual Studio for Mac。
(2)在MacBook的系统偏好设置 中找到“共享”选项,打开“共享”界面如下。 开启远程管理和远程登录。
(3)在PC端VS “工具” 选择卡中依次选择 IOS ->Xamarin.Mac代理,点击左下方的“Add Server”按钮,输入对应远程Macbook机器的IP,并进行登录。
(4)登录成功后,界面上会显示如下链接的图标表示远程成功。
(5)连接成功后,在VS中就可以进行调试MAC机器上的模拟器或者真机了。
(6)在PC端VS中,打开菜单 工具->选项->Xamarin->iOS设置,在设置面板上做如下设置:
二. 新建Xamarin.Forms项目、编译
Xamarin.Forms 是Xamarin提供的一个套件,用于跨移动平台的Form应用开发,所以,如果是使用Xamarin开发App,那么,Xamarin.Forms 将是很好的选择。
1.新建一个Cross-Platform跨平台项目,选择Cross Platform App(Xamarin)。
2.项目新建成功后,会在解决方案管理器中,生成三个项目。
XamarinDemo 项目是可移植的类库,App的绝大部分逻辑和UI都是在其中完成。
XamarinDemo.Droid 项目对应了安卓版本,XamarinDemo.iOS 项目对应了iOS版本,它们都引用了 ESFramework.XamarinDemo 项目。
对于一般简单的应用而言,只需要在XamarinDemo中编写代码就可以了,XamarinDemo.Droid 和 XamarinDemo.iOS中的代码只需要做少量修改。
3.编译 XamarinDemo.Droid 项目
在解决方案管理器中选中 XamarinDemo.Droid 项目,右键->属性,打开设置面板。
在项目属性面板中,要选择编译所使用的安卓SDK的版本号,我选择的是最新6.0。
4.编译 XamarinDemo.iOS 项目
在解决方案管理器中选中 XamarinDemo.iOS项目,右键->属性,打开设置面板。
在项目属性面板中,选择编译所支持的CPU体系结构,由于现在是使用iOS模拟器,所以选择x86_64。
如果是使用真机调试,则应该选择 ARMv7+ARMv7s+ARM64。
三.部署、调试
编译成功后,就可以尝试部署到虚拟机,并运行调试了。
1. 安卓版本
(1)启动安卓虚拟机。
运行上述的Genymotion。
选择6.0的虚拟机,点击Start按钮运行起来。
(2)部署
在VS上的工具栏,选择刚才启动的虚拟机实例Genymotion Custom Phone - 6.0.0,点击调试按钮(绿色的三角形),即可开始部署、运行的流程。(注意,要选择Debug模式)
(3)调试
部署运行成功后,模拟器就会显示demo App 的UI界面:
此时,可以在源码中加入断点开始调试程序了。
2.iOS版本
(1)启动虚拟机
(2)在VS上的工具栏,选择iPhone 6 Plus iOS 11.2,点击调试按钮(绿色的三角形),即可开始部署、运行的流程。
(3)调试
部署运行成功后,模拟器就会显示如下Demo的登录界面:
四.源码下载
虽然还未正式开始介绍聊天程序的代码实现,但是还是先将demo的源码分享给大家,基于以上介绍的内容,大家已经可以将demo运行起来看效果了。并且,源码中除了Xamarin移动端外,还包含了聊天服务端和PC客户端以及WebSocket客户端,而且,Xamarin移动端和PC客户端以及Web端之间都可以相互聊天哦!
下面是手机端运行的效果图:
(1)源码:服务端+PC客户端 (基于VS 2010)
(2)源码:Xamarin 移动端(包括Android 和 iOS) (基于VS 2017)
最后,在使用Xamarin开发本Demo的过程中,踩过了很多很多的“坑”,对这些坑的解决方案我们也会在本系列的文章中分享出来,如此能为后来者节省一些时间。敬请期待!
敬请了解:
ESFramework通信框架 OMCS网络语音视频框架 MFile语音视频录制组件 MCapture语音视频采集组件 StriveEngine轻量级通信引擎 OAUS 自动升级系统
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
vs2017开发IOS(vs2017 xamarin 连接mac)
原文: vs2017开发IOS(vs2017 xamarin 连接mac) 第一次写博客,不好别喷我。(vs2017 xamarin 连接mac) 这两天突然记起巨软的Visual Studio 2017 好像有说可以用C#开发IOS和Android应用,所以就自己去尝试了下生成过程。 相对与IOS来说,Android的生成过程还是比较容易的没有什么复杂的要求,网络上也有一些文章有说明怎么实现编码过程。 但是网络IOS的文章相对较少,也说的不是很清楚,今天我这里要说的是IOS的生成过程。 使用Visual Studio 2017 开发IOS,具体的编码过程我就不详细说明了,这里只说明实现生产过程: 首先你肯定是要先安装Visual Studio 2017 把里面的跨平台开发IOS和Android的模板库安装上,如果已经有Visual Studio 2017 但是没有安装,可以再次运行Visual Studio 2017 的安装程序更新已有的Visual Studio 2017 以上是初步的安装要求 接下来你肯定是需要创建项目了,你可以选择你自己想要的模板类型。 在你的项目里面你可以看到...
- 下一篇
Android经典项目开发之天气APP实例分享
原文: Android经典项目开发之天气APP实例分享 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mzc186/article/details/53819371 引言 由于系统的天气App比较简陋,而从Android市场下载下来的天气App比如墨迹天气界面虽然美观,数据也比较详实,但是却非常多乱七八糟的广告,一不小心点错了就后台帮你偷偷下载。作为Android开发者当然理解这种利益诉求,但从一个用户的角度而言,我却认为这已经严重影响用户体验了。因此,才有了卸载墨迹天气的下文。 后来因为考虑到自己从事安卓开发已经有一段时间了,虽然大大小小的项目也做过一些了,但是却还没有从头到尾完全独立开发过一个属于自己的App,考虑到天气App涉及知识面广,综合性强,作为android经典开发项目之一,比较能强化和深入自己对知识的理解以及锻炼提升自己的知识运用水平,加上上文提到的那些因素,因此就有了完全属于自己的天气App项目iWeather。 关于iWeather项目的开源 我的iWeather项目现在已经在github开源,感兴趣的朋友可以参考...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS关闭SELinux安全模块
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Mario游戏-低调大师作品