根据大佬们写的文章
Unity接入Google登录超详细流程
接入Google,但是在导入安卓依赖管理插件EDM4U后,却疯狂报错。
刚开始是:
Assembly 'Assets/ExternalDependencyManager/Editor/Google.VersionHandlerImpl_v1.2.157.dll' will not be loaded due to errors: Assembly name 'Google.VersionHandlerImpl' does not match file name 'Google.VersionHandlerImpl_v1.2.157'
原因是程序集跟文件名不匹配,把Google.VersionHandlerImpl_v1.2.157的版本后缀删掉就好啦
后面又有一个报错:
AmbiguousMatchException: Ambiguous match found. System.RuntimeType.GetMethodImplCommon (System.String name, System.Int32 genericParameterCount, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, System.Reflection.CallingConventions callConv, System.Type[] types, System.Reflection.ParameterModifier[] modifiers) (at <88e4733ac7bc4ae1b496735e6b83bbd3>:0) System.RuntimeType.GetMethodImpl...
这个似乎是 由于反射(Reflection)库在查找方法时出现了歧义(AmbiguousMatch)而导致的,例如在查找方法时,发现有多个方法名称相同且参数类型也相同的方法。这种情况下,反射库无法确定要调用哪个方法,因此会抛出 AmbiguousMatchException 异常。
找了很久,没找到解决的方法,最终的解决方法是删掉了安卓依赖管理里面的Google.IOSResolver跟Google.JarResolver,手动注册安卓依赖,最终解决了...
打开
unity
hub,然后再安装的
unity
中,单击齿轮,添加模块,选择IOS Build Support,完成。重新打开
unity
就好。猜测可能只安装了android的模块,没有ios模块,导致的出错。
1.重载方法引发的异常:
Ambiguous
Match
Exception
:
Ambiguous
match
found.
在使用反射调用具有不同参数的重载方法时,应在获取方法信息时添加类型:
类型.GetMethod("方法名称",new Type[] {typeof(参数类型)});
异常信息(异常类型:System.Reflection.
Ambiguous
Match
Exception
)异常提示:
Ambiguous
match
found.异常信息:
Ambiguous
match
found.导致错误的应用程序或对象的名称:mscorlib引发当前异常的方法:System.Reflection.MethodInfo GetMethodImpl(System.String, S...
错误提示为出现模糊不清的变量,常见原因为当前页面控件变量重名,即使变量名大小写不同而字母完全相同也不行(例如 btnPerson 和btnperson)
此原因多见于:
1.编辑当前页面时,有两个控件重名(例如 btnPerson 和btnperson),不过此时系统会自动提示重名。
2. 系统升级高版本
下载 supergraphfiles.exe 示例文件。 应用程序体系结构 在我专攻代码之前,我想谈谈我尝试做的事。您可能记得,SuperGraph 让您从函数列表中进行选择。我希望能够在具体的目录中放置外接程序程序集,让 SuperGraph 检测它们,加载它们,并找到它们中包含的所有函数。 如果 SuperGraph 自己能完成此操作则不需要单独的 AppDomain。Assembly.Loa