Android构建差异eclipse与ant

时间:2014-02-12 06:28:51

标签: android eclipse ant

本主题可能已经讨论了很长,但到目前为止我还没有找到我的问题的答案,即:

eclipse插件和ant产生的apks之间是否存在结构,代码或任何其他差异?

我有2个环境在相同的JDK版本和相同的Android SDK版本上运行 - 基本上是最新版本。

相同的代码在两个环境中成功编译,其中一个是使用eclipse的开发环境,另一个是使用ant的prod环境。 两个环境都使用调试密钥对apk进行签名。

然而,奇怪的是,生成apk的ant的性能远远低于eclipse生成的apk的性能。

我很感激任何帮助,以找出ant生成的apk版本中可能缺少的内容。 非常感谢任何帮助。

EDITED 14.02.2014 - 回应Stehpan。已添加代码段 嗨斯蒂芬 该应用程序使用AES加密大约20个15-40个字符的字符串值,并将其存储在共享首选项中。蚂蚁生成的应用程序花费大约20秒来完成此操作,而eclipse生成的应用程序很快完成。

以下是执行加密的方法:

    public static final String encrypt(String value, char[] passPhrase){
    if(value != null){
        try{
            SecretKeySpec skeySpec = new SecretKeySpec(SecureCrypto.generateSecretKey(passPhrase).getEncoded(), ENC_ALGORITHM);
            Cipher cipher = Cipher.getInstance(ENC_ALGORITHM);
            cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
            value = Base64.encodeToString(cipher.doFinal(value.getBytes("utf-8")), Base64.NO_WRAP);
        }catch(Throwable th){
            Environment.logError(Environment.APPLICATION_LOG_TAG, th);
        }
    }

    return value;
}

1 个答案:

答案 0 :(得分:0)

Eclipse与使用命令行之间应该没有区别。从本质上讲,Eclipse使用相同的命令行工具。 Eclipse用户权限最终可能会优先于命令行。这就是我想的。

如果有任何差异,它应该在你的制作apk和你的调试apk之间。在生产环境中,某些调试代码可能会被剥离,缩小并可能被混淆。