Troubleshooting re-signing of the BMC Remedy with Smart IT App

Version 8
    Share This:

    Troubleshooting re-signing of the BMC Smart IT iOS App

    This document contains official content from the BMC Software Knowledge Base. It is automatically updated when the knowledge article is modified.


    PRODUCTSmart IT


    APPLIES TOSmart IT-2.0 and Later

     

    PROBLEM:

    Smart IT iOS App Resigning Troubleshooting. This topic contains troubleshooting tips for issues you might encounter in Smart IT iOS App Resigning.

     

    SOLUTION:

    Issue:   In resign utility app, after I click the root folder of the project and then can’t find General/Configurations/Rebranding tabs.

     

    Solution:  This issue may due to the fact that some of the files are copied from other folder and the project file is messed up.  You can choose “ File > New ” from the main menu to create a new resign project.

     

    Issue: In resign utility app, after I click “Resign”, the “Select a signing certificate” dropdown is empty, I can’t pick up any item.


    Cause: You haven’t downloaded/installed the apple distribution certificate or the certificate is invalid.

    Solution:
    Generate a certificate signing request (CSR) by using the Certificate Assistant.

    Follow the instructions that Apple provides on the CSR screen.


    • Upload the CSR to the iOS Provisioning Portal and download the distribution certificate.

    • Double click the certificate and open it with the Keychain Access application.

    • Make sure your certificate has private key, otherwise it’s invalid.

     

    Issue:  In resign utility app, after I click “Resign”, the app is frozen and hang.


    Cause:  Your certificate is invalid.

    Solution:

    • Generate a certificate signing request (CSR) by using the Certificate Assistant.
      Follow the instructions that Apple provides on the CSR screen.


      • Upload the CSR to the iOS Provisioning Portal, and download the distribution certificate.

      • Double click the certificate, and open it with the Keychain Access application.

      • Make sure your certificate has private key, otherwise it’s invalid.

     

    Issue: In resign utility app, after I click “Resign”, there is an error dialog box.

    Causes: There are different errors, possible causes can be

    1. You haven’t specified the correct xcarchive file or the version is not the right one.
    2. Values entered in the entitlements of SmartIT/Watch/WatchExtensions are invalid.
    3. Provisioning profiles does not match with the entitlements. Double check all the values mentioned in the entitlement files are correct and matching with Provisioning profile > entitlements.
    4. Required values from Project Configurations are empty.
    5. The selected distribution certificate is either invalid or you have selected the app store distribution certificate instead of an enterprise distribution certificate.
    6. Your provisioning profiles are not copied correctly to Xcode. Please open the provisioning profiles in Xcode or just drag and drop all provisioning profiles on Xcode and restart the Resigning Utility and try to resign.

     

    Issue:

    1. The resigned app can’t be installed.

    2. We are done with resigning. However, while installing app, we are getting app icon disabled/grayed.


    Solution:

     

    1. Check your app ID in your apple developer portal, make sure it has ‘iCloud’, ‘Push notification’ enabled.

    Note: If you do not enable 'iCloud', 'push notifications' you will need to enable 'iCloud', 'push notifications' and regenerate the provisioning profiles.


    2. Double check your certificate, make sure it’s not expired and installed in your Mac

    3. Check your provisioning profile, which should contains your app ID in #1.


    4. Please check the entitlement file, make sure the app ID is your app ID in #1.


    5.  When you resign the app, please make sure the certificate is the one you download in #2

     

    6.  Bundle Identifiers entered in the Configurations should not contain the prefix team identifier.

    Screen Shot 2019-09-04 at 5.45.04 PM.png 

     

    7.  Please double check the values entered in the Project Configurations are correct and not invalid.

     

    8.  Your device has iOS 10.3 or earlier that does not support smart IT.

     

     

    Issue:  While resigning Smart IT iOS app, documentation says we need to enable iCloud service. However, we don't want to use iCloud service as security reason. Can we resign ipa/xcarchive without enabling iCloud service?

     

    Solution:

    There is no simple provision to resign Smart IT iOS app without iCloud service. Customer need to enable iCloud service from their Enterprise account and do the resigning. The iCloud integration does NOT sync or share any data to iCloud either automatically or user initiated. The sole purpose of the iCloud integration is to allow the user to upload attachment(s) that are stored in iCloud to Smart IT app. For example, user is adding activity note for a ticket and want to attach screenshot which is stored in iCloud.

    Similarly, user can upload attachment from other third party cloud services like DropBox, Box.net, One Drive, Google Drive etc.

     

    Issue: We are not using Apple Watch and either any Smart IT app user will use it. Do we still need to create Watch and Watch Extension provisioning profiles, entitlements and follow the related steps?

     

    Solution:  Yes.Even if you are not using Apple Watch , still you need to create Watch and Watch Extension provisioning profiles, entitlements and follow the related steps.

     

    Issue: Unable to install Smart IT app after Resigning or The app icon is grayed out after installation or If you see below error in the device logs -

    Screen Shot 2020-01-09 at 3.44.26 PM.png

     

    Causes:

    1. Make sure that your entitlement does not have the values which are not permitted by the provisioning profile(e.g iCloud,Push notifications etc.)

     

    2. aps-environment is present in entitlement but push notifications is not enabled before creating the provisioning profile.

         workaround 1: Enable push notifications on Apple developer portal.Then regenerate the provisioning profiles and use them for resigning.

         workaround 2: You can delete the aps-environment from entitlement.Then resign and install the app again.In this case you will not get any push notifications.

     

    3. Check your app ID in your apple developer portal, make sure all the required capabilities(App Groups, Game Center, iCloud, In-App Purchase, Push Notifications) are enabled. If not, regenerate the App IDs and provisioning profiles and use the newly created provisioning profiles for resigning.

     

     

    Screen Shot 2019-12-23 at 4.27.35 PM.png

    Screen Shot 2019-12-23 at 4.24.08 PM.png

     

    4. The iOS version of your device may not be supported by the SmartIT app.

     

    5. When you test the app after resigning, If you are getting the Verification Failure error, Make sure that you are using BMC's recommended tools for installation such as Xcode on Mac and iTools on Windows.