首页 > 解决方案 > 为什么我无法将 xamarin.ios 应用部署到我的设备?

问题描述

我正在开发一个 iOS 应用程序(使用在 macOS X 上的 Parallels 上运行的 Windows 10 上的 Visual Studio),并且我已经设置了一个用于Ad-hoc部署的配置。不知何故,我无法将应用程序部署到我的 iOS 设备:部署菜单项根本不存在。

正如来自不同网站的不同答案所建议的那样,解决方案通常包括检查配置管理器中的部署选项。但是,我面临以下对话框:

配置管理器

部署选项被禁用。

如下图,可以看到我的 Visual Studio 实例已经成功连接到 iOS 代理,并且我的手机是可见的:

设置

Ad-hoc从 iOScsproj文件中查看了配置部分,但没有看到任何明显可以启用该选项的内容:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Ad-Hoc|iPhone' ">
    <DebugType>none</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\iPhone\Ad-Hoc</OutputPath>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <ConsolePause>False</ConsolePause>
    <MtouchArch>ARM64</MtouchArch>
    <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
    <BuildIpa>false</BuildIpa>
    <CodesignProvision>Demo (Ad-hoc)</CodesignProvision>
    <CodesignKey>iPhone Distribution: Christophe --- (X---)</CodesignKey>
    <MtouchExtraArgs>-v -v -v -v --linkskip=Microsoft.EntityFrameworkCore
        --linkskip=Microsoft.EntityFrameworkCore.Relational --linkskip=Microsoft.EntityFrameworkCore.Sqlite
        --linkskip=Remotion.Linq --linkskip=Microsoft.Data.Sqlite.Core
        --linkskip=Microsoft.EntityFrameworkCore.Sqlite.Core
        --linkskip=Microsoft.Extensions.DependencyInjection.Abstractions
        --linkskip=Microsoft.Extensions.DependencyInjection --linkskip=Microsoft.Extensions.Logging.Abstractions
        --linkskip=Microsoft.Extensions.Logging --linkskip=Microsoft.Extensions.Caching.Abstractions
        --linkskip=Microsoft.Extensions.Caching.Memory --linkskip=Microsoft.Extensions.Options
        --linkskip=Microsoft.Extensions.Primitives --linkskip=System.Reflection --linkskip=System.Reflection.Primitives
        --linkskip=System.Linq --linkskip=System.Linq.Expressions --linkskip=System.Linq.Queryable</MtouchExtraArgs>
</PropertyGroup>

问题

为什么 Deploy 选项被禁用,是否可以启用它?

标签: c#visual-studioxamarin.ioscsproj

解决方案


请检查配置管理器中禁用的部署复选框

从 Xamarin 3.5 开始,只要您按下“开始”工具栏按钮或选择“调试”>“开始调试”菜单项,就会自动部署 Xamarin.iOS 项目。在运行这些命令中的任何一个之前,您仍需要将所需的 Xamarin.iOS 应用项目设置为启动项目。


推荐阅读