Open abcde12321 opened 11 years ago
I haven't seen any problems on Xcode 5 or iOS 7. Is this still happening? Can you give more info about the problems you're seeing?
Hi, gfontenot, I worked on it for a project a few months ago( using xcode beta, ios7 beta, iphone5 ), the error i got is that when executing the code (simulate user touch) in the console it said "no valid entitlement", so nothing is really executing.
Is there any specific instructions to use this library?
Thanks a lot for helping.
I can't replicate, but a couple of things might help:
PublicAutomation
to be able to interact with the simulator. If you have run a test suite with Frank
or KIF
, it should be on since both of these frameworks turn it on at runtime. If you want to see how they accomplish this, you can check this method from the KIF
source code (Frank
does something similar, I believe, but I'm not sure where it lives in the codebase.)Been looking into this for days, and I'm pretty much nowhere. It seems like UIAutomation is getting loaded fine, but that the messages passed to UIASyntheticEvents
are just getting ignored. I'm wondering if something changed inside UIAutomation
for 7.0 that causes even UIASyntheticEvents
to be inaccessible from the currently running app the way the higher level APIs are. None of this happens on the simulator, it only happens on device. Not really sure where to start digging here. @moredip, do you have any ideas?
I'm assuming you've tried adding the entitlement that the automation api is complaining about? Other than that I'm a little stumped too to be honest. Are there any error messages or logs that provide any hints?
It's possible that with iOS 7 there needs to be a separate automation process running on the device perhaps? You could try launching the app via automation and then running PublicAutomation methods after that.
Ah. I thought that the entitlement issue described by @abcde12321 was unrelated, but after digging through the logs for the device, it looks like the test app is missing the com.apple.private.hid.client.event-dispatch
entitlement. I have to assume that this was an entitlement added with 7.0. It's impossible to add this entitlement, because it won't match the entitlements in the provisioning profile. I'm assuming that this isn't an issue on the simulator because the simulator ignores some (if not all) entitlements to begin with.
So, it looks like using UIAutomation on the device simply isn't possible on iOS 7. Huge bummer. @moredip I'm assuming this issue affects Frank as well?
Any update on this?
For those still looking at this issue:
I confirm that anything I tried with UIAutomation
works wonderfully on the Simulator, but fails (almost) silently on the device with the missing entitlement message in the console (let's consider ourselves lucky we're even getting the message, it seems tons of entitlements have been added to private API's in iOS 7, this is the only one so far that gives me a specific message on what's missing.)
I have just Jailbroken an iPhone 4 with iOS 7.0.4, added the entitlement com.apple.private.hid.client.event-dispatch
to my app, and fake-code-signed it with ldid
, and it all works good.
Of course regrettably this will not help folks for whom Jailbreaking is not an option.
Thanks for confirming my suspicions, Frank. Bummer. I've filed a radar to make the Objective-C side of the UIAutomation framework public for testing use. I'd encourage other people to do the same.
On Jan 7, 2014, at 6:07 PM, Frank Le Grand notifications@github.com wrote:
For those still looking at this issue:
I confirm that anything I tried with UIAutomation works wonderfully on the Simulator, but fail (almost) silently with the missing entitlement message in the log (let's consider ourselves lucky we're even getting the message, it seems tons of entitlements have been added to private API's in iOS 7, this is the only one so far that gives me a specific message on what's missing.)
I have just Jailbroken an iPhone 4 with iOS 7.0.4, added the entitlement com.apple.private.hid.client.event-dispatch to my app, and fake-code-signed it with ldid, and it all works good.
Of course regrettably this will not help folks for whom Jailbreaking is not an option.
— Reply to this email directly or view it on GitHub.
I filed one too a little while ago.
This framework does not work in the new IOS7 beta5 system. I have checked it with IPHONE5. The console will give an entitlement missing error.
I wonder if anyone can help with this?