gpt4 book ai didi

jar - 如何让 Android Studio 将资源包含在 .jar 文件中?

转载 作者:行者123 更新时间:2023-12-03 17:11:06 28 4
gpt4 key购买 nike

我正在使用 Unity 5。它仍然希望 java 插件是使用 JDK 1.6 构建的 .jar 文件。

我在 Unity 4 下工作,但他们改变了一些东西。现在我在从 Unity 构建 apk 时遇到此错误:

OBSOLETE - Providing Android resources in Assets/Plugins/Android/res is deprecated, please move your resources to an Android Library. See "Building Plugins for Android" section of the Manual.

如何让AS把资源放到classes.jar中? “为 Android 构建插件”没有提到资源。

有关我的项目的其他信息:

该项目引用了 Google Play 服务,因此我需要其中的 version.xml

<integer name="google_play_services_version">6587000</integer>

其中包含 list 中引用的版本号。

<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />

但是如果我在我的 AS 库项目中将这个文件包含在 res/values 中,它仍然会在 classes.jar 旁边的 res/values 中作为 xml 文件输出。

顺便说一句,我正在从中挖掘 .jar 文件

/ApplicationName/build/intermediates/exploded-aar/ProjectName/LibararyName/unspecified/classes.jar

在构建项目之后。

最佳答案

首先,这是一个警告,而不是错误。

不建议在 Assets/Plugins/Android/res/文件夹中提供 Unity 中的资源,因为这会导致资源冲突。

当您在 Android 库中提供资源时,它们会在构建过程中正确合并。

基本上,您有三个选择:

  • 将您的插件转换为 Android 库。或者您可以初始化一个空库,将您的 .jar 文件添加到 bin/,将您的资源添加到 res/(project.properties 中应该有一个 list 和 android.library=true)。您可以通过调用 android create lib-project ( more details )
  • 如果您直接使用 gradle 或在 Android Studio 中编译您的插件,您可以使用生成的 .aar 文件,前提是您已将您的项目设置为一个库(在您的构建中应用插件:'com.android.library')。梯度文件)。只需将它放在项目的任何文件夹中,它就会自动被检测为仅限 Android 的插件。
  • 继续在 res/中提供资源,并等待它完全不受 Unity 支持。

希望这对您有所帮助。

关于jar - 如何让 Android Studio 将资源包含在 .jar 文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29498365/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com