Reklama
Nepřihlášený uživatel | Zaregistrovat se
 

Téma:

Počítače a InternetVývoj software

Spravuje:

ocs



Reklama



Píšete-li příklady v kódu, je docela šikovné je zabalit mezi <div class=code> ... </div>. Tisíce děkovných dopisů!
The Objective C programming language is a bastard. It is just a cross betwixt plain C and Smalltalk: a suprisingly successful and lucky cross, for it inherited all the great features of both, lacking (almost) all of their respective drawbacks. Thanks to Smalltalk, Objective C offers a clean, well-designed and powerful object abstraction—much better than, for example, Java (not speaking of uglies like C++ which only pretend they support OOP). Thanks to the C heritage, the language is simple, extremely easy to use, and yet—if need be—powerful enough.

Něco o jazyce Objective C a zároveň o knihovnách Cocoa (OpenStep).

Novější a kompletnější a snad i čitelnější verse z MujMacu (ačkoli tedy MujMac jako celek je tak nějak v háji, ale toto zatím ještě trochu funguje).


hroch32 jakz takz 
Další divnost s TestFlight – od jednoho uživatele mi chodí informace o pádu aplikace. Jenže součástí není žádný crashlog! Xcode to vůbec nevidí, ale v appstoreconnect u aplikace v záložce TestFlight se pád objeví. Jenže když si ho stahnu, je tam jen .feedback, nikoliv .crash. Dokonce i když mi uživatel pošle log ze Settings>Privacy>Analytics & Improvements>Analytics Data, je tam jen to, co v .feedback. Napadá někoho, čím by to mohlo být?
 
hroch32 jakz takz 
Mám aplikaci v Test Flight. Uživateli zdechne, crashlog odeslán. Pominu teď, že v appstoreconnect ho vidím téměř okamžitě, zatímco Xcode ho zobrazí až za kdovíjak dlouho. Hlavní problém mám v tom, že vidím, kde a na čem to spadlo, vidím, že došlo k vyvolání výjimky. Jenže nevidím tu samotnou výjimku. Jsem dement a něco přehlížím, nebo to skutečně není součástí informace, kterou mi Test Flight zprostředkuje?
 
nevim jestli jste zaznamenali ale vyslo nove corona contact tracing sdk, ale zajimavejsi je ze (preliminary) rozhrani je v objc
https://covid19-static.cdn-apple.com/applications/covid19/current/static/contact-tracing/pdf/ContactTracing-FrameworkDocumentation.pdf
(heh!)
 
no dyt ano, akorat Derived Data nastavuji (pokud nezapomenu) rovnou ke/vedle projektu - je to cca o rad pohodlnejsi nez veskere GB artefakty pak lovit ruzne po Library (pokud na to nezapomenu)
jednak se tim zjednodusi ta intermediate cesta a druhak jsem na to tak nejak zvyklejsi z ruznych jinych platforem ktere vsechno (obycejne) kompiluji nejak rozumne relativne ke hlavnimu projektu
Reakce na | Vlákno  
hroch32 jakz takz 
Já to tu poslední dobou zapomínám číst :( Většinou si vzpomenu, jen když něco potřebuju. Třeba dneska :)

Narazil jsem na takovou věc, že když jsem do UIView přidal subview a pak ho zase odebral, přestal jsem dostávat touchevents do onoho view (ani controlsy v tom view ho nedostávaly). Respektive se to dělo po nějakém překreslení view (otočení zařízení, etc.). Pak jsem zjistil, že se to děje pouze tehdy, když ono subview pozicuju pomocí programově nastavených NSLayoutConstraints. Nakonec jsem zjistil (spíš náhodou), čím to je – ono view totiž po téhle operaci mělo frame {0,0,0,0}! S ohledem na šílenosti, které autolayout páše, mě to asi nemělo překvapit, což? Jen mě holt mátly ty viditelné controlsy...
 
ocs sine ira et studio  OCSite
No, hlavně mi to přijde jako věc, kterou by sakra ale fakt to Xcode připitomělé mělo korektně umět od přirození :-O

Pokud nenajdu slušnější řešení, přečůrám to nejspíše asi tím, že namísto logického a správného $DERIVED_SOURCES použiji ne úplně ideální, leč velmi slušně použitelné /tmp, a bude vymalováno :)

r6: podle mne to úplně neplatí, podle mne by se vstupy měly referencovat od smysluplných vstupních bodů — což je (a) projekt, (b) zcela nezávisle na něm derived data, ... atd.

by sis asi musel tvořit nějaké sivé symlinky na adresáře, abys to přečůral, ale to je workaround, žejo
Reakce na | Vlákno  
kompletni reseni asi nevim, ale obecne ano - veskere vstupy do kompilace je _dobre_ referencovat primo pres projekt i kdyz treba fyzicky (jeste) neexistuji
a hlavne: v novsich Xcode se da 'Derived Data' adresar nastavit relativne projektu ( File -> Project Settings -> Derived-Data) cimz se by se mela ta relativni cesta alespon trochu zjednodusit
^ predpokladam/doufam tedy ze ten generovany zdrojak skonci tam
Reakce na | Vlákno  
ocs sine ira et studio  OCSite
Hmmm. Fajn, dám si do Build Phases script, který generuje „$DERIVED_SOURCES/Blah.m“.

Jak kua řeknu Xcode, aby tenhle zdroják v rámci targetu buildilo? Zatím jediné, co se mi podařilo najít, je přidat jej do projektu „normálně jako každý zdroják“ (to jest přes + nebo dragdrop), což ale neumožní nastavit civilisovanou path „$DERIVED_SOURCES/Blah.m“, ale trvá to na něčem jako „../../../../Users/ocs/Library/Developer/Xcode/ ... ... ... yadda yadda yadda ... ... .../Blah.m“, což zjevně není úplně optimální.

Co kde zase applovci posrali kde přehlížím? Dík.

 
ocs sine ira et studio  OCSite
A kdyby náhodou někoho zajímal ten Homekit, tak tady odsud dál se lze přes applovské strány proklikat k velmi podrobné specifikaci protokolu (259 stran v současné versi ;)). Při zběžném prolétnutí se zdá, že ten proces zařazení accessory tam je popsaný docela podrobně, na podrobné studium ale teď bohužel nemám pokdy :(
ano
:)
Reakce na | Vlákno  
ocs sine ira et studio  OCSite
 
(já to tu sleduju ze zajímavosti, ale vzhledem ke své jiné specializaci nemám ohledně ObjC dostatečnou erudici, abych radil: jsem tu takřka jenom read-only)
Reakce na | Vlákno  
ocs sine ira et studio  OCSite
No... asi vyřešeno přes Secure Enclave.

(Je tu vůbec ještě někdo, nebo tady trpím samomluvou? ;))

Reakce na | Vlákno  
ocs sine ira et studio  OCSite
Klient chce někam na Macu uložit heslo (jímž jsou šifrována privátní data uvnitř aplikace apod.) K tomu heslu se uživatel má dostat přes touchid, jinými slovy, nemůže je mít v hlavě, a uložit je do keychainu nic neřeší, protože pak je zase znovu přesně týž problém s heslem k tomu keychainu.

Co byste kdo radili za postup, aby to bylo co možná nejbezpečnější*? Dík!

* Tedy vyjma postupu „na touchid se vydefekovat“, což samozřejmě je řešení jedině smysluplné, rozumné a psychicky zdravé, ale klient, resp. jeho zákazníci, na ně neslyší :/

 
ocs sine ira et studio  OCSite
Mně se nedaří nikde najít popis toho mechanismu — co přesně znamená obsah toho URL a/nebo toho čísla; co přesně se s nimi dělá, jakým způsobem se pak ta zařízení hledají a tak.

Udělal jsem si takovou pracovní hypotézu, že URL/číslo obsahuje nějaký tag, který identifikuje zařízení od jednoho výrobce/z jedné výrobní várky/nebotakněco; a že by se pak při tom přihlašovacím procesu přes QR (ale ne přes číslo, což je taky divné) hlásila všechna zařízení s týmž tagem, jak to nově přidávané, tak i ta, jež jsou už dávno zkonfigurovaná a běží v síti. No, a záleželo by pak na tom, které z nich náhodou aplikace Home při přihlašování uvidí první. Pokud to nové, korektně se přidá. Pokud ale některé ze starších, ohlásí se „already added“.

Ale připadá mi to dokonce i na Apple příliš debilní, takže to nejspíše asi bude nějak úplně jinak :)

(Stran odrazu reality je to myslím asi jedno: když přidávám funglnové zařízení, je fuk, zda iCloud ví, jak vypadá HomeKit právě teď, nebo podává zmatenou představu sklerotika, jak vypadal před hodinou — stejně by to „already added“ říkat ne a ne a nemělo, žejo.)

Reakce na | Vlákno  
hmm narazel jsem hlavne na „already added“ ve smyslu ze iCloud muze/neodrazi realitu v realnem case
ale jo - podle popisu je to (minimalne...) nekonzistentni
(vic o tom nevim tudiz bych jenom placal ~)
ocs sine ira et studio  OCSite
To je sice pravda, ale taky je to myslím poměrně jedno — ocitají se zjevně v nějaké DB, a to, že pro tuto konkrétní DB je zrovna náhodou backing store iCloud (bohužel to jinak nejde :/ ) a nikoli třeba ~/.homekit/accessories.db je asi z hlediska toho problému, který mám, zcela lhostejné, ne?
Reakce na | Vlákno  
nerozumim a nerozumim ani co je homekit ale mam podezreni ze pridane krabicky se ocitaji prubezne v iCloud uctu
(funguje to tak s vecma jako BT sluchatka, mam podezreni ze postupujou podobne)
ocs sine ira et studio  OCSite