Downloading and Using the Siebel Mobile Archive File (Administrator Task)

Instead of downloading the Siebel app and installing it on a mobile device as described in Downloading and Installing the Siebel App, administrators can copy SiebelMobile.zip file from Siebel Tools installed home directory.

Prerequisite software

Make sure you are having proper Internet connection.

For WINDOWS laptop
  1. Node.js v20.x.x

    Refer link, https://nodejs.org/download/release/v120.16.0.

  2. JDK 17

    Refer link, https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html.

  3. Android Studio and Android SDK

    Refer link, https://developer.android.com/studio

    Note: Multiple Android SDK versions will get mapped post Android Studio installation in SDK Manager. We need to select API level 33/34.

For MAC laptop

  1. Node.js v20.x.x

    Refer link, https://nodejs.org/download/release/v120.16.0

  2. JDK 17

    Refer link, https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html

  3. Android Studio and Android SDK

    Refer link, https://developer.android.com/studio

    Note: Multiple Android SDK versions will get mapped post Android Studio installation in SDK Manager. We need to select API level 33/34.
  4. Xcode 16.2

    Refer link, https://developer.apple.com/xcode

    1. Open a terminal and set XCode via terminal. Execute following commands

      • To verify the switch xcodebuild -version.

  5. Cocoapods

    1. Refer link, https://cocoapods.org.

    2. Use one of the below command:

      brew install cocoapods

      or

      sudo gem install cocoapods

Setting up env

  1. Copy the SiebelMobile.zip archive file.

  2. Extract the SiebelMobile.zip archive file at location <PROJECT_ROOT>\RNMobile\.

    1. Now the project root folder will become <PROJECT_ROOT>\RNMobile\Siebel.

Preparation of IPA file

On MAC laptop

  1. In terminal, navigate to <PROJECT_ROOT>\RNMobile\Siebel\ios folder and execute the pod install command.

  2. Navigate to <PROJECT_ROOT>\RNMobile\siebel\ios\siebel\Info.plist.

    1. Change <string>Release_Version</string> with required build label.

      Example: <string>23.9</string>

    2. Add domain list which need to be allowed in the siebel app,
      <key>WKAppBoundDomains</key>
      <array>
          <string>*.oracle.com</string>
          <string>domain1</string>
          <string>domain2</string>
        ....
      </array>
      
  3. Open Xcode application using below command in a terminal and navigate to <PROJECT_ROOT>\RNMobile\siebel\ios.

    1. Execute command open siebel.xcworkspace.

    2. With above command it should open the project in xcode.

    3. Add the Apple signing profile details matching to your company account details.

    4. Clean Build Folder from the Product menu.

    5. Build from Product menu.

    6. Select Any iOS Device option from Product->Destination menu item.

    7. Archive project from the Product menu.

      Successful archive looks something like below:


      Successful archive UI
    8. Click on Distribute App button and select Custom and then Enterprise option.

    9. Select the All compatible device variants option from the drop down menu next to App Thinning.

    10. Select IOS in house profile and certificate.

      Let the Thinning app package load.

    11. Click on export after successful processing.

    12. Once you click export, you can see a folder with all the app versions after thinning.

    13. Pick siebel.ipa from the list to use in the devices.

Alternatively the IPA file can be generated with the below commands.

  • xcodebuild clean archive -scheme  siebel -configuration Release  -archivePath <PROJECT_ROOT>/siebel/ios/deploy/iOSDebug/Destination_Root/Siebel.xcarchive  -workspace siebel.xcworkspace DEVELOPMENT_TEAM=’<value>’ PROVISIONING_PROFILE=’<value>’
    Example:
    xcodebuild clean archive -scheme siebel -configuration Release -archivePath
    <PROJECT_ROOT>/siebel/ios/deploy/iOSDebug/Destination_Root/Siebel.xcarchive -workspace
    siebel.xcworkspace DEVELOPMENT_TEAM='VYAKS7W7VC' PROVISIONING_PROFILE='Oracle ENT2'
    CODE_SIGN_IDENTITY='iPhone Distribution: Oracle Corporation (Ent 2)'
  • xcodebuild -exportArchive -archivePath<PROJECT_ROOT>/siebel/ios/deploy/iOSDebug/Destination_Root/Siebel.xcarchive -exportPath Siebel.ipa -exportOptionsPlist iosExportOptions.plist -configuration Release

To deploy on IOS simulator

In terminal, execute command npx react-native run-ios from <PROJECT_ROOT>\RNMobile\siebel.

Preparation of APK file

Navigate to and open file <PROJECT_ROOT>\RNMobile\siebel\android\app\build.gradle.

Search for defaultConfig section and replace Release_Version with appropriate build label.

On WIN laptop

  1. Locate local.properties file under <PROJECT_ROOT>\RNMobile\siebel\android folder and correct path value for sdk.dir parameter. This is required only for Android.

    Example: sdk.dir=C:\\Users\\<Username>\\AppData\\Local\\Android\\Sdk

  2. Add following environment variables (value is for your reference, use relevant value in your case) under system variables section.

    1. Variable=ANDROID_HOME

      Value=\Users\<Username>\AppData\Local\Android\Sdk

    2. Variable=ANDROID_SDK_ROOT

      Value - \Users\<Username>\AppData\Local\Android\Sdk

    3. Variable=JAVA_HOME

      Value - C:\Program Files\Java\jdk-11

    4. Update Variable=Path with new values

      \Users\<Username>\AppData\Local\Android\Sdk\emulator\
      \Users\<Username>\AppData\Local\Android\Sdk\platform-tools\
  3. Search for Windows Powershell in WIN programs and right click on mouse and open with Administration Mode.

    1. Navigate to the folder path <PROJECT_ROOT>\RNMobile\siebel\android.

    2. Execute the commands below:

      1. ./gradlew clean

      2. ./gradlew build

      3. ./gradlew assembleRelease

        Generates apk file under path <PROJECT_ROOT>\RNMobile\siebel\android\app\build\outputs\apk\release.

To deploy on Android emulator

  1. Execute command, cd .. (to move back to root folder i.e. C:\RNMobile\siebel).

  2. Execute command npx react-native run-android.

    In case you are facing error - 'react-native' is not recognized as an internal or external command, operable program or batch file. Then, execute command. npm install -g react-native-cli.

On MAC laptop

  1. Locate local.properties file under <PROJECT_ROOT>\RNMobile\siebel\android folder and correct path value for sdk.dirparameter.

    For example: sdk.dir=/Users/{mac user}/Library/Android/sdk.

  2. In terminal, navigate to <PROJECT_ROOT>\RNMobile\siebel\android folder and execute below commands:

    1. chmod +x gradlew

    2. ./gradlew clean

    3. ./gradlew build

    4. ./gradlew assembleRelease

Generates apk file under path <PROJECT_ROOT>\RNMobile\siebel\android\app\build\outputs\apk\release

To deploy on Android emulator

In terminal, execute command npx react-native run-android from <PROJECT_ROOT>/siebel.