2016-10-18 2 views
0

TL : DRAndroid 프로젝트를 만들 때 Unity3D에서 매니페스트 파일 문제가 발생했습니다.

안녕하세요. Android 용 Unity3D에서 앱을 개발하고 있습니다. 그러나 내가 안드로이드 프로젝트를 만들고 싶을 때. 오류로 인해 매니페스트 파일이 충돌했습니다. 나는 잠시 동안 수색 해 왔으며 이러한 충돌의 대부분은 버전 충돌입니다. 어떤 Manifest 파일에서 수동으로 minSDKVersion & targetSDKVersion을 변경하여 해결했다고 생각합니다. 나쁜 형식 만 있다면 그러나, 나는 (총 3 오류),

<activity 
-- @android:name="com.facebook.FacebookActivity"> 
--</activity> 
--(end reached) 
    <activity 
++   @android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" 
++ @android:name="com.facebook.FacebookActivity" 
++ @android:theme="@android:style/Theme.Translucent.NoTitleBar"> 
] 

stdout[ [Temp/StagingArea/AndroidManifest-main.xml:8, /Temp/StagingArea/android-libraries/NatCam/AndroidManifest.xml:18] Skipping identical /manifest/application/meta-data[@name=com.google.android.gms.version] element. ] UnityEditor.Android.Command.Run (System.Diagnostics.ProcessStartInfo psi, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) UnityEditor.Android.AndroidSDKTools.RunCommandInternal (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) UnityEditor.Android.AndroidSDKTools.RunCommandSafe (System.String javaExe, System.String sdkToolsDir, System.String[] sdkToolCommand, Int32 memoryMB, System.String workingdir, UnityEditor.Android.WaitingForProcessToExit waitingForProcessToExit, System.String errorMsg) UnityEditor.HostView:OnGUI()

(3) Error building Player: CommandInvokationFailure: Unable to merge android manifests. See the Console for more details. /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/bin/java -Xmx2048M -Dcom.android.sdkmanager.toolsdir="/Users/xxx/Library/Android/sdk/tools" -Dfile.encoding=UTF8 -jar "/Applications/Unity/PlaybackEngines/AndroidPlayer/Tools/sdktools.jar" -

stderr[ Error: [Temp/StagingArea/AndroidManifest-main.xml:36, /Temp/StagingArea/android-libraries/facebook-android-sdk-4.14.0/AndroidManifest.xml:6] Trying to merge incompatible /manifest/application/activity[@name=com.facebook.FacebookActivity] element:

<activity 
-- @android:name="com.facebook.FacebookActivity"> 
--</activity> 
--(end reached) 
    <activity 
++ @android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" 
++ @android:name="com.facebook.FacebookActivity" 
++ @android:theme="@android:style/Theme.Translucent.NoTitleBar"> 
] 

stdout[ [Temp/StagingArea/AndroidManifest-main.xml:8, /Temp/StagingArea/android-libraries/NatCam/AndroidManifest.xml:18] Skipping identical /manifest/application/meta-data[@name=com.google.android.gms.version] element. ]

(1) Error: [Temp/StagingArea/AndroidManifest-main.xml:36, /Temp/StagingArea/android-libraries/facebook-android-sdk-4.14.0/AndroidManifest.xml:6] Trying to merge incompatible /manifest/application/activity[@name=com.facebook.FacebookActivity] element:

UnityEditor.HostView:OnGUI()

(2) CommandInvokationFailure: Unable to merge android manifests. See the Console for more details. /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home/bin/java -Xmx2048M -Dcom.android.sdkmanager.toolsdir="/Users/xxx/Library/Android/sdk/tools" -Dfile.encoding=UTF8 -jar "/Applications/Unity/PlaybackEngines/AndroidPlayer/Tools/sdktools.jar" -

stderr[ Error: [Temp/StagingArea/AndroidManifest-main.xml:36, /Temp/StagingArea/android-libraries/facebook-android-sdk-4.14.0/AndroidManifest.xml:6] Trying to merge incompatible /manifest/application/activity[@name=com.facebook.FacebookActivity] element:

이 문제를 해결할 수 없습니다 (죄송합니다 "<은>"대신 코드로 표시되어야한다 견적의) 그것은 활동 문제, 나는 this을 찾은 것 같습니다. 내가 전에 안드로이드 프로젝트를 만진 적이 없기 때문에이 "활동"이 무엇인지 전혀 알지 못합니다. 아무도 여기서 문제가 무엇인지 지적 할 수 있습니까?

답변

2

Facebook 활동의 중복 된 선언이 있기 때문에 매니페스트를 병합 할 수 없습니다.

대부분의 경우 실수로 프로젝트에 Facebook AndroidManifest 사본이 두 개 이상있을 수 있습니다.

매니페스트 자체는 편집 할 필요가 없으므로 상자 밖으로 나오면됩니다.

프로젝트를보고 찾은 중복 된 것을 삭제하십시오.

최악의 경우, 프로젝트에서 Facebook을 삭제하고 플러그인을 다시 가져 오십시오.

작은 배경 정보를 보려면 활동 장면을 화합으로 생각하십시오. 매니 페스트에서는 모든 활동을 선언해야합니다. 병합 할 때 동일한 이름의 활동이 2 개 발견되면 수행 할 작업을 알지 못하고 그 오류를 throw합니다.

+0

좋아요. 미리 살펴보고 시도해보십시오. 미리 감사드립니다. @turnipinindia – milanow

+0

실제로 FB SDK와 FB SDK가 포함 된 플러그인을 모두 가져 왔습니다. 나는 이것이 문제라고 생각한다. 기술적으로이 두 개의 Manifest 파일 중 하나에서 FB 선언을 간단히 삭제할 수 있습니까? – milanow

+0

안녕하세요. 수동으로 하나의 "Facebook 활동"을 삭제하면 성공합니다! – milanow

관련 문제