`
modabobo
  • 浏览: 508733 次
文章分类
社区版块
存档分类
最新评论

使用Eclipse开发Android时在什么时候应该进行clean操作?

 
阅读更多

我们在使用 eclipse 在开发 Android APP 的时候,会用到一个clean(Project —— Clean...) 的操作,这个操作执行的内容很简单,就是将项目结构中的 bin 目录中早先编译好的apk,dex等内容删除,然后重新编译生成出这些内容(当然,绝大多数当我们按下 “保存” 按钮的时候,eclipse 会自动重新编译 bin 目录中的内容,但是也有时候 ecipse 不会进行自动编译,这时候就需要我们进行手动 clean 操作了,不过在 Android Studio 中 Google 已经取消了 clean 操作),虽然 clean 操作非常简单,但是它依然带给我们不少困扰甚至麻烦,我们需要明确的知道该何时使用 clean 操作。

什么时候使用?

事实上,在你对项目做出任何修改(代码修改,res资源文件修改,AndroidManifest.xml配置文件修改等)之后,如果再次运行之后还是显示旧有的资源文件甚至代码逻辑,你都应该试一下clean操作,否者很可能你运行的还是未修改的上一版apk。

在项目开发的时候,我经常遇到项目资源例如图片修改之后,运行之后还是显示的旧的图片或其它资源文件(尤其是在单独进行图片更换的时候,这个情况出现的频率最高),这时候就是进行clean操作的绝佳时机;

另一种令我印象深刻的教训是这样的:由于项目中使用了 json,所以我给一个接口写了一个对应的 bean 类,后来由于接口变动,后台返回数据增加了2,3个字段,所以我需要在 bean 中添加对应的属性,问题在此时出现,我修改完了 bean 文件之后,重新运行项目,但是却总是无法解析后台新增的几个字段,经过了漫长的项目检查之后,我才终于发现原来是因为 eclipse 根本没有自动生成新的apk包,运行的其实还是旧的包,所以解析后台数据的时候当然不会解析那些新增的字段,解决这个问题的办法就是clean一下。

注意:有一种情况是例外,当修改了项目的启动icon(即放在桌面上的的图标)时,在小米的 MIUI 操作系统上并不会马上进行更新,执行clean操作也不行,这个可能是因为小米自身的icon缓存机制吧,但我们也不需要过分担心,安装好 apk 之后,过几天这个 icon 就会换成新更换的 icon 了。

什么时候不使用?

执行clean操作的时候,你应该确定项目中是否还存在有报错(红色x标示的代码)的地方,尤其是 layout 布局和 res 资源 xml 文件是否都正常,否者冒然进行clean操作只会导致项目 gen 目录下的R.java文件丢失,让项目整体报错。

over,这就是今天我要说的了,如果发现我的文章有任何错误的地方,欢迎打脸,期待交流~

分享到:
评论

相关推荐

    Android开发笔记 最好使用eclipse

    值得注意一点的是,虽然Myeclipse比eclipse功能更强大,但是在具体的安卓开发过程当中,最好还是选用... 您可能感兴趣的文章:Eclipse开发环境导入android sdk的sample中的源码Android Eclipse 注释模板的使用(图文说明

    Android插件框架Android-Plugin-Framework.zip

    那边编译插件的时候不可将共享库编译到插件当中,包括共享库的代码以及R文件,但是需要在编译时添加到classpath中,且插件中如果要使用共享依赖库中的资源,需要使用共享库的R文件来进行引用。这几点在PluginTest...

    adt-leanback-support:Eclipse ADT 兼容版本的 android 瘦背库和支持库

    adt-leanback-support Eclipse ADT 兼容版本的 android 瘦背库和支持库。 构建: 您需要使用 maven-android-sdk-deployer 将 Android L 安装到... 不过,让您使用 ADT for Eclipse 进行 Android TV 开发应该就足够了。

    android博客

    android开发的博客,代码到直接导入eclipse 出现差差的话,刷新一下或者clean一下。

    唯品会Java开发手册.zip

    结合唯品会的内部经验,参考《阿里巴巴Java开发手册》《Clean Code》、《Effective Java》等重磅资料进行了大幅定制,包含核心基础类库VJKit ,问题排查工具VJMap 和 VJTop 三部分。 开发工具在软件开发生命周期中...

    丢失Android系统库或者Conversion to Dalvik format failed with error 1错误的解决方法

    在eclipse开发Android项目时出现的很多问题都可以使用Project———>clean来轻易解决。 但如果出现说Android库找不到,或者不小心remove了Android系统库,怎么重新添加Android系统库呢?在eclipse里面的Java Build ...

    android错误 aapt.exe已停止工作的解决方法

    在使用eclipse进行安卓java的编程的时候,有时候我们会遇到这样的问题:那就是无故弹出aapt.exe停止工作的提示,虽然程序不会崩溃,但是这个提示经常弹出很是烦人。今天,小编就来教大家aapt.exe停止工作如何解决 ...

    Accordino:手风琴视图 Android 库项目

    1.在 Eclipse 中,将库作为​​ Android 库项目导入。 Project > Clean 生成你需要的二进制文件,比如 R.java 等。 2.然后,将 Accordino 添加为现有项目的依赖项。 XML 用法 所有选项都是可选的。 仅使用您真正想...

    Fontysfaction:自定义字体的实用 Android 库项目

    只要您引用此项目并在您的应用程序中包含许可证,就可以在您的 Android 应用程序中随意使用它。 设置 1.在 Eclipse 中,将库作为​​ Android 库项目导入。 Project > Clean 生成你需要的二进制文件,比如 R.java ...

    swell-android:Swell - 一个 Apache Wave 分支,用于在 Wave 联合基础架构中为 Android 提供实时协作 API

    使用 Eclipse LogCat 和 DDMS 更多信息http://developer.android.com/tools/building/building-cmdline.html 从头开始设置 Android 项目 从 Wave 存储库 (git clone git://git.apache.org/incubator-wave.git w

    Neverendingview:基于 ScrollView 的一个简单的永无止境的视图

    永无止境的景色Neverendingview 是一个开源 Android 库,它允许开发人员轻松地向他们的项目添加一个永无止境的滚动视图。 只要您引用此项目并在您的应用程序中包含许可证,就可以在您的 Android 应用程序中随意使用...

    notecipher:一个简单的记事本,所有存储使用 SQLCipher 和 Cacheword 加密

    请按照以下步骤使用Eclipse设置您的开发环境: 在 repo 的根目录中创建一个新的 Eclipse工作区。 对于 Cacheword,导入这个目录external/cacheword/cachewordlib/ ,使用“Import -> Android -> Existing

    ResponseTimeTool:适用于iOS和Android的响应时间测试工具

    开发环境JDK:1.6+ Eclipse:Luna Service Release 2(4.4.2)+ Gradle:2.4+ 编码:UTF-8 测试NG 哈科科声纳奔跑者Log4j贡献代码git clone 导入EclipseGradle干净的Eclipse构建Test-TestNG gradle clean test 代码...

    syncseafile:最新的seafile全网同步代码

    在Eclipse中开发Android依赖项 建造从下载ActionBarSherlock 4.2.0 从下载ViewPagerIndicator 2.4.1 Git克隆NewQuickAction git clone https://github.com/haiwen/NewQuickAction 根据将ActionBarSherlock / ...

    enhanced-domotic:Java 中的 Domotic 库

    增强型 该项目的目标是用 Java 编写一个 domotic 库。 目前,仅支持协议。 具有流畅语法的示例 ... Android 开发:已关闭。 ####如何构建项目: mvn eclipse:clean eclipse:eclipse mvn clean install

Global site tag (gtag.js) - Google Analytics