Xamarin.forms: [Bug] UIWebView Apple Deprecation April 2020

Erstellt am 3. März 2020  ·  92Kommentare  ·  Quelle: xamarin/Xamarin.Forms

Bevor Sie dieses Problem kommentieren, lesen Sie bitte die folgenden Kommentare und Dokumentationslinks

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

Weitere Informationen finden Sie unter den folgenden offiziellen Dokumentationslinks

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

Ursprüngliche Problembeschreibung

Ich habe die Version 4.5.0.356 von xamarin installiert und testflight verwendet, um meine App unter iOS freizugeben. Ich habe Xamarin Form 4.5 und habe alle Links in der Dokumentation implementiert
https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/webview?tabs=windows#uiwebview -deprecation-and-app-store-Ablehnung-itms-90809

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

Ich erhalte immer noch die Nachricht von Apple:
"Lieber Entwickler,

Wir haben ein oder mehrere Probleme mit einer kürzlich für Ihre App gelieferten Version "XXXXXXXX" 3 (46) festgestellt. Ihre Lieferung war erfolgreich, aber Sie möchten möglicherweise die folgenden Probleme bei Ihrer nächsten Lieferung beheben:

ITMS-90809: Veraltete API-Nutzung - Apple akzeptiert ab April 2020 keine Einsendungen von Apps mehr, die UIWebView-APIs verwenden. Weitere Informationen finden Sie unter https://developer.apple.com/documentation/uikit/uiwebview .

Nachdem Sie die Probleme behoben haben, können Sie eine neue Binärdatei in App Store Connect hochladen.

Freundliche Grüße,

Das App Store Team "

Kann mir jemand helfen, dieses Problem zu beheben?

Hier ist mein 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

Hilfreichster Kommentar

Ok, ich habe es behoben. Dies war meine Prozedur.

Bauen Sie in Win10 auf Visual Studio mit einem Mac-Mini auf, der über ein Netzwerk online verbunden ist. Die Schritte waren folgende:

  • "bin / obj dance"
  • Deinstallieren Sie Xamarin.Visual.Material.Design aus dem Projekt
  • "bin / obj dance"
  • Installieren Sie die instabile Version 92.0.0-rc2 von Xamarin.iOS.MaterialComponents
  • Installieren Sie Xamarin.Visual.Material.Design 4.5.0.356

Das einzige Problem war diese Komponente. Firebase Cloud Messaging war nicht das Problem. Danke für die Hilfe.

Alle 92 Kommentare

@EdoardoCinelli Haben Sie das Linker-Verhalten für die Release | iPhone-Konfiguration auf "Nur SDK" oder "Alle

Ich bin auch dem Link gefolgt und erhalte immer noch diese Nachricht. Unten ist auch die cs.proj für meine App, wenn das überhaupt helfen wird. Der Linker ist so eingestellt, dass er nur das Link-Framework sdk ist, und ich habe den mtouch-Argumenten "--optimize = experimenteller-xforms-Produkttyp" hinzugefügt.

<?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 Ich denke, das gleiche wie @hartez erwähnt gilt für Sie.

Fügen Sie im Bit <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' "> dieses Tag hinzu: <MtouchLink>Full</MtouchLink> . Sie können dies auch über die Benutzeroberfläche tun, indem Sie die Eigenschaften des iOS-Projekts aufrufen, zum iOS Build Blade Linker-Verhalten entweder auf Alle verknüpfen oder nur auf

image

Stellen Sie natürlich sicher, dass Sie dies für die richtige Build-Konfiguration tun. Verwenden Sie dazu die Comboboxen oben auf dem Bildschirm

Ich habe beide ausprobiert, aber ich erhalte immer noch die Post von Apple.
Wie kann ich es reparieren?

Kann einer davon einen Verweis auf uiwebview enthalten?

 <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 Es sieht so aus, als ob die Firebase auf UIWebView verweist und sie daran arbeiten: https://github.com/xamarin/GoogleApisForiOSComponents/issues/369

@mharrisonbit nur um die anderen zu aktualisieren; Wir haben ein bisschen offline geplaudert. Sie scheinen die richtigen Versionen und Einstellungen zu haben, scheinen aber immer noch nicht zu funktionieren. Sie haben mir bereits eine Liste mit NuGets gesendet. Können Sie diese bitte hier hinzufügen? So können wir sehen, ob irgendetwas drin ist, das Probleme verursachen könnte.

Hallo!

Ich habe das gleiche Problem. Wir haben uns ein bisschen per Mail mit @jfversluis unterhalten , und jetzt werde ich das hier fortsetzen.

Hier ist meine Liste von NuGets, wenn es hilft:

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

Ich verwende AppCenter zum Erstellen und Veröffentlichen in Testflight. Ich habe es vorher nicht geschrieben. Ich habe alle Firebase-Referenzen aus Code und NuGet entfernt und erhalte immer noch die Mail. Ist AppCenter das Problem?

@EdoardoCinelli Können Sie Ihre Build-Konfiguration im App Center überprüfen?

image

Stellen Sie sicher, dass Sie die Version Xamarin.iOS 13.10 ausgewählt haben, um Ihre App zu erstellen

setting1
setting2
Dies ist mein Setup

@jfversluis hier sind die Nugets, die ich im iOS-Projekt verwende. Ich hoffe, dies wird helfen, etwas herauszufinden. Nochmals vielen Dank an alle für die Hilfe. Auch dies alles wird auf meinem lokalen archiviert und dann in die Spieleläden geschoben.
<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 hier sind die NuGets, die wir verwenden:

<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" />

In Ordnung, es sieht so aus, als würden einige von Ihnen das Material-Visual verwenden, das von MaterialComponents abhängt. Die neueste stabile Version ist 72.2.0.1, aber ich bin auf dieses Problem gestoßen: https://github.com/xamarin/XamarinComponents/issues/745, das besagt, dass der Verweis auf UIWebView nur in 92.0.0-rc1 entfernt wird .

Überprüfen Sie, ob Sie tatsächlich Material in Ihrem Projekt verwenden. Wenn nicht, versuchen Sie, die Referenz _oder_ zu entfernen, oder fügen Sie die 92.0.0-rc1 (oder rc2) manuell zu Ihrem Projekt hinzu, und prüfen Sie, ob dies das Problem behebt.

Beachten Sie für Benutzer, die (auch) auf Azure DevOps aufbauen, dass Sie möglicherweise nicht auf Xamarin.iOS 13.10 bauen. Überprüfen Sie Ihre Protokolle, um festzustellen, ob eine Ausgabe vorliegt, die besagt, dass das Flag experimental-xforms-product-type nicht gültig ist. Wenn Sie diese Ausgabe sehen, bauen Sie gegen eine ältere Version von Xamarin.iOS.

Folgen Sie für diejenigen unter Azure DevOps dem Link darunter und setzen Sie die Mono-Version auf 6_6_1, die gegen Xamarin.iOS 13.10 erstellt wird

https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops#how -can-i-manuell-wähle-versionen-von-tools-on-the- Hosted-Macos-Agent

Auch ohne Appcenter und ohne Firebase, Webview, Xamarin-Materialien und Xamarin Essential getestet und ich erhalte immer noch die Mail. Kann mir jemand sagen, was los ist? Wie kann ich überprüfen, ob ich eine Referenz habe?

Ich habe versucht, Xamarin.Forms.Visual.Material entfernen und habe trotzdem die Mail erhalten.

Dies sind die NuGets, die wir verwenden:

<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 Nachdem Sie das Nuget entfernt haben, stellen Sie bitte sicher, dass Sie den "bin / obj-Tanz" ausführen. Entfernen Sie den Ordner bin und obj aus Ihrem Projekt und stellen Sie sicher, dass Sie eine vollständige Neuerstellung durchführen, damit dort nichts zwischengespeichert bleibt.

Wie erstellen Sie Ihre App? Azure DevOps, App Center, manuell? Sind Sie sicher, dass Sie die richtigen Einstellungen vorgenommen haben?

Ich habe gerade einen Build erstellt und diese Nachricht nicht erhalten. Ich habe keine Änderungen an den Nuget-Paketen vorgenommen, auf die verwiesen wird. Es wurden nur einige Designänderungen angefordert.

@mharrisonbit was meinst du genau mit "

Keine größeren Änderungen, nur ein kleiner Spielraum in einigen Ansichten. Ich habe keiner Ansicht Elemente (Beschriftungen, Schaltflächen usw.) hinzugefügt oder daraus entfernt.

OK, das ist ... seltsam. Vielleicht fielen plötzlich für diesen Build einige Teile zusammen und Sie haben eine richtige Binärdatei? Wie auch immer, ich bin froh zu sehen, dass es gelöst ist! :) :)

Ich weiß, wie mein Glück ist und das war nur eine einmalige Sache. lol Ich hoffe, dass alles gerade zusammengepasst hat und ich bin gut, von hier aus rauszugehen. Ich danke allen für die Hilfe.

@jfversluis Es hat funktioniert, ich habe
Ich erstelle manuell mit Visual Studio Preview für Windows, verbunden mit Mac Mini.
Tatsächlich brauche ich das visuelle Material. Ich werde es wieder in meiner App installieren und ich weiß, dass ich es ohne das Material senden kann, wenn Apple anfängt, meine App abzulehnen.
Haben Sie eine Prognose für die Aktualisierung des Bildmaterials mit der erforderlichen Korrektur?
Vielen Dank!

Tolles @Flaviocrtt! Vielen Dank, dass Sie uns informiert haben!

Ich denke, das Update für die materiellen Dinge ist bereits im Gange. Wenn Sie sie jetzt verwenden möchten, installieren Sie sie einfach erneut, und aktualisieren Sie das MaterialComponents NuGet in Ihrem iOS-Projekt auf die neueste Vorabversion. Reinige wieder alle Mülleimer und obj Sachen, aber das sollte funktionieren und lass uns Material verwenden :)

@EdoardoCinelli scheint, als hätten wir die meisten Leute hier, um es zum

Ok, ich habe es behoben. Dies war meine Prozedur.

Bauen Sie in Win10 auf Visual Studio mit einem Mac-Mini auf, der über ein Netzwerk online verbunden ist. Die Schritte waren folgende:

  • "bin / obj dance"
  • Deinstallieren Sie Xamarin.Visual.Material.Design aus dem Projekt
  • "bin / obj dance"
  • Installieren Sie die instabile Version 92.0.0-rc2 von Xamarin.iOS.MaterialComponents
  • Installieren Sie Xamarin.Visual.Material.Design 4.5.0.356

Das einzige Problem war diese Komponente. Firebase Cloud Messaging war nicht das Problem. Danke für die Hilfe.

Hallo @jfversluis, ich habe auch dieses Problem, ich verwende keine Materialkomponente.
Dies ist meine Build-Konfiguration. Ich verwende AppCenter, um eine Ipa-Datei zu erstellen.

<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>

Liste der Nuget-Pakete:

<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>

App Center Build-Konfiguration:
image

Bitte geben Sie Ratschläge.

@vunhutien versuchen, die Plugins zu aktualisieren, die mit Werbung zu tun haben. Das scheint ein Paket zu sein, das auf eine Webansicht verweist

Vielen Dank an @jfversluis , ich habe alle Plugins auf die neueste Version aktualisiert, habe immer noch ein Problem, eine Idee?

@vunhutien scheint dieses Problem Ihre Ursache zu sein: https://github.com/xamarin/GoogleApisForiOSComponents/issues/380

@vunhutien sieht so aus, als ob dieses Problem Ihre Ursache sein könnte: xamarin / GoogleApisForiOSComponents # 380

Vielen Dank.

@ rdev24608 Es sieht so aus, als würden Sie das stabile 4.5-Paket nicht verwenden, was eine Voraussetzung ist

@ rdev24608

Versuche dies
https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -594758733

Wenn es immer noch nicht funktioniert, was ist die Ausnahme?

Ausnahme?

Versuchen Sie zu überprüfen, welches Paket einen Verweis auf UIWebView enthält, indem Sie Ihre * .ipa-Datei, cd in das entpackte Verzeichnis entpacken und grep -lr "UIWebView" . von Ihrem Terminal aus ausführen.

Hallo @abrari , mein Paket zeigte: /Frameworks/PersonalizedAdConsent.framework/PersonalizedAdConsent
Ich vermute es von Google Ad lib oder?

Hallo @jfversluis, ich habe auch dieses Problem, ich habe auf Xamarin.Forms 4.5.0.495 und Xamarin.iOS 13.14.1.39 aktualisiert. Ich habe auch genau die gleichen Konfigurationen vorgenommen, die im Blog erwähnt wurden, aber ich erhalte immer noch die Warnmeldung. Dies ist meine Projektkonfiguration und die Liste der Nuget-Packeges, da ich nicht sicher bin, was diesen Verweis auf UIWebView noch verursacht

<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 Da Sie Material verwenden, kann dies der Fall sein: https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -594599608

@jfversluis danke für deine schnelle Antwort, ich verwende tatsächlich die neueste Version von Xamarin.Forms.Visual.Material als Version von

Vorerst; Ja. Wir haben eine PR geöffnet, die die Referenz aktualisieren sollte, aber für den Moment sollten Sie das neueste Xamarin.iOS.MaterialComponents-Paket manuell hinzufügen und das sollte es beheben.

@ jfversluis
Schönen Tag! Wenn Sie dieselbe Warn-E-Mail in meiner App haben, verwenden Sie keine MaterialComponents. Ich bin meine Pakete. Außerdem habe ich die neueste stabile Version von Xamarin.Forms installiert. Alle erforderlichen Updates und Setups sind in diesem Thread aufgeführt.
Alle neuesten stabilen Versionen von SDKs sind ebenfalls verfügbar

habe auch unzip von meinem ipa angewendet und grep durchgeführt und bekommen
SomeMobileApp.iOS.app/Xamarin.Forms.Platform.iOS.dll
SomeMobileApp.iOS.app/SomeMobileApp.iOS
SomeMobileApp.iOS.app/Xamarin.iOS.dll

Hier ist eine Liste der Abhängigkeiten im ios-Projekt

<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>

Außerdem wurde die neueste stabile Version von Xamarin.Forms installiert. Alle erforderlichen Updates und Setups sind in diesem Thread aufgeführt.

Welche Versionen wären das? :) :)
Ich sehe keine NuGets, die dies zu verursachen scheinen, daher muss es etwas in Ihrer Build-Konfiguration sein. Bauen Sie zufällig über Azure DevOps oder App Center? Haben Sie die richtige Konfiguration für die entsprechende Build-Konfiguration festgelegt? Es wäre hilfreich, etwas davon zu sehen.

Lesen Sie auch diese Folgedokumentation des Xamarin.iOS-Teams, die möglicherweise hilfreich ist: https://docs.microsoft.com/en-us/xamarin/ios/release-notes/13/13.16#help -with- uiwebview-abwertung

@jfversluis Guten Tag!

Vielen Dank für diese schnellen Antworten und Hilfe.

Ich habe den Artikel gelesen, den Sie geteilt haben, habe mich noch nicht beworben --warn-on-type-ref = UIKit.UIWebView
Ich habe jedoch versucht, --optimization = Force-Rejected-Types-Removal anzuwenden, und habe einen Fehler erhalten, da es in den letzten Updates kein solches Argument gibt.
Und ja, sicher verwenden wir kein UIWebView in unseren Renderern, aber wir verwenden WKWebView.

Wir bauen ausschließlich auf Windows-PCs, die mit MSBuild-Dienstprogrammen mit Mac verbunden sind. Wir verwenden keine anderen Lösungen.

Für die Konfiguration wird das erforderliche Flag auf alle Konfigurationen angewendet, sodass nur der Release-Typ aufgeführt wird.
Dies ist eine Liste der Konfigurationen:

<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>

Dies ist eine Versionsliste:
`=== Visual Studio Community 2019 für Mac ===

Version 8.5.1 (Build 42)

=== Mono Framework MDK ===

Laufzeit:
Mono 6.8.0.123 (2019-10 / 1d0d939dc30) (64-Bit)
Paketversion: 608000123

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

=== Apple Developer Tools ===

Xcode 11.4 (16134)
Build 11E146

=== Xamarin.Mac ===

Version: 6.16.0.11 (Visual Studio Community)
Hash: aa73e4125
Zweig: d16-5-xcode11.4
Erstellungsdatum: 2020-03-25 11: 04: 02-0400

=== Xamarin.iOS ===

Version: 13.16.0.11 (Visual Studio Community)
Hash: aa73e4125
Zweig: d16-5-xcode11.4
Erstellungsdatum: 2020-03-25 11: 04: 03-0400
=== Xamarin.Android ===

Version: 10.2.0.100 (Visual Studio Community)
Commit: xamarin-android / d16-5 / 988c811
Android SDK: / Users / sergiiputintsev / Library / Android / sdk
Unterstützte Android-Versionen:
8.1 (API Level 27)

SDK Tools Version: 26.1.1
SDK Platform Tools Version: 28.0.1
SDK Build Tools Version: 28.0.3

Build-Informationen:
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

=== Betriebssystem ===

Mac OS X 10.15.3
Darwin 19.3.0 Darwin Kernel Version 19.3.0
Do 9. Januar 20:58:23 PST 2020
`

Ich glaube auch, dass dies nicht mit Bibliotheken zusammenhängt, da grep das Auftreten von UIWebView in SomeMobileApp.iOS.app/Xamarin.Forms.Platform.iOS.dll zeigt
SomeMobileApp.iOS.app/SomeMobileApp.iOS
SomeMobileApp.iOS.app/Xamarin.iOS.dll

Ich habe jedoch versucht, --optimization = Force-Rejected-Types-Removal anzuwenden, und habe einen Fehler erhalten, da es in den letzten Updates kein solches Argument gibt.

Ich bin mir nicht sicher, was du damit meinst. Ich interpretiere das als; Sie haben versucht, dieses Argument zu verwenden, aber es hat nicht funktioniert. Welchen Fehler haben Sie bei der Verwendung erhalten?

Es ist komisch. Alles scheint in Ordnung zu sein, aber wir müssen etwas vermissen.

Jetzt, wo ich Sie mir genauer ansehe, sehe ich, dass die Flagge, die Sie verwenden, einen Tippfehler hat. <MtouchExtraArgs>--optimize=experemental-xforms-product-type</MtouchExtraArgs> sollte <MtouchExtraArgs>--optimize=experimental-xforms-product-type</MtouchExtraArgs> Beachten Sie, dass Experimental falsch geschrieben ist

Ich hatte auch dieses Problem, aber es verschwand. Ich denke, alles war perfekt in Ordnung. Ich habe kein Material verwendet.
Xamarin.Forms 4.5.0.530
Xamarin.IOS 13.16.0.11

Ich weiß nicht genau, was es letztendlich behoben hat, weil --warn-on-type-ref=UIKit.UIWebView immer wieder beschwert hat, dass es immer noch Referenzen in Xamarin.Forms.Platform.IOS gibt, und ich habe so viel versucht, es loszuwerden, aber Sie können dies versuchen:

  • Löschen Sie die Ordner bin & obj.
  • Löschen Sie den Cache auf dem Mac in ~/Library/Caches/Xamarin/mtbs

--warn-on-type-ref=UIKit.UIWebView sagt immer noch, dass es Referenzen gibt, aber der App Store beschwert sich nicht mehr. Ich hoffe, es ist kein Zufall.

Sie da,
habe immer noch das gleiche Problem. Ich habe alle Dinge ausprobiert, sogar das "--warn-on-type-ref = UIKit.UIWebView" und es verweist auf:
Eine oder mehrere Verweise auf den Typ 'UIKit.UIWebView' sind noch in 'Xamarin.Forms.Platform.iOS, Version = 2.0.0.0, Kultur = neutral, PublicKeyToken = null' nach dem Verknüpfen vorhanden (noch vor dem Verknüpfen).

Ich verwende Xamarin.Forms.iOS 4.5.0.617 (aktuell) und habe in meinem iOS-Code keine Referenz verwendet.
Was kann ich tun, um das Problem zu finden?

Bearbeiten:
AppConnect verweist immer noch auf das Problem. Ich erstelle meine App mithilfe von Appcenter mit Xamarin.iOS 13.14 (Mono 6.8) und XCode 11.4.
Das Referenzflag --optimize = experimenteller-xforms-Produkttyp wurde gesetzt, aber nichts geändert ...

Könnten Sie bitte meine E-Mail-Adresse in meinem GitHub-Profil finden und dort Kontakt aufnehmen? Es gab keinen Fall, den wir nicht lösen konnten, also lassen Sie es uns für Sie beheben!

Hallo @jfversluis ,
Ich habe das gleiche Problem wie bei @ R41z0r

Zuerst folgte ich Ihrem Artikel - https://devblogs.microsoft.com/xamarin/uiwebview-deprecation-xamarin-forms/

Dann habe ich manuell herausgefunden, welche DLLs die UIWebView auffrischen könnten.

  • Xamarin.auth

  • MonoTouch.Dialog

Nachdem ich diese aus meinem Projekt entfernt hatte, reichte ich die App erneut zum Speichern ein und erhielt immer noch die gleiche Warnung von Apple.
Dann erfuhr ich von --warn-on-type-ref = UIKit.UIWebView .

Nach der Verwendung von --warn-on-type-ref = UIKit.UIWebView in meinem Projekt ist der folgende Fehler aufgetreten.
Eine oder mehrere Verweise auf den Typ 'UIKit.UIWebView' sind noch in 'Xamarin.Forms.Platform.iOS, Version = 2.0.0.0, Kultur = neutral, PublicKeyToken = null' nach dem Verknüpfen vorhanden (noch vor dem Verknüpfen).

Xamarin.Forms-Version - 4.6.0.726
Xamarin.iOS-Version - 13.16.0.13
Linker-Verhalten - Nur SDK
mtouch-Argumente - --optimize = experimenteller-xforms-Produkttyp

Ich habe die Xamarin.Forms.Platform.iOS mit dem Objektbrowser überprüft. Ich vermute, es enthält noch WebViewRenderer. Siehe den beigefügten Screenshot
xamarin ios

Mache ich hier etwas falsch?

Ich bin im selben Boot. Ich kann meine Azure-Pipeline nicht ohne die Zurückweisung des Fehlers an Apple senden.
Weitere Informationen finden Sie in meiner Stackoverflow-Frage unter https://stackoverflow.com/questions/61567850/still-getting-itms-90809-deprecated-api-usage-after-using-optimize-force-reje?noredirect=1#comment108910675_61567850

Was sind die richtigen mtouch-Argumente? Ist es
--optimize=experimental-xforms-product-type
oder
--optimize=force-rejected-types-removal

oder beides?

Ok, ich stecke immer noch fest. Ich habe einige Tests mit meinem Projekt durchgeführt und dies habe ich herausgefunden.
Wenn ich es nur mit --warn-on-type-ref = UIKit.UIWebView -wa rnaserror: 1503 ausführe
Mein Build schlägt mit dem MT1503 fehl, bei dem UIWebView nach dem Verknüpfen noch vorhanden ist.
Wenn ich es mit der Warnung plus --optimize = experimenteller-xforms-Produkttyp ausführe
Ich erhalte das gleiche Ergebnis, Fehler auf MT1503, so dass es scheint, dass dies nichts tut.
Wenn ich es mit --optimize = Force-Rejected-Types-Removal ausführe, ist mein Build erfolgreich, ohne dass nach dem Verknüpfen eine Meldung über UIWebView angezeigt wird.

In meiner eigentlichen Pipeline habe ich --optimize = Erzwingen der Entfernung von abgelehnten Typen erzwungen, aber Apple lehnt dies immer noch ab. Ich verstehe also nicht, wo das Problem liegt. Ich verwende UIWebView nirgendwo in meinem Projekt.

>

Um nur zu erwähnen, mein Problem war, ich habe vergessen, das Argument auf alle zu setzen
Instanzen (Debug / Release, iPhone / iPhone-Simulator).

Überprüfen Sie, ob es Ihnen vielleicht hilft.

@ R41z0r Danke. Ja, es ist festgelegt, ich kann es in meinen Azure-Build-Protokollen sehen. Dies ist ein so ärgerliches Problem, da meine Build-Pipeline zu diesem Zeitpunkt unbrauchbar ist und ich Tester / Stakeholder habe, die wöchentliche Builds per Testflight veröffentlichen.

Endlich gelang es, die Apfelüberprüfung zu löschen. In meinem Fall gab es eine Bibliothek ( Branch-Xamarin-Linking-SDK ), die für die Ablehnung der App verantwortlich war. Ich habe es gerade aktualisiert und die App besteht die Apple-Prüfung. Ich habe eine ältere Version dieser Bibliothek verwendet. Die große Aufgabe bestand darin, die Bibliothek unter vielen anderen in unserem Projekt zu identifizieren.
Nachdem ich einige Tage damit verbracht habe, kann ich sagen, dass --warn-on-type-ref = UIKit.UIWebView keine echten Ergebnisse liefert. Wenn Sie eine Warnung in den Build-Protokollen haben, versuchen Sie, diese an testflight zu senden.
Der beste Ansatz ist, alle Bibliotheken auf die neueste Version zu aktualisieren und den Quellcode entsprechend anzupassen. Wenn dies immer noch nicht funktioniert, entfernen Sie die zweifelhaftesten Bibliotheken nacheinander, kommentieren Sie den Code dieser Bibliothek in Ihrem Projekt aus und senden Sie die Builds an testflight. Ich weiß, es ist etwas zeitaufwändig, aber es lohnt sich, Zeit für Ihr Projekt zu investieren, um die Ablehnung von Äpfeln zu bestehen.

Ich habe vergessen, zurückzukommen und meine Methode zu veröffentlichen, mit der meine App die Apple-Überprüfung durchlaufen kann. Ich hatte so viele Posts da draußen, dass ich es versäumt habe, zu diesem zurückzukehren.

Am Ende arbeitete ich für mich vor Ort und packte die ipa-Datei. Auf meinem Mac habe ich dann die ipa-Erweiterung in zip geändert und entpackt. Ich habe das Terminal verwendet, um zum Ordner "YOURAPPNAME.app" zu wechseln, und mit grep -r UIWebView . nach Referenzen gesucht. Vergessen Sie nicht das . damit es das aktuelle Verzeichnis durchsucht. Ich habe das zuerst verpasst und eine Nachricht bekommen, dass grep auf stdin hört.

Für mich führte das zu einer Zeile wie dieser:
Binary file ./Frameworks/PersonalizedAdConsent.framework/PersonalizedAdConsent matches

Das Wichtigste ist, dass der Linker nie davor gewarnt hat, also war ich mir dessen überhaupt nicht bewusst. In meinem Fall war es Teil von Firebase / Admob. Ich war nur eine Version hinter mir und die Aktualisierung auf die neueste Version hat mein Problem behoben.

Ich benutze immer noch --optimize=force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 als meine mtouch-Argumente. Aber Builds kommen jetzt durch.

Ich hoffe, dies hilft jemandem, schneller zur Ursache zu gelangen.

Ich habe Visual Studio und Xcode auf den neuesten Stand gebracht, aber --optimize=experimental-xforms-product-type hat bei mir immer noch nicht funktioniert.
Zum Glück hat --optimize=experimental-xforms-product-type --optimize=+force-rejected-types-removal getan.

Ich habe jedoch versucht, --optimization = Force-Rejected-Types-Removal anzuwenden, und habe einen Fehler erhalten, da es in den letzten Updates kein solches Argument gibt.

Ich bin mir nicht sicher, was du damit meinst. Ich interpretiere das als; Sie haben versucht, dieses Argument zu verwenden, aber es hat nicht funktioniert. Welchen Fehler haben Sie bei der Verwendung erhalten?

Es ist komisch. Alles scheint in Ordnung zu sein, aber wir müssen etwas vermissen.

--optimization = Entfernung von erzwungenen abgelehnten Typen führt zu Monofehler Unbekanntes Befehlszeilenargument

Ich habe jedoch versucht, --optimization = Force-Rejected-Types-Removal anzuwenden, und habe einen Fehler erhalten, da es in den letzten Updates kein solches Argument gibt.

Ich bin mir nicht sicher, was du damit meinst. Ich interpretiere das als; Sie haben versucht, dieses Argument zu verwenden, aber es hat nicht funktioniert. Welchen Fehler haben Sie bei der Verwendung erhalten?
Es ist komisch. Alles scheint in Ordnung zu sein, aber wir müssen etwas vermissen.

--optimization = Entfernung von erzwungenen abgelehnten Typen führt zu Monofehler Unbekanntes Befehlszeilenargument

Hallo,
Sollte das Argument --optimization nicht --optimize

@taublast @Bradtus das ist richtig. Es gibt eine Dokumentationsseite, auf der die Optimierung fehlerhaft geschrieben wurde. Es sollte optimiert werden

Hier das gleiche Problem. Es ist nicht möglich, dass wir heute dafür gesperrt sind, wenn Apple von einer Abwertung von einigen Monaten rät.

@ Biapar

Hallo @biapar, du hast vollkommen recht. Und Sie sollten sich davon nicht abhalten lassen, denn die Lösung, die wir haben, ist auch schon seit einigen Monaten für Sie da. Und es wurde bewiesen, dass es jedes Mal funktioniert.

Lassen Sie mich wissen, was bei Ihnen nicht funktioniert, und wir können es herausfinden

@ Biapar

Ich habe schon alles gemacht (im RELEASE-Modus). Ich werde es Schritt für Schritt erneut versuchen.
image

image

image

=== Visual Studio Community 2019 für Mac ===

Version 8.5.5 (Build 7)
Installations-UUID: 4ca0550e-38d1-40b2-a470-7ae00766fcac
GTK + 2.24.23 (Raleigh-Thema)
Xamarin.Mac 6.14.1.39 (d16-5 / 30e8706b4)

Package version: 608000099

=== Mono Framework MDK ===

Laufzeit:
Mono 6.8.0.99 (2019-10 / 1182f8cbf5b) (64-Bit)
Paketversion: 608000099

=== Roslyn (Sprachendienst) ===

3.5.0-beta4-20125-04 + 1baa0b3063238ed752ad1f0368b1df6b6901373e

=== NuGet ===

Version: 5.4.0.6315

=== .NET Core SDK ===

SDK: /usr/local/share/dotnet/sdk/3.1.200/Sdks
Versioni SDK:
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 di MSBuild: /Library/Frameworks/Mono.framework/Versions/6.8.0/lib/mono/msbuild/Current/bin/Sdks

=== Runtime di .NET Core ===

Laufzeit: / usr / local / share / dotnet / dotnet
Versioni Laufzeit:
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 ===

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

=== Updater ===

Version: 11

=== Apple Developer Tools ===

Xcode 11.4.1 (16137)
Erstellen Sie 11E503a

=== Xamarin.Mac ===

Version: 6.16.0.13 (Visual Studio Community)
Hash: b75deaf82
Zweig: d16-5-xcode11.4
Erstellungsdatum: 2020-04-01 21: 33: 18-0400

=== Xamarin.iOS ===

Version: 13.16.0.13 (Visual Studio Community)
Hash: b75deaf82
Zweig: d16-5-xcode11.4
Erstellungsdatum: 2020-04-01 21: 33: 19-0400

=== Xamarin Designer ===

Version: 16.5.0.471
Hash: 35aa4889d
Zweig: Fernbedienungen / Ursprung / d16-5
Erstellungsdatum: 2020-02-25 00:52:08 UTC

=== Xamarin.Android ===

Version: 10.2.0.100 (Visual Studio Community)
Commit: xamarin-android / d16-5 / 988c811
Android SDK: / Benutzer / biagioparuolo / Bibliothek / Entwickler / Xamarin / android-sdk-macosx
Versione di Android-Unterstützung:
8,0 (livello API 26)
8.1 (livello API 27)

Version der SDK-Tools: 26.1.1
Versione degli strumenti della piattaforma SDK: 30.0.1
Versione degli strumenti di compilazione 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
Il codice EPL von Android Designer è disponibile qui:
https://github.com/xamarin/AndroidDesigner.EPL

=== Android SDK Manager ===

Version: 16.5.0.39
Hash: 6fb4c79
Zweig: Fernbedienungen / Ursprung / d16-5
Erstellungsdatum: 2020-04-29 20:09:00 UTC

=== Android Geräte-Manager ===

Version: 16.5.0.73
Hash: dff2f03
Zweig: Fernbedienungen / Ursprung / d16-5
Erstellungsdatum: 2020-04-29 20:09:20 UTC

=== Xamarin Inspector ===

Version: 1.4.3
Hash: db27525
Zweig: 1.4-Release
Erstellungsdatum: Mo, 09. Juli 2018 21:20:18 GMT
Client-Kompatibilität: 1

=== Build Information ===

Release-ID: 805050007
Git-Revision: f7b7ac4291b7712b5e02dd65d45685346f321ded
Erstellungsdatum: 2020-04-30 11: 54: 56-04
Zweig erstellen: Release-8.5
Xamarin-Erweiterungen: f7b7ac4291b7712b5e02dd65d45685346f321ded

=== Betriebssystem ===

Mac OS X 10.15.4
Darwin 19.4.0 Darwin Kernel Version 19.4.0
Mi 4. März 22:28:40 PST 2020
root: xnu-6153.101.6 ~ 15 / RELEASE_X86_64 x86_64

=== Aktivierte vom Benutzer installierte Erweiterungen ===

Xamarin.Forms HotReload-Erweiterung 1.4.0
MonoGame-Erweiterung 3.7.1.189
XAML Styler 2.0.1

Haben Sie auch tatsächlich einen Build an den App Store gesendet? Ich denke, es gibt einige Fälle, in denen die Warnungen in der Ausgabe falsch positive Ergebnisse liefern können. Archivieren Sie Ihre App auch über Visual Studio für Mac oder über App Center oder Azure DevOps?

@biapar Ihre andere Option besteht darin, die App-Ausgabe zu durchsuchen, um festzustellen, was noch auf UIWebView verweist

https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -624655801
Oder Sie können alle Ihre DLLs in vsmac ablegen und auf diese Weise Typtypen überprüfen / suchen
https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -621915045

Haben Sie auch tatsächlich einen Build an den App Store gesendet? Ich denke, es gibt einige Fälle, in denen die Warnungen in der Ausgabe falsch positive Ergebnisse liefern können. Archivieren Sie Ihre App auch über Visual Studio für Mac oder über App Center oder Azure DevOps?

Ich benutze Visual Studio unter Mac und Windows.

Ich habe jedoch versucht, --optimization = Force-Rejected-Types-Removal anzuwenden, und habe einen Fehler erhalten, da es in den letzten Updates kein solches Argument gibt.

Ich bin mir nicht sicher, was du damit meinst. Ich interpretiere das als; Sie haben versucht, dieses Argument zu verwenden, aber es hat nicht funktioniert. Welchen Fehler haben Sie bei der Verwendung erhalten?

Es ist komisch. Alles scheint in Ordnung zu sein, aber wir müssen etwas vermissen.

--optimization = Entfernung von erzwungenen abgelehnten Typen führt zu Monofehler Unbekanntes Befehlszeilenargument

Ich habe jedoch versucht, --optimization = Force-Rejected-Types-Removal anzuwenden, und habe einen Fehler erhalten, da es in den letzten Updates kein solches Argument gibt.

Ich bin mir nicht sicher, was du damit meinst. Ich interpretiere das als; Sie haben versucht, dieses Argument zu verwenden, aber es hat nicht funktioniert. Welchen Fehler haben Sie bei der Verwendung erhalten?
Es ist komisch. Alles scheint in Ordnung zu sein, aber wir müssen etwas vermissen.

--optimization = Entfernung von erzwungenen abgelehnten Typen führt zu Monofehler Unbekanntes Befehlszeilenargument

Hallo,
Sollte das Argument --optimization nicht --optimize

Wow schön!
@jfversluis hier (https://docs.microsoft.com/en-us/xamarin/ios/release-notes/13/13.16) Sie geben Ihnen nur die falsche Zeile:

Eine überzeugende Lösung besteht darin, --optimization = force-reverse-types-remove zu den zusätzlichen mtouch-Argumenten Ihres Projekts hinzuzufügen. Dadurch werden Spuren von UIWebView aus der Anwendung entfernt. Code, der sich auf den Typ bezieht, funktioniert jedoch nicht ordnungsgemäß (Ausnahmen oder Abstürze erwarten). Dies sollte nur verwendet werden, wenn Sie sicher sind, dass der Code zur Laufzeit nicht erreichbar ist (auch wenn er durch statische Analyse erreichbar war).

Wie auch immer, ich habe es geschafft, es mit folgendem Inhalt an AppStore weiterzugeben:

  1. Aktivieren Sie inkrementelle Builds AUS (wichtig)
  2. Monotuch zusätzliches Material: --optimize = experimentell-xforms-Produkttyp --optimize = + Entfernung von erzwungenen Typen erzwingen --warn-on-type-ref = UIKit.UIWebView -wa rnaserror: 1503

hier (https://docs.microsoft.com/en-us/xamarin/ios/release-notes/13/13.16) geben sie Ihnen nur die falsche Zeile:

Ich habe eine PR für dieses Dokument geöffnet, um das zu beheben. Es gibt noch ein paar Leute, die sich an mich gewandt haben und jetzt arbeiten, aber leider ist es noch nicht zusammengeführt.

Schön zu hören, dass du es behoben hast!

@jfversluis Ich habe das gleiche Problem mit diesem UIWebView-Verfallsproblem.
Ich habe jede Lösung ausprobiert, die von Ihnen und anderen bereitgestellt wurde.

  1. Ich habe das Linkverhalten in Link Alle geändert.

  2. Ich habe die MTouch Link-Parameter hinzugefügt --optimize = experimentell-xforms-Produkttyp --optimize = Entfernung von erzwungenen Typen erzwingen --warn-on-type-ref = UIKit.UIWebView

  3. Nuget-Paket für xamarin.Forms auf die neueste Version (4.6.0.726) aktualisiert

  4. Ich verwende die neueste Version der Visual Studio For Mac-Community:
    Visual Studio Community 2019 für Mac
    Version 8.5.5 (Build 7)

  5. Mein Xamarin.iOS ist 13.16.0.13:
    Xamarin.iOS
    Version: 13.16.0.13 (Visual Studio Community)
    Hash: b75deaf82
    Zweig: d16-5-xcode11.4
    Erstellungsdatum: 2020-04-01 21: 33: 19-0400

Ich erhalte jedoch weiterhin die Meldung "UIWebView Deprecation" von Apple, als ich einen neuen Build auf testflight stellte.
Ich erhalte diese Meldung immer noch, wenn ich einen Build erstellt habe.
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

Können Sie mir sagen, was mir fehlt? Was muss ich tun, um dieses Problem zu beheben?

Mein Projekt hat einen Verweis auf ein anderes Bibliotheksprojekt, bei dem es sich um ein Visual Studio-Projekt handelt. Es wurde eine Bibliothek generiert, die in diesem Projekt verwendet werden soll.

Unten finden Sie die Nuget-Paketliste meines Projekts.
<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>

Hey @ W0126, könntest du bitte den grep-Vorschlag aus diesem Kommentar ausprobieren und mich wissen lassen, was das Ergebnis davon ist?

Stellen Sie außerdem sicher, dass Sie die Ordner bin / obj löschen, um sicherzustellen, dass kein Caching erforderlich ist.

Stellen Sie sicher, dass Sie das Flag und die Einstellungen für die richtige Build-Konfiguration konfiguriert haben und dass dies auch die Build-Konfiguration ist, die Sie auf einem CI / CD-System verwenden, das möglicherweise vorhanden ist.

@ jfversluis

Ich habe einen grep-Befehl für meine App ausgeführt.
Es gibt binary file ./Payload/uPyxis.app/uPyxis matches

Die uPyxis ist meine App.

Ich verwende UIWebView jedoch nicht in meinem Code. Ich habe keine Ahnung, woher die UIWebView kommt.

Ich bin sicher, dass ich alle bin / obj-Ordner bereinigt habe und alle Konfigurationen mit dem Flag und den Einstellungen korrekt konfiguriert wurden.

@ jfversluis
Ich finde endlich heraus, dass es sich um eine alte dritte Bibliothek handelt, HockeySDK, die sehr alt und jetzt nicht aktiv ist.
Also habe ich dieses Paket entfernt.
Damit sollte meine App jetzt ohne Warnungen den Testflug durchlaufen können.

Vielen Dank.

Das sind großartige Neuigkeiten @ W0126! Lass mich wissen, wie es geht!

Hallo,

Ich entwickle seit 5 Jahren Apps mit XF.
Ich stehe auch vor dem gleichen Problem und bin sehr enttäuscht. Manchmal entschied ich mich wegen mangelnder Unterstützung und gezielter Hilfe von Xamarin, auf eine andere Plattform zu wechseln.

Dann ging ich durch diesen Link https://devblogs.microsoft.com/xamarin/uiwebview-deprecation-xamarin-forms/
Ich habe alle Anweisungen befolgt und zum Testen erfolgreich auf TestFlight basierende Uploads hochgeladen.
BUTTTTTTTTT

Durch das Ändern von LinkAll habe ich ernsthafte Probleme mit Signalr. Ich kann die Signalr-Funktionalität nicht verwenden. Wenn ich die Verknüpfungsoption auf LINK ALL ändere.

ERROR

Ein geeigneter Konstruktor für den Typ 'Microsoft.AspNetCore.Http.Connections.Client.HttpConnectionFactory' konnte nicht gefunden werden. Stellen Sie sicher, dass der Typ konkret ist und Services für alle Parameter eines öffentlichen Konstruktors registriert sind.

Ich habe versucht, die Option zum Überspringen zu verwenden, aber kein Glück.

--linkskip = Microsoft.AspNetCore

Ich bin enttäuscht, dass Xamarin den Entwicklern nicht helfen kann.

Wenn jemand eine Lösung hat, helfen Sie mir bitte.

@LumiProj Haben Sie zufällig versucht, das Linker-Verhalten auf Nur SDK zu setzen?

Ich habe beschlossen, jedes Paket erneut zu aktualisieren (es war die Version -1) und die Schritte erneut ausgeführt.
Dies ist meine Apple-Konfiguration:
image

Hallo,

Ich habe auch Probleme und habe die oben genannten vorgeschlagenen Korrekturen ausprobiert. Ich habe Link Sdk und Link All mit diesen Tags --optimize=experimental-xforms-product-type --optimize=+force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 für alle meine Builds (Debug / Release) ausprobiert. Ich habe auch alle meine Pakete aktualisiert. Dies sind die NuGet-Pakete, die ich verwende:
Screen Shot 2020-05-19 at 10 40 35 AM (IOS)
Screen Shot 2020-05-19 at 10 40 56 AM
(Projekt)

Wenn ich grep -r "UIWebView" . wie oben vorgeschlagen versuche, erhalte ich 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

Ich verwende in meinem Projekt keine UIWebView explizit (die Suche in VS zeigt nichts an)

Dies ist meine Konfiguration
Screen Shot 2020-05-19 at 10 44 36 AM
(Es funktioniert nicht mit dem Link Sdk oder Link All)

Ich habe in den letzten Tagen verschiedene Beispiele und verschiedene Foren durchgesehen und keiner von ihnen kann die Erwähnungen in den Binärdateien entfernen, wenn ich grep -r "UIWebView" . und daher alle vom App Store abgelehnt werden. Anregungen oder Ratschläge wäre sehr dankbar!

Hallo,

Endlich bin ich in guter Verfassung.
using --optimize = experimenteller-xforms-Produkttyp
mit LinkSdkAssemblies.

Super @LumiProj !

@JJwilkin Ich habe eine E-Mail von dir, die ich sehe. Wir werden es dort herausfinden!

Ich habe vergessen, zurückzukommen und meine Methode zu veröffentlichen, mit der meine App die Apple-Überprüfung durchlaufen kann. Ich hatte so viele Posts da draußen, dass ich es versäumt habe, zu diesem zurückzukehren.

Am Ende arbeitete ich für mich vor Ort und packte die ipa-Datei. Auf meinem Mac habe ich dann die ipa-Erweiterung in zip geändert und entpackt. Ich habe das Terminal verwendet, um zum Ordner "YOURAPPNAME.app" zu wechseln, und mit grep -r UIWebView . nach Referenzen gesucht. Vergessen Sie nicht das . damit es das aktuelle Verzeichnis durchsucht. Ich habe das zuerst verpasst und eine Nachricht bekommen, dass grep auf stdin hört.

Für mich führte das zu einer Zeile wie dieser:
Binary file ./Frameworks/PersonalizedAdConsent.framework/PersonalizedAdConsent matches

Das Wichtigste ist, dass der Linker nie davor gewarnt hat, also war ich mir dessen überhaupt nicht bewusst. In meinem Fall war es Teil von Firebase / Admob. Ich war nur eine Version hinter mir und die Aktualisierung auf die neueste Version hat mein Problem behoben.

Ich benutze immer noch --optimize=force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 als meine mtouch-Argumente. Aber Builds kommen jetzt durch.

Ich hoffe, dies hilft jemandem, schneller zur Ursache zu gelangen.

Vielen Dank jmichas.
Sie sparen viele meiner Arbeitstage. Ich habe alles getan, was ich konnte, indem ich alle gegebenen Richtlinien und Vorschläge verwendet habe, und keiner kann wirklich die UIWebView-Referenz in der Xamarin.Forms.iOS.Platform-DLL rippen. Ich war fast da, aber etwas fehlt und ich kann mich der Ablehnung durch den App Store entziehen. Und schließlich habe ich das letzte fehlende Stück von dir gefunden und es hat jetzt funktioniert. Ich kann jetzt mit der Testphase beginnen.

Habe das gleiche Problem.
Befolgte alle neuen Regeln mit den neuesten Informationen.
Hat die Operation eephyu vorgeschlagen, die ipa auszupacken
grep findet immer noch einen Verweis auf UIWebView nur in der App-Binärdatei.
¯_ (ツ) _ / ¯

Und die Antwort ist CALABASH! und das Xamarin TestCloudAgent Nuget-Paket.
Entfernen Sie dieses Paket und alle Calabash.Start () - Referenzen, und Sie übergeben den App Store.

@pmace toll du hast die lösung gefunden. In jedem Fall sollte das Calabash-Paket immer aus dem Build entfernt werden, der in den App Store geht, da es private APIs verwendet, die Apple sowieso nicht zulässt :)

Für alle, die dies finden: Geben Sie Xamarin.Forms 5 (Pre-Release atm) eine Chance, bei der der UIWebViewRenderer entfernt wurde und Sie ohne Build-Flags oder andere Probleme aus diesem Problem herauskommen sollten

Hallo,

Ich habe auch Probleme und habe die oben genannten vorgeschlagenen Korrekturen ausprobiert. Ich habe Link Sdk und Link All mit diesen Tags --optimize=experimental-xforms-product-type --optimize=+force-rejected-types-removal --warn-on-type-ref=UIKit.UIWebView -warnaserror:1503 für alle meine Builds (Debug / Release) ausprobiert. Ich habe auch alle meine Pakete aktualisiert. Dies sind die NuGet-Pakete, die ich verwende:
Screen Shot 2020-05-19 at 10 40 35 AM (IOS)
Screen Shot 2020-05-19 at 10 40 56 AM
(Projekt)

Wenn ich grep -r "UIWebView" . wie oben vorgeschlagen versuche, erhalte ich 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

Ich verwende in meinem Projekt keine UIWebView explizit (die Suche in VS zeigt nichts an)

Dies ist meine Konfiguration
Screen Shot 2020-05-19 at 10 44 36 AM
(Es funktioniert nicht mit dem Link Sdk oder Link All)

Ich habe in den letzten Tagen verschiedene Beispiele und verschiedene Foren durchgesehen und keiner von ihnen kann die Erwähnungen in den Binärdateien entfernen, wenn ich grep -r "UIWebView" . und daher alle vom App Store abgelehnt werden. Anregungen oder Ratschläge wäre sehr dankbar!

Ich habe das gleiche Problem :(, @JJwilkin hast du es gelöst?

@jmatusburgos Bitte

@jmatusburgos Folgen Sie diesem sollte funktionieren.
https://github.com/xamarin/Xamarin.Forms/issues/9823#issuecomment -630945296

Hallo @ LumiProj Ich habe diese Argumente.

@jfversluis Ich benutze Xamarin.forms 4.8.0.1364. Ich hatte viele Bibliotheken wie googleAnalytics und Google.SigIn deinstalliert , die mir Verweise auf UIWebView gaben, und ich habe andere aktualisiert, bis der Befehl grep mir keine Verweise auf eine Bibliothek anzeigt, aber jetzt, wenn ich grep -r "UIWebView" . bekomme ich Binary file ./MyApp.iOS.app/Xamarin.Forms.Platform.iOS.dll... zeigt mir keine explizite Referenz.

Ich verwende VS2019 auf Microsoft-Computern und Macs mit XCode 12.

Das ist meine Konfiguration:
Ich habe mit Link All und LinkSdkAssemblies getestet

image

@jmatusburgos Könntest du vielleicht meine E-Mail auf meiner GitHub-Seite finden und dort nach draußen greifen, damit wir das herausfinden können? :) :)

@jfversluis danke für

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

Alle diese Bibliotheken sind veraltet. Wir haben entfernt und funktioniert endlich.
Das Interessante daran ist, dass mit dem Befehl grep die Übereinstimmung dieser Bibliotheken nicht angezeigt wurde.

So kann manchmal ein Puzzle die schuldigen Bibliotheken gefunden haben. Nochmals vielen Dank an

Ja, ich denke, weil sie native Bibliotheken enthalten, haben sie einen Wrapper erstellt, der von diesem grep-Befehl nicht erfasst wird. Entschuldigung für die Mühe, ich bin froh, dass Sie es herausgefunden haben!

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen