我有一个包含资源的 Android 库项目,并将该库项目导入到我的 Unity 项目中,位于
F:\Unity\demoproject esting\Testing\Assets\Plugins\Android
当我尝试在 Unity 中构建项目时,出现以下错误:
Error building Player: CommandInvokationFailure: Failed to re-package resources. See the Console for details.
F:\AndroidStudio\AndroidStudioSDK\sdk\build-tools\22.0.1\aapt.exe package --auto-add-overlay -v -f -m -J gen -M AndroidManifest.xml -S "res" -I "F:/AndroidStudio/AndroidStudioSDK/sdk/platforms/android-22\android.jar" -F bin/resources.ap_
stderr[
AndroidManifest.xml:4: error: Error: No resource found that matches the given name (at 'icon' with value '@drawable/ic_launcher').
AndroidManifest.xml:4: error: Error: No resource found that matches the given name (at 'theme' with value '@style/AppTheme').
]
stdout[
Configurations:
(default)
xhdpi-v4
Files:
drawable\app_banner.png
Src: (xhdpi-v4) res\drawable-xhdpi\app_banner.png
drawable\app_icon.png
Src: () res\drawable\app_icon.png
values\strings.xml
Src: () res\values\strings.xml
AndroidManifest.xml
Src: () AndroidManifest.xml
Resource Dirs:
Type drawable
drawable\app_banner.png
Src: (xhdpi-v4) res\drawable-xhdpi\app_banner.png
drawable\app_icon.png
Src: () res\drawable\app_icon.png
Type values
values\strings.xml
Src: () res\values\strings.xml
Including resources from package: F:\AndroidStudio\AndroidStudioSDK\sdk\platforms\android-22\android.jar
applyFileOverlay for drawable
applyFileOverlay for layout
applyFileOverlay for anim
applyFileOverlay for animator
applyFileOverlay for interpolator
applyFileOverlay for transition
applyFileOverlay for xml
applyFileOverlay for raw
applyFileOverlay for color
applyFileOverlay for menu
applyFileOverlay for mipmap
Processing image: res\drawable-xhdpi\app_banner.png
Processing image: res\drawable\app_icon.png
(processed image res\drawable\app_icon.png: 94% size of source)
(processed image res\drawable-xhdpi\app_banner.png: 93% size of source)
(new resource id app_banner from xhdpi-v4\drawable\app_banner.png #generated)
(new resource id app_icon from drawable\app_icon.png #generated)
]
清单.XML
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.testinglib"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity android:name="com.unity3d.player.UnityPlayerActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
</activity>
</application>
</manifest>
Unity 中的脚本文件
using UnityEngine;
using System.Collections;
public class Freeb : MonoBehaviour {
void Start () {
}
public void OnGUI() {
if (GUI.Button (new Rect (50, 50, 100, 100), "Open")) {
//AndroidJavaClass unity = new AndroidJavaClass ("com.unity3d.player.UnityPlayer");
AndroidJavaClass unity = new AndroidJavaClass ("com.unity3d.player.UnityPlayer");
AndroidJavaObject currentActivity = unity.GetStatic<AndroidJavaObject> ("currentActivity");
currentActivity.Call ("createMethod", currentActivity);
}
}
}
android:theme="@style/AppTheme"