Xamarin.forms: [Bug] Suspensão do UIWebView Apple, abril de 2020

Criado em 3 mar. 2020  ·  92Comentários  ·  Fonte: xamarin/Xamarin.Forms

Antes de comentar sobre este assunto, leia os seguintes links de comentário e documentação

https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -625946175

E consulte os seguintes links de documentação oficial

https://devblogs.microsoft.com/xamarin/uiwebview-deprecation-xamarin-forms/

https://docs.microsoft.com/en-us/xamarin/ios/release-notes/13/13.16#help -with-uiwebview-deprecation

Descrição do problema original

Eu instalei o 4.5.0.356 do xamarin e usei o testflight para lançar meu aplicativo no iOS. Eu tenho o xamarin form 4.5 e implementei o link de tudo na documentação
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/webview?tabs=windows#uiwebview -deprecation-and-app-store-rejection-itms-90809

https://docs.microsoft.com/en-us/xamarin/xamarin-forms/release-notes/4.5/4.5.0

Ainda recebo a mensagem da apple:
"Caro desenvolvedor,

Identificamos um ou mais problemas com uma entrega recente de seu aplicativo, "XXXXXXXX" 3 (46). Sua entrega foi bem-sucedida, mas você pode querer corrigir os seguintes problemas em sua próxima entrega:

ITMS-90809: Uso de API obsoleto - a Apple deixará de aceitar envios de aplicativos que usam APIs UIWebView a partir de abril de 2020 Consulte https://developer.apple.com/documentation/uikit/uiwebview para obter mais informações.

Depois de corrigir os problemas, você pode fazer upload de um novo binário para o App Store Connect.

Cumprimentos,

A equipe da App Store "

Alguém pode me ajudar a resolver esse problema?

Aqui está meu csproj

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">iPhoneSimulator</Platform>
    <ProductVersion>8.0.30703</ProductVersion>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{XXXXXXXXXXXXXXXXXXXXXXXXXXXXX}</ProjectGuid>
    <ProjectTypeGuids>{XXXXXXXXXXXXXXXXXX};{XXXXXXXXXXXXXXXXXXXXX}</ProjectTypeGuids>
    <TemplateGuid>{XXXXXXXXXXXXXXXXXXXXXXXXXXXX}</TemplateGuid>
    <OutputType>Exe</OutputType>
    <RootNamespace>Agenda.iOS</RootNamespace>
    <IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
    <AssemblyName>Agenda.iOS</AssemblyName>
    <MtouchEnableSGenConc>true</MtouchEnableSGenConc>
    <MtouchHttpClientHandler>NSUrlSessionHandler</MtouchHttpClientHandler>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\iPhoneSimulator\Debug</OutputPath>
    <DefineConstants>DEBUG</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <MtouchArch>x86_64</MtouchArch>
    <MtouchLink>None</MtouchLink>
    <MtouchDebug>true</MtouchDebug>
    <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
    <DebugType>none</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\iPhoneSimulator\Release</OutputPath>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <MtouchLink>Full</MtouchLink>
    <MtouchArch>x86_64</MtouchArch>
    <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\iPhone\Debug</OutputPath>
    <DefineConstants>DEBUG</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <MtouchArch>ARM64</MtouchArch>
    <CodesignKey>iPhone Developer</CodesignKey>
    <MtouchDebug>true</MtouchDebug>
    <CodesignEntitlements>
    </CodesignEntitlements>
    <CodesignProvision>
    </CodesignProvision>
    <IOSDebugOverWiFi>true</IOSDebugOverWiFi>
    <CodesignExtraArgs />
    <CodesignResourceRules />
    <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
    <DebugType>none</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\iPhone\Release</OutputPath>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <MtouchArch>ARM64</MtouchArch>
    <CodesignKey>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</CodesignKey>
    <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
    <CodesignProvision>Agenda Distribution</CodesignProvision>
    <BuildIpa>true</BuildIpa>
    <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(RunConfiguration)' == 'Default' ">
    <AppExtensionDebugBundleId />
  </PropertyGroup>
  <ItemGroup>
    <Compile Include="Main.cs" />
    <Compile Include="AppDelegate.cs" />
    <None Include="Entitlements.plist" />
    <BundleResource Include="GoogleService-Info.plist" />
    <None Include="Info.plist" />
    <Compile Include="Properties\AssemblyInfo.cs" />
  </ItemGroup>
  <ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Xml" />
    <Reference Include="System.Core" />
    <Reference Include="Xamarin.iOS" />
    <Reference Include="System.Numerics" />
    <Reference Include="System.Numerics.Vectors" />
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json">
      <Version>12.0.3</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.Firebase.iOS.CloudMessaging">
      <Version>3.1.2</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.Forms" Version="4.5.0.356" />
    <PackageReference Include="Xamarin.Essentials" Version="1.5.0" />
    <PackageReference Include="Xamarin.Forms.Visual.Material">
      <Version>4.5.0.356</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.IQKeyboardManager">
      <Version>1.4.1</Version>
    </PackageReference>
  </ItemGroup>
  <Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
  <ItemGroup>
    <ProjectReference Include="..\Agenda\Agenda.csproj">
      <Project>{XXXXXXXXXXXXXXXXXXXXXXXXX}</Project>
      <Name>Agenda</Name>
    </ProjectReference>
  </ItemGroup>
  <ProjectExtensions>
    <VisualStudio>
      <UserProperties XamarinHotReloadWrongLinkerErrorInfoBarAgendaiOSHideInfoBar="True" />
    </VisualStudio>
  </ProjectExtensions>
</Project>
needs-info ❓ unverified bug

Comentários muito úteis

Ok, eu consertei. Este foi o meu procedimento.

Construa no visual studio no win10 com um mac-mini online conectado via rede. As etapas foram estas:

  • "dança bin / obj"
  • Desinstale o Xamarin.Visual.Material.Design do projeto
  • "dança bin / obj"
  • Instale o Xamarin.iOS.MaterialComponents instável versão 92.0.0-rc2
  • Instale o Xamarin.Visual.Material.Design 4.5.0.356

O único problema era aquele componente. As mensagens na nuvem do Firebase não eram o problema. Obrigado pela ajuda.

Todos 92 comentários

@EdoardoCinelli Você tem o comportamento do vinculador definido como "SDK Only" ou "Link All" para a configuração do Release | iPhone?

Eu também segui o link e ainda estou recebendo essa mensagem. abaixo está também o cs.proj para meu aplicativo, se isso vai ajudar em alguma coisa. O linker está configurado para ser apenas o SDK do framework de link e eu adicionei "--optimize = experimental-xforms-product-type" aos argumentos do mtouch.

<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">iPhoneSimulator</Platform> <ProductVersion>8.0.30703</ProductVersion> <SchemaVersion>2.0</SchemaVersion> <ProjectGuid>{7FE56767-FBA2-4515-AD06-03F538621686}</ProjectGuid> <ProjectTypeGuids>{FEACFBD2-3405-455C-9665-78FE426C6842};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> <OutputType>Exe</OutputType> <RootNamespace>VisitPikeville2.iOS</RootNamespace> <IPhoneResourcePrefix>Resources</IPhoneResourcePrefix> <AssemblyName>VisitPikeville2.iOS</AssemblyName> <NuGetPackageImportStamp> </NuGetPackageImportStamp> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' "> <DebugSymbols>true</DebugSymbols> <DebugType>full</DebugType> <Optimize>false</Optimize> <OutputPath>bin\iPhoneSimulator\Debug</OutputPath> <DefineConstants>DEBUG</DefineConstants> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <ConsolePause>false</ConsolePause> <MtouchArch>i386, x86_64</MtouchArch> <MtouchLink>None</MtouchLink> <MtouchDebug>true</MtouchDebug> <CodesignProvision>Visit Pikeville City App Development</CodesignProvision> <CodesignKey>iPhone Developer: Michael harrison (R52P7U9CKM)</CodesignKey> <LangVersion>default</LangVersion> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' "> <DebugType>none</DebugType> <Optimize>true</Optimize> <OutputPath>bin\iPhoneSimulator\Release</OutputPath> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <MtouchLink>SdkOnly</MtouchLink> <MtouchArch>i386, x86_64</MtouchArch> <ConsolePause>false</ConsolePause> <CodesignProvision>Visit Pikeville City App</CodesignProvision> <CodesignKey>iPhone Distribution: Bit Source, LLC (75D68EY2Q2)</CodesignKey> <LangVersion>default</LangVersion> <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' "> <DebugSymbols>true</DebugSymbols> <DebugType>full</DebugType> <Optimize>false</Optimize> <OutputPath>bin\iPhone\Debug</OutputPath> <DefineConstants>DEBUG</DefineConstants> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <ConsolePause>false</ConsolePause> <MtouchArch>ARM64</MtouchArch> <CodesignKey>iPhone Developer: Michael harrison (R52P7U9CKM)</CodesignKey> <MtouchDebug>true</MtouchDebug> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements> <CodesignProvision>Visit Pikeville City App Development</CodesignProvision> <MtouchLink>None</MtouchLink> <DeviceSpecificBuild>false</DeviceSpecificBuild> <LangVersion>default</LangVersion> <MtouchInterpreter>-all</MtouchInterpreter> <IntermediateOutputPath></IntermediateOutputPath> <MtouchVerbosity></MtouchVerbosity> <IOSDebuggerPort></IOSDebuggerPort> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' "> <DebugType>none</DebugType> <Optimize>true</Optimize> <OutputPath>bin\iPhone\Release</OutputPath> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <MtouchArch>ARM64</MtouchArch> <ConsolePause>false</ConsolePause> <CodesignKey>iPhone Distribution: Bit Source, LLC (75D68EY2Q2)</CodesignKey> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements> <CodesignProvision>Visit Pikeville City App</CodesignProvision> <MtouchLink>SdkOnly</MtouchLink> <LangVersion>default</LangVersion> <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs> <DeviceSpecificBuild>true</DeviceSpecificBuild> <MtouchEnableSGenConc>true</MtouchEnableSGenConc> </PropertyGroup> <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> <BuildIpa>True</BuildIpa> <CodesignProvision>VS: WildCard Development</CodesignProvision> <CodesignKey>iPhone Developer: Michael harrison (R52P7U9CKM)</CodesignKey> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements> <LangVersion>default</LangVersion> <MtouchLink></MtouchLink> <AllowUnsafeBlocks>false</AllowUnsafeBlocks> <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'AppStore|iPhone' "> <DebugType>none</DebugType> <Optimize>True</Optimize> <OutputPath>bin\iPhone\AppStore</OutputPath> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <ConsolePause>False</ConsolePause> <MtouchArch>ARM64</MtouchArch> <CodesignProvision>Visit Pikeville City App</CodesignProvision> <CodesignKey>iPhone Distribution: Bit Source, LLC (75D68EY2Q2)</CodesignKey> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements> <LangVersion>default</LangVersion> <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs> </PropertyGroup> <ItemGroup> <Compile Include="Main.cs" /> <Compile Include="AppDelegate.cs" /> <None Include="Entitlements.plist" /> <None Include="Info.plist" /> <Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Services\IosThemeChecker.cs" /> </ItemGroup> <ItemGroup> <ImageAsset Include="Assets.xcassets\Contents.json"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Contents.json"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected]"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected]"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected]"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected]"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected]"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected]"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected]"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\[email protected]"> <Visible>false</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\40.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\60 x 60.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\58.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\87.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\80.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\120.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\120-1.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\180 x 180.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\1024.png" /> <ImageAsset Include="Assets.xcassets\home.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\MapIcon.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\MapIcon.imageset\MapIcon%403x.png" /> <ImageAsset Include="Assets.xcassets\MapIcon.imageset\MapIcon%402x.png" /> <ImageAsset Include="Assets.xcassets\MapIcon.imageset\MapIcon.png" /> <ImageAsset Include="Assets.xcassets\wifi.imageset\wifi%403x.png" /> <ImageAsset Include="Assets.xcassets\wifi.imageset\wifi%402x.png" /> <ImageAsset Include="Assets.xcassets\wifi.imageset\wifi.png" /> <ImageAsset Include="Assets.xcassets\wifi.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\contactCall.imageset\contactCall%403x.png" /> <ImageAsset Include="Assets.xcassets\contactCall.imageset\contactCall%402x.png" /> <ImageAsset Include="Assets.xcassets\contactCall.imageset\contactCall.png" /> <ImageAsset Include="Assets.xcassets\contactCall.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\contactEmail.imageset\contactEmail%403x.png" /> <ImageAsset Include="Assets.xcassets\contactEmail.imageset\contactEmail%402x.png" /> <ImageAsset Include="Assets.xcassets\contactEmail.imageset\contactEmail.png" /> <ImageAsset Include="Assets.xcassets\contactEmail.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\Gradient.imageset\Gradient%403x.png" /> <ImageAsset Include="Assets.xcassets\Gradient.imageset\Gradient%402x.png" /> <ImageAsset Include="Assets.xcassets\Gradient.imageset\Gradient.png" /> <ImageAsset Include="Assets.xcassets\Gradient.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\contact.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\home.imageset\whitehome30.png" /> <ImageAsset Include="Assets.xcassets\home.imageset\whitehome60.png" /> <ImageAsset Include="Assets.xcassets\home.imageset\whitehome90.png" /> <ImageAsset Include="Assets.xcassets\contact.imageset\whitephone30-1.png" /> <ImageAsset Include="Assets.xcassets\contact.imageset\whitephone60-1.png" /> <ImageAsset Include="Assets.xcassets\contact.imageset\whitephone90-1.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\1125 X 2436.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\1242 X 2688.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\1792 X 828.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\1920 X 1080 PX.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\1920 X 1080 PX%402x.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\2436 X 1125.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\2688 X 1242.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\320 X 480 PX.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\320 X 480 PX%402x.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\640 X 1136 PX.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\640 X 1136 PX-1.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\640 X 960 PX.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\828 X 1792.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\Contents.json" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\Default-Portrait.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\Default-Portrait%402x.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPhone 8, 9 - 1242 X 2208.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPhone 8,9 7- 750 X 1334.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPhone Landscape 2208 X 1242.png" /> <ImageAsset Include="Assets.xcassets\PoiUrl.imageset\PoiUrl%403x.png" /> <ImageAsset Include="Assets.xcassets\PoiUrl.imageset\PoiUrl%402x.png" /> <ImageAsset Include="Assets.xcassets\PoiUrl.imageset\PoiUrl.png" /> <ImageAsset Include="Assets.xcassets\PoiUrl.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-20x20%401x.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-20x20%402x.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-29x29%401x.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-29x29%402x.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-20x20%402x-1.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-40x40%402x.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-76x76%401x.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-76x76%402x.png" /> <ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Icon-83.5%402x.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\12.9” iPad Pro 2048 X 2732.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPad 768x1024.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPad 768x1024%402x.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPad 1024x768.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPad 1024x768%402x.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\768 X 1004.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\768 X 1004%402x.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPad 768x1024-1.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPad 768x1024%402x-1.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\1024 X 748.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\1024 X 748%402x.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPad 1024x768-1.png" /> <ImageAsset Include="Assets.xcassets\UpdatedLaunchImage.launchimage\iPad 1024x768%402x-1.png" /> <ImageAsset Include="Assets.xcassets\loadUp.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AnnoucementHorn.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\Holiday.imageset\Holiday%403x.png" /> <ImageAsset Include="Assets.xcassets\Holiday.imageset\Holiday%402x.png" /> <ImageAsset Include="Assets.xcassets\Holiday.imageset\Holiday.png" /> <ImageAsset Include="Assets.xcassets\Holiday.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\Attention.imageset\Attention%403x.png" /> <ImageAsset Include="Assets.xcassets\Attention.imageset\Attention%402x.png" /> <ImageAsset Include="Assets.xcassets\Attention.imageset\Attention.png" /> <ImageAsset Include="Assets.xcassets\Attention.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\Weather.imageset\Weather%403x.png" /> <ImageAsset Include="Assets.xcassets\Weather.imageset\Weather%402x.png" /> <ImageAsset Include="Assets.xcassets\Weather.imageset\Weather.png" /> <ImageAsset Include="Assets.xcassets\Weather.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AnnoucementHorn.imageset\Vector.png" /> <ImageAsset Include="Assets.xcassets\AnnoucementHorn.imageset\Vector %281%29.png" /> <ImageAsset Include="Assets.xcassets\AnnoucementHorn.imageset\Vector %282%29.png" /> <ImageAsset Include="Assets.xcassets\ConstructionImage.imageset\ConstructionImage%403x.png" /> <ImageAsset Include="Assets.xcassets\ConstructionImage.imageset\ConstructionImage%402x.png" /> <ImageAsset Include="Assets.xcassets\ConstructionImage.imageset\ConstructionImage.png" /> <ImageAsset Include="Assets.xcassets\ConstructionImage.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\FeedIcon.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\AddPostBtn.imageset\AddPostBtn%403x.png" /> <ImageAsset Include="Assets.xcassets\AddPostBtn.imageset\AddPostBtn%402x.png" /> <ImageAsset Include="Assets.xcassets\AddPostBtn.imageset\AddPostBtn.png" /> <ImageAsset Include="Assets.xcassets\AddPostBtn.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\FeedIcon.imageset\feed30.png" /> <ImageAsset Include="Assets.xcassets\FeedIcon.imageset\feed60.png" /> <ImageAsset Include="Assets.xcassets\FeedIcon.imageset\feed90.png" /> <ImageAsset Include="Assets.xcassets\UploadImage.imageset\UploadImage%403x.png" /> <ImageAsset Include="Assets.xcassets\UploadImage.imageset\UploadImage%402x.png" /> <ImageAsset Include="Assets.xcassets\UploadImage.imageset\UploadImage.png" /> <ImageAsset Include="Assets.xcassets\UploadImage.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\DeleteImage.imageset\DeleteImage%403x.png" /> <ImageAsset Include="Assets.xcassets\DeleteImage.imageset\DeleteImage%402x.png" /> <ImageAsset Include="Assets.xcassets\DeleteImage.imageset\DeleteImage.png" /> <ImageAsset Include="Assets.xcassets\DeleteImage.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\CloseImg.imageset\CloseImg%403x.png" /> <ImageAsset Include="Assets.xcassets\CloseImg.imageset\CloseImg%402x.png" /> <ImageAsset Include="Assets.xcassets\CloseImg.imageset\CloseImg.png" /> <ImageAsset Include="Assets.xcassets\CloseImg.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> <ImageAsset Include="Assets.xcassets\PublishImg.imageset\PublishImg%403x.png" /> <ImageAsset Include="Assets.xcassets\PublishImg.imageset\PublishImg%402x.png" /> <ImageAsset Include="Assets.xcassets\PublishImg.imageset\PublishImg.png" /> <ImageAsset Include="Assets.xcassets\PublishImg.imageset\Contents.json"> <Visible>False</Visible> </ImageAsset> </ItemGroup> <ItemGroup> <BundleResource Include="Resources\Logo.png" /> <BundleResource Include="Resources\share.png" /> <BundleResource Include="Resources\share%402x.png" /> <BundleResource Include="Resources\tickets%403x.png" /> <BundleResource Include="Resources\tickets%402x.png" /> <BundleResource Include="Resources\tickets.png" /> <BundleResource Include="GoogleService-Info.plist" /> <InterfaceDefinition Include="LaunchScreen.storyboard" /> </ItemGroup> <ItemGroup> <Reference Include="System" /> <Reference Include="System.Xml" /> <Reference Include="System.Core" /> <Reference Include="Xamarin.iOS" /> </ItemGroup> <ItemGroup> <PackageReference Include="Xamarin.Forms" Version="4.5.0.356" /> <PackageReference Include="Prism.DryIoc.Forms" Version="7.2.0.1422" /> <PackageReference Include="Xamarin.Essentials"> <Version>1.5.0</Version> </PackageReference> <PackageReference Include="Newtonsoft.Json"> <Version>12.0.3</Version> </PackageReference> <PackageReference Include="Xamarin.Forms.Visual.Material"> <Version>4.5.0.356</Version> </PackageReference> <PackageReference Include="Xamarin.Forms.PancakeView"> <Version>1.3.7</Version> </PackageReference> <PackageReference Include="Xamarin.Forms.GoogleMaps"> <Version>3.3.0</Version> </PackageReference> <PackageReference Include="Xamarin.FFImageLoading.Forms"> <Version>2.4.11.982</Version> </PackageReference> <PackageReference Include="Plugin.FirebasePushNotification"> <Version>2.3.6</Version> </PackageReference> <PackageReference Include="Xamarin.Plugin.Calendar"> <Version>1.0.3.200</Version> </PackageReference> <PackageReference Include="Microsoft.AppCenter.Crashes"> <Version>3.0.0</Version> </PackageReference> <PackageReference Include="Xamarin.Essentials.Interfaces"> <Version>1.5.0</Version> </PackageReference> <PackageReference Include="Xam.Plugin.Media"> <Version>4.0.1.5</Version> </PackageReference> <PackageReference Include="Plugin.Permissions"> <Version>3.0.0.12</Version> </PackageReference> </ItemGroup> <ItemGroup> <ProjectReference Include="..\VisitPikeville2\VisitPikeville2.csproj"> <Project>{7419ED46-B3A3-4BE1-8AC9-60582F43BB63}</Project> <Name>VisitPikeville2</Name> </ProjectReference> </ItemGroup> <ItemGroup> <ITunesArtwork Include="iTunesArtwork%402x" /> <ITunesArtwork Include="iTunesArtwork" /> </ItemGroup> <ItemGroup> <Folder Include="Assets.xcassets\UpdatedLaunchImage.launchimage\" /> <Folder Include="Services\" /> </ItemGroup> <Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" /> </Project>

@mharrisonbit Acho que o mesmo que @hartez mencionou se aplica a você.

No bit <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' "> , adicione esta tag: <MtouchLink>Full</MtouchLink> . Você também pode fazer isso a partir da IU acessando as propriedades do projeto iOS, vá para a folha iOS Build e certifique-se de que o comportamento do Linker esteja definido como Link All ou SDK Only , veja abaixo.

image

Claro, certifique-se de fazer isso para a configuração de compilação correta, use as caixas de combinação no topo da tela para isso

Eu tentei ambos, mas ainda estou recebendo a correspondência da apple.
Como posso consertar?

Um deles pode conter uma referência ao uiwebview?

 <PackageReference Include="Newtonsoft.Json">
      <Version>12.0.3</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.Firebase.iOS.CloudMessaging">
      <Version>3.1.2</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.Forms" Version="4.5.0.356" />
    <PackageReference Include="Xamarin.Essentials" Version="1.5.0" />
    <PackageReference Include="Xamarin.Forms.Visual.Material">
      <Version>4.5.0.356</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.IQKeyboardManager">
      <Version>1.4.1</Version>
    </PackageReference>

@EdoardoCinelli , parece que o Firebase está fazendo referência a UIWebView e eles estão trabalhando nisso: https://github.com/xamarin/GoogleApisForiOSComponents/issues/369

@mharrisonbit apenas para atualizar os outros; nós conversamos um pouco offline, você parece ter todas as versões e configurações corretas, mas ainda não funciona. Você também já me enviou uma lista de NuGets, poderia adicioná-la aqui? Podemos ver se há algo lá que possa causar problemas.

Oi!

Eu tenho o mesmo problema. Conversamos um pouco por e-mail com @jfversluis , e agora vou continuar aqui.

Aqui está minha lista de NuGets, se isso ajudar:

AsyncAwaitBestPractices Version 4.1.0
AutoMapper Version 9.0.0
JetBrains.Annotations Version 2019.1.3
Microsoft.Identity.Client Version 4.8.2
Mobile.BuildTools Version 1.4.0.638
NLog.Targets.AppCenter Version 1.1.0
PCLCrypto Version 2.0.147
Plugin.BackgroundService Version 2.1.2340
Plugin.Permissions Version 5.0.0-beta
Plugin.PushNotification Version 3.1.1
Portable.BouncyCastle Version 1.8.6
Prism.Plugin.Popups Version 7.2.0.759
ReactiveUI Version 11.2.1
ReactiveUI.Fody Version 11.2.1
ReactiveUI.XamForms Version 11.2.1
Rg.Plugins.Popup Version 1.2.0.223
Xam.Plugin.Geolocator Version 4.6.2-beta
Xam.Plugin.Media Version 4.4.10-beta
Xam.Plugin.SimpleAudioPlayer Version 1.4.0
Xamarin.Azure.NotificationHubs.iOS Version 2.0.4
Xamarin.Essentials Version 1.5.0
Xamarin.FFImageLoading Version 2.4.11.982
Xamarin.FFImageLoading.Forms Version 2.4.11.982
Xamarin.FFImageLoading.Svg.Forms Version 2.4.11.982
Xamarin.FFImageLoading.Transformations Version 2.4.11.982
Xamarin.Forms Version 4.5.0.356
Prism.Unity.Forms Version 7.2.0.1422
Xamarin.Forms.Visual.Material Version 4.5.0.356
Microsoft.AppCenter.Crashes Version 3.0.0
Microsoft.AppCenter.Analytics Version 3.0.0
Microsoft.AppCenter Version 3.0.0
ZXing.Net.Mobile Version 2.4.1
ZXing.Net.Mobile.Forms Version 2.4.1
NLog Version 4.6.8

Estou usando o AppCenter para criar e publicar no testflight. Eu não escrevi isso antes. Removi todas as referências do firebase do código e do NuGet e ainda estou recebendo o e-mail. O AppCenter é o problema?

@EdoardoCinelli você poderia verificar sua configuração de compilação no App Center?

image

Certifique-se de ter selecionado a versão Xamarin.iOS 13.10 para construir seu aplicativo

setting1
setting2
Esta é a minha configuração

@jfversluis aqui estão os nugets que estou usando no projeto iOS, espero que isso ajude a descobrir algo. Mais uma vez obrigado a todos pela ajuda. Além disso, tudo isso está sendo arquivado no meu local e depois enviado para as lojas de jogos.
<ItemGroup> <PackageReference Include="Xamarin.Forms" Version="4.5.0.356" /> <PackageReference Include="Prism.DryIoc.Forms" Version="7.2.0.1422" /> <PackageReference Include="Xamarin.Essentials"> <Version>1.5.0</Version> </PackageReference> <PackageReference Include="Newtonsoft.Json"> <Version>12.0.3</Version> </PackageReference> <PackageReference Include="Xamarin.Forms.Visual.Material"> <Version>4.5.0.356</Version> </PackageReference> <PackageReference Include="Xamarin.Forms.PancakeView"> <Version>1.3.7</Version> </PackageReference> <PackageReference Include="Xamarin.Forms.GoogleMaps"> <Version>3.3.0</Version> </PackageReference> <PackageReference Include="Xamarin.FFImageLoading.Forms"> <Version>2.4.11.982</Version> </PackageReference> <PackageReference Include="Plugin.FirebasePushNotification"> <Version>2.3.6</Version> </PackageReference> <PackageReference Include="Xamarin.Plugin.Calendar"> <Version>1.0.3.200</Version> </PackageReference> <PackageReference Include="Microsoft.AppCenter.Crashes"> <Version>3.0.0</Version> </PackageReference> <PackageReference Include="Xamarin.Essentials.Interfaces"> <Version>1.5.0</Version> </PackageReference> <PackageReference Include="Xam.Plugin.Media"> <Version>4.0.1.5</Version> </PackageReference> </ItemGroup>

@jfversluis aqui estão os NuGets que estamos usando:

<PackageReference Include="DLToolkit.Forms.Controls.ImageCropView" Version="1.0.7" />
<PackageReference Include="Microsoft.Identity.Client" Version="4.8.2" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
<PackageReference Include="Plugin.InAppBilling" Version="2.0.0" />
<PackageReference Include="Plugin.StoreReview" Version="2.0.0.5" />
<PackageReference Include="System.ComponentModel.Annotations" Version="4.7.0" />
<PackageReference Include="Telerik.UI.for.Xamarin" Version="2020.1.218.1" />
<PackageReference Include="Xam.Plugin.Media" Version="4.0.1.5" />
<PackageReference Include="Xam.Plugins.Forms.KeyboardOverlap"/>  
<PackageReference Include="Xamarin.Azure.NotificationHubs.iOS-updated"/>
<PackageReference Include="Xamarin.Essentials" Version="1.5.0" />
<PackageReference Include="Xamarin.FFImageLoading" Version="2.4.6.929" />
<PackageReference Include="Xamarin.FFImageLoading.Forms" Version="2.4.6.929" />
<PackageReference Include="Xamarin.FFImageLoading.Transformations" Version="2.4.6.929" />
<PackageReference Include="Xamarin.Forms" Version="4.5.0.356" />
<PackageReference Include="Xamarin.Forms.InputKit" Version="3.2.1" />
<PackageReference Include="Xamarin.Forms.RangeSlider" Version="1.0.2" />
<PackageReference Include="Microsoft.AppCenter.Analytics" Version="3.0.0" />
<PackageReference Include="Microsoft.AppCenter.Crashes" Version="3.0.0" />

Tudo bem, parece que vários de vocês estão usando o material visual, que depende de MaterialComponents . A última versão estável é 72.2.0.1, mas me deparei com este problema https://github.com/xamarin/XamarinComponents/issues/745 que afirma que a referência a UIWebView só foi removida em 92.0.0-rc1 .

Verifique se você está realmente usando Material em seu projeto. Caso contrário, tente remover a referência _ou_ adicionar 92.0.0-rc1 (ou rc2) ao seu projeto manualmente e ver se isso corrige.

Para as pessoas que (também) estão criando no Azure DevOps, fique atento para que você não esteja compilando com o Xamarin.iOS 13.10. Verifique seus logs para ver se há alguma saída que indique que o sinalizador experimental-xforms-product-type não é válido. Se você vir essa saída, está compilando com uma versão mais antiga do Xamarin.iOS.

Para os que estão no Azure DevOps, siga o link abaixo e defina a versão Mono para 6_6_1, que se baseia no Xamarin.iOS 13.10

https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops#how -can-i-manualmente-select-versions-of-tools-on-the- agente-macos-hospedado

Também testei sem Appcenter e sem firebase, webview, materiais xamarin e xamarin essential e ainda estou recebendo o e-mail. Alguém pode me dizer o que está acontecendo? Como posso verificar se tenho alguma referência?

Tentei remover Xamarin.Forms.Visual.Material e ainda assim recebi o e-mail.

estes são os NuGets que estamos usando:

<ItemGroup>
    <PackageReference Include="BruTile">
      <Version>1.0.0</Version>
    </PackageReference>
    <PackageReference Include="Com.OneSignal">
      <Version>3.7.3</Version>
    </PackageReference>
    <PackageReference Include="dotMorten.Xamarin.Forms.AutoSuggestBox">
      <Version>1.0.0</Version>
    </PackageReference>
    <PackageReference Include="ImageCropper.Forms">
      <Version>0.1.6</Version>
    </PackageReference>
    <PackageReference Include="Mapsui">
      <Version>1.4.8</Version>
    </PackageReference>
    <PackageReference Include="Mapsui.Forms">
      <Version>0.2.1</Version>
    </PackageReference>
    <PackageReference Include="Newtonsoft.Json">
      <Version>12.0.3</Version>
    </PackageReference>
    <PackageReference Include="PolylineEncoder.Net">
      <Version>1.0.1</Version>
    </PackageReference>
    <PackageReference Include="sqlite-net-pcl">
      <Version>1.6.292</Version>
    </PackageReference>
    <PackageReference Include="Xam.Plugin.DeviceInfo">
      <Version>4.1.1</Version>
    </PackageReference>
    <PackageReference Include="Xam.Plugin.Media">
      <Version>4.0.1.5</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.Essentials">
      <Version>1.5.0</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.Forms" Version="4.5.0.356" />
    <PackageReference Include="Xamarin.Forms.Extended.InfiniteScrolling">
      <Version>1.0.0-preview2</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.IQKeyboardManager">
      <Version>1.4.1</Version>
    </PackageReference>
  </ItemGroup>

@Flaviocrtt Depois de remover o nuget, certifique-se de fazer a "dança bin / obj". Remova a pasta bin e obj do seu projeto e certifique-se de fazer uma reconstrução completa para que nada armazenado em cache fique preso lá.

Além disso, como você está construindo seu aplicativo? Azure DevOps, App Center, manualmente? Tem certeza de que possui todas as configurações corretas?

Acabei de criar um build e não recebi essa mensagem, não fiz nenhuma alteração nos pacotes nuget que são referenciados, apenas algumas alterações de design que foram solicitadas.

@mharrisonbit o que você quer dizer exatamente com "mudanças de design"?

Sem grandes mudanças, apenas algumas margens em algumas visualizações. Eu não adicionei ou removi nenhum elemento (rótulos, botões, etc) para qualquer visão.

OK, isso é ... estranho. Talvez de repente para esta construção alguns bits se encaixem e você tenha um binário adequado? De qualquer forma, fico feliz em ver que está resolvido! :)

Eu sei como está minha sorte e isso foi só uma vez. lol Espero que tudo tenha dado certo e estou bem para continuar daqui em diante. Agradeço a todos por toda a ajuda.

@jfversluis Funcionou, retirei o Xamarin.Forms.Visual.Material, limpei a solução, retirei as pastas bin e obj e até reiniciei o visual studio e o macMini por garantia.
Eu construo manualmente usando o Visual Studio Preview para windows, conectado no mac mini.
na verdade, preciso do material visual, vou instalar de volta no meu aplicativo e sei que se a apple começar a recusar meu aplicativo, posso enviá-lo sem o material.
Você tem alguma previsão de atualização do material visual com as correções necessárias?
Obrigado!

Ótimo @Flaviocrtt! Obrigado por nos informar!

Acho que a atualização das coisas materiais já está em andamento. Se você quiser usá-los agora, basta instalá-lo novamente, mas atualize o NuGet MaterialComponents em seu projeto iOS para o pré-lançamento mais recente. Limpe novamente todos os itens de lixo e obj, mas isso deve funcionar e permite que você use o material :)

@EdoardoCinelli parece que conseguimos a maioria das pessoas aqui para fazer funcionar, você também?

Ok, eu consertei. Este foi o meu procedimento.

Construa no visual studio no win10 com um mac-mini online conectado via rede. As etapas foram estas:

  • "dança bin / obj"
  • Desinstale o Xamarin.Visual.Material.Design do projeto
  • "dança bin / obj"
  • Instale o Xamarin.iOS.MaterialComponents instável versão 92.0.0-rc2
  • Instale o Xamarin.Visual.Material.Design 4.5.0.356

O único problema era aquele componente. As mensagens na nuvem do Firebase não eram o problema. Obrigado pela ajuda.

Olá @jfversluis . Também tenho esse problema, não uso o componente Material.
Esta é a minha configuração de compilação - eu uso o AppCenter para compilar o arquivo Ipa.

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
    <DebugType>none</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\iPhone\Release</OutputPath>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <MtouchArch>ARM64</MtouchArch>
    <CodesignKey>XXX</CodesignKey>
    <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
    <CodesignProvision>Automatic:AppStore</CodesignProvision>
    <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs>
    <MtouchLink>Full</MtouchLink>
  </PropertyGroup>

Lista de pacotes nuget:

<ItemGroup>
    <PackageReference Include="Xamarin.Forms" Version="4.5.0.356" />
    <PackageReference Include="Xamarin.Essentials" Version="1.3.1" />
    <PackageReference Include="sqlite-net-pcl">
      <Version>1.6.292</Version>
    </PackageReference>
    <PackageReference Include="Newtonsoft.Json">
      <Version>12.0.3</Version>
    </PackageReference>
    <PackageReference Include="Com.Airbnb.Xamarin.Forms.Lottie">
      <Version>3.0.3</Version>
    </PackageReference>
    <PackageReference Include="SkiaSharp">
      <Version>1.68.0</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.FFImageLoading">
      <Version>2.4.11.982</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.FFImageLoading.Forms">
      <Version>2.4.11.982</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.FFImageLoading.Svg">
      <Version>2.4.11.982</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.FFImageLoading.Svg.Forms">
      <Version>2.4.11.982</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.FFImageLoading.Transformations">
      <Version>2.4.11.982</Version>
    </PackageReference>
    <PackageReference Include="Xam.Plugins.Settings">
      <Version>3.1.1</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.Google.iOS.MobileAds">
      <Version>7.47.0</Version>
    </PackageReference>
    <PackageReference Include="Plugin.InAppBilling">
      <Version>2.0.0</Version>
    </PackageReference>
    <PackageReference Include="Xam.Plugin.HtmlLabel">
      <Version>3.0.2.2</Version>
    </PackageReference>
    <PackageReference Include="Xam.Plugins.Forms.ProgressRing">
      <Version>0.1.2</Version>
    </PackageReference>
    <PackageReference Include="Acr.UserDialogs">
      <Version>7.1.0.440</Version>
    </PackageReference>
    <PackageReference Include="MarcTron.Admob">
      <Version>1.4.5</Version>
    </PackageReference>
    <PackageReference Include="Xamarin.Google.iOS.SignIn">
      <Version>4.4.0</Version>
    </PackageReference>
  </ItemGroup>

Configuração de compilação do App Center:
image

Por favor, dê conselhos.

@vunhutien tenta atualizar os plug-ins que têm a ver com anúncios. Esse parece um pacote provável para fazer referência a um webview

Obrigado @jfversluis , atualizei todos os plugins para a versão mais recente, ainda tenho um problema, alguma ideia?

@vunhutien parece que este problema pode ser a sua causa: https://github.com/xamarin/GoogleApisForiOSComponents/issues/380

@vunhutien parece que este problema pode ser a sua causa: xamarin / GoogleApisForiOSComponents # 380

Muito obrigado.

@ rdev24608 parece que você não está usando o pacote estável 4.5, que é um requisito

@ rdev24608

Tente isto
https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -594758733

Se ainda não funcionar, qual é a exceção?

exceção?

Tente verificar qual pacote contém referência a UIWebView descompactando seu arquivo * .ipa, cd para o diretório descompactado, e faça grep -lr "UIWebView" . de seu terminal.

Olá @abrari , meu pacote mostrou: /Frameworks/PersonalizedAdConsent.framework/PersonalizedAdConsent
Eu acho que é do Google Ad lib, certo?

Olá @jfversluis. Eu também tenho esse problema, atualizei para o Xamarin.Forms 4.5.0.495 e o Xamarin.iOS 13.14.1.39. Eu também fiz exatamente as mesmas configurações mencionadas no blog, mas ainda recebo a mensagem de aviso. Esta é a configuração do meu projeto e a lista de pacotes nuget, pois não tenho certeza do que ainda causa esta referência a UIWebView

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
<DebugType>none</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\iPhone\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<MtouchArch>ARM64</MtouchArch>
<CodesignKey>iPhone Distribution</CodesignKey>
<CodesignEntitlements>
</CodesignEntitlements>
<MtouchEnableSGenConc>true</MtouchEnableSGenConc>
<CodesignProvision>x</CodesignProvision>
<BuildIpa>true</BuildIpa>
<IpaPackageName>x</IpaPackageName>
<MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs>
<MtouchUseLlvm>true</MtouchUseLlvm>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Acr.UserDialogs">
<Version>7.1.0.442</Version>
</PackageReference>
<PackageReference Include="akavache">
<Version>6.5.1</Version>
</PackageReference>
<PackageReference Include="Autofac">
<Version>4.9.2</Version>
</PackageReference>
<PackageReference Include="Microsoft.AppCenter.Analytics">
<Version>2.0.0</Version>
</PackageReference>
<PackageReference Include="Microsoft.AppCenter.Crashes">
<Version>2.0.0</Version>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.CSharp.Scripting">
<Version>3.3.1</Version>
</PackageReference>
<PackageReference Include="Newtonsoft.Json">
<Version>12.0.2</Version>
</PackageReference>
<PackageReference Include="Plugin.Multilingual">
<Version>1.0.2</Version>
</PackageReference>
<PackageReference Include="Plugin.Permissions">
<Version>3.0.0.12</Version>
</PackageReference>
<PackageReference Include="Polly">
<Version>7.1.0</Version>
</PackageReference>
<PackageReference Include="Rg.Plugins.Popup">
<Version>1.2.0.223</Version>
</PackageReference>
<PackageReference Include="System.Net.Http">
<Version>4.3.4</Version>
</PackageReference>
<PackageReference Include="Xam.Plugin.Connectivity">
<Version>3.2.0</Version>
</PackageReference>
<PackageReference Include="Xam.Plugin.Geolocator">
<Version>4.5.0.6</Version>
</PackageReference>
<PackageReference Include="Xam.Plugin.LatestVersion">
<Version>1.1.2</Version>
</PackageReference>
<PackageReference Include="Xam.Plugin.Media">
<Version>4.0.1.5</Version>
</PackageReference>
<PackageReference Include="Xam.Plugins.Forms.ImageCircle">
<Version>3.0.0.5</Version>
</PackageReference>
<PackageReference Include="Xamarin.Auth">
<Version>1.6.0.4</Version>
</PackageReference>
<PackageReference Include="Xamarin.Forms.Visual.Material">
<Version>4.5.0.495</Version>
</PackageReference>
<PackageReference Include="Xamarin.Plugin.FilePicker">
<Version>2.1.18</Version>
</PackageReference>
<PackageReference Include="Esri.ArcGISRuntime">
<Version>100.6.0</Version>
</PackageReference>
<PackageReference Include="Esri.ArcGISRuntime.Xamarin.Forms">
<Version>100.6.0</Version>
</PackageReference>
<PackageReference Include="NETStandard.Library">
<Version>2.0.3</Version>
</PackageReference>
<PackageReference Include="sqlite-net-pcl">
<Version>1.6.292</Version>
</PackageReference>
<PackageReference Include="Xamarin.Forms" Version="4.5.0.495" />
<PackageReference Include="Xamarin.Essentials" Version="1.2.0" />

@ rambo1223 vendo que você está usando Material, pode ser o caso: https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -594599608

@jfversluis obrigado por sua resposta rápida, eu realmente uso a versão mais recente do Xamarin.Forms.Visual.Material como a versão do Xamarin.Forms, devo instalar o Xamarin.iOS.MaterialComponents também?

Por enquanto; sim. Temos um PR aberto que deve atualizar a referência, mas por enquanto você deve adicionar o pacote Xamarin.iOS.MaterialComponents mais recente manualmente e isso deve corrigi-lo.

@jfversluis
Dia bom! tendo o mesmo e-mail de aviso em meu aplicativo, não use nenhum MaterialComponents I'm my packages, também instalei a versão estável mais recente do Xamarin.Forms todas as atualizações e configurações necessárias que estão listadas neste tópico.
Todas as versões estáveis ​​mais recentes de SDKs também estão disponíveis

também apliquei descompactação do meu ipa e executei grep e consegui
SomeMobileApp.iOS.app/Xamarin.Forms.Platform.iOS.dll
SomeMobileApp.iOS.app/SomeMobileApp.iOS
SomeMobileApp.iOS.app/Xamarin.iOS.dll

aqui está uma lista de dependências no projeto ios

<ItemGroup> <Reference Include="System" /> <Reference Include="System.Xml" /> <Reference Include="System.Core" /> <Reference Include="Xamarin.iOS" /> </ItemGroup> <ItemGroup> <PackageReference Include="EasyTipView"> <Version>1.0.1</Version> </PackageReference> <PackageReference Include="Flurl.Http"> <Version>2.4.2</Version> </PackageReference> <PackageReference Include="Microsoft.AppCenter.Analytics"> <Version>3.0.0</Version> </PackageReference> <PackageReference Include="Microsoft.AppCenter.Crashes"> <Version>3.0.0</Version> </PackageReference> <PackageReference Include="Microsoft.AspNet.WebApi.Client"> <Version>5.2.7</Version> </PackageReference> <PackageReference Include="Newtonsoft.Json"> <Version>12.0.3</Version> </PackageReference> <PackageReference Include="Rg.Plugins.Popup"> <Version>1.2.0.223</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.Buttons"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.Cards"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.Core"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.SfChart"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.SfListView"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.SfMaskedEdit"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.SfNumericTextBox"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.SfPicker"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.SfPopupLayout"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.SfProgressBar"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="Syncfusion.Xamarin.SfRotator"> <Version>17.4.0.55</Version> </PackageReference> <PackageReference Include="System.Reflection.Emit"> <Version>4.7.0</Version> </PackageReference> <PackageReference Include="Xamarin.Essentials"> <Version>1.5.2</Version> </PackageReference> <PackageReference Include="Xamarin.Forms" Version="4.5.0.530" /> <PackageReference Include="SkiaSharp.Views" Version="1.68.1.1" /> <PackageReference Include="SkiaSharp.Views.Forms" Version="1.68.1.1" /> <PackageReference Include="Xamarin.IQKeyboardManager"> <Version>1.4.1</Version> </PackageReference> </ItemGroup> <ItemGroup>

também instalou a versão estável mais recente do Xamarin.Forms, todas as atualizações e configurações necessárias que estão listadas neste tópico.

Quais versões seriam? :)
Não vejo nenhum NuGets que pareça causar isso, então deve ser algo em sua configuração de compilação. Você está criando por meio do Azure DevOps ou do App Center por acaso? Você definiu a configuração correta para a configuração de compilação relevante? Seria útil ver um pouco disso.

Além disso, certifique-se de ler esta documentação de acompanhamento pela equipe Xamarin.iOS, que pode ajudar: https://docs.microsoft.com/en-us/xamarin/ios/release-notes/13/13.16#help -with- uiwebview-deprecation

@jfversluis Bom dia!

Obrigado por essas respostas rápidas e ajuda.

Eu li o artigo que você compartilhou, ainda não me inscrevi --warn-on-type-ref = UIKit.UIWebView
mas tentei aplicar --optimization = force-rejeitado-tipos-remoção e obteve erro, pois nas últimas atualizações não há tal argumento.
E sim, com certeza não usamos nenhum dos UIWebView em nossos renderizadores, mas usamos WKWebView.

Estamos construindo puramente no Windows PC conectado ao mac com utilitários MSBuild, não usamos nenhuma outra solução.

para a configuração, o sinalizador necessário aplicado a todas as configurações, portanto, listará apenas o tipo de versão,
esta será uma lista de configurações:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' "> <DebugType>none</DebugType> <Optimize>true</Optimize> <OutputPath>bin\iPhone\Release</OutputPath> <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <MtouchArch>ARM64</MtouchArch> <ConsolePause>false</ConsolePause> <CodesignKey>iPhone Developer</CodesignKey> <MtouchLink>SdkOnly</MtouchLink> <MtouchSdkVersion>13.4</MtouchSdkVersion> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements> <MtouchExtraArgs>--optimize=experemental-xforms-product-type</MtouchExtraArgs> </PropertyGroup> <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> <MtouchLink>SdkOnly</MtouchLink> <MtouchSdkVersion>13.4</MtouchSdkVersion> <BuildIpa>True</BuildIpa> <CodesignProvision> </CodesignProvision> <CodesignKey>iPhone Developer</CodesignKey> <CodesignEntitlements> </CodesignEntitlements> <CodesignExtraArgs /> <CodesignResourceRules /> <MtouchExtraArgs>--optimize=experemental-xforms-product-type</MtouchExtraArgs> </PropertyGroup>

esta é uma lista de versões:
`=== Comunidade do Visual Studio 2019 para Mac ===

Versão 8.5.1 (build 42)

=== Mono Framework MDK ===

Tempo de execução:
Mono 6.8.0.123 (2019-10 / 1d0d939dc30) (64 bits)
Versão do pacote: 608000123

MSBuild SDKs: /Library/Frameworks/Mono.framework/Versions/6.8.0/lib/mono/msbuild/Current/bin/Sdks

=== Ferramentas para Desenvolvedores Apple ===

Xcode 11.4 (16134)
Versão 11E146

=== Xamarin.Mac ===

Versão: 6.16.0.11 (Comunidade Visual Studio)
Hash: aa73e4125
Filial: d16-5-xcode11.4
Data de compilação: 2020-03-25 11: 04: 02-0400

=== Xamarin.iOS ===

Versão: 13.16.0.11 (Comunidade Visual Studio)
Hash: aa73e4125
Filial: d16-5-xcode11.4
Data de compilação: 2020-03-25 11: 04: 03-0400
=== Xamarin.Android ===

Versão: 10.2.0.100 (Comunidade Visual Studio)
Confirmar: xamarin-android / d16-5 / 988c811
SDK Android: / Users / sergiiputintsev / Library / Android / sdk
Versões Android suportadas:
8.1 (API de nível 27)

Versão do SDK Tools: 26.1.1
Versão SDK Platform Tools: 28.0.1
Versão do SDK Build Tools: 28.0.3

Informações da versão:
Mono: c0c5c78
Java.Interop: xamarin / java.interop / d16-5 @ fc18c54
ProGuard: xamarin / proguard / master @ 905836d
SQLite: xamarin / sqlite / 3.28. 0 @ 46204c4
Xamarin.Android Tools: xamarin / xamarin-android-tools / d16-5 @ 9f4ed4b

=== Sistema Operacional ===

Mac OS X 10.15.3
Darwin 19.3.0 Darwin Kernel versão 19.3.0
Qui, 9 de janeiro, 20:58:23 PST 2020
`

Eu também acredito que isso não está relacionado a bibliotecas, pois grep mostra a ocorrência de UIWebView em SomeMobileApp.iOS.app/Xamarin.Forms.Platform.iOS.dll
SomeMobileApp.iOS.app/SomeMobileApp.iOS
SomeMobileApp.iOS.app/Xamarin.iOS.dll

mas tentei aplicar --optimization = force-rejeitado-tipos-remoção e obteve erro, pois nas últimas atualizações não há tal argumento.

Não tenho certeza do que você quer dizer com isso. Eu interpreto isso como; você tentou usar este argumento, mas não funcionou. Que erro você obteve ao usar isso?

É estranho. Tudo parece estar em ordem, mas deve estar faltando alguma coisa.

Agora que dei uma olhada em você csproj, vejo que o sinalizador que você está usando tem um erro de digitação <MtouchExtraArgs>--optimize=experemental-xforms-product-type</MtouchExtraArgs> deve ser <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs> aviso experimental está escrito errado

Eu tive esse problema também, mas ele desapareceu .. Eu acho que tudo estava perfeitamente em ordem. Eu não estava usando o Material.
Xamarin.Forms 4.5.0.530
Xamarin.IOS 13.16.0.11

Realmente não sei o que finalmente consertou porque --warn-on-type-ref=UIKit.UIWebView ficava reclamando de que ainda havia referências em Xamarin.Forms.Platform.IOS e eu tentei muito me livrar dele, mas você pode tentar isto:

  • exclua as pastas bin e obj.
  • exclua o cache do Mac em ~/Library/Caches/Xamarin/mtbs

--warn-on-type-ref=UIKit.UIWebView ainda diz que há referências, mas a App Store não está reclamando mais. Espero que não seja um acaso ..

Olá,
ainda tem o mesmo problema. Eu tentei todas as coisas, até mesmo o "--warn-on-type-ref = UIKit.UIWebView" e faz referência a:
Uma ou mais referências para digitar 'UIKit.UIWebView' ainda existem dentro de 'Xamarin.Forms.Platform.iOS, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = null' após a vinculação (mesmo antes da vinculação)

Estou usando o Xamarin.Forms.iOS 4.5.0.617 (mais recente) e não usei nenhuma referência no meu código iOS.
O que posso fazer para encontrar o problema?

Editar:
O AppConnect ainda faz referência ao problema, estou construindo meu aplicativo usando appcenter com Xamarin.iOS 13.14 (Mono 6.8) e XCode 11.4.
O sinalizador de referência --optimize = experimental-xforms-product-type foi definido, mas nada mudou ...

Você poderia encontrar meu endereço de e-mail no meu perfil do GitHub e entrar em contato por lá? Não houve um caso que não pudéssemos resolver, então vamos consertar para você!

Olá @jfversluis ,
Eu tenho o mesmo problema de @ R41z0r

Primeiro, segui seu artigo - https://devblogs.microsoft.com/xamarin/uiwebview-deprecation-xamarin-forms/

Então, descobri manualmente as dlls que poderiam refrence o UIWebView.

  • Xamarin.auth

  • MonoTouch.Dialog

Depois de removê-los do meu projeto, reenviei o aplicativo para armazenar e ainda recebo o mesmo aviso da apple.
Então eu vim saber sobre --warn-on-type-ref = UIKit.UIWebView .

Depois de usar --warn-on-type-ref = UIKit.UIWebView em meu projeto, ocorreu o seguinte erro.
Uma ou mais referências para digitar 'UIKit.UIWebView' ainda existem dentro de 'Xamarin.Forms.Platform.iOS, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = null' após a vinculação (mesmo antes da vinculação)

Versão do Xamarin.Forms - 4.6.0.726
Versão do Xamarin.iOS - 13.16.0.13
Comportamento do linker - somente SDK
argumentos mtouch - --optimize = experimental-xforms-product-type

Eu verifiquei o Xamarin.Forms.Platform.iOS usando o navegador de objetos. Suspeito que ele ainda contenha WebViewRenderer. Consulte a captura de tela em anexo
xamarin ios

Estou fazendo algo errado aqui?

Eu estou no mesmo barco. Não consigo fazer com que meu pipeline azul seja submetido à apple sem a rejeição do erro.
Veja minha pergunta stackoverflow para mais detalhes https://stackoverflow.com/questions/61567850/still-getting-itms-90809-deprecated-api-usage-after-using-optimize-force-reje?noredirect=1#comment108910675_61567850

Qual é o argumento mtouch correto para inserir? É isso
--optimize=experimental-xforms-product-type
ou
--optimize=force-rejected-types-removal

ou ambos?

Ok, ainda estou preso. Fiz alguns testes com meu projeto e foi isso que descobri.
Se eu executá-lo apenas com --warn-on-type-ref = UIKit.UIWebView -wa rnaserror: 1503
minha construção falha com o MT1503, que é o UIWebView que ainda está presente após a vinculação.
Se eu executá-lo com o aviso mais --optimize = experimental-xforms-product-type
Obtenho o mesmo resultado, erro no MT1503, então parece que isso não faz nada.
Se eu executá-lo com --optimize = force-rejeitado-tipos-remoção, meu build terá sucesso sem nenhuma mensagem sobre nada do UIWebView após o link.

No meu pipeline real, eu estava executando --optimize = force-rejeitado-tipos-remoção, mas a Apple ainda rejeita. Então, eu não entendo qual é o problema. Não uso o UIWebView em nenhum lugar do meu projeto.

>

Só para mencionar, meu problema era que esqueci de definir o argumento de todos
instâncias (depuração / liberação, simulador de iPhone / iPhone).

Verifique se talvez isso te ajude.

@ R41z0r Obrigado. Sim, está definido, posso ver nos meus logs de construção do azul. Este é um problema tão irritante porque meu pipeline de construção é inútil neste ponto e eu tenho testadores / partes interessadas que obtêm compilações semanais via testflight.

Finalmente conseguiu limpar a verificação da maçã. No meu caso havia uma biblioteca ( Branch-Xamarin-Linking-SDK ) que foi responsável pela rejeição do app. Acabei de atualizá-lo e o aplicativo passa no exame da maçã. Eu estava usando uma versão mais antiga desta biblioteca. A grande tarefa foi identificar a biblioteca entre muitas outras em nosso projeto.
Depois de passar alguns dias nisso, posso dizer, --warn-on-type-ref = UIKit.UIWebView não dá resultados verdadeiros. Se você ficar com um aviso nos logs de compilação, tente enviá-lo para o testflight.
A melhor abordagem para prosseguir é atualizar todas as bibliotecas para a versão mais recente e ajustar o código-fonte de acordo. Se ainda assim não funcionar, tente remover as bibliotecas mais duvidosas uma por uma e comentar o código dessa biblioteca em seu projeto e, em seguida, enviar as compilações para o testflight. Eu sei que é um pouco demorado, mas vale a pena gastar tempo em seu projeto para passar a rejeição da maçã.

Esqueci de voltar e postar meu método para fazer meu aplicativo passar pela verificação da Apple. Eu tinha tantos posts por aí que perdi a chance de voltar a este.

O que acabou funcionando para mim foi construir localmente e empacotar o arquivo ipa. No meu mac, mudei a extensão ipa para zip e descompactei. Usei o terminal para ir para a "pasta" YOURAPPNAME.app e usei grep -r UIWebView . para procurar referências. Não se esqueça do . para que ele procure no diretório atual. Eu perdi isso no início e recebi uma mensagem de que grep estava ouvindo no stdin.

Para mim, isso resultou em uma linha como esta:
Binary file ./Frameworks/PersonalizedAdConsent.framework/PersonalizedAdConsent matches

Agora, o importante a se notar é que o vinculador nunca avisou sobre isso, então eu não sabia disso. No meu caso, fazia parte do Firebase / Admob. Eu estava apenas uma versão atrasada e a atualização para a última corrigiu meu problema.

Ainda estou usando --optimize=force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 como meus argumentos de toque. Mas as compilações agora passam.

Espero que isso ajude alguém a chegar à causa raiz mais rápido.

Atualizei o Visual Studio e o Xcode para a versão mais recente, mas --optimize=experimental-xforms-product-type ainda não funcionou para mim.
Felizmente --optimize=experimental-xforms-product-type --optimize=+force-rejected-types-removal sim.

mas tentei aplicar --optimization = force-rejeitado-tipos-remoção e obteve erro, pois nas últimas atualizações não há tal argumento.

Não tenho certeza do que você quer dizer com isso. Eu interpreto isso como; você tentou usar este argumento, mas não funcionou. Que erro você obteve ao usar isso?

É estranho. Tudo parece estar em ordem, mas deve estar faltando alguma coisa.

--optimization = forçar a remoção de tipos rejeitados resulta em erro mono Argumento de linha de comando desconhecido

mas tentei aplicar --optimization = force-rejeitado-tipos-remoção e obteve erro, pois nas últimas atualizações não há tal argumento.

Não tenho certeza do que você quer dizer com isso. Eu interpreto isso como; você tentou usar este argumento, mas não funcionou. Que erro você obteve ao usar isso?
É estranho. Tudo parece estar em ordem, mas deve estar faltando alguma coisa.

--optimization = forçar a remoção de tipos rejeitados resulta em erro mono Argumento de linha de comando desconhecido

Oi,
O argumento --optimization não deveria ser --optimize

@taublast @Bradtus isso está correto. Existe uma página de documentação onde a otimização foi escrita por engano. Deve ser otimizar

Aqui o mesmo problema. Não é possível que hoje estejamos bloqueados por isso quando a Apple avisar de desaprovação de alguns meses.

@biapar

Olá @biapar, você está totalmente certo. E você não deve ser bloqueado por isso, porque a solução que temos também está aqui há alguns meses para você. E está provado que funciona sempre.

Deixe-me saber o que não funciona para você e nós podemos descobrir

@biapar

Já fiz tudo (no modo RELEASE). Vou tentar novamente passo a passo.
image

image

image

=== Comunidade do Visual Studio 2019 para Mac ===

Versão 8.5.5 (build 7)
UUID de instalação: 4ca0550e-38d1-40b2-a470-7ae00766fcac
GTK + 2.24.23 (tema Raleigh)
Xamarin.Mac 6.14.1.39 (d16-5 / 30e8706b4)

Package version: 608000099

=== Mono Framework MDK ===

Tempo de execução:
Mono 6.8.0.99 (2019-10 / 1182f8cbf5b) (64 bits)
Versão do pacote: 608000099

=== Roslyn (Serviço de idioma) ===

3.5.0-beta4-20125-04 + 1baa0b3063238ed752ad1f0368b1df6b6901373e

=== NuGet ===

Versione: 5.4.0.6315

=== SDK do .NET Core ===

SDK: /usr/local/share/dotnet/sdk/3.1.200/Sdks
SDK da versãoi:
3.1.200
3.1.102
3.1.101
3.0.101
3.0.100
2.1.701
2.1.700
2.1.505
2.1.504
SDK do MSBuild: /Library/Frameworks/Mono.framework/Versions/6.8.0/lib/mono/msbuild/Current/bin/Sdks

=== Runtime do .NET Core ===

Tempo de execução: / usr / local / share / dotnet / dotnet
Tempo de execução da versãoi:
3.1.2
3.1.1
3.0.1
3.0.0
2.1.17
2.1.16
2.1.15
2.1.14
2.1.13
2.1.12
2.1.11
2.1.9
2.1.8

=== Xamarin.Profiler ===

Versione: 1.6.12.26
Percorso: / Applications / Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler

=== Updater ===

Versione: 11

=== Ferramentas para Desenvolvedores Apple ===

Xcode 11.4.1 (16137)
Versão 11E503a

=== Xamarin.Mac ===

Versão: 6.16.0.13 (Comunidade Visual Studio)
Hash: b75deaf82
Filial: d16-5-xcode11.4
Data de construção: 01-04-2020 21: 33: 18-0400

=== Xamarin.iOS ===

Versão: 13.16.0.13 (Comunidade Visual Studio)
Hash: b75deaf82
Filial: d16-5-xcode11.4
Data de construção: 01-04-2020 21: 33: 19-0400

=== Designer Xamarin ===

Versão: 16.5.0.471
Hash: 35aa4889d
Filial: remotos / origem / d16-5
Data de construção: 2020-02-25 00:52:08 UTC

=== Xamarin.Android ===

Versione: 10.2.0.100 (Comunidade Visual Studio)
Confirmar: xamarin-android / d16-5 / 988c811
Android SDK: / Users / biagioparuolo / Library / Developer / Xamarin / android-sdk-macosx
Compatível com versões do Android:
8.0 (livello API 26)
8.1 (livello API 27)

Versione di SDK Tools: 26.1.1
Versione degli strumenti della piattaforma SDK: 30.0.1
Versões de instrumentos de compilação SDK: 29.0.2

Informazioni sulla compilazione:
Mono: c0c5c78
Java.Interop: xamarin / java.interop / d16-5 @ fc18c54
ProGuard: xamarin / proguard / master @ 905836d
SQLite: xamarin / sqlite / 3.28. 0 @ 46204c4
Xamarin.Android Tools: xamarin / xamarin-android-tools / d16-5 @ 9f4ed4b

=== Microsoft Mobile OpenJDK ===

Java SDK: /Users/biagioparuolo/Library/Developer/Xamarin/jdk/microsoft_dist_openjdk_8.0.25
1.8.0-25
O código EPL do Android Designer está disponível aqui:
https://github.com/xamarin/AndroidDesigner.EPL

=== Android SDK Manager ===

Versão: 16.5.0.39
Hash: 6fb4c79
Filial: remotos / origem / d16-5
Data de construção: 29-04-2020 20:09:00 UTC

=== Gerenciador de dispositivos Android ===

Versão: 16.5.0.73
Hash: dff2f03
Filial: remotos / origem / d16-5
Data de construção: 29-04-2020 20:09:20 UTC

=== Inspetor Xamarin ===

Versão: 1.4.3
Hash: db27525
Filial: versão 1.4
Data de construção: Seg, 09 de julho de 2018 21:20:18 GMT
Compatibilidade do cliente: 1

=== Informações da versão ===

ID de lançamento: 805050007
Revisão do Git: f7b7ac4291b7712b5e02dd65d45685346f321ded
Data de compilação: 2020-04-30 11: 54: 56-04
Ramificação de compilação: release-8.5
Extensões Xamarin: f7b7ac4291b7712b5e02dd65d45685346f321ded

=== Sistema Operacional ===

Mac OS X 10.15.4
Darwin 19.4.0 Darwin Kernel versão 19.4.0
Quarta, 4 de março, 22:28:40 PST de 2020
root: xnu-6153.101.6 ~ 15 / RELEASE_X86_64 x86_64

=== Extensões instaladas pelo usuário habilitadas ===

Xamarin.Forms HotReload extension 1.4.0
Extensão MonoGame 3.7.1.189
XAML Styler 2.0.1

Você também enviou uma versão para a App Store? Acho que há alguns casos em que os avisos na saída podem dar falsos positivos. Além disso, você está arquivando seu aplicativo por meio do Visual Studio para Mac ou por meio do App Center ou do Azure DevOps por acaso?

@biapar, sua outra opção é vasculhar a saída do aplicativo para localizar o que ainda está referenciando UIWebView

https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -624655801
Ou você pode colocar todas as suas dlls em vsmac e inspecionar / pesquisar tipos de tipo dessa forma
https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -621915045

Você também enviou uma versão para a App Store? Acho que há alguns casos em que os avisos na saída podem dar falsos positivos. Além disso, você está arquivando seu aplicativo por meio do Visual Studio para Mac ou por meio do App Center ou do Azure DevOps por acaso?

Eu uso o Visual Studio no Mac e no Windows.

mas tentei aplicar --optimization = force-rejeitado-tipos-remoção e obteve erro, pois nas últimas atualizações não há tal argumento.

Não tenho certeza do que você quer dizer com isso. Eu interpreto isso como; você tentou usar este argumento, mas não funcionou. Que erro você obteve ao usar isso?

É estranho. Tudo parece estar em ordem, mas deve estar faltando alguma coisa.

--optimization = forçar a remoção de tipos rejeitados resulta em erro mono Argumento de linha de comando desconhecido

mas tentei aplicar --optimization = force-rejeitado-tipos-remoção e obteve erro, pois nas últimas atualizações não há tal argumento.

Não tenho certeza do que você quer dizer com isso. Eu interpreto isso como; você tentou usar este argumento, mas não funcionou. Que erro você obteve ao usar isso?
É estranho. Tudo parece estar em ordem, mas deve estar faltando alguma coisa.

--optimization = forçar a remoção de tipos rejeitados resulta em erro mono Argumento de linha de comando desconhecido

Oi,
O argumento --optimization não deveria ser --optimize

Uau, bom!
@jfversluis aqui (https://docs.microsoft.com/en-us/xamarin/ios/release-notes/13/13.16) eles apenas fornecem a linha errada :

Uma solução poderosa é adicionar --optimization = force-rejeitado-tipos-remoção aos argumentos adicionais mtouch do seu projeto. Isso removerá vestígios de UIWebView do aplicativo. No entanto, qualquer código que se refira ao tipo não funcionará corretamente (espere exceções ou travamentos). Isso deve ser usado apenas se você tiver certeza de que o código não pode ser alcançado em tempo de execução (mesmo que seja por meio de análise estática).

De qualquer forma, consegui passar para a AppStore com o seguinte:

  1. habilitar compilações incrementais OFF (importante)
  2. monotuch material adicional: --optimize = experimental-xforms-product-type --optimize = + force-rejeitado-tipos-remoção --warn-on-type-ref = UIKit.UIWebView -wa rnaserror: 1503

aqui (https://docs.microsoft.com/en-us/xamarin/ios/release-notes/13/13.16) eles apenas fornecem a linha errada:

Eu abri um PR sobre esse documento para corrigir isso. Há mais algumas pessoas que me abordaram para que ele funcionasse, mas infelizmente ainda não foi fundido.

Fico feliz em saber que você consertou isso!

@jfversluis Tenho o mesmo problema com esse problema de
Eu tentei cada solução fornecida por você e outros caras.

  1. Mudei o comportamento do link para Link All.

  2. Eu adicionei os parâmetros do MTouch Link --optimize = experimental-xforms-product-type --optimize = force-rejeitado-tipos-remoção --warn-on-type-ref = UIKit.UIWebView

  3. Pacote nuget atualizado para xamarin.Forms para a versão mais recente (4.6.0.726)

  4. Estou usando a versão mais recente da comunidade Visual Studio For Mac:
    Comunidade do Visual Studio 2019 para Mac
    Versão 8.5.5 (build 7)

  5. Meu Xamarin.iOS é 13.16.0.13:
    Xamarin.iOS
    Versão: 13.16.0.13 (Comunidade Visual Studio)
    Hash: b75deaf82
    Filial: d16-5-xcode11.4
    Data de construção: 01-04-2020 21: 33: 19-0400

Mas ainda recebo a mensagem de problema de suspensão de uso do UIWebView da Apple quando enviei uma nova versão para o testflight.
Ainda recebo essa mensagem quando criei uma compilação.
MTOUCH : warning MT1502: One or more reference(s) to type 'UIKit.UIWebView' already exists inside 'Xamarin.Forms.Platform.iOS, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' before linking

Você poderia me dizer o que estou perdendo? O que devo fazer para corrigir esse problema.

Meu projeto tem uma referência a outro projeto de biblioteca, que é um projeto do Visual Studio, ele gerou uma biblioteca para ser usada neste projeto.

Abaixo estão a lista de pacotes nuget do meu projeto.
<ItemGroup> <Reference Include="Plugin.Settings, Version=3.1.1.0, Culture=neutral, processorArchitecture=MSIL"> <HintPath>..\packages\Xam.Plugins.Settings.3.1.1\lib\Xamarin.iOS10\Plugin.Settings.dll</HintPath> <Private>True</Private> </Reference> <Reference Include="Plugin.Settings.Abstractions, Version=3.1.1.0, Culture=neutral, processorArchitecture=MSIL"> <HintPath>..\packages\Xam.Plugins.Settings.3.1.1\lib\Xamarin.iOS10\Plugin.Settings.Abstractions.dll</HintPath> <Private>True</Private> </Reference> <Reference Include="Sockets.Plugin, Version=2.0.2.0, Culture=neutral, processorArchitecture=MSIL"> <HintPath>..\packages\rda.SocketsForPCL.2.0.2\lib\Xamarin.iOS10\Sockets.Plugin.dll</HintPath> <Private>True</Private> </Reference> <Reference Include="Sockets.Plugin.Abstractions, Version=2.0.2.0, Culture=neutral, processorArchitecture=MSIL"> <HintPath>..\packages\rda.SocketsForPCL.2.0.2\lib\Xamarin.iOS10\Sockets.Plugin.Abstractions.dll</HintPath> <Private>True</Private> </Reference> <Reference Include="SQLiteNetExtensions, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <HintPath>..\packages\SQLiteNetExtensions.2.1.0\lib\netstandard1.1\SQLiteNetExtensions.dll</HintPath> </Reference> <Reference Include="SQLiteNetExtensionsAsync, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <HintPath>..\packages\SQLiteNetExtensions.Async.2.1.0\lib\netstandard1.1\SQLiteNetExtensionsAsync.dll</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.Xml" /> <Reference Include="System.Core" /> <Reference Include="Xamarin.iOS" /> <Reference Include="Acr.Support.iOS"> <HintPath>..\packages\Acr.Support.2.1.0\lib\Xamarin.iOS10\Acr.Support.iOS.dll</HintPath> </Reference> <Reference Include="OxyPlot.Xamarin.iOS"> <HintPath>..\packages\OxyPlot.Xamarin.iOS.1.0.0\lib\Xamarin.iOS10\OxyPlot.Xamarin.iOS.dll</HintPath> </Reference> <Reference Include="Microsoft.CSharp" /> <Reference Include="System.IO.Compression" /> <Reference Include="System.Net.Http" /> <Reference Include="PCLCrypto"> <HintPath>..\packages\PCLCrypto.2.0.147\lib\xamarinios10\PCLCrypto.dll</HintPath> </Reference> <Reference Include="System.Json" /> <Reference Include="ICSharpCode.SharpZipLib.Portable"> <HintPath>..\packages\SharpZipLib.Portable.0.86.0.0003\lib\portable-net45+netcore45+wp8+win8+wpa81+MonoTouch+MonoAndroid+Xamarin.iOS10\ICSharpCode.SharpZipLib.Portable.dll</HintPath> </Reference> <Reference Include="SQLitePCL.raw"> <HintPath>..\packages\SQLitePCL.raw.0.9.3\lib\Xamarin.iOS10\SQLitePCL.raw.dll</HintPath> </Reference> <Reference Include="SQLitePCL.ugly"> <HintPath>..\packages\SQLitePCL.ugly.0.9.3\lib\portable-net45+netcore45+wp8+MonoAndroid10+MonoTouch10+Xamarin.iOS10\SQLitePCL.ugly.dll</HintPath> </Reference> <Reference Include="mscorlib" /> <Reference Include="OxyPlot.Xamarin.Forms"> <HintPath>..\packages\OxyPlot.Xamarin.Forms.1.0.0\lib\Xamarin.iOS10\OxyPlot.Xamarin.Forms.dll</HintPath> </Reference> <Reference Include="OxyPlot.Xamarin.Forms.Platform.iOS"> <HintPath>..\packages\OxyPlot.Xamarin.Forms.1.0.0\lib\Xamarin.iOS10\OxyPlot.Xamarin.Forms.Platform.iOS.dll</HintPath> </Reference> <Reference Include="Validation"> <HintPath>..\packages\Validation.2.4.22\lib\netstandard1.3\Validation.dll</HintPath> </Reference> <Reference Include="BTProgressHUD"> <HintPath>..\packages\BTProgressHUD.1.3.2\lib\xamarinios10\BTProgressHUD.dll</HintPath> </Reference> <Reference Include="OpenTK-1.0" /> <Reference Include="System.Xml.Linq" /> <Reference Include="Plugin.Permissions"> <HintPath>..\packages\Plugin.Permissions.6.0.1\lib\xamarinios10\Plugin.Permissions.dll</HintPath> </Reference> <Reference Include="Xamarin.Forms.Core"> <HintPath>..\packages\Xamarin.Forms.4.6.0.726\lib\Xamarin.iOS10\Xamarin.Forms.Core.dll</HintPath> </Reference> <Reference Include="Xamarin.Forms.Platform"> <HintPath>..\packages\Xamarin.Forms.4.6.0.726\lib\Xamarin.iOS10\Xamarin.Forms.Platform.dll</HintPath> </Reference> <Reference Include="Xamarin.Forms.Xaml"> <HintPath>..\packages\Xamarin.Forms.4.6.0.726\lib\Xamarin.iOS10\Xamarin.Forms.Xaml.dll</HintPath> </Reference> <Reference Include="SQLitePCLRaw.core"> <HintPath>..\packages\SQLitePCLRaw.core.1.1.11\lib\Xamarin.iOS10\SQLitePCLRaw.core.dll</HintPath> </Reference> <Reference Include="SQLitePCLRaw.provider.sqlite3"> <HintPath>..\packages\SQLitePCLRaw.provider.sqlite3.ios_unified.1.1.11\lib\Xamarin.iOS10\SQLitePCLRaw.provider.sqlite3.dll</HintPath> </Reference> <Reference Include="SQLitePCLRaw.batteries_green"> <HintPath>..\packages\SQLitePCLRaw.bundle_green.1.1.11\lib\Xamarin.iOS10\SQLitePCLRaw.batteries_green.dll</HintPath> </Reference> <Reference Include="SQLitePCLRaw.batteries_v2"> <HintPath>..\packages\SQLitePCLRaw.bundle_green.1.1.11\lib\Xamarin.iOS10\SQLitePCLRaw.batteries_v2.dll</HintPath> </Reference> <Reference Include="SQLite-net"> <HintPath>..\packages\sqlite-net-pcl.1.5.231\lib\netstandard1.1\SQLite-net.dll</HintPath> </Reference> <Reference Include="WebP.Touch"> <HintPath>..\packages\WebP.Touch.1.0.8\lib\Xamarin.iOS10\WebP.Touch.dll</HintPath> </Reference> <Reference Include="PropertyChanged"> <HintPath>..\packages\PropertyChanged.Fody.2.5.13\lib\netstandard1.0\PropertyChanged.dll</HintPath> </Reference> <Reference Include="MvvmCross"> <HintPath>..\packages\MvvmCross.6.2.1\lib\xamarinios10\MvvmCross.dll</HintPath> </Reference> <Reference Include="MvvmCross.Plugin.Color"> <HintPath>..\packages\MvvmCross.Plugin.Color.6.2.1\lib\xamarinios10\MvvmCross.Plugin.Color.dll</HintPath> </Reference> <Reference Include="MvvmCross.Plugin.File"> <HintPath>..\packages\MvvmCross.Plugin.File.6.2.1\lib\xamarinios10\MvvmCross.Plugin.File.dll</HintPath> </Reference> <Reference Include="MvvmCross.Plugin.Messenger"> <HintPath>..\packages\MvvmCross.Plugin.Messenger.6.2.1\lib\netstandard2.0\MvvmCross.Plugin.Messenger.dll</HintPath> </Reference> <Reference Include="MvvmCross.Plugin.ResourceLoader"> <HintPath>..\packages\MvvmCross.Plugin.ResourceLoader.6.2.1\lib\xamarinios10\MvvmCross.Plugin.ResourceLoader.dll</HintPath> </Reference> <Reference Include="OxyPlot"> <HintPath>..\packages\OxyPlot.Core.2.0.0\lib\netstandard1.0\OxyPlot.dll</HintPath> </Reference> <Reference Include="Splat"> <HintPath>..\packages\Splat.5.0.2\lib\xamarinios10\Splat.dll</HintPath> </Reference> <Reference Include="System.Runtime.Serialization" /> <Reference Include="System.Collections.Immutable"> <HintPath>..\packages\System.Collections.Immutable.1.5.0\lib\netstandard2.0\System.Collections.Immutable.dll</HintPath> </Reference> <Reference Include="ReactiveUI"> <HintPath>..\packages\ReactiveUI.9.0.1\lib\xamarinios10\ReactiveUI.dll</HintPath> </Reference> <Reference Include="Plugin.BLE.Abstractions"> <HintPath>..\packages\Plugin.BLE.2.1.1\lib\Xamarin.iOS10\Plugin.BLE.Abstractions.dll</HintPath> </Reference> <Reference Include="Plugin.BLE"> <HintPath>..\packages\Plugin.BLE.2.1.1\lib\Xamarin.iOS10\Plugin.BLE.dll</HintPath> </Reference> <Reference Include="MvvmCross.Plugins.BLE"> <HintPath>..\packages\MvvmCross.Plugin.BLE.2.1.1\lib\Xamarin.iOS10\MvvmCross.Plugins.BLE.dll</HintPath> </Reference> <Reference Include="MvvmCross.Plugins.BLE.iOS"> <HintPath>..\packages\MvvmCross.Plugin.BLE.2.1.1\lib\Xamarin.iOS10\MvvmCross.Plugins.BLE.iOS.dll</HintPath> </Reference> <Reference Include="Acr.UserDialogs"> <HintPath>..\packages\Acr.UserDialogs.7.1.0.442\lib\xamarinios10\Acr.UserDialogs.dll</HintPath> </Reference> <Reference Include="System.Reactive"> <HintPath>..\packages\System.Reactive.4.4.1\lib\netstandard2.0\System.Reactive.dll</HintPath> </Reference> <Reference Include="System.Reactive.Core"> <HintPath>..\packages\System.Reactive.Core.4.0.0\lib\netstandard2.0\System.Reactive.Core.dll</HintPath> </Reference> <Reference Include="System.Reactive.Interfaces"> <HintPath>..\packages\System.Reactive.Interfaces.4.0.0\lib\netstandard2.0\System.Reactive.Interfaces.dll</HintPath> </Reference> <Reference Include="System.Reactive.Linq"> <HintPath>..\packages\System.Reactive.Linq.4.0.0\lib\netstandard2.0\System.Reactive.Linq.dll</HintPath> </Reference> <Reference Include="System.Reactive.PlatformServices"> <HintPath>..\packages\System.Reactive.PlatformServices.4.0.0\lib\netstandard2.0\System.Reactive.PlatformServices.dll</HintPath> </Reference> <Reference Include="System.Reactive.Providers"> <HintPath>..\packages\System.Reactive.Providers.4.0.0\lib\netstandard2.0\System.Reactive.Providers.dll</HintPath> </Reference> <Reference Include="Xamarin.Essentials"> <HintPath>..\packages\Xamarin.Essentials.1.5.3.2\lib\xamarinios10\Xamarin.Essentials.dll</HintPath> </Reference> <Reference Include="I18N" /> <Reference Include="CsvHelper"> <HintPath>..\packages\CsvHelper.15.0.5\lib\netstandard2.1\CsvHelper.dll</HintPath> </Reference> <Reference Include="System.Drawing.Common.dll" /> <Reference Include="Newtonsoft.Json"> <HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\netstandard2.0\Newtonsoft.Json.dll</HintPath> </Reference> <Reference Include="DynamicData"> <HintPath>..\packages\DynamicData.6.14.14\lib\netstandard2.0\DynamicData.dll</HintPath> </Reference> <Reference Include="Stateless"> <HintPath>..\packages\Stateless.5.1.2\lib\netstandard2.0\Stateless.dll</HintPath> </Reference> <Reference Include="System.Buffers"> <HintPath>..\packages\System.Buffers.4.5.1\lib\netstandard2.0\System.Buffers.dll</HintPath> </Reference> <Reference Include="System.Runtime.CompilerServices.Unsafe"> <HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.7.1\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath> </Reference> <Reference Include="System.Memory"> <HintPath>..\packages\System.Memory.4.5.4\lib\netstandard2.0\System.Memory.dll</HintPath> </Reference> <Reference Include="Cirrious.FluentLayouts.Touch"> <HintPath>..\packages\Cirrious.FluentLayout.2.9.0\lib\Xamarin.iOS10\Cirrious.FluentLayouts.Touch.dll</HintPath> </Reference> <Reference Include="HockeySDK"> <HintPath>..\packages\HockeySDK.Xamarin.5.2.0\lib\Xamarin.iOS10\HockeySDK.dll</HintPath> </Reference> <Reference Include="HockeySDK.iOSBindings"> <HintPath>..\packages\HockeySDK.Xamarin.5.2.0\lib\Xamarin.iOS10\HockeySDK.iOSBindings.dll</HintPath> </Reference> <Reference Include="PInvoke.Windows.Core"> <HintPath>..\packages\PInvoke.Windows.Core.0.6.6\lib\netstandard2.0\PInvoke.Windows.Core.dll</HintPath> </Reference> <Reference Include="PInvoke.Kernel32"> <HintPath>..\packages\PInvoke.Kernel32.0.6.6\lib\netstandard2.0\PInvoke.Kernel32.dll</HintPath> </Reference> <Reference Include="PInvoke.BCrypt"> <HintPath>..\packages\PInvoke.BCrypt.0.6.6\lib\netstandard1.1\PInvoke.BCrypt.dll</HintPath> </Reference> <Reference Include="PInvoke.NCrypt"> <HintPath>..\packages\PInvoke.NCrypt.0.6.6\lib\netstandard2.0\PInvoke.NCrypt.dll</HintPath> </Reference> <Reference Include="SimpleInjector"> <HintPath>..\packages\SimpleInjector.4.10.2\lib\netstandard2.0\SimpleInjector.dll</HintPath> </Reference> <Reference Include="FFImageLoading"> <HintPath>..\packages\Xamarin.FFImageLoading.2.4.11.982\lib\Xamarin.iOS10\FFImageLoading.dll</HintPath> </Reference> <Reference Include="FFImageLoading.Platform"> <HintPath>..\packages\Xamarin.FFImageLoading.2.4.11.982\lib\Xamarin.iOS10\FFImageLoading.Platform.dll</HintPath> </Reference> </ItemGroup>

Ei @ W0126 você poderia tentar a sugestão grep deste comentário e me dizer qual é o resultado disso?

Além disso, certifique-se de limpar as pastas bin / obj para ter certeza de que não há cache envolvido.

Verifique novamente se você definiu o sinalizador e as configurações para a configuração de compilação correta e se essa também é a configuração de compilação que você está usando em qualquer sistema CI / CD que possa ter no lugar.

@jfversluis

Eu fiz um comando grep para meu aplicativo.
Ele produz binary file ./Payload/uPyxis.app/uPyxis matches

o uPyxis é meu aplicativo.

Mas eu não uso UIWebView em meu código. Não tenho ideia de onde vem o UIWebView.

Tenho certeza que limpei todas as pastas bin / obj e todas as configurações foram definidas corretamente com o sinalizador e as configurações.

@jfversluis
Eu finalmente descobri que é causado por uma terceira biblioteca antiga, HockeySDK, que é muito antiga e não está ativa agora.
Então, retirei este pacote.
Ele deve permitir que meu aplicativo passe pelo testflight sem nenhum aviso agora.

Obrigado.

Isso é uma ótima notícia @ W0126! Me diga como foi!

Oi,

Estou desenvolvendo aplicativos usando o XF nos últimos 5 anos.
Também estou enfrentando o mesmo problema e muito decepcionado. Às vezes, decidi mudar para outra plataforma por falta de suporte e ajuda direcionada do Xamarin.

Em seguida, visitei este link https://devblogs.microsoft.com/xamarin/uiwebview-deprecation-xamarin-forms/
Eu segui todas as instruções e carreguei com sucesso o build no TestFlight para teste.
BUTTTTTTTTT

Ao alterar LinkAll, estou enfrentando sérios problemas com o Signalr, não poderei usar a funcionalidade do signalr se alterar a opção de vinculação para LINK ALL.

ERRO

Não foi possível localizar um construtor adequado para o tipo 'Microsoft.AspNetCore.Http.Connections.Client.HttpConnectionFactory'. Certifique-se de que o tipo seja concreto e os serviços sejam registrados para todos os parâmetros de um construtor público.

Tentei usar a opção de ignorar, mas não tive sorte.

--linkskip = Microsoft.AspNetCore

Estou desapontado que o Xamarin não seja capaz de ajudar os desenvolvedores.

Se alguém tiver alguma solução então por favor me ajude.

@LumiProj você por acaso tentou definir o comportamento do vinculador para SDK Only?

Resolvi atualizar novamente cada pacote (eram atualizações da versão -1) e fiz novamente os passos.
Este é o meu Apple Config:
image

Oi,

Também estou enfrentando problemas e tentei as correções sugeridas mencionadas acima. Tentei Link Sdk e Link All com essas tags --optimize=experimental-xforms-product-type --optimize=+force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 em todas as minhas compilações (depurar / liberar). Eu também atualizei todos os meus pacotes, estes são os Pacotes NuGet que uso:
Screen Shot 2020-05-19 at 10 40 35 AM (IOS)
Screen Shot 2020-05-19 at 10 40 56 AM
(Projeto)

Quando tento grep -r "UIWebView" . conforme sugerido acima, obtenho Binary file ./MyApp.iOS.app/Xamarin.Forms.Platform.iOS.dll matches Binary file ./MyApp.iOS.app/Xamarin.iOS.dll matches Binary file ./MyApp.iOS.app/MyApp.iOS matches

Não uso explicitamente nenhum UIWebView em meu projeto (a pesquisa no VS não revela nada)

Esta é a minha configuração
Screen Shot 2020-05-19 at 10 44 36 AM
(Não funciona com o Link Sdk ou Link All)

Estive olhando diferentes exemplos e vários fóruns nos últimos dias e nenhum deles é capaz de remover as menções nos arquivos binários quando I grep -r "UIWebView" . e, portanto, são todos rejeitados pela app store. Quaisquer sugestões ou conselhos serão muito apreciados!

Oi,

Finalmente estou em boa forma.
usando --optimize = experimental-xforms-product-type
com LinkSdkAssemblies.

Incrível @LumiProj !

@JJwilkin, vejo um e-mail seu. Nós vamos descobrir isso lá fora!

Esqueci de voltar e postar meu método para fazer meu aplicativo passar pela verificação da Apple. Eu tinha tantos posts por aí que perdi a chance de voltar a este.

O que acabou funcionando para mim foi construir localmente e empacotar o arquivo ipa. No meu mac, mudei a extensão ipa para zip e descompactei. Usei o terminal para ir para a "pasta" YOURAPPNAME.app e usei grep -r UIWebView . para procurar referências. Não se esqueça do . para que ele procure no diretório atual. Eu perdi isso no início e recebi uma mensagem de que grep estava ouvindo no stdin.

Para mim, isso resultou em uma linha como esta:
Binary file ./Frameworks/PersonalizedAdConsent.framework/PersonalizedAdConsent matches

Agora, o importante a se notar é que o vinculador nunca avisou sobre isso, então eu não sabia disso. No meu caso, fazia parte do Firebase / Admob. Eu estava apenas uma versão atrasada e a atualização para a última corrigiu meu problema.

Ainda estou usando --optimize=force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 como meus argumentos de toque. Mas as compilações agora passam.

Espero que isso ajude alguém a chegar à causa raiz mais rápido.

Muito obrigado jmichas.
Você economiza muitos dos meus dias de trabalho. Fiz tudo o que pude usando todas as diretrizes e sugestões fornecidas e nenhum pode realmente se livrar da referência de UIWebView em Xamarin.Forms.iOS.Platform.dll. Eu estava quase lá, mas algo faltou e posso escapar da rejeição da App Store. E finalmente encontrei a última peça que faltava em você e funcionou agora. Posso começar a fase de teste agora.

Tenho o mesmo problema.
Seguiu todas as novas regras com tudo mais recente.
Fez a cirurgia eephyu sugeriu desempacotar o ipa
grep ainda encontrando uma referência a UIWebView apenas no binário do aplicativo.
¯_ (ツ) _ / ¯

E a resposta é CALABASH! e o pacote nuget Xamarin TestCloudAgent.
Remova esse pacote e qualquer referência Calabash.Start () e você passará pela App Store.

@pmace ótimo, você encontrou a solução. Em qualquer caso, o pacote Calabash deve sempre ser removido da compilação que vai para a App Store, uma vez que usa APIs privadas que a Apple não permite de qualquer maneira :)

Para quem descobrir isso: dê uma chance ao Xamarin.Forms 5 (pré-lançamento do atm), que tenha o UIWebViewRenderer removido e deve tirar você deste problema sem quaisquer sinalizadores de compilação ou outros aborrecimentos

Oi,

Também estou enfrentando problemas e tentei as correções sugeridas mencionadas acima. Tentei Link Sdk e Link All com essas tags --optimize=experimental-xforms-product-type --optimize=+force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 em todas as minhas compilações (depurar / liberar). Eu também atualizei todos os meus pacotes, estes são os Pacotes NuGet que uso:
Screen Shot 2020-05-19 at 10 40 35 AM (IOS)
Screen Shot 2020-05-19 at 10 40 56 AM
(Projeto)

Quando tento grep -r "UIWebView" . conforme sugerido acima, obtenho Binary file ./MyApp.iOS.app/Xamarin.Forms.Platform.iOS.dll matches Binary file ./MyApp.iOS.app/Xamarin.iOS.dll matches Binary file ./MyApp.iOS.app/MyApp.iOS matches

Não uso explicitamente nenhum UIWebView em meu projeto (a pesquisa no VS não revela nada)

Esta é a minha configuração
Screen Shot 2020-05-19 at 10 44 36 AM
(Não funciona com o Link Sdk ou Link All)

Estive olhando diferentes exemplos e vários fóruns nos últimos dias e nenhum deles é capaz de remover as menções nos arquivos binários quando I grep -r "UIWebView" . e, portanto, são todos rejeitados pela app store. Quaisquer sugestões ou conselhos serão muito apreciados!

Eu tenho o mesmo problema :(, @JJwilkin você resolveu?

@jmatusburgos por favor poste os detalhes do seu projeto de me mande um email diretamente

@jmatusburgos Siga isto deve funcionar.
https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -630945296

Olá @LumiProj, tenho esses argumentos.

@jfversluis Im use Xamarin.forms 4.8.0.1364. Desinstalei muitas bibliotecas, como Google.SigIn, que me forneceram referências para UIWebView e atualizei outros até que o comando grep não me mostre referência em alguma biblioteca, mas agora quando uso grep -r "UIWebView" . recebo Binary file ./MyApp.iOS.app/Xamarin.Forms.Platform.iOS.dll... não me mostre alguma referência explícita.

Estou usando o VS2019 na máquina microsoft e mac com XCode 12.

esta é a minha configuração:
Eu testei com Link All e LinkSdkAssemblies

image

@jmatusburgos, você poderia encontrar meu e-mail na página do GitHub e

@jfversluis obrigado pela resposta, gostaria de comentar que, com a ajuda de meus colegas de trabalho, encontramos 3 bibliotecas que causaram o problema:

Refractored.XamForms.PullToRefresh 2.4.1
Paypal.Forms 2.18.6
Xamarin.PayPal.iOS 2.18.0

Todas essas bibliotecas estão obsoletas. Nós removemos e finalmente funciona.
o interessante disso é que com o comando grep não mostrou a correspondência dessas bibliotecas.

Então, às vezes pode ser um quebra-cabeça encontrado as bibliotecas culpadas. novamente, obrigado @jfversluis por sua disponibilidade :)

Sim, eu acho que porque eles estão incluindo bibliotecas nativas que criaram um invólucro que não é captado por aquele comando grep. Desculpe pelo incômodo, que bom que você descobriu!

Esta página foi útil?
0 / 5 - 0 avaliações