原文 http://hi.baidu.com/yunanwu/item/6e85b2e508ab6c0a64db0067<wbr></wbr>
.NET跨平台机制一(mono for android配置教程)
<wbr><wbr></wbr></wbr><wbr>忙完了毕业设计,坐等毕业,终于有时间可以玩玩</wbr>.NET的跨平台机制了,当然了.NET跨平台主要就是Linux,所以就蛮有心思的去配置了下mono<wbr>for<wbr>android</wbr></wbr>的开发环境。
<wbr></wbr>
<wbr><wbr><wbr><wbr>首先,准备工作要做足,运行时,虚拟机,模拟器都要先下载好了。</wbr></wbr></wbr></wbr>
前期准备,先看看安卓模拟器的配置(已经会配置的略过..)配置教程网络上也很多,我这里就稍微盖过了。不懂的可以百度找下。我把需要的文件都整理到一起了。。。下载地址:http://pan.baidu.com/share/link?shareid=512568&uk=839021066
一、安卓模拟器环境安装
- 由于安卓模拟器需要JAVA环境支持,所以先下载JDK把。
- 下载AndroidSDK<wbr>starter<wbr>package<span style="font-family: 宋体;">(下载完之后用</span><span style="font-family: Calibri, sans-serif;">zip</span><span style="font-family: 宋体;">打开,拖出</span><span style="font-family: Calibri, sans-serif;">android-sdk</span><span style="font-family: 宋体;">到你要放置的位置</span><span style="font-family: 宋体;">)</span></wbr></wbr>
- 下载AndroidSDK<wbr>API<wbr>Level<span style="font-family: 宋体;">(下载之后用</span><span style="font-family: Calibri, sans-serif;">zip</span><span style="font-family: 宋体;">打开,拖放</span><span style="font-family: Calibri, sans-serif;">android-15(</span><span style="font-family: 宋体;">文件夹名字叫:</span><span style="font-family: Calibri, sans-serif;">android-4.0.4)<wbr></wbr></span><span style="font-family: 宋体;">到</span><span style="font-family: Calibri, sans-serif;">platforms</span><span style="font-family: 宋体;">目录内</span><span style="font-family: 宋体;">)</span></wbr></wbr>
- 下载AndroidSDK<wbr>4.0.4<wbr>system<wbr>img<span style="font-family: 宋体;">(进入</span><span style="font-family: Calibri, sans-serif;">android-sdk</span><span style="font-family: 宋体;">目录,</span><span style="font-family: 宋体;">新建文件夹:</span><span style="font-family: Calibri, sans-serif;">system-images</span><wbr><wbr><wbr><span style="font-family: 宋体;">再进入</span><span style="font-family: Calibri, sans-serif;">system-images</span><span style="font-family: 宋体;">目录,新建文件夹:</span><span style="font-family: Calibri, sans-serif;">android-15</span><br><span style="font-family: 宋体;">用</span><span style="font-family: Calibri, sans-serif;">zip</span><span style="font-family: 宋体;">打开,拖放</span><span style="font-family: Calibri, sans-serif;">armeabi-v7a<wbr></wbr></span><span style="font-family: 宋体;">到</span><span style="font-family: Calibri, sans-serif;">system-images\android-15</span><span style="font-family: 宋体;">目录内</span><span style="font-family: 宋体;">)</span></wbr></wbr></wbr></wbr></wbr></wbr>
- 下载AndroidSDK<wbr>Platform-tools<span style="font-family: 宋体;">(<span style="font-family: 宋体;">下载之后</span>用</span><span style="font-family: Calibri, sans-serif;">zip</span><span style="font-family: 宋体;">打开,拖放</span><span style="font-family: Calibri, sans-serif;">platform-tools<wbr></wbr></span><span style="font-family: 宋体;">到</span><span style="font-family: Calibri, sans-serif;">android-sdk</span><span style="font-family: 宋体;">目录内</span></wbr>
二、创建安卓虚拟机
1、运行<wbr>AVD<wbr>Manager.exe。点击New</wbr></wbr>
2、填写一些信息,如Name、SD卡大小...
3、创建后,如果有一个<wbr>确定框,并提示虚拟机的相关信息。直接确定</wbr>
最后回到主界面就可以开始运行虚拟机了。
运行之后弹出提示框,这里不需要设置,直接点Launch即可。。
三、VS中配置mono<wbr>for<wbr>android</wbr></wbr>开发环境
1、安装Mono<wbr>for<wbr>Android插件。记得安装前把所有Vs2010关掉,一路Next直到finish</wbr></wbr>
2、完成之后,需要配置一下环境。(VS—>工具—>选项—>mono<wbr>for<wbr>android)</wbr></wbr>
<wbr>配置一下</wbr> android<wbr>SDK</wbr> 的位置
3、接下来,心跳的时候到了。打开VS2010,然后新建项目,选择mono<wbr>for<wbr>android...</wbr></wbr>
4、新建之后就是一个安卓项目了。。直接Ctrl+F5,你会发现让你选择模拟器。直接选你当前运行的就OK了,如果没有则新建并启动一个模拟器。最后我们变可以再模拟器中看到运行结果了。。。(如果出现版本错误,则直接右击项目属性,然后更改版本为合适版本。。)
5、最后来张效果图。。
这些都是自动生成的,改改代码试试吧。。。
6、修改Activity1.cs的OnCreate方法为如下代码:
1
2
3
4
5
6
7
|
protected <wbr><code style="background-clip: padding-box; -webkit-background-clip: padding-box; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; border: 0px !important; float: none !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera sans Mono', 'Courier new', Courier, monospace !important; font-weight: bold !important; font-size: 1em !important; min-height: inherit !important; color: rgb(0, 102, 153) !important;">override</code><wbr><code style="background-clip: padding-box; -webkit-background-clip: padding-box; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; border: 0px !important; float: none !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera sans Mono', 'Courier new', Courier, monospace !important; font-weight: bold !important; font-size: 1em !important; min-height: inherit !important; color: rgb(0, 102, 153) !important;">void</code><wbr><code style="background-clip: padding-box; -webkit-background-clip: padding-box; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; border: 0px !important; float: none !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera sans Mono', 'Courier new', Courier, monospace !important; font-size: 1em !important; min-height: inherit !important;">OnCreate(Bundle<wbr>bundle)</wbr></code></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
{
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
base
.OnCreate(bundle);
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
var<wbr>tv<wbr>=<wbr></wbr></wbr></wbr>
new <wbr><code style="background-clip: padding-box; -webkit-background-clip: padding-box; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; border: 0px !important; float: none !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera sans Mono', 'Courier new', Courier, monospace !important; font-size: 1em !important; min-height: inherit !important;">TextView(</code><code style="background-clip: padding-box; -webkit-background-clip: padding-box; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; border: 0px !important; float: none !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera sans Mono', 'Courier new', Courier, monospace !important; font-weight: bold !important; font-size: 1em !important; min-height: inherit !important; color: rgb(0, 102, 153) !important;">this</code><code style="background-clip: padding-box; -webkit-background-clip: padding-box; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; border: 0px !important; float: none !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; width: auto !important; box-sizing: content-box !important; font-family: Consolas, 'Bitstream Vera sans Mono', 'Courier new', Courier, monospace !important; font-size: 1em !important; min-height: inherit !important;">);</code></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
tv.Text<wbr>=<wbr></wbr></wbr>
"神一般的故事,mono..."
;
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
this
.SetContentView(tv);
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
}
|
运行结果看看。
完工了,mono<wbr>for<wbr>android在模拟器上顺利运行。。。。。</wbr></wbr>
虽然完工了,但是mono的稳定性以及其他的注意事项如何,还有待考验。。
新手胡写,求大牛指教!!