title: Can't get Prism 8 with DryIoc RegisterServices and Platform-Specific support to work
body: <p>Trying to use Prism 8, ContainerLocator, IHttpClientFactory and Platform-Specific Service registration with DryIoc Extensions (not Magician) in a Xamarin Forms application</p>
  <p>I have these nuget packages installed</p>
  <pre><code>Prism.DryIoc.Extensions
  Prism.Forms
  </code></pre>
  <p>My main Xamarin Application inherits from PrismApplicationBase.</p>
  <p>In platform code (eg Android) I have IPlatformInitializer implented by MainActivity and for platform-specific services I use:</p>
  <pre><code>LoadApplication(new App(this));
  </code></pre>
  <p>as documented here:
  <a href="https://prismlibrary.com/docs/dependency-injection/platform-specific-services.html" rel="nofollow noreferrer">https://prismlibrary.com/docs/dependency-injection/platform-specific-services.html</a></p>
  <p>This line causes the IContainerExtension to be resolved in the shared code</p>
  <pre><code>protected override IContainerExtension CreateContainerExtension()
  </code></pre>
  <p>...but I can't find a way to successfully return a valid IContainerExtension implementation.</p>
  <p>I've attempted:</p>
  <p><a href="https://prismlibrary.com/docs/dependency-injection/container-locator.html" rel="nofollow noreferrer">https://prismlibrary.com/docs/dependency-injection/container-locator.html</a></p>
  <pre><code>var createContainerExtension = () =&gt; new DryIocContainerExtension();
  ContainerLocator.SetContainerExtension(createContainerExtension);
  </code></pre>
  <p>But the code given here can't even compile - the DryIocContainerExtension class created is defined INTERNAL and isn't available to my application code.</p>
  <p>If I use...</p>
  <pre><code>PrismContainerExtension.Init();
  </code></pre>
  <p>or</p>
  <pre><code>return ContainerLocator.Current;
  </code></pre>
  <p>...as worked previously (eg Prism 7.2) I get a runtime error as described here:
  <a href="https://githubmemory.com/repo/dansiegel/Prism.Container.Extensions/issues/180" rel="nofollow noreferrer">https://githubmemory.com/repo/dansiegel/Prism.Container.Extensions/issues/180</a></p>
  <pre><code>ValueFactory attempted to access the Value property of this instance.
  </code></pre>
  <p>Please can someone advise what I'm doing wrong, or do I have to get my company to pay for Magician to resolve my issue?</p>