Gradle迁移新版本的问题

本文介绍了在Android开发中遇到的Gradle DSL中runProguard函数被废弃的问题,以及库项目中应用ID设置的限制,并提供了替代方案。通过将minifyEnabled设置为false替代runProguard,以及利用产品风味(productFlavors)重新命名包名,解决了相关问题。同时,强调了更新配置文件以适应新版本Android SDK的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,Gradle DSL method not found: ‘runProguard()’

runProguard函数已经被废弃并且停止使用了

改成minifyEnabled

即如下的配置

buildTypes {
    release {

        minifyEnabled false // 替代的方式

        ......
    }
}

runProguard —> minifyEnabled

jniDebuggBuild –> jniDebuggable

zipAlign –> zipAlignEnabled

2,Library projects cannot set applicationId

新版本不能使用applicationId来定义库module的包名了,要定义在manifest

defaultConfig {
applicationId "cn.flakor.lib"   <---- 删除这行
minSdkVersion 15
targetSdkVersion 19
versionCode 1
versionName "1.0"
    }
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        package="cn.flakor.lib">
...

利用flavor重命名包名

android {
   ...
   productFlavors {
       flavor1 {
           applicationId 'cn.flakor.newname'
       }
   }

参考(不f 看不了,有时间翻译下):

http://tools.android.com/tech-docs/new-build-system/user-guide

http://tools.android.com/tech-docs/new-build-system/migrating-to-1-0-0

 

Add the following values to build.gradle for android gradle plugin v0.14+

android {
    ...
    defaultConfig {
        ...
        renderscriptTargetApi 19
        renderscriptSupportModeEnabled true
    }
    ...
}

For older versions of the android gradle plugin v0.13.3 and below

android {
        ...
        defaultConfig {
            ...
            renderscriptTargetApi 19
            renderscriptSupportMode true
        }
        ...
    }

Once that is done, use android.support.v8.renderscript. anywhere in your app. The library jar and binaries are included automatically.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值