• Xamarin.IOS/Mac开发中遇到的问题


    虚拟机中安装的mac系统无法识别iphone

    今天在 Xamarin.iOS 应用的免费预配 时,进行到 5、插入要在其中部署应用的 iOS 设备。 在第8选择iphone设备时,发现iphone并没有连接上mac虚拟机。

    于是在其他mac上尝试连接了是可以的,然后怀疑是自己mac哪里的设置问题。

    1、首先看下相关的服务有没有开启

    鼠标右键“计算机”->“管理”-“服务和应用程序”->“服务”,找到“VMware USB Arbitration Service”,开启服务。(可以设置为自动启动,以免以后每次开机都要手动开启)

    开启后,PC要重启才能生效。

    Windows VMWare 安装Mac OS X虚拟机后,连接iPhone真机不显示的问题_IOS

    2、看下虚拟机的设置是否正确

    要对虚拟机设置:usb控制器,将usb兼容从USB3.0 调到USB2.0。点击确定。

    注意:更改设置时系统应该是关机状态,否则更改无效

    这是因为你的设备USB接口可能是2.0的

     然后重启,重连ok。

    苹果手机应用显示不受信任的开发者时,要怎么办

    ios部署失败:
    error MT1007: Failed to launch the application '/Users/huymac/Library/Caches/Xamarin/mtbs/builds/FromPractice.iOS/d3c1b1491d287d04e44e10dc7e8e7f9b/bin/iPhone/Debug/FromPractice.iOS.app' on the device '????????? iPhone':
    Failed to launch the application 'huy.com.FormPractice' on the device '????????? iPhone': Application failed to launch: ESecurity. You can still launch the application manually by tapping on it. 

    这种情况一般是 开发者不受信任导致。

    解决:手机-》设置-》通用-》设备管理-》

    参考

    查看安装的Xamarin.iOS版本

    编译时报错:Xamarin.iOS 12.14.0 does not support a deployment target of 12.4 for iOS (the maximum is 12.2). Please select an older deployment target in your project's Info.plist or upgrade to a newer version of Xamarin.iOS. AwesomeApp.iOS

     

    安装的版本 相对于需要运行的iphone手机的版本太低了。

    解决方法:在 Info.plist 中修改 部署目标,为12.2

    Xcode中的iOS模拟器(iOS Simulator)

    安装了最新版的Xcode10.3,后来发现只有ios 12.4版本的模拟器,而在win10上vs开发装的是Xamarin.ios12.14,最大支持12.2版本的,无法调试,于是想办法在mac上安装低版本的ios模拟器。

    打开XCode->Preferences->Components

     

    如何修改mac虚拟机硬盘大小

    参考:如何修改mac虚拟机硬盘大小

    Mac上用户->xxx目录下没有“资源库”目录

     

    对huymac邮件,选择查看显示选项,勾选“”资源库”文件夹

    win10系统VMware Workstation与Device/Credential Guard不兼容

    解决VM 与 Device/Credential Guard 不兼容。在禁用 Device/Credential Guard 后,可以运行 VM 的方法

    或者

    参考

    步骤都设置好后,重新启动计算机。

    查看Mac上安装的mono版本

    启动VS for Mac,打开上面工具栏,工具-》自定义工具。

    【也可以在文件夹下去看:访达->前往->电脑->xxMac->资源库->Framework】

    在win10上用vs开发ios时,需要和mac配对,检测到mono版本不符合时:

    mac上安装的mono版本可能与此版本的visual studio不兼容

    可以在mac上 再去下载和安装一个新版本的mono,而不要替换,https://www.mono-project.com/download/stable/#download-mac

    建议:不要随意去更新vs的版本。

    此外,Xamarin.ios版本和Xcode也会不兼容:

    Mac上后安装Android

    Mac上初始安装VS for Mac时没有安装Android,后来想安装了怎么解?

    在VS for Mac工具中找了半天没有发现入口,后来试了下 VS for Mac安装文件,ok。

    开发:UIKit Consistency error: you are calling a UIKit method that can only be invoked from the UI thread

    UIKit一致性错误:您正在调用只能从UI线程调用的UIKit方法

    应该是需要在主线程(UI线程)上操作的代码,被你放在后台线程上执行了。

    一般是跟界面相关的。或者绑定界面的可绑定属性等,断点执行下看是那些代码。

    未能停止应用: An error occurred on client IDB1630274 while executing a reply for topic xvs/idb/16.3.0.274/stop-app

    问题:app打开时,按Home键退出,然后再点app进入,本应该直接回到app的,可是出现app需要重新登录的现象。调试发现按Home时,输出里显示如标题的错误,网上根本没有解决方法。

    排查推测可能是退出时需要执行的什么操作报错,由于时团队项目,问同事是否退出时是否有什么操作,他才想起来原来是他某个文件没有提交(涉及到退出的操作)。

    提交文件,重新调试,ok!

    AMDeviceSecureInstallApplicationBundle returned: 0xe8008021.

    部署应用到app的时候报错

    方法:将设备中的app删除,然后重新运行

    调试时文件未找到,或者冲突

     尝试删除项目中的'Resources/LaunchScreen.storyboard' 但是没有起作用。

    解决方法:直接找到csproj项目文件去编辑(删除对应的文件)

  • 相关阅读:
    HDU 2717 Catch That Cow
    补题列表
    Codeforces 862C 异或!
    HDU 2084
    HDU 2037
    Codeforces 492B
    POJ 2262
    Codeforces 1037A
    HDU 1276
    itertools — Functions creating iterators for efficient looping
  • 原文地址:https://www.cnblogs.com/peterYong/p/11528257.html
Copyright © 2020-2023  润新知