Eine Bibliothek zur Kommunikation mit Diensten auf iOS -Geräten mit nativen Protokollen.
LibimobileDevice ist eine plattformübergreifende Softwarebibliothek, die die Protokolle zur Interaktion mit iOS-Geräten spricht.
Im Gegensatz zu anderen Projekten hängt es nicht von der Verwendung vorhandener proprietärer Bibliotheken ab und erfordert keinen Gefängnisbruch.
Einige wichtige Funktionen sind:
Die implementierten Schnittstellen vieler Geräte -Service -Protokolle ermöglichen Anwendungen:
... und noch viel mehr.
Die Bibliothek befindet sich seit August 2007 in der Entwicklung mit dem Ziel, diese Geräte für den Linux -Desktop zu unterstützen.
Installieren Sie zuerst alle erforderlichen Abhängigkeiten und erstellen Sie Tools:
sudo apt-get install
build-essential
pkg-config
checkinstall
git
autoconf
automake
libtool-bin
libplist-dev
libusbmuxd-dev
libimobiledevice-glue-dev
libtatsu-dev
libssl-dev
usbmuxd Hinweis: Libtatsu (und damit libtatsu-dev ) ist eine neue Bibliothek, die erst kürzlich veröffentlicht wurde. Sie müssen sie aus der Quelle ausbauen.
Wenn Sie optional die Verwendung der Dokumentation oder Python -Bindungen erstellen möchten:
sudo apt-get install
doxygen
cythonKlonen Sie dann das eigentliche Projektrepository:
git clone https://github.com/libimobiledevice/libimobiledevice.git
cd libimobiledeviceJetzt können Sie es erstellen und installieren:
./autogen.sh
make
sudo make install Wenn Sie ein benutzerdefiniertes Präfix oder eine andere Option benötigen, die an ./configure übergeben wird, können Sie sie direkt an ./autogen.sh wie folgt übergeben:
./autogen.sh --prefix=/opt/local --enable-debug
make
sudo make install Standardmäßig wird OpenSSL als TLS/SSL -Bibliothek verwendet. Wenn Sie Gnutls bevorzugen, konfigurieren Sie mit --with-gnutls wie folgt:
./autogen.sh --with-gnutls MbedTLS wird ebenfalls unterstützt und kann durch Passieren aktiviert werden --with-mbedtls zum Konfigurieren. Wenn MbedTLS nicht an einem Standardort installiert ist, müssen Sie die Umgebungsvariablen mbedtls_INCLUDES auf den Pfad einstellen, der die MbedTLS -Header und mbedtls_LIBDIR enthält, um den Bibliotheksweg festzulegen. Optional können mbedtls_LIBS verwendet werden, um die Bibliotheksnamen direkt festzulegen. Beispiel:
./autogen.sh --with-mbedtls mbedtls_INCLUDES=/opt/local/include mbedtls_LIBDIR=/opt/local/libDie Dokumentation zur Verwendung der Bibliothek in Ihrer Anwendung ist noch nicht verfügbar. Der "Hacker Way" ist es vorerst, die Implementierung der eingeschlossenen Versorgungsunternehmen zu betrachten.
Die Bibliothek bündelt die folgenden Befehlszeilen-Dienstprogramme im Tools-Verzeichnis:
| Dienstprogramm | Beschreibung |
|---|---|
idevice_id | Listenanhangsgeräte oder Druckgerätename des angegebenen Geräts |
idevicebackup | Backup für Geräte erstellen oder wiederherstellen |
idevicebackup2 | Erstellen oder Wiederherstellen von Backups für Geräte, die iOS 4 oder später ausführen |
idevicebtlogger | Erfassen Sie den Bluetooth -HCI -Verkehr von einem Gerät (erfordert Protokollprofile). |
idevicecrashreport | Abrufen von Absturzberichten von einem Gerät ab |
idevicedate | Zeigen Sie das aktuelle Datum an oder setzen Sie es auf einem Gerät ein |
idevicedebug | Interagieren Sie mit dem Debugserver -Service eines Geräts |
idevicedebugserverproxy | Proxy Eine Debugserver -Verbindung von einem Gerät zum Fern -Debugging |
idevicediagnostics | Interagieren Sie mit der Diagnoseschnittstelle eines Geräts |
ideviceenterrecovery | Machen Sie einen Geräteingaberobeerhaltungsmodus |
ideviceimagemounter | Festplattenbilder auf dem Gerät montieren |
ideviceinfo | Informationen zu einem angeschlossenen Gerät anzeigen |
idevicename | Zeigen Sie den Gerätenamen an oder legen Sie fest |
idevicenotificationproxy | Benachrichtigungen auf einem Gerät posten oder beobachten |
idevicepair | Verwalten Sie Hostpaarungen mit Geräten und USBMUXD |
ideviceprovision | Verwalten Sie Bereitstellungsprofile auf einem Gerät |
idevicescreenshot | Ruft ein Screenshot vom angeschlossenen Gerät ab |
idevicesetlocation | Simulieren Sie den Standort auf dem Gerät |
idevicesyslog | Relais -Syslog eines angeschlossenen Geräts |
afcclient | Interagieren Sie mit dem Gerätedateisystem über AFC/HousearRest |
Bitte wenden Sie sich an die Nutzungsinformationen oder manuellen Seiten jedes Dienstprogramms, um eine Dokumentation der verfügbaren Befehlszeilenoptionen und Nutzungsbeispiele wie folgt zu dokumentieren:
ideviceinfo --help
man ideviceinfoWir begrüßen Beiträge von jedem und sind für jede Pull -Anfrage dankbar!
Wenn Sie einen Beitrag leisten möchten, geben Sie bitte die master -Filiale aus, ändern sich, verpflichten und senden Sie eine Pull -Anfrage zur Überprüfung. Sobald es genehmigt wurde, kann es in die Hauptcode -Basis verschmolzen werden.
Wenn Sie vorhaben, größere Änderungen oder ein großes Refactoring beizutragen, erstellen Sie zuerst ein Ticket, um die Idee im Voraus zu besprechen, um weniger Anstrengungen für alle zu gewährleisten.
Bitte stellen Sie sicher, dass Ihr Beitrag an:
Wir arbeiten immer noch an den Richtlinien, also tragen wir mit uns!
Diese Bibliothek und Dienstprogramme sind unter der GNU Lesser Allgemeine öffentliche LIZENZ V2.1 lizenziert, die ebenfalls im Repository in der COPYING enthalten ist.
Apple, iPhone, iPad, iPod, iPod Touch, Apple TV, Apple Watch, Mac, iOS, iPados, TVOS, WatchOs und MacOS sind Marken von Apple Inc.
Dieses Projekt ist eine unabhängige Software und wurde nicht von Apple Inc. autorisiert, gesponsert oder auf andere Weise genehmigt.
Readme aktualisiert auf: 2024-10-22