C#之Android手机App开发

目前Android在全世界市场上大约有75%的占有率,国人Android手机的持有比例更甚,甚至达到90%以上。因此搞计算机的一听说手机应用开发,一个个都像着了魔似的,既然有那么多人对它感兴趣,那咱也跟着玩一玩。但是,本模块不是介绍如何用Java开发,而是全部用C#去实现。

为什么用C#去实现?原因很简单,目前手机市场经过多年的你争我斗,现在就剩下Android、iOS、Windows Phone还能互相斗狠,其他的统统都被打趴下找不着北了。但是,学Android应用开发要用Java、学iOS应用开发要用Objective-C、学WindowsPhone应用开发要用C++,我的天,这不是故意折腾人吗,是不是用一种语言可以“通吃”这三种应用程序的开发呢?答案是“有”,那就是“C#”。

一、用C#开发移动应用的优势

用C#开发手机应用程序,建议首选VS2015,这是因为VS2015内置的是C# 6.0,很多原来实现起来比较繁琐的操作,在VS2015下也都变得非常简单了。

1、跨平台移动应用开发

VS2015的移动跨平台采用Xamarin架构,这让原本就熟悉Visual Studio的开发者不用再熟悉其他的开发工具就能直接开发移动应用程序。

(1)Win7:VS2015+C# 搞定 Android、iOS

在Win7下用VS2015创建项目时,可直接使用iOS及Android的项目模板。开发团队也可以将iOS以及Android的程序代码纳入到ALM,而且还可以使用TFS(Team Foundation Server)进行版本创建和配置的管理。

用C#编写移动App时,可使用功能齐备的Android和iOS设计器创建针对各个平台自定义的100%本机用户界面(Native UI Code)。另外,利用.NET构建移动应用程序时,还可以直接访问2万多个.NET库和Xamarin组件。

(2)Win10:VS2015+C# 搞定 Android、iOS、Windows Phone

在Win10下用VS2015创建项目时,可直接用C#快速构建适用于多种平台(Android、iOS、Windows Phone和Mac)的移动应用,而且可在不同平台间共享商业逻辑以及数据存取等程序。除了省下重新撰写的时间成本外,对于版本维护及代码的一致性也有相当大的帮助。

2、原生代码提升本机性能

VS2015编译针对iOS及Android平台的应用程序时,实际上是利用Xamarin将C#程序直接编译成ARM或者Intel的CPU的原生机器码,因此效率和性能与原生模式开发的Android和iOS应用程序相比没有不同。特别是在Android系统上,Xamarin并不是使用Android的Dalvik虚拟机,而是改为用CLR来实现,因此开发效率和执行性能都得到了大幅度的提升,有的甚至更甚于原生的应用程序。

3、直接访问核心平台API

除了.NET API以外,开发人员还能用C#直接访问所有平台的本机核心API,而且不会受到任何限制。

4、生命周期管理以及与Azure的连接

用C#开发移动应用时,可以轻松管理源代码存储库、生成、持续集成部署、单元测试和UI测试。而且还可以在开发和生产环境中运行诊断,通过遥测和分析实时监视应用性能和用户行为。

除了对Visual Studio功能具有完全的访问权限以外,C#开发的移动应用还能与微软的云架构(Azure)移动服务快速集成并进行配置,并且可无缝添加各种服务,如云中的数据存储、客户身份验证、推送通知或离线同步,并可随时扩展到数百万台设备。

5、流行且成熟

移动开发对于全球范围内的组织变得越来越重要,目前国外数千家公司正在使用Xamarin和Visual Studio构建高质量的、任务关键型应用。

通过Visual Studio 2015和Xamarin,企业可以使用现有的技能和技术投资加速上市时间并为所有用例提供移动应用。

二、内容规划

本模块将全面介绍在VS2015下用C#+Xamarin开发Android手机App的各种技术。以后将不定期更新各章的内容,以方便查找。这些内容有些是原创的,有些是参考官网、教程、或者别人网上发布的代码总结而成的,有些则直接参考Java代码,然后自己再用VS2015和C#实现一遍,因此各章更新也不分先后,感觉放到哪合适就更新那里。

各章介绍的所有源程序都在VS2015简体中文企业版+SP1开发环境下调试通过。

这只是开篇,是不是很精彩,是不是引起了大家学习的欲望,那就不要停下来,和小编一起探索Android的乐趣。

首先先看一看Android开发环境安装和配置图文教程,搭建Android开发环境。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android中利用App实现消息推送机制的代码

    1.消息推送机制 服务器器端需要变被动为主动,通知客户一些开发商认为重要的信息,无论应用程序是否正在运行或者关闭. 我想到了一句话:don't call me,i will call you! qq今天在右下角弹出了一个对话框:"奥巴马宣布本拉登挂了...",正是如此. 自作聪明,就会带点小聪明,有人喜欢就有人讨厌. 2.独立进程 无论程序是否正在运行,我们都要能通知到客户,我们需要一个独立进程的后台服务. 我们需要一个独立进程的后台服务. 在androidmanifest.xml中注

  • android开发之调用手机的摄像头使用MediaRecorder录像并播放

    我们玩玩手机的录像功能吧.做个DEMO. 看看录制过程: 复制代码 代码如下: mediarecorder = new MediaRecorder();// 创建mediarecorder对象 // 设置录制视频源为Camera(相机) mediarecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); // 设置录制完成后视频的封装格式THREE_GPP为3gp.MPEG_4为mp4 mediarecorder.setOutputFo

  • android 手机SD卡读写操作(以txt文本为例)实现步骤

    1.首先对manifest注册SD卡读写权限 要说明一下,我这里没有用MainActivity.class作为软件入口 复制代码 代码如下: AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com

  • Android获取手机型号/系统版本号/App版本号等信息实例讲解

    MainActivity如下: 复制代码 代码如下: package cn.testgethandsetinfo; import android.os.Bundle; import android.text.TextUtils; import android.widget.TextView; import android.app.Activity; import android.content.Context; import android.content.pm.PackageInfo; imp

  • Android 避免APP启动闪黑屏的解决办法(Theme和Style)

    前几天Boss就反应说,机器每次启动程序都会闪一下黑屏,这个客户不接受.没办法,只能想想怎么解决,最后找到了下面的方法.闪黑屏的原因主要是我们启动Activity的时候,需要跑完onCreate和onResume才会显示界面.也就是说需要处理一些数据后,才会显示.按照这种思路,是不是我把初始化的工作尽量减少就可以避免黑屏?事实是,就算你onCreate啥都不做,仍然会闪一下黑屏,因为初始化解析界面时需要一定时间.下面是解决办法:1.自定义Theme 复制代码 代码如下: 设置背景图Theme<s

  • Android笔记之:App应用之启动界面SplashActivity的使用

    当前比较成熟一点的应用基本上都会在进入应用之显示一个启动界面.这个启动界面或简单,或复杂,或简陋,或华丽,用意不同,风格也不同.下面来观摩几个流行的应用的启动界面. 1. 货比三家以腾讯qq,新浪weibo,UC浏览器,游戏神庙逃亡等7个应用为例,比比看:(我认为最精美的界面应该是qq2012,虽然只有一张图,基本的应用名称,版本,图标这些信息都有,但是看着舒服,觉得美.) 2. 元素启动界面的本意是以友好用户界面来掩饰后台缓冲加载,让用户用平和等待的心情进入正常应用界面.但是因为启动界面是放在

  • 一看就懂的Android APP开发入门教程

    工作中有做过手机App项目,前端和android或ios程序员配合完成整个项目的开发,开发过程中与ios程序配合基本没什么问题,而android各种机子和rom的问题很多,这也让我产生了学习android和ios程序开发的兴趣.于是凌晨一点睡不着写了第一个android程序HelloAndroid,po出来分享给其他也想学习android开发的朋友,这么傻瓜的Android开发入门文章,有一点开发基础的应该都能看懂. 一.准备工作 主要以我自己的开发环境为例,下载安装JDK和Android SD

  • js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS

    绝对值得看的来篇,哈哈.本人亲自完成,有错误请大家指出: 现在的手机完美支持html5,所以如果手机端想要做个抽奖模块的话,用刮刮卡抽奖效果,相信这个互动体验是非常棒的 ​ps:由于本人没有wp8系统的手机,所以没法兼容wp8系统的,目前完美兼容android,IOS 如果要在pc浏览的话,得改下js,目前支持谷歌,火狐,ie>=10,如果网友想要的话我就去写个 代码如下: 复制代码 代码如下: <!DOCTYPE html> <html lang="en"&g

  • android计算pad或手机的分辨率/像素/密度/屏幕尺寸/DPI值的方法

    手机分辨率基础知识(DPI,DIP计算) 1.术语和概念 术语 说明 备注 Screen size(屏幕尺寸) 指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸 摩托罗拉milestone手机是3.7英寸 Aspect Ratio(宽高比率) 指的是实际的物理尺寸宽高比率,分为long和nolong Milestone是16:9,属于long Resolution(分辨率) 和电脑的分辨率概念一样,指手机屏幕纵.横方向像素个数 Milestone是854*480

  • Android提高之Android手机与BLE终端通信

    最近穿戴设备发展得很火,把相关技术也带旺了,其中一项是BLE(Bluetooth Low Energy).BLE是蓝牙4.0的核心Profile,主打功能是快速搜索,快速连接,超低功耗保持连接和传输数据,弱点是数据传输速率低,由于BLE的低功耗特点,因此普遍用于穿戴设备.Android 4.3才开始支持BLE API,所以请各位客官把本文代码运行在蓝牙4.0和Android 4.3及其以上的系统,另外本文所用的BLE终端是一个蓝牙4.0的串口蓝牙模块. 注:笔者的i9100刷了4.4系统后,竟然

随机推荐