2013-05-07 8 views
21

Niektóre tłaCzy ktoś wie, w jaki sposób dodać uprawnienia do aplikacji na system iOS dla urządzeń bez jailbreak?

  • system operacyjny iOS ma "uprawnień", pojęcie. Ogólnie rzecz biorąc, jest to pozwolenie, które jest przyznawane aplikacji. Inne usługi systemowe i aplikacje mogą sprawdzić to uprawnienie, aby zezwolić/odmówić wykonania niektórych funkcji.

  • Uprawnienia te należy podać w profilu informacyjnym.

  • Aplikacje systemowe mają wiele różnych uprawnień.

  • Aplikacja użytkownika jest ograniczona do kilku uprawnień (takich jak dostęp do usługi iCloud lub coś podobnego, które można skonfigurować w portalu dla programistów).

Pytanie brzmi: Czy ktoś wie, w jaki sposób można dodać uprawnienia do aplikacji użytkownika dla urządzenia bez jailbreak?

Ogólną ideą jest dodanie uprawnień do opracowanej aplikacji, aby uzyskać więcej uprawnień do korzystania z usług systemowych.

Uwagi & Zastrzeżenia

  • wiem, jak to zrobić dla jailbroken telefon. Jednak nie działa na urządzeniach nieobsługiwanych przez jailbreak.

  • Wiem, że Apple to odrzuci. Nie przejdzie do AppStore.

  • Rozwiązanie nie musi być rozwiązaniem kompilacyjnym (czyli sposobem modyfikacji pliku). Może to być rozwiązanie uruchomieniowe - jedna aplikacja dodająca uprawnienia do siebie lub aplikacji innej firmy.

+0

Nie jestem pewien, czy jest to możliwe jako uprawnienia przeznaczone tylko dla urządzeń z jailbroken! Zastanawiasz się, dlaczego chcesz to zrobić poprzez uprawnienie, jeśli nie będzie to AppStore? Czy nie możesz mieć określonych flag określonych przez klienta do włączania/wyłączania wymaganych funkcji? Tak właśnie postępuję w przypadku naszych aplikacji dla przedsiębiorstw. A może to ja całkowicie cię mylę? – applefreak

+0

@AppleDeveloper: Zaktualizowałem pytanie, ponieważ było trochę niejednoznaczności. Chcę dodać uprawnienia do opracowanej aplikacji, aby uzyskać więcej uprawnień do korzystania z usług systemowych. Tak więc nie jest to funkcja włączania/wyłączania naszej funkcjonalności, ale raczej uzyskiwanie dostępu do niektórych funkcji systemu chronionych uprawnieniami. –

+0

Interesujące! przepraszam, nie mogę tu pomóc, poza głosowaniem. Powodzenia. – applefreak

Odpowiedz

3

Nr Uprawnienia znajdują się w podpisie aplikacji. Ich zmiana spowoduje oczywiście złamanie podpisu, a urządzenia z iOS nie będą uruchamiać kodu ze złamanym podpisem. To, o co prosisz, nie jest możliwe.

+0

Istnieje dość długa ścieżka wykonywania między uprawnieniami przechowywanymi w niektórych plikach a rzeczywistym egzekwowaniem tych uprawnień. Zatem niemożność zmiany pliku za pomocą podpisu nie oznacza, że ​​ścieżka wykonania nie może być modyfikowana. Mogą istnieć flagi, prywatne apiasy itp., Które mogą zezwalać na dodawanie uprawnień w locie, tymczasowe wyłączanie uprawnień i tak dalej. –

+0

Nie mam konkretnej wiedzy, jak to zrobić.Jedynymi mechanizmami, które przychodzą na myśl, są zmiany flag statycznych w .plist lub wykonywanie niektórych metod na swizzling w celu dokonania zmiany środowiska wykonawczego. (http://cocoadev.com/wiki/MethodSwizzling) W pierwszym przypadku oczywiste jest, że podpisywanie kodu zostanie zerwane. Po drugie, nie widzę możliwości dodania kodu SWIZzling bez łamania podpisu. – CuriousRabbit

Powiązane problemy