Bug 36522 - MTOUCH: error MT4116: Could not register the assembly 'Google.Plus'
Summary: MTOUCH: error MT4116: Could not register the assembly 'Google.Plus'
Status: RESOLVED FIXED
Alias: None
Product: Components
Classification: Xamarin
Component: Component Store ()
Version: N/A
Hardware: PC Mac OS
: --- normal
Target Milestone: ---
Assignee: Israel Soto [MSFT]
URL:
Depends on:
Blocks:
 
Reported: 2015-12-03 10:38 UTC by Denis
Modified: 2016-01-13 06:57 UTC (History)
4 users (show)

Tags:
Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:
Status:
RESOLVED FIXED

Description Denis 2015-12-03 10:38:35 UTC
I've got two libs in my project: Google.Plus and Google.Analytics. When it compiles at my local machine with Xamarin Studio it's fine. But when compiles with CruiseControl it throws an error:

MTOUCH: error MT4116: Could not register the assembly 'Google.Plus': error MT4118: Cannot register two managed types ('Google.Plus.PlusConstants, Google.Plus' and 'Google.Analytics.GaiConstants, Google.Analytics') with the same native name ('FieldExporter').
Task "MTouch" execution -- FAILED Done building target "_CompileToNative" in project "/Volumes/Build/MKBDevWorking/Source.Client.iOS/EleganceUkraine.Mkb.Client.iOS/EleganceUkraine.Mkb.Client.Ios.csproj".-- FAILED

Does enyone one know how to solve it?
Comment 1 Rolf Bjarne Kvinge [MSFT] 2015-12-03 11:29:02 UTC
This is a conflict between the Google.Plus and Google.Analytics assemblies, and needs to be fixed there.

Did you get those assemblies from our component store, or somewhere else?
Comment 2 Denis 2015-12-03 15:00:45 UTC
Yep. When only one lib referenced it works fine.

Analytics downloaded from:
https://components.xamarin.com/view/googleiosanalytics

And Google Plus:
https://www.nuget.org/packages/Xamarin.Google.iOS.Plus/
Comment 3 Rolf Bjarne Kvinge [MSFT] 2015-12-03 15:29:31 UTC
Changing status.
Comment 4 karl.kopp 2015-12-08 10:41:49 UTC
I get the same error if I use Xamarin.Google.iOS.Plus and Xamarin.Google.iOS.Analytics in the same project. Both from Nuget (latest). Any eta or work arounds as it's holding up the project :(

Cheers.
Karl
Comment 5 Denis 2015-12-08 20:05:00 UTC
Google doesn't recomend to use libruary for ios. I've deleted google plus and share message via web
https://developers.google.com/+/mobile/ios/share/basic-share
Comment 6 Israel Soto [MSFT] 2015-12-09 23:24:16 UTC
I can reproduce the issue with the following configuration:

Xamarin Studio
Version 5.10.1 (build 6)
Installation UUID: a5a1a8ce-5306-4616-8cef-fd95b3baf52e
Runtime:
	Mono 4.2.1 (explicit/6dd2d0d)
	GTK+ 2.24.23 (Raleigh theme)

	Package version: 402010102

Xamarin.iOS
Version: 9.2.1.54 (Business Edition)
Hash: eb4c1ef
Branch: master
Build date: 2015-12-01 02:12:30-0500

The fix is to change the Obj-C class name of FieldExporter. The following Google APIs present this problem:

- Google Analytics for iOS
- Google Maps for iOS
- Google Plus for iOS

This will be fixed in the next release.
Comment 7 Israel Soto [MSFT] 2016-01-13 06:57:40 UTC
Fixed Export class name problem in the following versions:

G.Analytics: v3.14.0.1
G.Maps: v1.11.1
G.Plus is deprecated now.