Satura rādītājs:
- 1. darbība: instalēšanas prasības
- 2. darbība. Iestatīšanas projekts
- 3. darbība: uzrakstiet IOS kodu
- 4. darbība: izveidojiet lietotāja interfeisu
- 5. darbība: uzrakstiet mākoņa funkciju
- 6. darbība: palaidiet lietotni
Video: Fotoattēlu koplietošanas tuvuma IOS lietotne: 6 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Šajā pamācībā mēs izveidosim iOS lietotni ar Swift, kas ļauj koplietot fotoattēlus ar ikvienu tuvumā esošu personu, neprasot ierīču savienošanu pārī.
Mēs izmantosim Chirp Connect, lai nosūtītu datus, izmantojot skaņu, un Firebase, lai saglabātu attēlus mākonī.
Datu nosūtīšana ar skaņu rada unikālu pieredzi, kurā datus var pārraidīt ikvienam dzirdes diapazonā.
1. darbība: instalēšanas prasības
Xcode
Instalējiet no App Store.
KakaoPods
sudo gem instalēt cocoapods
Chirp Connect iOS SDK
Reģistrējieties vietnē admin.chirp.io
2. darbība. Iestatīšanas projekts
1. Izveidojiet Xcode projektu.
2. Pierakstieties Firebase un izveidojiet jaunu projektu.
Iespējojiet Firestore, noklikšķinot uz sadaļas Database un atlasot Cloud Firestore. Noklikšķiniet uz Funkcijas, lai iespējotu arī mākoņa funkcijas.
3. Lapā Projekta pārskats izpildiet Iestatiet savu iOS lietotni
Jums būs nepieciešams saišu identifikators Xcode projekta iestatījumu cilnē Vispārīgi. Kad Podfile ir izveidots, pirms pod instalēšanas palaišanas jums būs jāpievieno šādas atkarības.
# Pākstis projektam
pod 'Firebase/Core' pod 'Firebase/Firestore' pod 'Firebase/Storage'
4. Lejupielādējiet jaunāko Chirp Connect iOS SDK no admin.chirp.io/downloads
5. Lai integrētu Chirp Connect Xcode, veiciet izstrādātāja.chirp.io norādītās darbības.
Dodieties uz Darba sākšana / iOS. Pēc tam ritiniet uz leju un izpildiet Swift iestatīšanas norādījumus. Tas ietvers sistēmas importēšanu un pārejas galvenes izveidi.
Tagad iestatīšana ir pabeigta, mēs varam sākt rakstīt kādu kodu! Ir laba ideja pārbaudīt jūsu projekta būvi katrā iestatīšanas posmā.
3. darbība: uzrakstiet IOS kodu
1. Importējiet Firebase savā ViewController un paplašiniet NSData, iekļaujot hexString paplašinājumu, lai mēs varētu pārvērst Chirp Connect lietderīgās slodzes heksadecimālā virknē. (Chirp Connect būs pieejams visā pasaulē, pateicoties pārejas galvenei).
importēt UIKit
importēt Firebase
paplašinājuma dati {
var hexString: String {atgriezties kartē {String (formāts: "%02x", UInt8 ($ 0))}. Joined ()}}
2. Pievienojiet ImagePicker delegātus savam ViewController un deklarējiet ChirpConnect mainīgo ar nosaukumu connect.
klases ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
var connect: ChirpConnect? ignorēt func viewDidLoad () {super.viewDidLoad ()…
3. Pēc super.viewDidLoad inicializējiet Chirp Connect un iestatiet saņemto atzvanīšanu. Saņemtajā atzvanā mēs izgūsim attēlu no Firebase, izmantojot saņemto lietderīgo slodzi, un atjaunināsim ImageView. APP_KEY un APP_SECRET varat iegūt vietnē admin.chirp.io.
connect = ChirpConnect (appKey: APP_KEY, andSecret: APP_SECRET) if let connect = connect {connect.getLicenceString {(licence: virkne ?, error: Error?) in if error == nil {if let license = license {connect.setLicenceString (licence) connect.start () connect.receivedBlock = {(dati: dati?) -> () in if let data = data {print (String (formāts: "Saņemtie dati: %@", data.hexString)) let fails = Storage.storage (). Reference (). Child (data.hexString) file.getData (maxSize: 1 * 1024 * 2048) {imageData, error in if let error = error {print ("Kļūda: %@", kļūda.localizedDescription)} else {self.imageView.image = UIImage (dati: imageData!)}}} else {print ("Atšifrēšana neizdevās"); }}}}
4. Tagad pievienojiet kodu attēla datu nosūtīšanai, kad tie ir atlasīti lietotāja saskarnē.
func imagePickerController (_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String: Any])
{let imageData = info [UIImagePickerControllerOriginalImage] kā? UIImage ļauj datiem: Data = UIImageJPEGRepresentation (imageData !, 0.1)! self.imageView.image = imageData let metadata = StorageMetadata () metadata.contentType = "image/jpeg" if let connect = connect {let key: Data = connect.randomPayload (withLength: 8) Firestore.firestore (). collection (" addDocument (dati: ["atslēga": key.hexString, "timestamp": FieldValue.serverTimestamp ()]) {error in if let error = error {print (error.localizedDescription)}} Storage.storage ().reference (). bērns (key.hexString).putData (dati, metadati: metadati) {(metadati, kļūda) in if let error = error {print (error.localizedDescription)}} cits {connect.send (key)}} } self.dismiss (animēts: patiess, pabeigts: nulle)}
Piezīme. Lai piešķirtu atļaujas lietot kameru, fotoattēlu bibliotēku un mikrofonu, jums būs jāpievieno paziņojumi par konfidencialitāti - fotoattēlu bibliotēkas lietošanas apraksts, konfidencialitāte - fotoattēlu bibliotēkas lietošanas apraksts un konfidencialitāte - mikrofona lietošanas apraksta paziņojumi.
4. darbība: izveidojiet lietotāja interfeisu
Tagad dodieties uz failu Main.storyboard, lai izveidotu lietotāja saskarni.
1. Velciet pāri ImageView un divām pogām uz sižetu no paneļa Objektu bibliotēka apakšējā labajā stūrī.
2. Katrai pogai pievienojiet augstuma ierobežojumu aptuveni 75 pikseļi, atlasot komponentu un noklikšķinot uz pogas Pievienot jaunus ierobežojumus (tas, kas izskatās kā Zvaigžņu karu kaklasaites cīnītājs), un pēc tam ievadiet augstumu un nospiediet taustiņu Enter.
3. Atlasiet visus trīs komponentus un ievietojiet tos kaudzes skatā, noklikšķinot uz pogas Iegult kaudzē.
4. Tagad atveriet palīga redaktoru un nospiediet taustiņu kombināciju CTRL un velciet no katra komponenta uz ViewController kodu, lai katram komponentam izveidotu Outlets.
@IBOutlet var imageView: UIImageView!
@IBOutlet var openLibraryButton: UIButton! @IBOutlet var openCameraButton: UIButton!
5. Tagad CTRL un velciet no abām pogām, lai izveidotu darbību, lai atvērtu kameras/bibliotēkas lietotāja saskarni.
6. Darbībā Atvērt bibliotēku pievienojiet šādu kodu
@IBAction func openLibrary (_ sūtītājs: jebkurš) {
ļaujiet imagePicker = UIImagePickerController () imagePicker.delegate = self; imagePicker.sourceType =.photoLibrary self.present (imagePicker, animēts: true, pabeigšana: nulle)}
7. Darbībā Atvērt kameru
@IBAction func openCamera (_ sūtītājs: jebkurš) {
ļaujiet imagePicker = UIImagePickerController () imagePicker.delegate = self imagePicker.sourceType =.camera; self.present (imagePicker, animēts: true, pabeigšana: nulle)}
5. darbība: uzrakstiet mākoņa funkciju
Tā kā fotoattēli nav mūžīgi jāuzglabā mākonī, mēs varam uzrakstīt mākoņa funkciju, lai veiktu tīrīšanu. Cron pakalpojums, piemēram, cron-job.org, to var aktivizēt kā HTTP funkciju katru stundu.
Pirmkārt, mums ir jāinstalē firebase rīki
npm instalēt -g firebase -tools
Pēc tam palaidiet projekta saknes direktoriju
firebase init
Lai inicializētu mākoņa funkcijas, komandrindā atlasiet funkcijas. Varat arī iespējot firestore, ja vēlaties konfigurēt arī Firestore.
Pēc tam atveriet funkcijas/index.js un pievienojiet šādu kodu. Atcerieties mainīt
uz jūsu Firebase projekta ID.
const funkcijas = pieprasīt ('ugunsbāzes funkcijas');
const admin = pieprasīt ('firebase-admin'); admin.initializeApp () export.cleanup = features.https.onRequest ((pieprasījums, atbilde) => {admin.firestore ().collection ('uploads').where ('timestamp', '{snapshot.forEach (doc =) > {admin.storage ().bucket ('gs: //.appspot.com').file (doc.data ().key).delete () doc.ref.delete ()}) atgriezt atbildi.status (200).sūtīt ('OK')}).catch (err => response.status (500).send (err))});
Mākoņa funkciju izvietošana ir tikpat vienkārša kā šīs komandas palaišana.
firebase izvietošana
Pēc tam vietnē cron-job.org izveidojiet darbu, lai katru stundu aktivizētu šo parametru. Galapunkts būs kaut kas līdzīgs
us-central1-project_id.cloudfunctions.net/cleanup
6. darbība: palaidiet lietotni
Palaidiet lietotni simulatorā vai iOS ierīcē un sāciet koplietot fotoattēlus!
Ieteicams:
AmbiBox IOS tālvadības lietotne: 5 soļi
AmbiBox IOS tālvadības lietotne: ar šo iOS lietotni jūs varat kontrolēt savu AmbiBox no sava iPhone vai iPad. Es runāšu par lietotni un to, kā tā sazinās ar AmbiBox serveri, ja vēlaties uzzināt, kā instalēt AmbiBox un LED sloksnes, šeit ir vairākas apmācības
Bluetooth LED zīmēšanas dēlis un IOS lietotne: 9 soļi (ar attēliem)
Bluetooth LED zīmēšanas dēlis un lietotne IOS: šajā apmācībā jūs varēsit izveidot Bluetooth LED tāfeli, kas var zīmēt attēlus no mūsu izveidotās lietotnes iPhone. Šajā lietotnē lietotāji varēs izveidot spēli Connect 4, kas tiks parādīta arī šajā spēļu panelī. Šis būs č
Android/iOS lietotne, lai piekļūtu jūsu OpenWrt maršrutētājam attālināti: 11 soļi
Android/iOS lietotne, lai piekļūtu jūsu OpenWrt maršrutētājam attālināti: es nesen nopirku jaunu maršrutētāju (Xiaomi Mi Router 3G). Un, protams, šī jaunā, satriecošā aparatūra iedvesmoja mani sākt strādāt pie šī projekta;)
Vienkārša IOS lietotne BLE moduļiem: 4 soļi
Vienkārša IOS lietotne BLE moduļiem: šajā pamācībā aprakstīts, kā jūs varat izveidot iOS lietotni ar ļoti pamatfunkcijām. Šī pamācība neizies visu iOS BLE lietotnes izveides procesu. Tas sniegs tikai augsta līmeņa pārskatu par dažiem svarīgiem elementiem ar
Kā padarīt fotoattēlu spokainu, izmantojot fotoattēlu redaktoru BeFunky: 3 soļi
Kā padarīt fotoattēlu spokainu ar BeFunky Photo Editor: Jūs varat padarīt jebkuru fotoattēlu (pat vienu no jaukiem kaķēniem) biedējošu, izmantojot befunky fotoattēlu redaktoru, un tas ir tā