MacOS differences from Here Core on Windows
The following is a detailed list of limitations and differences of the macOS implementation of Here Core relative to the one on Microsoft Windows. Many of these differences between the Here Core implementations are due to differences in OS support on macOS and Windows. For example, the Windows Start menu does not exist on macOS, so properties to define items for the Start menu are not supported on macOS.
Here™ continues to add improved support for a wider set of functionality on the Mac. Refer to release notes for details about changes in each release version. This article will be updated concurrently.
Registry and desktop owner settings
- Settings that would be defined in the registry on Windows are defined in a property-list file, located at
~/Library/Application Support/OpenFin/rvm/FileRegistry.plist
. This file corresponds to theHKEY_CURRENT_USER
registry hive. - The desktop owner settings related to custom protocols are not supported on macOS.
Deployment
- License management is not implemented.
- The RVM health check is not implemented.
- Cache migration is not implemented; the RVM does not automatically migrate localStorage or indexedDB data to a new version of the Runtime.
- Several properties related to controlling versions and custom protocol secured APIs are not supported (see the "Manifest properties" section, below).
Here Core UI Components
- Double-clicking on a Browser window does not maximize it.
- The Home taskbar icon is hidden.
- Browser components might require more than one click to focus.
- The corners of some UI components are squared rather than rounded.
MacOS UI
- The application or platform icon must be specified in .png format to display in the macOS Dock. Windows also supports .png files as app icons.
- The macOS Dock shows a separate icon for each browser process; icons can appear and disappear as browser processes start and stop.
- You cannot set up a customized shortcut icon or splashscreen.
- You cannot customize the RVM error dialog, other than the email property.
- The application cannot be run without a network connection.
Secured APIs
- The secured methods related to custom protocols are not supported on macOS.
Integrations
None of the third-party integrations are supported.
The Microsoft Excel integration cannot be supported on macOS, because the underlying Microsoft API is not supported on macOS.
Manifest properties
The following properties in an application manifest file are not supported on macOS:
appAssets
object and all of its properties; this means that the application cannot use remotely-hosted assets such as images, fonts, executable files or other files used by the application. Developers can host assets on their local system.dialogSettings
object and all of its properties; this means that the RVM progress dialog cannot be customized.logManagement
minimumRVMVersion
offlineAccess
: The application cannot be run without a network connection.overrideConfigUrl
: You cannot override the location of the application manifest.- Properties of the
permissions.System
object for methods related to custom protocols:registerCustomProtocol
unregisterCustomProtocol
getCustomProtocolState
- Properties of the
runtime
object:fallbackVersion
: This means that the RVM cannot fall back to a previously installed version of the Runtime, if the preferred version cannot be installed.futureVersion
: This means that the RVM cannot preload a newer version of the Runtime in preparation for an upgrade.forceVersion
: This means that the Runtime cannot be forced to install the latest version.
services
: This means that Mac implementations cannot utilize the services functionality of Here Core.shortcut
object and all of its properties; this means that the application cannot create customized, branded shortcuts or splash screens.splashScreenImage
: This means that you can't use a splash screen while the app is loading.- The
startup_app
object is supported, but with the following differences for its members:defaultCentered
is supported, but the centering effect differs from what is shown on Microsoft Windows.logManagement
is not supported.nonPersistent
is not supported.
supportInformation
object and its properties: the installer on Mac reads only theemail
property. You cannot customize the app load error dialog, other than the email property.
APIs
Some API methods are not supported on Mac.
-
System:
- downloadAsset()
- downloadRuntime()
- getAllApplications() returns a list of Here Core applications launched in the same browser process, for the same version and in the same security realm (in contrast to Windows, where it returns a list of all launched Here Core applications).
- getAllProcessInfo() is implemented, but only the process name, CPU usage, and process ID (PID) are reliably reported.
- getAppAssetInfo()
- getCookies()
- getCustomProtocolState()
- getInstalledRuntimes()
- getShortcuts()
- isAppCertified()
- launchExternalProcess()
- readRegistryValue()
- registerCustomProtocol()
- runRvmHealthCheck()
- unregisterCustomProtocol()
-
OpenFin.Application:
-
OpenFin.ExternalApplication:
-
OpenFin.Window:
Platform limitations
-
After upgrading macOS to a new major version, the Here-specific custom protocols
fin
andfins
might become unregistered, causing URLs that use these protocols to stop working. This issue is caused by macOS removing some user settings during the upgrade process. There are two ways to resolve this issue: -
Remove the RVM and install again.
-
Run the following command in a terminal window:
~/Applications/OpenFinRVM.app/Contents/Helpers/FinLinksHandler.app/Contents/MacOS/FinLinksHandler --register-to-protocols