Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Xamarin如何启动您的Android项目?_C#_Android_Xamarin.android - Fatal编程技术网

C# Xamarin如何启动您的Android项目?

C# Xamarin如何启动您的Android项目?,c#,android,xamarin.android,C#,Android,Xamarin.android,Android项目本机运行在Java上,NDK项目基本上通过一个特殊的活动启动本机代码来工作。比如说, 我想看看Xamarin是怎么做到的。从技术上讲,CLR代码是托管代码而不是本机代码,但CLR本身是本机代码,整个过程在Android运行时看起来就像NDK项目。我一直在四处寻找,但我找不到Android项目启动器在Xamarin的什么地方,在谷歌上搜索也没发现什么有用的东西 Xamarin在Android设备上启动CLR项目的机制是什么 Xamarin在Android设备上启动CLR项目的机制

Android项目本机运行在Java上,NDK项目基本上通过一个特殊的活动启动本机代码来工作。比如说,

我想看看Xamarin是怎么做到的。从技术上讲,CLR代码是托管代码而不是本机代码,但CLR本身是本机代码,整个过程在Android运行时看起来就像NDK项目。我一直在四处寻找,但我找不到Android项目启动器在Xamarin的什么地方,在谷歌上搜索也没发现什么有用的东西

Xamarin在Android设备上启动CLR项目的机制是什么

Xamarin在Android设备上启动CLR项目的机制是什么

你可以参考

在Android设备中启动应用程序时,Android将通过清单中指定的@Android:name加载它,然后通常通过调用
ContentProvider.attachinfo()
方法Xamarin.Android来实例化所有类型,然后在构建过程中添加
mono.MonoRuntimeProvider ContentProvider
。然后,
mono.MonoRuntimeProvider.attachInfo()
方法将替换本机
ContentProvider.attachInfo()
方法,以将mono运行时加载到进程中


这就是我对该文件的理解,如果有任何错误,请告知我,非常感谢

你在找吗?@GraceFeng-MSFT看起来很像,是的。把它变成一个答案,我会接受的。嗯。。。查看的文档,这个类似乎都是关于共享SQL数据的,而
MonoRuntimeProvider.java
实际上使相关的SQL方法抛出了一个不受支持的错误。所以这种感觉就像是黑客。选择这一点有什么特别的原因吗?它是否只是“我们能够在应用程序安装过程的早期加载的东西”?@MasonWheeler,你可以检查一下,它不仅仅用于共享SQL数据。