Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8236690

MacOS restrictions to system wide keyboard access are triggered by JavaFX

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P4
    • Resolution: Duplicate
    • Affects Version/s: 8, openjfx11, openjfx13
    • Fix Version/s: None
    • Component/s: javafx
    • Labels:

      Description

      ADDITIONAL SYSTEM INFORMATION :
      MacOS Catalina with Java 13 or 14. The actual problem is that a message box pops up asking the user if he really wants my app to read keyboard input from all other apps as well. This caused the Apple guy to reject my app and i cannot update it anymore until this is fixed :-/

      A DESCRIPTION OF THE PROBLEM :
      I'm currently trying to upload my JavaFX 13/14 app to the Apple AppStore but it seems its hard to fix for me. I got the following info from Apple about this:

      Hello Martin,

      Thank you for your reply. To resolve this issue, it would be appropriate to confirm that you are using:

      - NSEvent.addLocalMonitor

      rather than

      - CGEvent.TapCreate.

      In addition, it would be appropriate to remove IOHIDCheckAccess(kIOHIDRequestTypeListenEvent) for accessing the user’s keystroke under Privacy, as apps with this feature are not appropriate for the App Store.

      An informational video concerning requesting access from users is available from our WWDC 2019 conference. See the Advances in macOS Security video.

      We hope you will consider making the necessary changes to be in compliance with the App Store Review Guidelines and will resubmit your revised binary.

      Best regards,

      App Store Review

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Problem A: Create a JavaFX 13 or 14 based app and start it.
      Problem B: Create a JavaFX 13 or 14 based app and try to load it to the Apple AppStore.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Problem A: Just show app
      Problem B: App is accepted in the AppStore
      ACTUAL -
      Problem A: Message box appears saying MyApp would like to receive keystrokes from any application [Allow][Deny]
      Problem B: App is rejected from AppStore

      CUSTOMER SUBMITTED WORKAROUND :
      No workaround - the code has to be changed as mentioned above to comply to apple restrictions.

      FREQUENCY : always


        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                kcr Kevin Rushforth
                Reporter:
                webbuggrp Webbug Group
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: