中为某个项目禁用

中为某个项目禁用

本文介绍了如何在 Android Studio 中为某个项目禁用 NDK的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在处理多个项目,其中一些需要安装 NDK.当我在 SDK 管理器中执行此操作时,我的所有非 NDK 项目都无法生成 APK,除非我在 SDK 管理器上删除了 NDK.我尝试在我的 local.properties 中指定和删除 NDK 路径,但什么也没做,我需要将其从 Android Studio 中完全删除才能生成 APK,然后重新下载并为我的 NDK 项目启用它,这很荒谬.有什么办法吗??

I have multiple projects I'm working on, and some require NDK to be installed. When I do that in the SDK manager, all my non-NDK projects fail to generate the APK unless I removed NDK on the SDK manager. I tried specifying and removing the NDK path, in my local.properties, nothing does it, I need to completely remove it from Android Studio to be able to generate the APK, then re-download it and enable it for my NDK projects, which is pretty absurd. Any way around this??

推荐答案

这是一个已知问题,当您拥有最新的 NDK r.17,并且不要在根(项目)build.gradle 脚本中将您的 gradle 插件升级到 3.1.2 或更高版本.建议使用最新的插件,不仅要兼容最新的 NDK:

This is a known problem, which happens when you have the latest NDK r.17 and don't upgrade your gradle plugin to 3.1.2 or higher, in root (project) build.gradle script. Using the latest plugin is recommended not only to be compliant with latest NDK:

buildscript {
  dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
  }
}

您还必须更改 gradle/wrapper/gradle-wrapper.properties:

distributionUrl=https://services.gradle.org/distributions/gradle-4.6-all.zip v.4.4

解决方法包括使用 NDK r.16不包括 mips 条

The workarounds include using NDK r.16 or excluding the mips strips

packagingOptions {
    doNotStrip '*/mips/*.so'
    doNotStrip '*/mips64/*.so'
}

*) 正确地作为@Forgen 更新packagingOptions 不适用于 v.2.3 之前的 Android gradle 插件.但是如果你还在用这个版本,你的问题比mips64严重多了,应该尽快升级.


*) as @Forgen correctly updated, packagingOptions was not available for Android gradle plugin earlier than v.2.3. But if you are still using such version, you have problems much more serious than mips64, and should upgrade ASAP.

这篇关于如何在 Android Studio 中为某个项目禁用 NDK的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-18 17:50