Android 如何强制eclipse在每次构建时更新硬件设备上的apk?

Android 如何强制eclipse在每次构建时更新硬件设备上的apk?,android,eclipse,libgdx,Android,Eclipse,Libgdx,如果我更改一些代码、保存并运行,它将运行程序的最后一个版本,而不是我刚才保存的版本。我可以使其更新的唯一方法是清理项目、构建项目,然后运行项目。有什么方法可以避免这种单调乏味的工作吗?导航到Windows->Preferences->Android->Build。确保未选中“跳过打包和索引…”复选框。问题在于Eclipse中的问题,请转到项目属性-生成器,有一个带有AndroidPackageBuilder的复选框需要选中为真。现在,每次您在项目中进行的任何更改都将反映在您的构建中,编译器永远不

如果我更改一些代码、保存并运行,它将运行程序的最后一个版本,而不是我刚才保存的版本。我可以使其更新的唯一方法是清理项目、构建项目,然后运行项目。有什么方法可以避免这种单调乏味的工作吗?

导航到Windows->Preferences->Android->Build。确保未选中“跳过打包和索引…”复选框。

问题在于Eclipse中的问题,请转到
项目属性-生成器
,有一个带有
AndroidPackageBuilder
的复选框需要选中为真。现在,每次您在项目中进行的任何更改都将反映在您的构建中,编译器永远不会这样说 应用程序已部署,无需重新安装

即使您没有选择“自动生成”,这也会起作用,因为每次您通过单击“运行”图标或Ctrl+F11运行时,将首先生成项目,然后再运行它。因此,需要的只是启用Android软件包生成器


请按照以下步骤操作

1.
项目-->已自动检查生成???

2.
请按照以下设置:项目->属性->构建器
这样

检查下图。

并检查以下设置

同时检查下图

如果问题仍然存在,请更新您的
ADT
&
SDK


希望它对您有用。

我花了一些时间创建了两个虚拟项目(一个Android和一个Java),并对其进行了研究,最后提出了一个解决方案,该方案不经常使用,但能够解决您的需求

首先,我将进一步解释你的问题(基于我的理解和我的尝试),以便其他人能够更清楚地了解这里发生了什么

根据评论中的对话:

你能告诉我你在以下设置中有什么吗:项目->属性->构建器苏达尔·尼马兰

@SudarNimalan:我不确定你问的是什么,但是:有一段文字说“为这个项目配置构建器”,下面是一个选项,“Java构建器”,它被选中(选中)西诺


对于android项目,应该有“android资源管理器”、“android预编译器”、“Java Builder”、“android软件包生成器”按此顺序排列,您可以添加它们并尝试吗苏达尔·尼马兰


@苏达尼马兰:我应该向你道歉;我有这四个部分。我的“项目”分为4个项目——“核心”、“核心android”、“核心桌面”和“核心html”。这有点奇怪,因为我用libGDX项目设置UI设置了它,当我回答你的问题时,我正在看“核心”项目。我的“核心安卓”项目共有四个(按顺序排列),而这正是我的问题所在西诺

脚本: 您有4个项目:

  • 核心:一个常规的java项目(这里是普通的纯java代码)
  • 核心android:一个android应用程序项目
  • 核心桌面:与问题无关,因此被忽略
  • 核心html:与问题无关,因此被忽略
核心android项目依赖于核心项目,通过将核心添加到核心android的构建路径(属性->Java构建路径->项目->添加…)和导出列表(属性->Java构建路径->订单和导出)

问题(不是真的): 在core中更改一些代码并保存,运行core android,eclipse安装上次编译的apk,而不是经过更改的新代码

原因: 这是预期的行为,您在core android中引用core项目的方式只会在core和core android之间创建一个弱链接(或某种形式),core android的自动构建脚本不知道core中所做的任何更改。您必须清理项目(只需要清理核心android项目),以便Eclipse可以删除现有的apk(在bin目录下)并重新生成apk(使用核心的最新代码更改)

请参阅下面的Xav评论,Android SDK工具应该知道项目构建路径下普通Java项目的更改,目前它通常不会使用此功能。 请注意,如果core是一个Android库项目,那么就没有问题,并且您的core Android项目将知道core项目(java代码、Android资源等)中的任何更改,如果core仅用于core Android,这也可能是一个解决方法:将java项目core转换为Android库项目

解决方法(Eclipse链接源): 在项目之间添加软链接还有另一种方法(不常用):

  • 首先,您需要从core android的构建路径中删除core项目,这也将从导出和订单列表中删除它
  • 右键单击core android,选择构建路径->链接源。。。添加../core/src作为链接文件夹位置,src-lib1作为文件夹名称,请参见最后的屏幕
  • 这将在PackageExplorer窗口中的core android下创建一个符号链接src-lib1,指向core的src foder,在文件系统中,您仍然有两个单独的项目文件夹。现在,如果您在core中更改一些代码并运行core android,Eclipse将构建并安装最新的apk。无需清理核心android项目

    链接源窗口:

    包资源管理器中的最终外观:


    <>你应该总是把正常的方法当作第一选择,毕竟,手动清洁项目与我前面描述的不寻常的方法相比并不是什么大不了的事情。

    < P>你不会相信解决方案

    是多么的简单和愚蠢。 日食时, 转到窗口前言->运行/调试->启动

    然后,在启动之前保存所需的脏编辑器时:
    选择提示选项,

    应用并确定

    这很奇怪。Eclipse更新项目的APK In bin文件夹。在项目菜单中是否选中了“自动生成”??