Skip to main content

HealthShare Personal Community Mobile Application Guide




1. Overview

Personal Community is designed as a fully responsive web application. Additionally, organizations can deploy Personal Community as a mobile application available on various app stores.

This guide outlines how to leverage the mobile application framework to build and deploy the hybrid mobile application. Hybrid mobile apps are developed using web technologies such as HTML, CSS, and JavaScript but are wrapped in a native container, allowing them to be installed on mobile devices and accessed through app stores.

Personal Community uses Capacitor to create the hybrid mobile application. Capacitor is a cross-platform app runtime that provides a native bridge for web apps, enabling you to build and deploy mobile applications using web technologies. Capacitor allows you to:

  • Access native device features using a simple API.
  • Deploy your application as a native app on multiple platforms, including iOS and Android.

To learn more about Capacitor, visit the official Capacitor documentation .

2. Responsibility Matrix

Ownership of the mobile application is shared across three parties:

  • Core Personal Community Development
    • Ensures the application functions as intended when deployed to iOS or Android devices.
    • Conducts yearly reviews of the application with Apple and Google to ensure it meets their publishing guidelines.
  • Implementation
    • Deploys the mobile application for each customer using Capacitor.
    • If implementing push notifications, creation and management of Firebase project for push notification support. 
    • Manages the deployment of the mobile application as part of Personal Community upgrades.
    • Publishes the mobile application to the app stores (this may be handled by the customer).
  • Customer (if not handled by implementation)
    • If implementing push notifications, creation and management of Firebase project for push notification support. 
    • Manages relationships and accounts needed to publish the application to the app store.
    • Publishes the mobile application to the app stores.

3. Building the Personal Community Mobile Application with Capacitor

3.1. Environment Requirements

Version Dependencies

Building the mobile application for Personal Community requires specific versions of software.  Always ensure you are using the versions specified in this document, failure to due so may cause unexpected behavior in the application.

If you are building the application for iOS, your environment must be  macOS .

3.2. Installing NodeJS

Ensure you are using the correct version of NodeJS for the version of Personal Community you are using.  

Personal Community Version Node Version npm Version
<=2025.5 16.19.0 8.19.3
2025.6 - 2026.3 20.14.0 10.7.0
>=2026.4 22+ 10.9.8

Use the following steps to install:

  1. Uninstall any other versions of node that are currently on the system.
  2. Download and install node version manager (nvm) and use it to install the appropriate node version.
    1. On Mac/Linux, download and install nvm from:  https://github.com/creationix/nvm
    2. On Windows, download and install nvm from  https://github.com/coreybutler/nvm-windows/releases/download/1.1.7/nvm-setup.zip
  3. Using the terminal of your choice, install node.
    nvm install 22
    nvm use 22
    
  4. On mac / Linux, run 
    nvm alias default 22
    
  5. Confirm your version of node.
    node --version
    # v22.x.x
    
  6. Confirm your version of npm.
    npm --version
    # v10.9.8
    
  7. If the npm version is not correct, install the correct version.
    1. On Mac/Linux
      npm install -g [email protected]
      
    2. On Windows
      1. Delete the following files from the nvm\[node version]   folder (e.g. C:\Users\[user name]\AppData\Roaming\nvm\10.15.1)
        C:\Users\[user name]\AppData\Roaming\nvm\[node version]\npm
        C:\Users\[user name]\AppData\Roaming\nvm\[node version]\npm.cmd
        C:\Users\[user name]\AppData\Roaming\nvm\[node version]\npx
        C:\Users\[user name]\AppData\Roaming\nvm\[node version]\npx.cmd
        
      2. Rename the underlying node_modules\npm folder to npm2
        C:\Users\[user name]\AppData\Roaming\nvm\[node version]\node_modules\npm2
        
      3. Open any console with admin rights, and type the following commands
        cd C:\Users\[user name]\AppData\Roaming\nvm\[node version]\node_modules\npm2\bin
        node npm-cli.js i -g [email protected]
        
      4. Verify the npm version
        npm --version
        # v10.9.8
        


3.3. Requirements for iOS

Building the mobile app for iOS requires macOS.  

Install the following dependencies:

3.3.1. Xcode Version and Minimum OS Version

Xcode is Apple's IDE for creating native macOS, iOS, and iPadOS applications. Install Xcode by using the Apple App Store on your Mac.

For Personal Community versions with a minimum OS version defined below, the minimum version should not be modified in Xcode. 

Personal Community Version Xcode Version Minimum OS Version
2025.6 - 2026.2 16.0+
>=2026.3 26.0+ (required only by Apple policy at the time of release) 16.0

Beginning in April 2026, Apple requires Xcode version 26 for App Store submission. Xcode 26 should be used to ensure compatibility with Apple's latest App Store submission policy. This is independent of Personal Community version. 

3.3.2. XCode Command Line Tools

The Xcode command line tools are additional tools not included with the core of Xcode that are required for building and testing our application. Once Xcode has been installed,  install the Xcode Command Line Tools by running the following command in the terminal:

xcode-select --install

V erify that the tools are installed.

xcode-select -p
# /Applications/Xcode.app/Contents/Developer

3.3.3. Homebrew

Homebrew is a package manager for macOS packages. It is needed in order to install CocoaPods. To install Homebrew, run the following bash command:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

3.3.4. Cocoapods

Personal Community Version Cocoapods Version
>=2025.6 1.16.2

Cocoapods is an iOS dependency manager that Capacitor uses to install and manage native dependencies for the iOS project. You can install   CocoaPods   by running the following command in the terminal:

brew install cocoapods

V erify that CocoaPods has installed correctly by running the following command :

pod --version
# 1.16.2

3.4. Requirements for Android

Personal Community Version Android Studio Version Java JDK
2025.6 - 2026.3 Ladybug | 2024.2.1 + 21
>=2026.4 Otter | 2025.2.1 + 21

Install the following dependencies to build the mobile application for Android:

  1. Android Studio

    1. Android Studio is Google's IDE for creating native Android applications. You can install Android Studio by going to the   Android Studio download page .
    2. After upgrading Android Studio, run Tools → AGP Upgrade Assistant
  2. An Android SDK installation

    1. Once Android Studio has been installed, you need to install an Android SDK package.
    2. Developing Android apps requires some Android SDK packages to be installed. Make sure to install the Android SDK Tools, and a version of the Android SDK Platforms for API 23 or greater.
    3. In Android Studio, open   Settings , search for Android SKD .   from the menu and install the platform versions you would like to test with in the   SDK Platforms   tab.

3.5. Installing Base-Capacitor-Env

Personal Community makes a pre-configured repository available for creating the mobile application. The repository with ReadMe file can be downloaded from the WRC Software Distribution . The file called HealthShare Personal Community Capacitor contains both the repository and ReadMe file. 

Follow the steps in the ReadMe file to complete the following:

  1. Configuring Capacitor
    1. Configuring Capacitor includes obtaining the intended version of the dist, which is the HealthShare Personal Community Mobile tgz file available for download from the WRC Software Distribution .
  2. Running the Mobile App

4. Push Notifications

Personal Community uses Firebase Cloud Messaging (FCM) , Google's cross-platform push notification service, to deliver notifications to both Android and iOS devices. FCM provides a single notification platform while managing delivery between the application server and the mobile device through each operating system's native notification service:

  • Android: FCM delivers notifications directly to devices through Google Play services.
  • iOS: FCM forwards notifications to Apple Push Notification service (APNs), which then delivers the notification to the device.

Each Personal Community deployment is responsible for configuring and maintaining its own Firebase project. As part of the implementation, each customer must provision and manage:

  • A dedicated Firebase project
  • Firebase service account credentials
  • Android application registration and configuration
  • iOS application registration and configuration
  • An APNs Authentication Key ( .p8 ) for iOS notification delivery

These resources are customer-specific and must be configured within the customer's own Firebase account.

Once configured, Personal Community can deliver push notifications for:

  • Personal Community system event notifications (such as account status changes and proxy configuration updates)
  • Notifications generated by other integrated external systems

Push notifications are an opt-in notification method. A patient must grant notification permission through the operating system's push notification permission dialog after signing in to the Personal Community mobile application. Until permission is granted, push notifications cannot be delivered to that device.

After permission has been granted, notification delivery continues to be governed by the device's operating system. Patients can enable or disable push notifications for the Personal Community mobile application at any time through their device's notification settings. If push notifications become unavailable, Personal Community can continue delivering notifications through the patient's configured email and/or text message notification routes.

4.1. Push Notification Limitations

The following limitations apply to push notification support:

  • Two-factor authentication – Push notifications are not supported for 2FA. Verification codes can only be delivered by email or SMS.
  • Deep links – Push notifications do not support deep links or navigation to specific pages within the application.
  • Urgent notifications – Push notifications cannot bypass device settings such as Silent mode, Do Not Disturb, or Focus modes.
  • In-app notifications – Notifications are delivered through the device's push notification service only. In-app notifications are not supported.
  • Shared devices – Push notifications are intended for devices used by a single patient. Multiple patients sharing the same device are not supported.

4.2. Prerequisites

Before you begin, ensure you have:

  • Created a Firebase project .
  • A paid Apple Developer account (required for iOS).
  • Installed and have access to the base-capacitor-env project.

4.3. Configure Base-Capacitor-Env and Firebase Project for Push Notifications

4.3.1. Android

  1. In the Firebase Console, register the Android application .
    1. Select Android to add the Android app.
    2. Use the application's package name ( appId in capacitor.config.json ) as your Android package name .
    3. Select Register app
  2. Download the google-services.json configuration file. 
  3. Copy google-services.json into the application's app directory under android/app/ .

4.3.2. iOS

  1. In the Firebase Console, register the iOS application .
    1. Select iOS within Add App to add the iOS app. 
    2. Use the app's bundle id ( appId in capacitor.config.json ) as the iOS bundle ID
    3. Select Register app
  2. Download the GoogleService-Info.plist configuration file.

    This is not the same file used for the Android app. 

    1. Open the project in Xcode:
      npx cap open ios
      
    2. Drag GoogleService-Info.plist into the Xcode project   as instructed by Firebase, ensuring to add it to all targets.

      Add the file using Xcode. Do not copy the file into the project directory.

4.3.2.1. Configure Apple Push Notifications (iOS)

A paid Apple Developer account is required to configure push notifications for iOS.

  1. In the Apple Developer Portal:
  2. Enable Push Notifications in Xcode:
    1. Open the application in Xcode.
    2. Select the application target and enable the  Push Notifications capability
      1. Ensure the   Push Notifications   capability is enabled for at least the   Release   configuration. Xcode allows you to enable the   Push Notifications   capability for   Debug ,   Release , or both.
  3. Upload the APNs Authentication Key :
    1. In the Firebase Console, navigate to the iOS application →  Settings page → Cloud Messaging.
    2. Under the iOS app configuration , upload the APNs Authentication Key or APNs Certificate.

4.3.3. Enable Push Notification Code

  1. Locate all optional push notification code by searching for the PUSH_OPTIONAL marker: 
    rg "PUSH_OPTIONAL"
    
  2. Uncomment the PUSH_OPTIONAL blocks
  3. Ensure the following files are changed:
    File Required Change
    AndroidManifest.xml Uncomment the POST_NOTIFICATIONS permission.
    AppDelegate.swift Uncomment the Firebase imports, FirebaseApp.configure() , and the APNs delegate callback implementations.
  4. Sync after uncommenting the above code:
    npx cap sync
    

4.4. Configure Personal Community for Push Notifications

4.4.1. Create Firebase Credentials

A set of interoperability credentials for your Firebase project must be created for configuration in the Personal Community production. 

First, generate a private key in your Firebase project:

  1. Navigate to the Firebase console for your Firebase project.
  2. In the Firebase project, go to Settings General Service Accounts .
  3. Select Generate a new private key .
  4. Using a text editor (e.g. VSCode), open the private key file and modify it so it is only on one line.

Next, register your Firebase interoperability credentials:

  1. Logon to the Management Portal as a user with the  %EnsRole_Adminstrator  role.
  2. Change to the Personal Community namespace. (This uses the   Switch  link, which is at the top of the Portal.)
  3. Navigate to  Interoperability > Configure > Credentials.  This displays the  Credentials Viewer  on the right.
  4. In the  Credentials Viewer , enter the following values for the fields:
    • ID  - Enter "FCM"
    • User Name  - Enter "Service_Account"
    • Password  - Enter the content of the private key you modified to be only one line.
    • Business Partner  - This field is not relevant. Do not enter any value here.
  5. Select  Save   to save these credentials.

4.4.2. Create an SSL Configuration

You will need an SSL/TLS configuration to establish secure communication with Firebase Cloud Messaging.

To create an SSL/TLS configuration on your instance of Personal Community:

  1. Log into the Management Portal for Personal Community as a user with the   %EnsRole_Administrator   role and switch to the Personal Community namespace.

  2. Go to the   SSL/TLS Configurations   page ( System Administration   >   Security   >   SSL/TLS Configurations ) and select   Create New Configuration .

  3. Enter a name of your choice for the configuration.

  4. Make sure that the configuration is enabled: the   Enabled   checkbox should already be selected.

  5. For   Type , make sure that   Client   is selected.

  6. For   Server certificate verification , make sure that   None   is selected.

  7. For   Protocols , make sure that   TLSv1.1   and   TLSv1.2   are selected.

  8. Select the   Save   button to save the new configuration.

IMPORTANT

If your installation of Personal Community is mirrored, you must complete these same steps on both members of the mirror.


4.4.3. Configure the Push Notification Production Components

To enable push notification delivery, you must configure the business process and business operation responsible for routing notifications to Firebase Cloud Messaging (FCM).

To configure your Personal Community production for push notifications:

  1. Log on to the Management Portal for Personal Community as a user with the %EnsRole_Administrator role.
  2. In your Personal Community namespace, go to the Production Configuration page. Specifically:
    1. Go to your Personal Community namespace by selecting Switch from the title bar and choosing its name in the namespace chooser.
    2. From the Management Portal, select Interoperability > Configure > Production .
  3. Set up the business operation:
    1. Under   Operations , select the   +   icon, to add a new business operation. This displays the   Business Operation Wizard .
    2. Select the HSPortal.Production.Operation.PushNotificationOperation   item in the page and do the following:

      1. Fill in the Operation Name field with the following: HSPortal_PushNotificationOperation .

      2. Select the  Enabled  check box and then select the  Apply  button to enable the component

    3. After you add the operation, set its property values as follows:
      1. Under  Basic Settings :

        1. FCMCredential – Select the Firebase credentials configured in the previous section.
        2. LockTimeout – The timeout used to coordinate OAuth access token refresh operations. By default this timeout is 5 seconds. Adjust this based on your testing of the timing to receive the OAuth response from FCM.
        3. SSLConfig – Specify the SSL/TLS configuration used to establish secure communication with Firebase Cloud Messaging. This should be set to a  valid SSL configuration that allows outbound HTTPS communication with FCM.
        4. ReplyCodeActions – Set this property to E*Retry=R,E=F .
        5. Select OK to save the business operation.
  4. Set up the business process:
    1. Under   Processes , select the   +   icon, to add a new business process. This displays the   Business Process Wizard .
    2. Select the HSPortal.Production.Process.PushNotificationProcess item in the page and do the following:

      1. Fill in the Process Name field with the following: HSPortal_PushNotificationProcess .

      2. Select the  Enabled  check box and then select the  Apply  button to enable the component

    3. Modify its property values as follows:
      1. SubmissionTarget – Select HSPortal_PushNotificationOperation .
      2. TokenStalenessDays – The number of days a device registration token can remain inactive before it is considered stale and automatically deactivated. By default this is 30 days.
      3. Select OK to save the business process.

4.4.4. Configure the Push Notification Process Routing

For every notification process that should be able to trigger a push notification, you must configure your Push Notification Operation as the target:

  1. Select each of the following processes if they are configured for use in your environment:
    1. HSPortal_ActivationNotificationProcess (classname: HSPortal.Production.Process.ActivationNotificationProcess) – Provides notification of the account activation workflow to the patient. 
    2. HSPortal_InvitationsNotificationProcess (classname: HSPortal.Production.Process.InvitationsNotificationProcess) – Provides invitation to enroll to the patient.
    3. HSPortal_MessageNotificationProcess (classname: HSPortal.Production.Process.MessageNotificationProcess) – Provides notification of new messages to the patient. 
    4. HSPortal_PasswordNotificationProcess (classname: HSPortal.Production.Process.PasswordNotificationProcess) – Provides notification of forgotten or expired credentials to the patient. 
    5. HSPortal_SelfEnrollmentNotificationProcess (classname: HSPortal.Production.Process.SelfEnrollmentNotificationProcess) – Provides notification of the self-enrollment process to the patient.
    6. HSPortal_TaskNotificationProcess (classname: HSPortal.Production.Process.TaskNotificationProcess) – Provides notification of new tasks to the patient.
  2. For each of the above processes, modify their property values as follows:
    1. PushNotificationTarget Select HSPortal_PushNotificationOperation .
    2. Select OK to save the business process.

4.4.5. Enable Push Notifications in the Workbench

To enable push notifications in the Workbench:

  1. Log into the Workbench as a user with the  Configuration Manager  role.
  2. Go to the  Configuration Application  page ( Setup  >  Configuration Application ) and select the  Feature Control  tab. 
  3. Select  Edit Mode  to make edits to the fields described in the following steps.
  4. In the Account Settings  box, select the Enable Push Notifications  checkbox.
  5. Submit your changes.

4.4.5.1. Additional Notification and Communication Methods

Review your existing configuration for the following account settings interactions that may enable additional, or other, methods of communication. These settings should all be reviewed for relevant push notification considerations and related fallback logic for when push notifications are no longer available for the patient. 

Notifications may revert to a fallback notification route in the following cases:

  • Failure to send the push notification
  • Unsupported content file – password-reset
  • Patient revoked notification permissions
  • Device registration token expiration
4.4.5.1.1. System Default Communication Method

By default, Email is the system default communication method. 

4.4.5.1.2. Review Preferences

Review the existing Review Preferences configuration in the Workbench. Push notifications extend the existing communication preference workflow by allowing patients to receive notifications through push notifications alone or in combination with email and/or text message preferences. The patient's existing communication preferences also serve as the fallback notification routes if push notifications can no longer be delivered (for example, if notification permission is revoked or the device registration token expires).

Push notification permission cannot be modified here, it must be modified within the device settings. 

To review the Review Preferences configuration:

  1. Log into the Workbench as a user with the Configuration Manager role.
  2. Navigate to Setup > Configuration Application and select the Feature Control tab.
  3. Select Edit Mode .
  4. Review the following settings under Account Settings .
Setting Push Notification Considerations
Enable Review Preferences

Determines whether patients can review and update their preferences after account activation.

Enabled: Patients may be able to configure their preferred notification routes after granting or declining push notification permission, depending on below configuration.

Disabled: Patients are not prompted to review their preferences. Their communication method configured during enrollment remains unchanged. If push notifications are enabled on the device for this user, notifications are delivered by push notification only. If push notifications later become unavailable (for example, notification permission is revoked or the device token expires), Personal Community falls back to the communication method configured during enrollment.

Enable Preferred Communication Method

Allows patients to configure email and text message notification routes in addition to push notifications. This setting is recommended if patients should be able to receive notifications through multiple channels.

Enabled: After accepting push notification permission, patients can choose between Push notifications only and Push notifications and other notification methods . If the latter is selected, the patient can choose Email and/or Text Message (depending on the configured options). Notifications are delivered through push notifications and each selected communication method. If push notifications later become unavailable, notifications continue to be delivered through the selected email and/or text message routes.

If the patient declines push notification permission, only the configured email and/or text message options are available.

Disabled: Patients cannot configure additional notification routes. If push notifications are enabled, notifications are delivered by push notification only. If push notifications later become unavailable, Personal Community falls back to the communication method configured during enrollment.

Enable Email Address

Recommended when email notifications are supported. 

Enable Mobile Phone Number Recommended when text message notifications are supported. 
4.4.5.1.3. Update Profile

Review the existing Update Profile configuration in the Workbench. When push notifications are enabled, the  Update Profile page is also used to allow patients to manage any additional notification delivery preferences at any point in time. The patient's communication preferences also serve as the fallback notification routes if push notifications can no longer be delivered (for example, if notification permission is revoked or the device registration token expires).

Push notification permission cannot be modified here, it must be modified within the device settings. 

To review Update Profile configuration:

  1. Log into the Workbench as a user with the Configuration Manager role.
  2. Navigate to Setup > Configuration Application and select the Feature Control tab.
  3. Select Edit Mode .
  4. Review the following settings under Account Settings .
Setting Push Notification Considerations
Enable Patient Profile Updates

Determines whether patients can review and update their preferences and profile from the Profile Summary page

Enabled: Patients can modify their preferences at any time from Account Settings > Update Profile . The communication preference section behaves the same as the Review Preferences page.

Disabled: Patients cannot modify their preferences. The notification preference established during activation (or enrollment if Review Preferences is disabled) remains in effect until changed by an administrator. If push notifications are enabled on the device for this user, notifications are delivered by push notification only. If push notifications later become unavailable (for example, notification permission is revoked or the device token expires), Personal Community falls back to the communication method configured.

Enable Email Address Recommended when email notifications are supported. 
Enable Mobile Phone Number Recommended when text message notifications are supported. 
Enable Preferred Communication Method

Allows patients to manage email and text message notification routes after account activation. This setting is recommended if patients should be able to receive notifications through multiple channels.

Enabled: If push notifications have been accepted, patients can choose between Push notifications only and Push notifications and other notification methods . If the latter is selected, the patient can enable Email and/or Text Message (depending on the configured options). Notifications are delivered through push notifications and each selected communication method. If push notifications later become unavailable, notifications continue to be delivered through the selected email and/or text message routes.

If push notification permission has not been granted, only the configured Email and/or Text Message options are displayed together with a message indicating that push notifications can be enabled later from the device settings.

Disabled: Patients cannot modify communication preferences. The notification preference established during activation (or enrollment if Review Preferences is disabled) remains in effect.

Enable Email Address

Recommended when email notifications are supported. 

Enable Mobile Phone Number Recommended when text message notifications are supported. 

4.4.6. Configure System Tasks

To ensure reliable push notification delivery and ongoing maintenance of device registration tokens, configure the scheduled tasks described below.

4.4.6.1. Configure the OAuth Warm-up Task

The OAuth Warm-up Task periodically refreshes the Firebase Cloud Messaging (FCM) OAuth access token. Keeping the token cached minimizes authentication overhead and avoids delays when notifications are sent.

It is recommended that this task runs every  15 to 30 minutes .

To configure the OAuth Warm-up Task:

  1. Log into the Management Portal as a user who has a role with the %Admin_Operate:Use privilege.

  2. Go to the  Task Scheduler Wizard  page ( System Operation  >  Task Manager  >  New Task )

  3. On the  Task Scheduler Wizard  page, specify values for the fields as follows:

    1. Task Name  — Specify the name that you wish the task to have.

    2. Namespace to run task in — Select the namespace that your instance of Personal Community is using. If you have followed the example of the installation guide, this is HSPC.

    3. Task Type  — Select OAuth Warm-up Task.

  4. Once you have completed the fields on this page, select  Next . This displays the page of the wizard for specifying how frequently the task runs.

  5. On this page, specify how often the Task Manager runs the task, as well as other scheduling constraints.

  6. Select  Finish . This adds the task to those scheduled to run, and displays the  Task Schedule  page, where the task is now listed. (To go directly to the  Task Schedule  page, select  System Operation  >  Task Manager  >  Task Schedule .)

4.4.6.2. Configure the Stale Token Cleanup Task

The Stale Token Cleanup Task periodically reviews registered device tokens and deactivates tokens that have not been refreshed within the configured inactivity period.

It is recommended that this task runs once daily during off-peak hours.

To configure the Stale Token Cleanup Task:

  1. Log into the Management Portal as a user who has a role with the %Admin_Operate:Use privilege.

  2. Go to the  Task Scheduler Wizard  page ( System Operation  >  Task Manager  >  New Task )

  3. On the  Task Scheduler Wizard  page, specify values for the fields as follows:

    1. Task Name  — Specify the name that you wish the task to have.

    2. Namespace to run task in — Select the namespace that your instance of Personal Community is using. If you have followed the example of the installation guide, this is HSPC.

    3. Task Type — Select Stale Token Cleanup Task .

      1. Selecting this task displays the following field:
        1. TokenStalenessDays – The inactivity period, in days, that is used to deactivate tokens that have not been refreshed. If no value is provided here, the default value of 30 will be used.
  4. Once you have completed the fields on this page, select  Next . This displays the page of the wizard for specifying how frequently the task runs.

  5. On this page, specify how often the Task Manager runs the task, as well as other scheduling constraints.

  6. Select  Finish . This adds the task to those scheduled to run, and displays the  Task Schedule  page, where the task is now listed. (To go directly to the  Task Schedule  page, select  System Operation  >  Task Manager  >  Task Schedule .)

4.4.7. Configure Push Notification Content

See the Personal Community Messaging: System Initiated Notifications from External Systems Setup Guide and the Personal Community Localization Setup Guide for information on customizing the existing Personal Community system event notifications and creating additional notifications for notifications from external systems. 

5. Configuring Personal Community for External Credentials in Mobile App Deployments

This step is only required for implementation of external credentials with Personal Community deployed as a mobile app.

Complete the following steps to set the following global:

  1. Make the following terminal call in your Personal Community namespace:
    Set ^HSPortal.ConfigD("MobileAppOAuthRedirectURL") = "iscinternal.basecapacitorenv.app://oauth/callback"
    
    1. Replace " iscinternal.basecapacitorenv.app " with your   app bundle ID of base-capacitor-env repo in all lowercase .

6. Publishing the App

For patients to be able to download and install the Personal Community mobile application, it must be published to an app store.  InterSystems has verified the process for publishing to Apple and Google Play.  Implementation should review the full documentation provided by each app store the customer wishes to publish with.

6.1. Required Information Needed

6.1.1. Application Items Need Prior to Building a Release

Prior to building the application for release, the following information will be needed:

  • Unique name for the application on the app store (bundle id)
  • Display name for the application 
  • App Icons for the application → customers may provide implementation with one PNG and online tools can be used to create
  • Account access for implementation to assist with publishing

6.1.2. Marketing Materials 

Publishing to the app store requires designing and providing the information needed to create a store listing.  This includes:

  • A minimum of 3 screenshots of the application.  These will need to be captured at different sizes to fulfill both the Apple and Google Store requirements
  • Feature Graphic - This is required for the Google Play store.

6.1.3. Privacy and Security Materials 

Both Apple and Google require a set of attestations and privacy policies in order to publish the application.  Implementation should review what is needed for the desired stores and ensure the customer provides the appropriate links and materials well in advance of publishing.  This includes, but is not limited to:

  • Privacy policy URL
  • Content Rating
  • Target Audience
  • Data safety attestation
  • Digital Services Act Attestation (Apple)

Both Apple and Google walk the user through completing all the information needed to publish the app to their store.

6.2. Building the App for Apple Distribution

The following steps are run within Xcode to build, sign, and publish the application.

6.2.1. Setting the Application Name and Version in Xcode

In Xcode, navigate to the General setting.  In Identity, set the following:

  1. Display Name → Display name for your application
  2. Bundle Identifier → The unique identifier for this app on the app store
  3. Version → The major version of the published app
  4. Build → the minor version of the published app

Select the Info file in your App project.  On the Information Property List, set the following:

  1. Bundle display name → Display name for your application

6.2.2. Setting your App Icons

These steps assume you have created the appropriate assets catalog for your app icon.

From Xcode:

  1. Select your project from the left
  2. Right click → Add new file → choose Asset Catalog
    1. Upload your asset catalog
  3. Confirm all app icons are present

6.2.3. Publishing the App to App Connect

In XCode, run the following to publish the app to App Connect

  1. Select Project → Archive
  2. When this completes, you have the option to Validate App or Distribute App
  3. Select Distribute App and choose a distribution model.

From App Connect, you can now see this build of the application and can initiate testing, the review process, or publishing.

6.3. Building the App for Android Distribution

Publishing the app with Google Play Console requires a Google Developer account.  To publish, you can rely on Google to do the signing of the generated app bundle.

The Google Play Console will only take apps that meet the following requirements:

  1. Are serving API requests of HTTPS → ensure you are configured to use an HTTPs endpoint
  2. Is built using the release variant

6.3.1. Setting the Application Name and Version

In Visual Studio we will set the name and the version of the app.

  1. In your project, navigate to android/app/build.gradle
    1. set versionCode as appropriate → This will need to be updated on every release published to the console
    2. set versionName as appropriate
  2. Execute a find and replace for iscinternal.baseCapacitorEnv.app to set to your unique bundle identifier.
  3. Open the AndroidManifest
    1. Update the android:label to be the name of your application

6.3.2. Setting your App Icons

In Android Studio, navigate to your app/res directory.  To add icons:

  1. Right click
  2. Select New → Image Asset
  3. From the editor, change the file path to the path of your app icons

6.3.3. Building and Signing the App

In Android Studio:

  1. Sync gradle files (File → Sync Project with Gradle Files)
  2. Open the Build Variants tool bar
    1. View → Tool Windows → Build variants
    2. Set Active Build Variant to release
  3. Build the app bundle
    1. Build → Generate Signed App Bundle / APK
    2. Follow the prompts to sign the application

6.3.4. Google Play Console

Once you've built your bundle you can upload to the Google Play Console for internal, closed, open testing, and to publish for release.

  1. Configure the testing group for your test
  2. Create a new release of your application → Choose the option to let Google sign the release
  3. Upload your app-release bundle
  4. Assign your testers





FeedbackOpens in a new tab