| Zweig | Versionen |
|---|---|
| Master | ≥ 2,0 |
| Swift 4 - 4,2 | ≥ 1,3 <1,13 |
| Swift 3 | ≥ 1,0 <1,3 |
| Swift 2.3 | <1,0 |
DeviceKit ist ein Wert-Ersatz von UIDevice .
In unserem detaillierten ChangeLog finden Sie die neuesten Funktionen, Verbesserungen und Fehlerbehebungen.
Gerätekit kann auf verschiedene Weise installiert werden.
pod 'DeviceKit' , '~> 5.2' pod 'DeviceKit' , '3.2' pod 'DeviceKit' , '~> 1.3' pod 'DeviceKit' , '~> 1.2.3' pod 'DeviceKit' , :git => 'https://github.com/devicekit/DeviceKit.git' , :branch => 'swift-2.3-unsupported'dependencies: [
. package ( url : " https://github.com/devicekit/DeviceKit.git " , from : " 4.0.0 " ) ,
/// ...
] dependencies: [
. package ( url : " https://github.com/devicekit/DeviceKit.git " , from : " 3.2.0 " ) ,
/// ...
] github "devicekit/DeviceKit" ~> 4.0
github "devicekit/DeviceKit" ~> 3.2
github "devicekit/DeviceKit" ~> 1.3
github "devicekit/DeviceKit" ~> 1.2.3
github "devicekit/DeviceKit" "swift-2.3-unsupported"
Um es manuell zu installieren, ziehen Sie das DeviceKit -Projekt in Ihr App -Projekt in Xcode. Oder fügen Sie es als Git -Submodule hinzu, indem Sie ausführen:
$ git submodule add https://github.com/devicekit/DeviceKit.gitStellen Sie zunächst sicher, dass Sie den Framework importieren:
import DeviceKitHier sind einige Verwendungsbeispiele. Alle Geräte sind auch als Simulatoren erhältlich:
. iPhone6 => . simulator ( . iPhone6 )
. iPhone6s => . simulator ( . iPhone6s )Sie können diese Beispiele auf dem Spielplatz ausprobieren.
Notiz:
Um DeviceKit auf dem Spielplatz auszuprobieren, öffnen Sie den
DeviceKit.xcworkspaceund bauen Sie DeviceKit.Framework für jeden Simulator zuerst, indem Sie "DeviceKit" als aktuelles Schema auswählen.
let device = Device . current
print ( device ) // prints, for example, "iPhone 6 Plus"
if device == . iPhone6Plus {
// Do something
} else {
// Do something else
} let device = Device . current
if device . isPod {
// iPods (real or simulator)
} else if device . isPhone {
// iPhone (real or simulator)
} else if device . isPad {
// iPad (real or simulator)
} let device = Device . current
if device . isSimulator {
// Running on one of the simulators(iPod/iPhone/iPad)
// Skip doing something irrelevant for Simulator
} let device = Device . current
switch device {
case . simulator ( . iPhone6s ) : break // You're running on the iPhone 6s simulator
case . simulator ( . iPadAir2 ) : break // You're running on the iPad Air 2 simulator
default : break
} let groupOfAllowedDevices : [ Device ] = [ . iPhone6 , . iPhone6Plus , . iPhone6s , . iPhone6sPlus , . simulator ( . iPhone6 ) , . simulator ( . iPhone6Plus ) , . simulator ( . iPhone6s ) , . simulator ( . iPhone6sPlus ) . simulator ( . iPhone8 ) , . simulator ( . iPhone8Plus ) , . simulator ( . iPhoneX ) , . simulator ( . iPhoneXS ) , . simulator ( . iPhoneXSMax ) , . simulator ( . iPhoneXR ) ]
let device = Device . current
if device . isOneOf ( groupOfAllowedDevices ) {
// Do your action
}Notiz:
Um den aktuellen Batteriezustand zu erhalten, müssen wir
UIDevice.current.isBatteryMonitoringEnabledauftrueeinstellen. Um Probleme mit Ihrem Code zu vermeiden, lesen wir die aktuelle Einstellung und setzen sie auf das zurück, was es war, wenn wir fertig sind.
if device . batteryState == . full || device . batteryState >= . charging ( 75 ) {
print ( " Your battery is happy! ? " )
}if device . batteryLevel >= 50 {
install_iOS ( )
} else {
showError ( )
}if device . batteryState . lowPowerMode {
print ( " Low Power mode is enabled! ? " )
} else {
print ( " Low Power mode is disabled! ? " )
}if device . isGuidedAccessSessionActive {
print ( " Guided Access session is currently active " )
} else {
print ( " No Guided Access session is currently active " )
}if device . screenBrightness > 50 {
print ( " Take care of your eyes! " )
}if Device . volumeAvailableCapacityForOpportunisticUsage ?? 0 > Int64 ( 1_000_000 ) {
// download that nice-to-have huge file
}
if Device . volumeAvailableCapacityForImportantUsage ?? 0 > Int64 ( 1_000 ) {
// download that file you really need
} Alle Modellidentifikatoren stammen von der folgenden Website: https://www.theiphonewiki.com/wiki/models oder extrahiert aus der Simulator -App, die mit XCode gebündelt ist.
Wenn Sie eine bestimmte Funktion benötigen, die Sie implementieren möchten oder wenn Sie einen Fehler erlebt haben, öffnen Sie bitte ein Problem. Wenn Sie die Funktionalität von DeviceKit selbst erweitert haben und möchten, dass andere sie auch verwenden, senden Sie bitte eine Pull -Anfrage.
Die vollständige Liste der Personen, die zu diesem Projekt beigetragen haben, finden Sie hier. DeviceKit wäre nicht das, was es ohne dich ist! Vielen Dank!