Orodha ya maudhui:

Ukaribu Kushiriki Picha IOS App: 6 Hatua
Ukaribu Kushiriki Picha IOS App: 6 Hatua

Video: Ukaribu Kushiriki Picha IOS App: 6 Hatua

Video: Ukaribu Kushiriki Picha IOS App: 6 Hatua
Video: Kama unatumia Iphone basi Video hii ni muhimu sana kwako. 2024, Desemba
Anonim

Katika hii inayoweza kufundishwa tutatengeneza programu ya iOS na Swift ambayo hukuruhusu kushiriki picha na mtu yeyote aliye karibu, bila kuoanisha kifaa muhimu.

Tutatumia Chirp Connect kutuma data kwa kutumia sauti, na Firebase kuhifadhi picha kwenye wingu.

Kutuma data na sauti huunda uzoefu wa kipekee ambapo data inaweza kutangazwa kwa mtu yeyote katika anuwai ya kusikia.

Hatua ya 1: Sakinisha Mahitaji

Xcode

Sakinisha kutoka Duka la App.

Poda za kakao

gem sudo kufunga cocoapods

Chirp Unganisha iOS SDK

Jisajili kwenye admin.chirp.io

Hatua ya 2: Mradi wa Usanidi

1. Unda mradi wa Xcode.

Ingia kwa Firebase na uunda mradi mpya.

Wezesha Firestore kwa kubofya kwenye sehemu ya Hifadhidata na uchague Firestore ya Wingu. Bonyeza kwenye Kazi ili kuwezesha Kazi za Wingu.

3. Endesha kupitia Sanidi programu yako ya iOS kwenye ukurasa wa Muhtasari wa Mradi

Utahitaji Kitambulisho cha Kifungu kutoka kwa Tab ya Jumla katika Mipangilio ya Mradi wa Xcode yako Mara tu Podfile itakapoundwa utahitaji kuongeza utegemezi ufuatao, kabla ya kuendesha usakinishaji wa ganda.

# Maganda kwa mradi

ganda 'Firebase / Core' ganda 'Firebase / Firestore' ganda 'Firebase / Uhifadhi'

4. Pakua Chirp Unganisha iOS SDK ya hivi karibuni kutoka kwa admin.chirp.io/downloads

5. Fuata hatua kwa watengenezaji.chirp.io kuunganisha Chirp Unganisha kwenye Xcode.

Nenda kwa Kuanza / iOS. Kisha nenda chini na ufuate maagizo ya usanidi wa Swift. Hii itajumuisha kuagiza mfumo na kuunda kichwa cha kuziba.

Sasa usanidi umekamilika, tunaweza kuanza kuandika nambari kadhaa! Ni wazo nzuri kuangalia mradi wako unajengwa katika kila hatua katika usanidi.

Hatua ya 3: Andika Nambari ya IOS

1. Ingiza Firebase ndani ya ViewController yako na upanue NSData kujumuisha ugani wa hexString, ili tuweze kubadilisha mzigo wa malipo ya Chirp Unganisha kwa kamba ya hexadecimal. (Chirp Connect itapatikana shukrani ulimwenguni kwa kichwa cha kuziba).

kuagiza UIKit

kuagiza Firebase

Takwimu za ugani {

var hexString: Kamba {ramani ya kurudi {String (fomati: "% 02x", UInt8 ($ 0))}. imejiunga ()}}

2. Ongeza wajumbe wa ImagePicker kwa ViewController yako, na utangaze anuwai ya ChirpConnect inayoitwa unganisha.

darasa ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {

var unganisha: ChirpConnect? onyesha func viewDidLoad () {super.viewDidLoad ()…

3. Baada ya super.viewDidLoad, anzisha Chirp Unganisha, na usanidi simu inayopokelewa. Katika upigaji simu uliopokelewa tutapata picha kutoka Firebase kwa kutumia malipo uliyopokea na kusasisha ImageView. Unaweza kupata APP_KEY yako na APP_SECRET kutoka kwa admin.chirp.io.

connect = ChirpConnect (appKey: APP_KEY, andSecret: APP_SECRET) ikiwa let connect connect = unganisha {connect.getLicenceString {(leseni: Kamba? leseni) connect.start () connect.receivedBlock = {(data: Data?) -> () in if let data = data {print (String (format: "Data iliyopokelewa:% @", data.hexString)) acha faili = Uhifadhi.uhifadhi (). Kumbukumbu (). Mtoto (data.hexString) file.getData (maxSize: 1 * 1024 * 2048) {imageData, makosa ikiwa let error = kosa {print ("Error:% @", error.localizedDescription)} mwingine {self.imageView.image = UIImage (data: imageData!)}}}} mwingine {print ("Decode failed"); }}}}

4. Sasa ongeza nambari ya kutuma data ya picha mara tu ikiwa imechaguliwa kwenye UI.

func imagePickerController (_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [Kamba: Yoyote])

{let imageData = info [UIImagePickerControllerOriginalImage] kama? UIImage hebu data: Takwimu = UIImageJPEGUwakilishi (imageData!, 0.1)! ubinafsi. pakua "). addDocument (data: [" key ": key.hexString," timestamp ": FieldValue.serverTimestamp ()]) {error in if let error = error {print (error.localizedDescription)}} Storage.storage ().referensi (). mtoto (key.hexString).putData (data, metadata: metadata) {(metadata, error) in if let error = error {print (error.localizedDescription)} else {connect.send (key)}} } self.dismiss (iliyohuishwa: kweli, kukamilika: nil)}

Kumbuka: Utahitaji kuongeza faragha - Maelezo ya Matumizi ya Maktaba ya Picha, Faragha - Maelezo ya Matumizi ya Maktaba ya Picha na Faragha - Taarifa za Matumizi ya Maikrofoni kwa Info.plist yako kutoa ruhusa ya kutumia Kamera, Maktaba ya Picha na Maikrofoni.

Hatua ya 4: Unda Kiolesura cha Mtumiaji

Unda Kiolesura cha Mtumiaji
Unda Kiolesura cha Mtumiaji

Sasa nenda kwenye faili ya Main.storyboard kuunda UI.

1. Buruta kwenye PichaView na vifungo viwili kwenye Ubao wa Hadithi kutoka kwa paneli ya Maktaba ya Kitu kwenye kona ya chini kulia.

2. Kwa kila kitufe ongeza kikwazo cha urefu wa takriban 75px kwa kuchagua sehemu na kubofya kitufe cha Ongeza Vizuizi vipya (ambavyo vinaonekana kama mpiganaji wa Star Wars), kisha ingiza urefu na bonyeza Enter.

3. Chagua vifaa vyote vitatu na uziweke katika mwonekano wa mpororo kwa kubofya kitufe cha Pachika Katika Stack.

4. Sasa fungua Mhariri Msaidizi, na bonyeza CTRL na uburute kutoka kwa kila sehemu hadi nambari ya ViewController, kuunda maduka kwa kila sehemu.

@IBOutlet var imageView: UIImageView!

@IBOutlet var openLibraryButton: UIButton! @IBOutlet var openCameraButton: UIButton!

5. Sasa CTRL na uburute kutoka kwenye vitufe vyote ili kuunda Kitendo cha kufungua kamera za UI za kamera / maktaba.

6. Katika hatua ya Maktaba wazi, ongeza nambari ifuatayo

@IBAction func openLibrary (_ mtumaji: Yoyote) {

let imagePicker = UIImagePickerController () imagePicker.delegate = ubinafsi; imagePicker.sourceType =.photoLibrary self.present (imagePicker, animated: kweli, kukamilika: nil)}

7. Katika hatua ya Open Camera

@IBAction func openCamera (_ mtumaji: Yoyote) {

basi imagePicker = UIImagePickerController () imagePicker.delegate = self imagePicker.sourceType =.camera; self.present (ImagePicker, animated: kweli, kukamilisha: nil)}

Hatua ya 5: Andika Kazi ya Wingu

Kwa kuwa picha hazihitaji kuhifadhiwa kwenye wingu milele, tunaweza kuandika Kazi ya Wingu kufanya usafishaji. Hii inaweza kusababishwa kama kazi ya HTTP kila saa na huduma ya cron kama cron-job.org.

Kwanza kabisa tunahitaji kusanikisha zana za firebase

npm kufunga -g zana za moto

Halafu kutoka kwa saraka ya mizizi ya mradi kukimbia

init ya moto wa moto

Chagua kazi kutoka kwa mstari wa amri ili uanzishe kazi za wingu. Unaweza pia kuwezesha duka la moto ikiwa unataka pia kusanidi Firestore.

Kisha fungua kazi / index.js na uongeze nambari ifuatayo. Kumbuka kubadilika

kwa kitambulisho chako cha mradi wa Firebase.

kazi za const = zinahitaji ('firebase-works');

const admin = zinahitaji ('firebase-admin'); admin.initializeApp () mauzo ya nje.cleanup = works.https.onRequest ((ombi, majibu) => {admin.firestore ().kusanya ('uploads') >. 200).tuma ('OK')}).catch (err => response.status (500).tuma (err))});

Kupeleka kazi za wingu ni rahisi kama kuendesha amri hii.

kupeleka firebase

Halafu kwenye cron-job.org tengeneza kazi kuchochea mwisho huu kila saa. Sehemu ya mwisho itakuwa kitu kama

us-central1-project_id.cloudfunctions.net/cleanup

Hatua ya 6: Endesha App

Endesha programu kwenye simulator au kifaa cha iOS, na uanze kushiriki picha!

Ilipendekeza: