On Jul 23, 2011, at 2:48 PM, mcgear wrote:
> The log entry i have now shows more info then i have caught before, and it
> looks like something with Remoting...
...
> I/MonoDroid( 2870): UNHANDLED EXCEPTION: System.TypeInitializationException:
> An exception was thrown by the type initializer for
> System.Runtime.Remoting.RemotingServices ---> System.ArgumentException:
> Argument value 1284968920 is not valid.
> I/MonoDroid( 2870): Parameter name: access
> I/MonoDroid( 2870): at
> System.Reflection.Emit.AssemblyBuilder..ctor(System.Reflection.AssemblyName
> n, System.String directory,
> AssemblyBuilderAccess access, Boolean corlib_internal) [0x00000] in <filename
> unknown>:0
> I/MonoDroid( 2870): at System.String.Equals (System.Object obj) [0x00000]
> in <filename unknown>:0
> I/MonoDroid( 2870): at System.Object.Equals (System.Object objA,
> System.Object objB) [0x00000] in <filename unknown>:0
> I/MonoDroid( 2870): at System.Array.System.Collections.IList.Contains
> (System.Object value) [0x00000] in <filename unknown>:0
> I/MonoDroid( 2870): at
> System.Runtime.Remoting.Channels.ChannelServices.RegisterChannel (IChannel
> chnl, Boolean ensureSecurity) [0x00000] in <filename unknown>:0
> I/MonoDroid( 2870): at
> System.Runtime.Remoting.Channels.ChannelServices.RegisterChannel (IChannel
> chnl) [0x00000] in <filename unknown>:0
> I/MonoDroid( 2870): at
> System.Runtime.Remoting.Channels.CrossAppDomainChannel.RegisterCrossAppDomainChannel
> () [0x00000] in <filename unknown>:0
> I/MonoDroid( 2870): at
> System.Runtime.Remoting.RemotingServices.RegisterInternalChannels ()
> [0x00000] in <filename unknown>:0
> I/MonoDroid( 2870): at System.Runtime.Remoting.RemotingServices..cctor ()
> [0x00000] in <filename unknown>:0
> I/MonoDroid( 2870): --- End of inner exception stack trace ---
> I/MonoDroid( 2870): at System.Delegate.IsTransparentProxy () <0x00017>
> I/MonoDroid( 2870): at System.Threading.ThreadPool.QueueUserWorkItem
> (System.Threading.WaitCallback,object) <0x00023>
> I/MonoDroid( 2870): at System.Threading.ThreadPool.QueueUserWorkItem
> (System.Threading.WaitCallback) <0x00017>
> I/MonoDroid( 2870): at
> Zed.USA.Droid.UI.Activities.SplashScreenActivity.OnCreate (Android.OS.Bundle)
> <0x0013b>
Based on the System.Reflection.Emit.AssemblyBuilder.#ctor() throwing
ArgumentExcpetion for the "access" parameter, I think it's from:
https://github.com/mono/mono/blob/master/mcs/class/corlib/System.Reflection.Emit/AssemblyBuilder.cs#L276
Now why is `access` getting the value 0x4c9711d8 (1284968920)?
For that matter, why is String.Equals() creating an AssemblyBuilder?
I'm inclined to suspect that it's a JIT bug. To confirm, please do the
following:
1. Rebuild your app either as Release or as Debug but w/o the shared runtime
enabled.
2. Ensure that only the armeabi runtime will be deployed with your app, not
armeabi & armeabi-v7a.
3. Redeploy and re-run your app.
((1) and (2) can be done via the Project Properties pages...)
If it then works on your device, it's an armeabi-v7a JIT bug. (I imagine that
this will work, as the emulator is only running armeabi, not armeabi-v7a, and
you stated that it works in the emulator).
If it is a JIT bug, could you please file a bug with the project attached?
Thanks,
- Jon
_______________________________________________
Monodroid mailing list
[email protected]
UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid