- Home /
Everyplay for Unity3D - Error for building on iOS
Hi,
I can't open my project because of this two errors (saw it in mu Unity console):
KeyNotFoundException: The given key was not present in the dictionary. System.Collections.Generic.Dictionary`2[TKey,TValue].get_Item (.TKey key) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150) UnityEditor.XCodeEditor.XCProject..ctor (System.String filePath) (at Assets/Facebook/Editor/iOS/third_party/XCodeEditor-for-Unity/XCProject.cs:95) UnityEditor.FacebookEditor.XCodePostProcess.OnPostProcessBuild (BuildTarget target, System.String path) (at Assets/Facebook/Editor/FacebookPostprocess.cs:25) UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()
AND
KeyNotFoundException: The given key was not present in the dictionary. System.Collections.Generic.Dictionary`2[TKey,TValue].get_Item (.TKey key) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150) Everyplay.XCodeEditor.XCProject..ctor (System.String filePath) (at Assets/Editor/Everyplay/XCodeEditor/XCProject.cs:93) EveryplayPostprocessor.ProcessXCodeProject (System.String path) (at Assets/Editor/Everyplay/Scripts/EveryplayPostprocessor.cs:124) EveryplayPostprocessor.PostProcessBuild_iOS (System.String path, System.String clientId) (at Assets/Editor/Everyplay/Scripts/EveryplayPostprocessor.cs:76) EveryplayPostprocessor.OnPostProcessBuild (BuildTarget target, System.String path) (at Assets/Editor/Everyplay/Scripts/EveryplayPostprocessor.cs:24) UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()
Any idea? It worked ... yesterday ! :(
I don't understand, and the Everyplay's support is ... very very slow.
Thank you in advance for your help.
Best regards,
AB
Answer by pmjo · Sep 08, 2014 at 05:22 AM
Do you mean you cannot open the xCode project or the Unity project? Facebook and Everyplay uses the same xCode editor tool and it looks both are failing for some reason. Have you added or updated any other plugins after it stopped working? Sometimes some plugins may corrupt the xCode project. If you are talking about the xCode project, have you tried to build a fresh project in a new folder instead of appending?
If you are using the Adcolony plugin, I have confirmed that Everyplay will generate a similar error with it because Adcolony makes xCode project unreadable for the xCode editor. I have posted a fix for that here: http://answers.unity3d.com/questions/779017/everyplay-ios-integration-issue.html#answer-786929
Hi,
Thank you for your answer.
I just updated chartboost for unity to 5.0.
I don't use ad colony.
I already tried to build a fresh new xcode project, it doesn't change anything.
Chartboost is also using the xCode editor so the problem is not caused by it. $$anonymous$$ay I ask what other plugins you are using?
You could also try to change Everyplay postprocessor to run earlier than other plugins: Edit the EveryplayPostprocessor.cs file (line 15, folder Editor/Everyplay/Scripts) and change [PostProcessBuild(1080)] to [PostProcessBuild(-5)]. But since you are facing the problem also with Facebook, you must edit the Facebook postprocessor too.
Thanks,
in fact my issue was away : I change my App name in Unity3D without space, I build, and it works.
Afetr that I put again my game name and I rebuild, and it's ok.
Strange ...
Answer by mfosati · Sep 08, 2014 at 08:15 PM
Go to the CBPostProcessor.cs and change line 10 to [PostProcessBuild(1081)]
Hi,
I still have this issue :
$$anonymous$$eyNotFoundException: The given key was not present in the dictionary. System.Collections.Generic.Dictionary`2[T$$anonymous$$ey,TValue].get_Item (.T$$anonymous$$ey key) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150) UnityEditor.XCodeEditor.XCProject..ctor (System.String filePath) (at Assets/Facebook/Editor/iOS/third_party/XCodeEditor-for-Unity/XCProject.cs:95) UnityEditor.FacebookEditor.XCodePostProcess.OnPostProcessBuild (BuildTarget target, System.String path) (at Assets/Facebook/Editor/FacebookPostprocess.cs:25) UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()
AND
$$anonymous$$eyNotFoundException: The given key was not present in the dictionary. System.Collections.Generic.Dictionary`2[T$$anonymous$$ey,TValue].get_Item (.T$$anonymous$$ey key) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:150) Everyplay.XCodeEditor.XCProject..ctor (System.String filePath) (at Assets/Editor/Everyplay/XCodeEditor/XCProject.cs:93) EveryplayPostprocessor.ProcessXCodeProject (System.String path) (at Assets/Editor/Everyplay/Scripts/EveryplayPostprocessor.cs:124) EveryplayPostprocessor.PostProcessBuild_iOS (System.String path, System.String clientId) (at Assets/Editor/Everyplay/Scripts/EveryplayPostprocessor.cs:76) EveryplayPostprocessor.OnPostProcessBuild (BuildTarget target, System.String path) (at Assets/Editor/Everyplay/Scripts/EveryplayPostprocessor.cs:24) UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()
I'm losing my $$anonymous$$d .... 1 week on it :'(
Thanks a lot for your help !!
(I'm using Chartboost 5.0, Facebook 6.0 and Everyplay)
Thanks !
Upgrading to Chartboost 5.0.2 seems to solve the problem.
https://answers.chartboost.com/hc/en-us/articles/201219745-Unity-SD$$anonymous$$-Download
Hi,
It doesn't work with the iPhone 6. Do you have the same issue ?
Thanks !