zoukankan      html  css  js  c++  java
  • Xamarin入门浅析

    1. 安装

    1) 使用标准安装流程(JDK1.6 -> Android SDK -> NDK -> Xamarin Studio -> Xamarin Visual Studio)

    2) Android SDK Manager更改源,可时刻保持最新,一个镜像源地址:mirrors.neusoft.edu.cn;ubuntu.buct.cn;Port: 80,Android SDK的目录结构介绍,Android的一些相关资源 (http://ubuntu.buct.edu.cn/android/repository/)。

    3) Windows端破解流程两步:替换IDE的Dll,两个位置,一个是VS的Common下,一个Xamarin Studio的bin下;替换对应版本的mandroid.exe和mtouch.exe

    4) Mac端破解流程,Mac端只负责IOS相关的东西,不考虑在Mac端开发Android,首先要安装的东西包括:MonoFramework-MDK-3.12.1.3.macos10.xamarin.x86.pkg; monotouch-8.8.2.4.pkg ;XamarinStudio-5.8.2.7-0.dmg;(版本号注意要匹配,现在这一系列的版本号匹配的是Windows端的3.9.525)

    装完之后主要要替换三个东西:/Developer/MonoTouch/usr/bin/mtouch-64;

    Mtouch-64替换完毕后需要在终端执行命令:chmod a+x /Developer/MonoTouch/usr/bin/mtouch-64

    然后替换/Applications/Xamarin Studio.app/Contents/Resources/lib/monodevelop/AddIns/Xamarin.Ide/Xamarin.Components.Ide.dll

    最后替换

    /Applications/Xamarin.iOS Build Host.app/Contents/MonoBundle/Xamarin.Components.Ide.dll

    2. 模拟器

    1) 可以不使用android的标准模拟器,使用Xamarin Android Player,据说性能要好一些,但是版权原因还没测试。

    2) 如果使用标准模拟器,可配置硬件加速

    a) 首先,你的CPU必须支持Intel虚拟化技术,如果支持进BISO打开

    b) 使用 Android SDK 下载对应的 x86架构的系统镜像

    image

    c) 上Intel官网下载最新的HAXM虚拟引擎,或者直接用SDK下载

    image

    d) 下载后需要手动安装,如果双击安装无效,使用管理员权限运行CMD,执行安装目录下的那个Bat文件;如果提示不支持Intel虚拟化技术,但是我们确认是打开了的,可能是因为操作系统装了Hyper的原因,卸载Hyper重启再试一次

    e) 进AVD创建基于X86的虚拟机

    3.安卓引用的文件结构

    image

    文件夹

    作用

    Components

    登录Xamarin账户可下载它官方提供的一些组件直接使用

    Assets

    存放字体、本地数据库、配置文件等一系列本地资源

    Properties

    除了常规的程序集版本号等信息,含包括Android程序的权限描述文件AndroidManifest.xml

    Resources

    包好Strings,images, layout等资源的文件夹,注意程序的视图界面也在该文件夹下,还包括一个AboutResources.txt资源描述文件

    4. 安卓应用的逻辑结构

        安卓应用跟传统应用不一样,没有单点入口,应用和安卓操作系统紧密联系,操作系统可以随时将应用进程载入内存激活应用。因此应用中有一个Activity的概念,一个应用由很多Activity组成。
    image
     
    
        Activity的特性:
             image
     
    
        Label:告诉操作系统这个类属于哪个程序,它会去AndroidManifest.xml里去匹配。
        MainLauncher:告诉操作系统打开程序后激活哪个页面。
     
        Activity的生命周期
         created, started and paused, resumed and destroyed, and so on。
         通过重写基类的生命周期方法来实现自己的逻辑,如:OnCreate(应用程序被装载到内存中时调一次),OnResume(设备执行别的任务后,该Activity返回设备界面时触发),OnPause(设备将执行其他任务,该Activity离开设备界面时触发)
          image 
    image
     
    

    5. Xamarin.Forms相关

    1) 简介

    可以跨平台的构建用户交互相关的东西,简而言之就是写一套代码三个平台通用,在此基础上也能够结合各平台特有的Xamarin本地代码混合一起。

    Forms除了跨平台的好处意外,还支持Xaml编写用户界面,不用借助Goft.Mvvm.light等第三方框架原生支持数据绑定等。

    2) 使用前置条件

    Android4.0以上;

    IOS6.1以上;

    开发环境VS2013;

    解决方案必须是.Net4.5以上,PCL模板,Vs2013update2可使用SharedProject

    3) 适用程序

    image

     

    Xamarin.Forms

    Xamarin.iOS & Xamarin.Android

    以单纯数据展示为主

    程序会用到特殊的交互

    快速原型、概念类程序

    界面UI经过精心设计的程序

    只会用到很少的平台特殊功能(API)

    会用到很多的平台特殊功能(API)

    共享代码比用户UI更加重要

    用户UI比共享代码更加重要

    4) Xaml相关

    Forms要针对各个平台做界面微调时OnPlatForm

    image

    5) FormsFQA

    第一次运行Forms程序会提示“无法链接到远程服务器”,详细看这里

    Verify the project is selected to be deployed in the Solution Configuration Manager.详细看这里

    6. Mvvm相关

    三套框架:MvvmCross、MvvmLight、XamarinFormsLab

    http://blog.galasoft.ch/posts/2014/05/mvvm-light-v4-4-with-xamarin-android-support/?utm_source=tuicool

    MvvmLight For Android要求Android版本在2.3(API10)以上

    7. FQA

    1) 一个纠缠很久的问题,Android设计界面中Layout无法加载,报什么网络错误,原因为Android SDK升级了最新的Tools到24.3,最新版的SDK会引起Xamarin出现这个错误,如果使用最新的Xamarin则已修复这个错误,如果不想更新Xamarin则需要进行SDK降级操作

    image

    2) 限制屏幕旋转功能,指定程序只能使用竖屏或横屏,参考《Xamarin Forms Preview Edition 2》第五章,88(PDF 101)页。

    8. 其他资源

    安装、破解:http://www.jianshu.com/p/c67c14b3110c




    感谢您阅读这份文稿。转载请注明原文地址

    Attribution作者 qinjin

  • 相关阅读:
    韦大仙--Katalon---一款好用的selenium自动化测试插件
    Python之路,Day3
    Python之路,Day2
    Python之路,Day1
    Python基础02 基本数据类型
    Python基础01 Hello World!
    韦大仙--LoadRunner压力测试:详细操作流程
    韦大仙--python对文件操作 2--写入与修改
    韦大仙--python对文件操作
    更新pip10后 ImportError: cannot import name ‘main'
  • 原文地址:https://www.cnblogs.com/qinjin/p/XamarinIntroduction.html
Copyright © 2011-2022 走看看