[Cordova] 无法编译Visual Studio项目里Plugin副本的Native Code

问题情景

开发Cordova Plugin的时候,开发的流程应该是:

  1. 建立Cordova Plugin
  2. 发布到本机文件系统或是Git服务器
  3. 使用Visual Studio挂载Plugin
  4. 编译并执行项目

在这个开发的过程中,如果在编译并执行项目的这个步骤,发现Plugin的Native Code需要修正。直觉的想法,会是直接修改Cordova项目里Plugin副本的Native Code之后,再重新编译并执行项目,来确认看看修改是否正确。而实际这样去执行,会发现修改Plugin副本的Native Code,再重新编译项目的时候,修改内容并不会被编译与执行。(清除项目再重建也是一样的结果)

解决方案

经过排查各种操作方式之后,推测发生上述问题的原因,应该是Cordova为了缩短编译的时间,Plugin里面的Native Code只有在必要的时候才会编译。而修改Plugin副本Native Code的这个动作,在目前这个版本(14.0.50925.4),显然不是定义为需要侦测并且重新编译的范围。

知道问题的原因之后,解决方案也就很简单。既然修改Plugin副本Native Code的这个动作并不会触发重新编译,那就直接删除Cordova的编译结果:「platforms文件夹」,强迫Cordova重新编译项目,这样就可以让修改过的Native Code被Cordova给重新编译。

[Cordova] 无法编译Visual Studio项目里Plugin副本的Native Code的更多相关文章

  1. 因GIT默认忽略.dll文件导致的Visual Studio项目通过Bamboo编译失败

    背景 由GIT管理的Visual Studio项目,使用Stash管理远端代码库,通过与Stash集成的Bamboo生成项目并发布 现象 Visual Studio项目本地生成成功,用SourceTr ...

  2. [转]Cordova + Ionic in Visual Studio - 101 Tutorial [Part I]

    本文转自:http://binarylies.ghost.io/cordova-ionic-in-visual-studio/ Hi everyone, I thought about lending ...

  3. 使用GitHub For Windows托管Visual Studio项目

    本文写得比较早,更新的在VS上使用GitHub的文章请移步:Visual Stuido 2015 Community 使用 GitHub 插件 因为最近同时再看很多技术方面的书,书上的例子有很多自己想 ...

  4. 创建用于自定义SharePoint解决方案部署的Visual Studio项目

    转:http://soft.zdnet.com.cn/software_zone/2007/0903/488083.shtml 在基于SharePoint的开发中,我们通常会在WSS的TEMPLATE ...

  5. Visual Studio 项目目录下的bin目录和 obj目录

    一.Bin目录 Visual Studio 编译时,在bin 目录下有debug 和 release 目录. 1.Debug: 通常称为调试版本,它包含调试信息,所以要比Release 版本大很多(可 ...

  6. visual studio项目多级引用不拷贝dll的问题

    最近碰到一个visual studio项目多级引用不拷贝dll的问题,花了很久查了很多资料,特此记录 A项目引用B项目, B项目引用C项目,C项目引用ef及oracle.ef using Oracle ...

  7. CMD命令行下编译.Net Visual Studio 项目

    有时候我们需要编译.net 的sln解决方案,可是VS打开的速度太慢,可以用命令行进行代替,详细过程如下: 1.开始菜单——>Visual Studio 2017(根据你电脑上安装的VS版本来) ...

  8. Visual Studio项目模板与向导开发

    在[Xamarin+Prism开发详解系列]里面经常使用到[Prism unity app]的模板创建Prism.Forms项目: 备注:由于Unity社区已经不怎么活跃,下一个版本将会有Autofa ...

  9. 用C#语言在Visual Studio 2010里开发一个自定义的PowerShell Cmdlet

    1. 打开Visual Studio 2010 2. 新建一个基于Class Library的项目 3. 给项目起个名字然后OK 4. 为项目添加下列Reference System.Manageme ...

随机推荐

  1. python 反射的使用

    反射这个功能在很多编程语言中都有,在Python中自然也不例外.其实编程语言中的很多功能都能用简单的代码来验证. 在code代码之前,先简单的了解下反射的几个属性. hasattr(obj,name_ ...

  2. ViewPager做图片浏览器,加载大量图片OOM的问题修正

    /** * @author CHQ * @version 1.0 * @date 创建时间: 2016/7/26 17:18 * @parameter * @return * 图片查看器 * //可以 ...

  3. 自动生成Mapper和Entity工具MybatisGenerator的使用

    新建一个XML文件crmGeneratorConfig.xml,文件具体内容如下.把MybatisGenerator.zip解压出来,把MybatisGenerator文件夹复制到Eclipse安装目 ...

  4. Android线程之AsyncTask

    在之前的博客中为大家分享过关于Android多线程处理,想必大家对于Android为什么要使用多线程已经有了清晰的认识,我就在简单唠两句,Android规定UI界面的更新必须在在主线程进行,对于访问网 ...

  5. poj 2031Building a Space Station(几何判断+Kruskal最小生成树)

    /* 最小生成树 + 几何判断 Kruskal 球心之间的距离 - 两个球的半径 < 0 则说明是覆盖的!此时的距离按照0计算 */ #include<iostream> #incl ...

  6. ECshop 快捷登录插件 支持QQ 支付宝 微博

    亲自测试可以使用,分享给大家.(承接各种EcShop改版,二次开发等相关项目 QQ:377898650) 安装的时候按照里面说明.安装即可. 代码下载:http://pan.baidu.com/s/1 ...

  7. AngularJS的学习--$on、$emit和$broadcast的使用

    AngularJS中的作用域有一个非常有层次和嵌套分明的结构.其中它们都有一个主要的$rootScope(也就说对应的Angular应用或者ng-app),然后其他所有的作用域部分都是继承自这个$ro ...

  8. 微软Team Foundation Service 的Scrum模板中的Feature和Backlog Items 的区别【转载】

    Features help us plan work better in Team Foundation Service Scrum process [原文:http://www.nsilverbul ...

  9. OpenJudge2728:摘花生 解题报告

    2728:摘花生 总时间限制:  1000ms 内存限制: 65536kB 描述 Hello Kitty 想摘点花生送给她喜欢的米老鼠.她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南 ...

  10. Redis使用总结(2):Python接口

    安装redis-py sudo pip2 install redis 牛刀小试 redis连接实例是线程安全的,可以直接将redis连接实例设置为一个全局变量直接使用.如果需要另一个Redis实例(o ...