4 Replies
      Latest reply: Feb 14, 2017 1:48 AM by eskimo RSS
      mjan635 Level 1 Level 1 (0 points)

        Hi All,

         

        I am using XCode Version8.0 on OSX Sierra 10.12. I can't find "NEProviderTargetTemplates.pkg" file in the /System/Library/Frameworks/NetworkExtension.framework/Resources.

         

        Could you please help me to find the extension?

        • Re: I can't find NEProviderTargetTemplates.pkg
          eskimo Apple Staff Apple Staff (6,270 points)

          Clearly this installer package was removed in 10.12.  I’m not sure how you’re supposed to get these templates currently.  I’ll look into that.  For the moment, I recommend you grab the package from a 10.11 install.

          Share and Enjoy

          Quinn “The Eskimo!”
          Apple Developer Relations, Developer Technical Support, Core OS/Hardware
          let myEmail = "eskimo" + "1" + "@apple.com"

          • Re: I can't find NEProviderTargetTemplates.pkg
            eskimo Apple Staff Apple Staff (6,270 points)

            Folks keeping pinging me about this so I thought I’d post a follow-up.  Two points:

            • The underlying bug here (r. 28697094) is well on its way to being fixed.  Alas, I can’t be more specific than that.

            • It’s relatively easy to work around this: create your target from some other extension template and then change the necessary values to make it a Network Extension provider.  For example, to create an iOS packet tunnel provider:

              1. Create the target from the Spotlight Index Extension target

              2. Remove IndexRequestHandler.{swift,h,m}

              3. Add a new source file with your class that subclasses NEPacketTunnelProvider

              4. Edit the NSExtension dictionary in the Info.plist to make this a packet tunnel provider; this involves two substeps:

                • Set NSExtensionPointIdentifier to com.apple.networkextension.packet-tunnel (you can get values for other providers from the documentation, or from the SimpleTunnel sample code)

                • In NSExtensionPrincipalClass, replace IndexRequestHandler with the name of your class from step 3

            Share and Enjoy

            Quinn “The Eskimo!”
            Apple Developer Relations, Developer Technical Support, Core OS/Hardware
            let myEmail = "eskimo" + "1" + "@apple.com"