how to localize app title in mac pkg - macos

I'm creating an app to run on Macbooks. I have successfully localized my app title using the Info.plist and Infoplist.strings so when it is installed, the localized title is displayed correctly in the Applications folder, and when I run the app, the localized title appears correctly in the menu bar.
However, when I run my package to install my app, everything appears to be localized automatically in the installer EXCEPT my app title. How can I get my app title to be localized in the installer?

Related

Xcode Widget Extension Cannot Preview in WatchOS

I am adding a Widget Extension (named Complication) to my WatchOS app. When creating the widget, I am not able to select an application in the field "Embed in Application". The app name shows up, but I can only select "None".
When I want to preview the widget, the following error message comes up:
AppExtensionNeedsContainingAppError:
ComplicationExtension.appex must be in an app
The app extension "ComplicationExtension.appex" needs to be embedded
in an app in order to use previews
What can I do to get it to work? I added the app in the Target Membership but that does not work. What am I missing?

Trying to change the name that appears under the launcher icon on my iOS phone

I have a XF application. I thought I had changed everything but the name that appears on the phone under the app icon when I try on my phone locally is still an old name.
When running Xamarin on a Mac OS, does anyone know where to go to change this name for the iOS app?
In Info.plist change the value for keys CFBundleName & CFBundleDisplayName.
<key>CFBundleDisplayName</key>
<string>MY_APP_NAME</string>
<key>CFBundleName</key>
<string>MY_APP_NAME</string>
Using Visual Studio 17.0.4 I just double clicked on the Info.plist in the Solution Explorer. On the Application tab there is an Application Name field where you can change the name that appears under the icon. This ends up changing the MY_APP_NAME under the CFBundleDisplayName.

Change AssemblyName Based on Localized CFBundleDisplayName with Xamarin.Mac

Update:
Now it's an approved bug fo Xamarin.Mac. You can contribute from here:
https://github.com/xamarin/xamarin-macios/issues/7466
I coded a Xamarin.Mac app. I localized my app bundle name and bundle display name via InfoPlist.strings inside of "lproj" folders
with the help of Xcode.
Localized bundle name is visible on menu via app name now:
However, unlike Xamarin.iOS, Xamarin.Mac gets app Dock name from Assembly Name in Project options, not from "CFBundleDisplayName" :
So, my app name on the Dock icon could not response the localization settings, it stays unchanged.
So the important thing is:
How can I localize the "Assembly Name" in app options for Visual Studio Mac ? Thanks a lot.

Localizing the app name on iOS x OSX

I have this app being created for iPhone, iPad and OSX.
In order to localize my app name, I have added the key "Application Has localized display name" key, like suggested by Apple, to my info.plist file.
I have added the InfoPlist.strings file and localized it to the several languages this app will support.
My problem is this: the app, a course, has to include "for Photoshop" at the end, something like "Course for Photoshop" on the OSX version but because iOS will truncate such a long file name, the name for iOS will be shorter.
My question is this:
can I add two InfoPlist.strings to the project? one for OSX and one for iOS?
I did all this and the name of the app inside Xcode Products (DerivedData/...bla) do not changes when I launch the app in other languages using the language argument. The name is always the english one. How do I force Xcode to build the .app name on products with the localized names?
#1. I haven't tried it but you could create another target. Each target can have individual info.plist files. Then you compile one version for iOS another version for OSX as I presume you have to do anyway.
#2. Have you tried to do a project->clean? And maybe uninstall the app and then install it again with xcode.

How to deploy a FireMonkey Application for Mac OSX?

I can run a FireMonkey Application on Mac OSX with PAServer. But now, I would like to deploy the application Mac OS (something like MSI under Windows). How can I do this?
You'll want to read more about Application Bundles.
Using the application bundle that Delphi creates and deploys via PAServer
Since you're using the PAServer, you'll find that it has already created an application bundle for you. After you run the program via the PAServer, look in the following folder on the Mac for the application bundle:
/Users/[username]/Applications/Embarcadero/PAServer/scratch-dir/[profilename]
If your project is named Project1, you'll see an application bundle in that folder named Project1.
If you read the above wiki article, you'll know that Project1 has a "hidden" extension of .app, and the whole thing is really a folder with all of the required files to run the application.
Go ahead and run this application bundle directly on the Mac. If it complains about missing dylibs, such as libmidas.dylib, simply copy them from the PAServer folder into the application bundle's MacOS folder.
To the Mac OS user, the application bundle appears as a single program file, complete with an icon. The user can double-click the application bundle to run the application, drag it to their dock, etc.
Changing the icon
The application bundle will have the Delphi icon by default, but you can replace it with your own icon. On the Mac, simply right-click on the application bundle in Finder, and select Show Package Contents. In there, look in the Contents/Resources folder for the .icns file.
Use the Icon Composer application that was installed with XCode to create your .icns icon file from existing image files.
Peeking inside the bundle
Peek around inside at the rest of the contents. You'll see the required dylib, your program file, and the Info.plist file, which is a text file with things like application IDs, signatures, and other important things.
More about deployment
If your application can be self contained in an app bundle, the standard method is to put the application bundle inside a disk image .dmg file, which allows the user to drop the application into the applications folder.
If your application requires the installation of additional files, libraries, databases, or frameworks, etc., you should create a package. You can utilize PackageMaker to do this. A package is similar to the "msi" installer on Windows that you mention.
When the user double-clicks the package, it's run by Installer. It has a wizard style interface and walks the user through installing the application. You can also sign the package with your code signing certificate.
If you want to include your application bundle in the app store, you'll need to sign it. You'll also need to sandbox it.
Sandboxing and the Mac App Store - Nov 2, 2011
The vast majority of Mac users have been free from malware and we're
working on technologies to help keep it that way. As of March 1, 2012
all apps submitted to the Mac App Store must implement sandboxing.
Sandboxing your app is a great way to protect systems and users by
limiting the resources apps can access and making it more difficult
for malicious software to compromise users' systems. Learn more by
visiting the App Sandbox page.
You must create an Application Bundle in order to deploy you app on a OSX System .
Check these links for more information
Deploying Your Application (Mac OS X installers )
Application Bundle
Building Fancy DMG Images on Mac OS X

Resources