Extract Unity Package On Mac App

  1. Extract Unity Package On Mac Apps
  2. Extract Unity Package On Mac App Download
  3. Extract Unity Package On Mac App Free
  4. Extract Unity Package On Mac Application

Oct 30, 2019  Unity Asset Bundle Extractor is a lower level tool that can even manipulate Unity bundles. Useful for advanced data miners and readers who want to.

-->

MakeAppx.exe creates both app packages (.msix or .appx) and app package bundles (.msixbundle or .appxbundle). MakeAppx.exe also extracts files from an app package or bundle and encrypts or decrypts app packages and bundles. This tool is included in the Windows 10 SDK and can be used from a command prompt or a script file.

For information about how to use MakeApp.exe to package a desktop app, see Package a desktop app manually.

Important

If you used Visual Studio to develop your app, it's recommended that you use the Visual Studio wizard to create your app package. For more information, see Package a UWP app with Visual Studio and Package a desktop app from source code using Visual Studio.

Important

Note that MakeAppx.exe does not create an app package upload file (.appxupload or .msixupload), which is the recommended type of valid app package for submissions to Partner Center. The app package upload file is typically created as part of the Visual Studio packaging process, although it can also be created manually.

Using MakeAppx.exe

Based on your installation path of the SDK, this is where MakeAppx.exe is on your Windows 10 PC:

  • x86: C:Program Files (x86)Windows Kits10bin<build number>x86makeappx.exe
  • x64: C:Program Files (x86)Windows Kits10bin<build number>x64makeappx.exe

There is no ARM version of this tool.

MakeAppx.exe syntax and options

General MakeAppx.exe syntax:

The following table describes the commands for MakeAppx.exe.

CommandDescription
packCreates a package.
unpackExtracts all files in the specified package to the specified output directory.
bundleCreates a bundle.
unbundleUnpacks all packages to a subdirectory under the specified output path named after the bundle full name.
encryptCreates an encrypted app package or bundle from the input package/bundle at the specified output package/bundle.
decryptCreates an decrypted app package or bundle from the input app package/bundle at the specified output package/bundle.

This list of options applies to all commands:

OptionDescription
/dSpecifies the input, output, or content directory.
/lUsed for localized packages. The default validation trips on localized packages. This options disables only that specific validation, without requiring that all validation be disabled.
/kfEncrypts or decrypts the package or bundle using the key from the specified key file. This can't be used with /kt.
/ktEncrypts the or decrypts package or bundle using the global test key. This can't be used with /kf.
/noPrevents an overwrite of the output file if it exists. If you don't specify this option or the /o option, the user is asked whether they want to overwrite the file.
/nvSkips semantic validation. If you don't specify this option, the tool performs a full validation of the package.
/oOverwrites the output file if it exists. If you don't specify this option or the /no option, the user is asked whether they want to overwrite the file.
/pSpecifies the app package or bundle.
/vEnables verbose logging output to the console.
/?Displays help text.

The following list contains possible arguments:

ArgumentDescription
<output package name>The name of the package created. This is the file name appended with .msix or .appx.
<encrypted output package name>The name of the encrypted package created. This is the file name appended with .emsix or .eappx.
<input package name>The name of the package. This is the file name appended with .msix or .appx.
<encrypted input package name>The name of the encrypted package. This is the file name appended with .emsix or .eappx.
<output bundle name>The name of the bundle created. This is the file name appended with .msixbundle or .appxbundle.
<encrypted output bundle name>The name of the encrypted bundle created. This is the file name appended with .emsixbundle or .eappxbundle.
<input bundle name>The name of the bundle. This is the file name appended with .msixbundle or .appxbundle.
<encrypted input bundle name>The name of the encrypted bundle. This is the file name appended with .emsixbundle or .eappxbundle.
<content directory>Path for the app package or bundle content.
<mapping file>File name that specifies the package source and destination.
<output directory>Path to the directory for output packages and bundles.
<key file>Name of the file containing a key for encryption or decryption.
<algorithm ID>Algorithms used when creating a block map. Valid algorithms include: SHA256 (default), SHA384, SHA512.

Create an app package

An app package is a complete set of the app's files packaged in to a .msix or .appx package file. To create an app package using the pack command, you must provide either a content directory or a mapping file for the location of the package. You can also encrypt a package while creating it. If you want to encrypt the package, you must use /ep and specify if you are using a key file (/kf) or the global test key (/kt). For more information on creating an encrypted package, see Encrypt or decrypt a package or bundle.

Options specific to the pack command:

OptionDescription
/fSpecifies the mapping file.
/hSpecifies the hash algorithm to use when creating the block map. This can only be used with the pack command. Valid algorithms include: SHA256 (default), SHA384, SHA512.
/mSpecifies the path to an input app manifest which will be used as the basis for generating the output app package or resource package's manifest. When you use this option, you must also use /f and include a [ResourceMetadata] section in the mapping file to specify the resource dimensions to be included in the generated manifest.
/ncPrevents compression of the package files. By default, files are compressed based on detected file type.
/rBuilds a resource package. This must be used with /m and implies the use of the /l option.

The following usage examples show some possible syntax options for the pack command:

The following shows command line examples for the pack command:

Create an app bundle

An app bundle is similar to an app package, but a bundle can reduce the size of the app that users download. App bundles are helpful for language-specific assets, varying image-scale assets, or resources that apply to specific versions of Microsoft DirectX, for example. Similar to creating an encrypted app package, you can also encrypt the app bundle while bundling it. To encrypt the app bundle, use the /ep option and specify if you are using a key file (/kf) or the global test key (/kt). For more information on creating an encrypted bundle, see Encrypt or decrypt a package or bundle.

Options specific to the bundle command: Chat software mac 10.6.8.

OptionDescription
/bvSpecifies the version number of the bundle. The version number must be in four parts separated by periods in the form: <Major>.<Minor>.<Build>.<Revision>.
/fSpecifies the mapping file.

Note that if the bundle version is not specified or if it is set to '0.0.0.0' the bundle is created using the current date-time.

The following usage examples show some possible syntax options for the bundle command:

The following block contains examples for the bundle command:

Extract files from a package or bundle

In addition to packaging and bundling apps, MakeAppx.exe can also unpack or unbundle existing packages. You must provide the content directory as a destination for the extracted files. If you are trying to extract files from an encrypted package or bundle, you can decrypt and extract the files at the same time using the /ep option and specifying whether it should be decrypted using a key file (/kf) or the global test key (/kt). For more information on decrypting a package or bundle, see Encrypt or decrypt a package or bundle.

Options specific to unpack and unbundle commands:

OptionDescription
/ndDoes not perform decryption when unpacking or unbundling the package/bundle.
/pfnUnpacks/unbundles all files to a subdirectory under the specified output path, named after the package or bundle full name

The following usage examples show some possible syntax options for the unpack and unbundle commands:

The following block contains examples for using the unpack and unbundle commands:

Encrypt or decrypt a package or bundle

The MakeAppx.exe tool can also encrypt or decrypt an existing package or bundle. You must simply provide the package name, the output package name, and whether encryption or decryption should use a key file (/kf) or the global test key (/kt).

Encryption and decryption are not available through the Visual Studio packaging wizard.

Options specific to encrypt and decrypt commands:

OptionDescription
/epSpecifies an encrypted app package or bundle.

The following usage examples show some possible syntax options for the encrypt and decrypt commands:

The following block contains examples for using the encrypt and decrypt commands:

Key files

Key files must begin with a line containing the string '[Keys]' followed by lines describing the keys to encrypt each package with. Each key is represented by a pair of strings in quotation marks, separated by either spaces or tabs. The first string represents the base64 encoded 32-byte key ID and the second represents the base64 encoded 32-byte encryption key. A key file should be a simple text file.

Example of a key file:

Mapping files

Mapping files must begin with a line containing the string '[Files]' followed by lines describing the files to add to the package. Each file is described by a pair of paths in quotation marks, separated by either spaces or tabs. Each file represents its source (on disk) and destination (in the package). A mapping file should be a simple text file.

Example of a mapping file (without the /m option):

When using a mapping file, you can choose whether you would like to use the /m option. The /m option allows the user to specify the resource metadata in the mapping file to be included in the generated manifest. If you use the /m option, the mapping file must contain a section that begins with the line '[ResourceMetadata]', followed by lines that specify 'ResourceDimensions' and 'ResourceId.' It is possible for an app package to contain multiple 'ResourceDimensions', but there can only ever be one 'ResourceId.'

Example of a mapping file (with the /m option):

Semantic validation performed by MakeAppx.exe

MakeAppx.exe performs limited sematic validation that is designed to catch the most common deployment errors and help ensure that the app package is valid. See the /nv option if you want to skip validation while using MakeAppx.exe.

This validation ensures that:

  • All files referenced in the package manifest are included in the app package.
  • An application does not have two identical keys.
  • An application does not register for a forbidden protocol from this list: SMB, FILE, MS-WWA-WEB, MS-WWA.

This is not a complete semantic validation as it is only designed to catch common errors. Packages built by MakeAppx.exe are not guaranteed to be installable.

-->

You can use Visual Studio with the cross-platform Mobile development with C++ tools to edit, debug, and deploy iOS code to the iOS Simulator or to an iOS device. But, because of licensing restrictions, the code must be built and run remotely on a Mac. To build and run iOS apps using Visual Studio, you need to set up and configure the remote agent, vcremote, on your Mac. The remote agent handles build requests from Visual Studio and runs the app on an iOS device connected to the Mac, or in the iOS Simulator on the Mac.

Note

For information on using cloud-hosted Mac services instead of a Mac, see Configure Visual Studio to connect to your cloud hosted Mac. The instructions are for building using Visual Studio Tools for Apache Cordova. To use the instructions to build using C++, substitute vcremote for remotebuild.

Once you have installed the tools to build using iOS, refer to this article for ways to quickly configure and update the remote agent for iOS development in Visual Studio and on your Mac.

Prerequisites

To install and use the remote agent to develop code for iOS, you must first have these prerequisites:

  • A Mac computer running macOS Mojave version 10.14 or later

  • An Apple ID

  • An active Apple Developer Program account

    You can get a free account that allows sideloading apps to an iOS device for testing only but not for distribution.

  • Xcode version 10.2.1 or later

    Xcode can be downloaded from the App Store.

  • Xcode command-line tools

    To install the Xcode command-line tools, open the Terminal app on your Mac and enter the following command:

    xcode-select --install

  • An Apple ID account configured in Xcode as a signing identity to sign apps

    To see or set your signing identity in Xcode, open the Xcode menu and choose Preferences. Select Accounts and choose your Apple ID, and then choose the View Details button. See Add your Apple ID account for detailed instructions.

    For detailed information on signing requirements, see What is app signing.

  • If you are using an iOS device for development, a provisioning Profile configured in Xcode for your device

    Xcode provides automatic signing where it creates signing certificates for you as needed. For detailed information about Xcode automatic signing see automatic signing.

    If you want to do manual signing, you need to create a provisioning Profile for your app. For detailed information on creating provisioning Profiles, see Create a development provisioning profile.

  • Node.js version 12.14.1 and npm version 6.13.4

    Install version 12.14.1 of Node.js on your Mac. If you install the Node.js package, it should come with npm version 6.13.4. Other versions of Node.js and npm may not support some modules used in the remote agent vcremote, which can cause vcremote installation to fail. We recommend you install Node.js by using a package manager such as Node Version Manager. Avoid using the command sudo to install Node.js, as some modules can fail to install when using sudo.

Install the remote agent for iOS

When you install the Mobile development with C++ workload, Visual Studio can communicate with vcremote, a remote agent running on your Mac to transfer files, build and run your iOS app, and send debugging commands.

Before you install the remote agent, make sure you have satisfied the Prerequisites and completed the installation steps in Install cross-platform mobile development with C++.

To download and install the remote agent

  • From the Terminal app on your Mac, verify that the Node.js version currently in use is the required version 12.14.1. To verify the version, run the command:

    node -v

    If it's not the right version, you may need to follow the Node.js installation instructions in the prerequisites. Then, restart Node.js.

  • After verifying the required Node.js is in use, run this command to install vcremote under that Node.js version:

    npm install -g --unsafe-perm vcremote

    The global installation (-g) switch is recommended, but not required. If you don't use the global installation switch, vcremote gets installed under the current active path in the Terminal app.

    During the installation, vcremote is installed and developer mode is activated on your Mac. Homebrew and two npm packages, vcremote-lib and vcremote-utils, are also installed. When installation completes, it's safe to ignore any warnings about skipped optional dependencies.

    Note

    To install Homebrew, you must have sudo (administrator) access. If you need to install vcremote without sudo, you can install Homebrew manually in a usr/local location and add its bin folder to your path. For more information, see the Homebrew documentation. To manually enable developer mode, enter this command in the Terminal app: DevToolsSecurity -enable

If you update to a new version of Visual Studio, you must update to the current version of the remote agent as well. To update the remote agent, repeat the steps to download and install the remote agent.

Start the remote agent

The remote agent must be running for Visual Studio to build and run your iOS code. Visual Studio must be paired with the remote agent before it can communicate. By default, the remote agent runs in secured connection mode, which requires a PIN to pair with Visual Studio.

To start the remote agent

  • From the Terminal app on your Mac, enter:

    vcremote

    This command starts the remote agent with a default build directory of ~/vcremote. For additional configuration options, see Configure the remote agent on the Mac.

The first time you start the agent, and every time you create a new client certificate, you are provided with the required information to configure the agent in Visual Studio, including the host name, the port, and the PIN.

If you intend to configure the remote agent in Visual Studio using the host name, ping the Mac from Windows using the host name to verify that it is reachable. Otherwise, you may need to use the IP address instead.

The generated PIN is for one time use, and is only valid for a limited time. If you do not pair Visual Studio with the remote agent before the time expires, you will need to generate a new PIN. For more information, see Generate a new security PIN.

You can use the remote agent in unsecured mode. In unsecured mode, the remote agent can be paired to Visual Studio without a PIN.

To disable secured connection mode

  • To disable secured connection mode in vcremote, enter this command in the Terminal app on your Mac:

    vcremote --secure false

To enable secured connection mode

  • To enable secured connection mode, enter this command:

    vcremote --secure true

Once you have started the remote agent, you can use it from Visual Studio until you stop it.

To stop the remote agent

  • In the Terminal window vcremote is running in, enter Control+C.

Configure the remote agent in Visual Studio

To connect to the remote agent from Visual Studio, you must specify the remote configuration in the Visual Studio options.

To configure the remote agent from Visual Studio

  1. If the agent is not already running on your Mac, follow the steps in Start the remote agent. Your Mac must be running vcremote for Visual Studio to successfully pair, connect, and build your project.

  2. On your Mac, get the host name or IP address of your Mac.

    You can get the IP address by using the ifconfig command in a Terminal window. Use the inet address listed under the active network interface.

  3. On the Visual Studio menu bar, choose Tools, Options.

  4. In the Options dialog box, expand Cross Platform, C++, iOS.

  5. In the Host Name and Port fields, enter the values specified by the remote agent when you started it. The host name can be the DNS name or IP address of your Mac. The default port is 3030.

    Note

    If you cannot ping the Mac using the host name, you may need to use the IP address.

    PCB Design software is used to create schematic designs. This prepares a sketch of the electrical connections and is used to create various projects in a relatively short period of time. These programs benefit hobbyists as well as those who require it for a profession. It is used to route different number of layer boards and integrated digital key parts can be created along with the bill of. Pcb design free download - Osmond PCB, Logo Design Studio Pro, Adobe Illustrator CS6, and many more programs. Enter to Search. Graphic Design Software Developer Tools Digital Photo. Pcb design software for mac free download. PCB design software for everyone Included with a Fusion 360 for personal use subscription, EAGLE free download is a limited version for hobbyists including 2 schematic sheets, 2 signal layers, and an 80cm2 (12.4in2) board area. Nov 12, 2012  Compared to the other free software alternatives, KiCad solves all stages with the same interface: Schematic Capture, PCB layout, Gerber generation/visualization and library editing. KiCad is cross-platform, written with WxWidgets and runs on FreeBSD, Linux, Microsoft Windows and Mac OS X.

  6. If you use the remote agent in the default secured connection mode, check the Secure checkbox, then enter the PIN value specified by the remote agent in the Pin field. If you use the remote agent in unsecured connection mode, clear the Secure checkbox and leave the Pin field blank.

  7. Choose Pair to enable the pairing.

    The pairing persists until you change the host name or port. If you change the host name or port in the Options dialog box, to undo the change, choose the Revert button to revert to the previous pairing.

    If the pairing does not succeed, verify that the remote agent is running by following the steps in Start the remote agent. If too much time has passed since the remote agent PIN was generated, follow the steps in Generate a new security PIN on the Mac and then try again. If you are using the host name of your Mac, try using the IP address in the Host Name field instead.

  8. Update the folder name in the Remote Root field to specify the folder used by the remote agent in your home (~) directory on the Mac. By default, the remote agent uses /Users/<username>/vcremote as the remote root.

  9. Choose OK to save the remote pairing connection settings.

App

Visual Studio uses the same information to connect to the remote agent on your Mac each time you use it. You do not need to pair Visual Studio with the remote agent again unless you generate a new security certificate on your Mac, or its hostname or IP address changes.

Generate a new security PIN

When you start the remote agent the first time, the generated PIN is valid for a limited amount of time—by default, 10 minutes. If you don't pair Visual Studio to the remote agent before the time expires, you will need to generate a new PIN.

To generate a new PIN

  1. Stop the agent, or open a second Terminal app window on your Mac and use that to enter the command.

  2. Enter this command in the Terminal app:

    vcremote generateClientCert

    The remote agent generates a new temporary PIN. To pair Visual Studio by using the new PIN, repeat the steps in Configure the remote agent in Visual Studio.

Generate a new server certificate

For security purposes, the server certificates that pair Visual Studio with the remote agent are tied to the IP address or host name of your Mac. If these values change, you must generate a new server certificate, and then reconfigure Visual Studio with the new values.

To generate a new server certificate

  1. Stop the vcremote agent.

  2. Enter this command in the Terminal app:

    vcremote resetServerCert

  3. When prompted for confirmation, enter Y.

  4. Enter this command in the Terminal app:

    vcremote generateClientCert

    This command generates a new temporary PIN.

  5. To pair Visual Studio by using the new PIN, repeat the steps in Configure the remote agent in Visual Studio.

Configure the remote agent on the Mac

You can configure the remote agent using various command-line options. For example, you can specify the port to listen for build requests and specify the maximum number of builds to maintain on the file system. By default, the limit is 10 builds. The remote agent will remove builds that exceed the maximum on shutdown.

To configure the remote agent

  • To see a complete list of remote agent commands, in the Terminal app, enter:

    vcremote --help

  • To disable secure mode and enable simple HTTP-based connections, enter:

    vcremote --secure false

    When you use this option, clear the Secure checkbox and leave the Pin field blank when configuring the agent in Visual Studio.

  • To specify a location for remote agent files, enter:

    vcremote --serverDir directory_path

    where directory_path is the location on your Mac to place log files, builds, and server certificates. By default, this location is /Users/<username>/vcremote. Builds are organized by build number in this location.

  • To use a background process to capture stdout and stderr to a file named server.log, enter:

    vcremote > server.log 2>&1 &

    The server.log file can assist in troubleshooting build issues.

  • To run the agent by using a configuration file instead of command-line parameters, enter:

    vcremote --config config_file_path

    where config_file_path is the path to a configuration file in JSON format. The startup options and their values must not include dashes.

Troubleshoot the remote agent

Debugging on an iOS device

If debugging on an iOS device does not work, there could be issues with the tool ideviceinstaller, which is used to communicate with an iOS device. This tool is typically installed from Homebrew during the installation of vcremote. Follow the steps below as a workaround.

Extract Unity Package On Mac Apps

Open the Terminal app and update ideviceinstaller and its dependencies by running the following commands in order:

  1. Ensure Homebrew is updated

    brew update

  2. Uninstall libimobiledevice and usbmuxd

    brew uninstall --ignore-dependencies libimobiledevice

    brew uninstall --ignore-dependencies usbmuxd

  3. Install the latest version of libimobiledevice and usbmuxd

    brew install --HEAD usbmuxd

    brew unlink usbmuxd

    brew link usbmuxd

    brew install --HEAD libimobiledevice

  4. Uninstall and reinstall ideviceinstaller

    brew uninstall ideviceinstaller

    brew install ideviceinstaller

Extract Unity Package On Mac App Download

Verify that ideviceinstaller can communicate with the device by trying to list the apps installed on the device:

ideviceinstaller -l

If ideviceinstaller errors that it cannot access the folder /var/db/lockdown, change the privilege on the folder with:

Extract Unity Package On Mac App Free

sudo chmod 777 /var/db/lockdown

Extract Unity Package On Mac Application

Then verify again if ideviceinstaller can communicate with the device.

See also