【记录】解决VS2015调试Xamarin程序一闪而过(使用微软ANDROID模拟器)
越来越多的人去安装Visual Studio 2015,也会去试试其中的C#跨平台开发利器Xamarin,但是也会发现很多问题。
我相信我不会是唯一遇到以下问题的,也不会是最后一个,特此记录。
微软的VS2015会自带微软的模拟器(UPDATE1开始),VS Emulator for Android,本人一开始使用的是GOOGLE自带的模拟器,但是异常的卡,所以想尝试一下新的组合。
我相信会有不少人遇到XAMARIN与VSEA的兼容问题,这个最大的原因可能还在于HYPER-V本身的兼容性很差。
特此记录以下问题:
如果VISUAL BOX(例如GENYMOTION等模拟器)发生无法启动的情况或无法使用VT-X的情况时,一般是因为HYPER-V锁死了软件层的虚拟机应用指令集,解决方法彻底卸载VSEA以及卸载HYPER-V并重启。
如果遇到XAMARIN任何程序,在VSEA中一闪而过或无法调试,并报一下错误:
03-25 21:27:21.970 E/AndroidRuntime( 1590): FATAL EXCEPTION: main
03-25 21:27:21.970 E/AndroidRuntime( 1590): Process: App3.App3, PID: 1590
03-25 21:27:21.970 E/AndroidRuntime( 1590): java.lang.UnsatisfiedLinkError: Couldn't load monodroid from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/App3.App3-1.apk"],nativeLibraryDirectories=[/data/app-lib/App3.App3-1, /system/lib]]]: findLibrary returned null
03-25 21:27:21.970 E/AndroidRuntime( 1590): at java.lang.Runtime.loadLibrary(Runtime.java:358)
03-25 21:27:21.970 E/AndroidRuntime( 1590): at java.lang.System.loadLibrary(System.java:526)
或错误为:
03-25 21:25:31.928 W/monodroid( 1427): Trying to load sgen from: /storage/emulated/0/Android/data/App3.App3/files/.__override__/libmonosgen-2.0.so
03-25 21:25:31.928 W/monodroid( 1427): Trying to load sgen from: /data/app-lib/App3.App3-2/libmonosgen-2.0.so
03-25 21:25:31.928 W/monodroid( 1427): Trying to load sgen from: /data/data/App3.App3/files/.__override__/links/libmonosgen-2.0.so
03-25 21:25:31.928 W/monodroid-debug( 1427): Trying to initialize the debugger with options: --debugger-agent=transport=dt_socket,loglevel=0,address=127.0.0.1:8827,server=y,embedding=1
03-25 21:25:32.112 W/monodroid-debug( 1427): Accepted stdout connection: 43
03-25 21:25:32.888 D/Mono ( 1427): Image addref mscorlib[0xb8dd2010] -> mscorlib.dll[0xb8dd1350]: 1
03-25 21:25:32.892 D/Mono ( 1427): AOT module 'mscorlib.dll.so' not found: dlopen failed: library "/data/app-lib/App3.App3-2/libaot-mscorlib.dll.so" not found
03-25 21:25:32.892 D/Mono ( 1427): AOT module '/Users/builder/data/lanes/2970/46c3f7e0/source/monodroid/builds/install/mono-x86/lib/mono/aot-cache/x86/mscorlib.dll.so' not found: dlopen failed: library "/data/app-lib/App3.App3-2/libaot-mscorlib.dll.so" not found
03-25 21:25:32.892 D/Mono ( 1427): Unloading image data-0x96699010 [0xb8dd20b0].
03-25 21:25:32.912 D/Mono ( 1427): Assembly mscorlib[0xb8dd2010] added to domain RootDomain, ref_count=1
而且发生无法调试的情况,基本上是因为虚拟机镜像以及HYPER-V本身的兼容问题,也可能是WIN10的问题,建议直接使用第三方的模拟器替代VSEA模拟器即可,此处推荐2个模拟器:GENYMOTION以及天天。
基本上使用GENYMOTION和XAMARIN的兼容是最好的,目前测试,毫无压力调试。
特此记录,以防出现类似问题。
【记录】解决VS2015调试Xamarin程序一闪而过(使用微软ANDROID模拟器)的更多相关文章
- Visual Studio 开始支持编写 Android 程序并自带 Android 模拟器【转载】
原文地址 本文内容 为什么需要一个 Android 模拟器 针对 Visual Studio Android 模拟器的调试 Visual Studio Android 模拟器的传感器模拟和其他功能 A ...
- VS2015调试UWP程序时提示错误DEP0700 : Registration of the app failed. Another user has already installed
在同一台windows10电脑上调试过一个工程以后,切换了账号再次调试出现错误 DEP0700 : Registration of the app failed. Another user has a ...
- visual studio xamarin 离线安装文件以及 android 模拟器
介绍 为了使用vs开发android我也是煞费苦心,先是从网上各种搜刮文章,然后找各种各样的离线包(因为国内网络是下载不了C#/Xamain)的包的,还有各种各样的安装包,都已快接近奔溃的边缘.每次不 ...
- OD提示 "为了执行系统不支持的动作, OllyICE 在这个被调试的程序中注入了一点代码, 但是经过5秒仍未收到响应..." 解决办法
别的OD就可以,我自己整合过的一个很顺手的OD就是不行,最后找到了解决办法: 转自:http://bbs.pediy.com/showthread.PHP?t=97629 -------------- ...
- MAC 下用 Common Lisp 调试 OpenGL 程序
MAC 下用 Common Lisp 调试 OpenGL 程序 环境搭建 运行环境: OSX 10.11.3 EI Capitan Common Lisp: SBCL 使用 SBCL, 首先要安装这几 ...
- 使用未付费的账号真机调试 iOS 程序,过几天后程序一打开就会闪退
使用未付费的苹果开发者账号真机调试 iOS 程序,过几天后程序一打开就会闪退. 解决办法: 删除 Provisioning Profile,重新配置一次. 终极解决办法:花钱购买苹果开发者账号. ...
- VS2010 win7 QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序
下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip, 不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0 ...
- 使用 GDB 调试多进程程序
使用 GDB 调试多进程程序 GDB 是 linux 系统上常用的调试工具,本文介绍了使用 GDB 调试多进程程序的几种方法,并对各种方法进行比较. 3 评论 田 强 (tianq@cn.ibm.co ...
- 使用gdb调试多线程程序总结
转:使用gdb调试多线程程序总结 一直对GDB多线程调试接触不多,最近因为工作有了一些接触,简单作点记录吧. 先介绍一下GDB多线程调试的基本命令. info threads 显示当前可调试的所有线程 ...
随机推荐
- Java基础学习笔记(四)
21.构造方法(续):分类: 隐式构造方法:如果在一个类中,没有手动编写构造方法,则系统会提供一个默认的无参的构造方法 显式构造方法:如果在一个类中,手动编写构造方法,则系统不会提供默认的无参的构造方 ...
- jxls2 java.lang.NegativeArraySizeException
某个单元格使用jx:each报这个错误. 内部代码,创建一个二维数组时,传了一个负值进去 解决办法 将这个单元格删除,重新编写批注
- BP神经网络学习
人工神经元模型 S型函数(Sigmoid) 双极S型函数 神经网络可以分为哪些? 按照连接方式,可以分为:前向神经网络 vs. 反馈(递归)神经网络 按照学习方式,可以分为:有导师学习神经网络 ...
- ceph 维护之 osd节点添加
一.目标 添加一台新osd 节点,主机名ceph6 到 ceph 集群.public IP:10.6.32.25 cluster_network :10.6.33.25 二.基础环境配置 1 ...
- Django项目之客户
关于客户的操作 主页(被继承) {% load static %} <!DOCTYPE html> <html lang="en"> <head> ...
- 二次注入的学习--Buy Flag(http://10.112.68.215:10002)
这次有做一个二次注入的天枢CTF题目,算是完整地理解了一遍注入的知识.来,启航. 1.判断注入点 经过对题目的实践分析,知道注册时需要输入年龄大于18岁,但在登录后界面,年龄因为太大不能接 ...
- PHP调用外部程序的方法
很多情况下需要php调用其他程序如shell命令.shell脚本.可执行程序等等,此时需要使用到诸如exec/system/popen/proc_open等函数,每种函数有各自适合使用的场景以及需要注 ...
- MySQL的四种不同查询的分析
1.前置条件: 本次是基于小数据量,且数据块在一个页中的最理想情况进行分析,可能无具体的实际意义,但是可以借鉴到各种复杂条件下,因为原理是相同的,知小见大,见微知著! 打开语句分析并确认是否已经打开 ...
- Intellij创建简单Springboot项目
Intellij创建简单Springboot项目 第一步:选择创建新项目——file-new-project 第二步:选择项目类型——Spring Initializr-next 第三步:输入项目信息 ...
- SpringBoot08 请求方式、参数获取注解、参数验证、前后台属性名不一致问题、自定义参数验证注解、BeanUtils的使用
1 请求方式 在定义一个Rest接口时通常会利用GET.POST.PUT.DELETE来实现数据的增删改查:这几种方式有的需要传递参数,后台开发人员必须对接收到的参数进行参数验证来确保程序的健壮性 1 ...