| Cabang | Versi |
|---|---|
| menguasai | ≥ 2.0 |
| Swift 4 - 4.2 | ≥ 1,3 <1,13 |
| Swift 3 | ≥ 1.0 <1.3 |
| Swift 2.3 | <1.0 |
DeviceKit adalah penggantian tipe nilai UIDevice .
Lihat changelog terperinci kami untuk fitur terbaru, perbaikan, dan perbaikan bug.
DeviceKit dapat diinstal dengan berbagai cara.
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"
Untuk menginstalnya secara manual, seret proyek DeviceKit ke proyek aplikasi Anda di Xcode. Atau tambahkan sebagai submodule git dengan menjalankan:
$ git submodule add https://github.com/devicekit/DeviceKit.gitPertama pastikan untuk mengimpor kerangka kerja:
import DeviceKitBerikut adalah beberapa contoh penggunaan. Semua perangkat juga tersedia sebagai simulator:
. iPhone6 => . simulator ( . iPhone6 )
. iPhone6s => . simulator ( . iPhone6s )Anda dapat mencoba contoh -contoh ini di taman bermain.
Catatan:
Untuk mencoba DeviceKit di Playground, buka
DeviceKit.xcworkspacedan membangun DeviceKit.Framework untuk simulator apa pun terlebih dahulu dengan memilih "DeviceKit" sebagai skema Anda saat ini.
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
}Catatan:
Untuk mendapatkan status baterai saat ini, kita perlu mengatur
UIDevice.current.isBatteryMonitoringEnabledmenjaditrue. Untuk menghindari masalah apa pun dengan kode Anda, kami membaca pengaturan saat ini dan mengatur ulang apa yang terjadi sebelumnya ketika kami selesai.
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
} Semua pengidentifikasi model diambil dari situs web berikut: https://www.theiphonewiki.com/wiki/models atau diekstraksi dari aplikasi simulator yang dibundel dengan Xcode.
Jika Anda memiliki kebutuhan untuk fitur tertentu yang ingin Anda terapkan atau jika Anda mengalami bug, buka masalah. Jika Anda memperluas fungsionalitas DeviceKit sendiri dan ingin orang lain juga menggunakannya, silakan kirim permintaan tarik.
Daftar lengkap orang yang berkontribusi pada proyek ini tersedia di sini. DeviceKit tidak akan seperti apa itu tanpamu! Terima kasih banyak!