Your app uses public APIs in an unapproved manner

Hi there! I published an auto clicker app on the Mac App Store about 7 months ago with no issue. However, I just submitted a new update and was binary rejected for the following reason:

"Your app uses public APIs in an unapproved manner, which does not comply with guideline 2.5.1 of the App Store Review Guidelines. Specifically, the app uses Accessibility to keep the mouse active, which is not the intended use of the Accessibility API."

I'm currently using a CGEvent.post() to click automatically, and this requires Accessibility permissions to work.

Is there an approved, official way to programmatically click for users? There are tons of auto clickers on the Mac App Store, so I'm a little confused as to why I'm being rejected now.

Thank you so much!

Here's the code snippet that actually clicks the mouse:

if AXIsProcessTrusted() == true {
var ml = NSEvent.mouseLocation

ml.y = NSHeight(NSScreen.screens[0].frame) - ml.y

var location = CGPoint(x: ml.x, y: ml.y)

var downClick = CGEvent(mouseEventSource: nil, mouseType: mouseTypeDown, mouseCursorPosition: location, mouseButton: mouseButton)!

var upClick = CGEvent(mouseEventSource: nil, mouseType: mouseTypeUp, mouseCursorPosition: location, mouseButton: mouseButton)!

downClick.post(tap: .cghidEventTap)

upClick.post(tap: .cghidEventTap)
}

As with many App Review issues, there are business aspects and technical aspects to this. On the technical front:

Is there an approved, official way to programmatically click for users?

CGEvent is a valid way to do this (and is probably the best way).

this requires Accessibility permissions to work.

Yes. Moreover, any alternative API to do this will also require the Accessibility privilege, because that privilege is a user-level concept that says “This app can take over my entire machine.”

On the business front, I can’t comment on that side of things. You’ll have to discuss that with App Review directly.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Hi tuggif

Did you got any resolution for this? We have faced the same issue and unfortunately Apple reviewers just paste a standard answer that auto clicking is not the intended use of the accessibility API and pastes a link to guidelines "help users automates processes is not the intended use of the Accessibility API and does not comply with guideline 2.5.1 of the App Store Review Guidelines." However I can not see anything related to the intended use in this pointed guideline. Were you able to manage this by some other means? Thanks!

Your app uses public APIs in an unapproved manner
 
 
Q