Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Access private APIs on NON-jailbroken devices for Business use ONLY

This question follows the answer provided by Nate on this link: How do I change my iOS applications' entitlements?

It seems the described procedure is to be applied on Jailbroken devices.

I'm interested in being able to turn off the screen via my iOS application. Previous answers point to doing this:

void (*BKSDisplayServicesSetScreenBlanked)(BOOL blanked) = (void (*)(BOOL blanked))dlsym(RTLD_DEFAULT, "BKSDisplayServicesSetScreenBlanked");

Then

BKSDisplayServicesSetScreenBlanked(1); // 1 to dim, 0 to undim

I read that the app also needs com.apple.backboard.client entitlement. This is where my knowledge stops.

How can I use this in my app if the app is ONLY to be used in a business context controlled via Apple's MDM platform ?

I do not want to jailbreak the device.

like image 657
teuteuguy Avatar asked Sep 06 '13 09:09

teuteuguy


Video Answer


1 Answers

First of all, very interesting question. Unfortunately, I don't have the answer, but have some info to share:

I am not aware of any method to add entitlements to 3rd party apps on NON jailbroken phone. You can check my question here: Does anybody know a way to add entitlement to iOS application for non jailbroken device? A lot of upvotes, no anwer thought :(

Generally speaking, entitlement area was reverse engineered to death and there is quite small chance of finding some holes around it. So, I would say, you will have to dump BKSDisplayServices method and search for something else to turn off screen.

I tried to find a way to turn off display on non-jailbroken device too, even posted a bounty on it: Turn off display in iPhone OS (iOS) There were several answers, but none of them worked well enough.

like image 181
Victor Ronin Avatar answered Oct 18 '22 22:10

Victor Ronin