Život je změna... bloguju teď na http://danielkvasnicka.posterous.com

Apple

  • Konec Apple Javy

    Jednou to přijít muselo.

    V release notes k nové verzi Apple Javy je mimo jiné i toto:

    As of the release of Java for Mac OS X 10.6 Update 3, the version of Java that is ported by Apple, and that ships with Mac OS X, is deprecated. This means that the Apple-produced runtime will not be maintained at the same level, and may be removed from future versions of Mac OS X. The Java runtime shipping in Mac OS X 10.6 Snow Leopard, and Mac OS X 10.5 Leopard, will continue to be supported and maintained through the standard support cycles of those products.

    Pro nás, kteří se orientujeme primárně na serverovou stranu, by to mohlo vypadat, že se toho příliš nezmění. Ale k vývoji potřebujeme věci jako Eclipse, NetBeans a další SW využívající Apple API v Javě a jak to bude s nimi? Jak dlouho to ještě budou použitelné nástroje? Napíše někdo solidní Java IDE v Cocoa, nebo to je naprosté sci-fi? Steve ví...


  • 100% over-the-air synchronizace úkolů mezi iPhonem a Macem (nebo libovolným PC)

    Před časem jsem si tu stěžoval, jak těžký je život člověka, který chce bezbolestně (= vzduchem, bez jakéhokoliv ručního blbnutí a bez nutnosti někde být) synchronizovat úkoly mezi iPhonem a Macem (či jakýmkoliv jiným počítačem).

    Dnes jsem konečně přišel na řešení, které má z toho, co jsem zkoušel, zatím nejblíže k dokonalosti. Ingredience jsou následující: Apple iCal (nebo jakýkoliv jiný klient s podporou ukládání úkolů na CalDAV servery), eTask pro iPhone a SabreDAV. Rozjíždět si vlastní CalDAV server jsem původně zcela odmítal, nicméně ukázalo se to jako zatím jediné rozumné řešení.

    SabreDAV je nadějný WebDAV/CalDAV server. Je lehounký, napsaný v PHP a běžící nad databází SQLite, což dohromady znamená, že si ho prakticky bez problémů rozběháte na každém obyčejném hostingu. Pak stačí přidat účet na váš Mac (nebo libovolný počet jakýchkoliv počítačů, v případě PC třeba s použitím Mozilla Sunbirdu) a vytvořit si kalendáře podle jednotlivých kategorií, do kterých chcete úkoly ukládat (alespoň já jsem to tak vyřešil). Celou akci pak uzavřete nákupem eTasku za $4.99. Tahle mrška podporuje hromadu CalDAV serverů a i když SabreDAV mezi nimi není, funguje perfektně. Vzhled aplikace je podle mého dost nepovedený, ale když je to prakticky jediná aplikace v App Store, co tohle umí, tak si není možno moc stěžovat. Aplikace bohužel neumí pracovat s několika kalendáři v rámci jednoho CalDAV účtu, takže budete muset zadat každý váš kalendář zvlášť. Stačí ale mít ve schránce základní URL k vašemu účtu, jelikož eTask umí URL konkrétních kalendářů najít (Find the URL).

    Takže zkoušejte. Já si jdu nalít sklenku vína a pak se budu zbytek dne kochat barevně odlišenými, editovatelnými a synchronizovanými úkoly v mém iCalu... ve všech mých iCalech. A v iPhone.


  • Jak ukládají data iCal, Mail, Address Book a iTunes? Často za použití standardů a bez obfuskace.

    Když nedávno Palm zprovoznil synchronizaci Pre s iTunes, všichni se zadrženým dechem čekali, co Apple udělá. A Apple? Podle očekávání synchronizaci zarazil. Okamžitě se vyrojila armáda, která začla Applu nadávat, že se chová monopolně. Jsou snad ale iTunes jedinou cestou, jak synchronizovat? Brání Apple synchronizaci PIM dat v Macu se zařízeními třetích stran?

    Pojďme se podívat na to, jak Apple svoje data ukládá a jak těžké asi musí pro schopného programátora být taková data synchronizovat. » Více...

  • Jak dostat do iPhone body a naplánované trasy z Google Maps

    Když se vydávám na cestu a vím, že budu potřebovat GPS, hodilo by se mi naplánovat trasu v klidu domova a pak ji jen v iPhone v aplikaci Maps otevřít. Přestože Google Maps umí ukládat naplánované trasy do vašeho Google účtu, s iPhone tato data synchronizovat nejdou, což je pro mě osobně jedna z největších bolístek. Je tedy třeba to řešit jinak.

    Řešení je triviální. Až tak triviální, že jsem si nebyl jistý, jestli o něm vůbec psát. Aby to nevypadalo, že se snažím vařit z vody :)

    Z Google Maps je možné bod či trasu odeslat mailem. Zřídil jsem si tedy v Gmailu label Mapy a vytvořil filtr, který každý příchozí mail z adresy noreply@google.com, který v předmětu obsahuje text "muj@mail sent this to you using Google Maps", archivuje, přiřadí mu zmíněný label a označí ho jako přečtený. Naplánovanou trasu či cílový bod si pak v klidu najdu na počítači a odešlu na svůj mail. Díky popisovanému filtru mi zpráva spadne rovnou do labelu Mapy a nepřekáží mezi nepřečtenými maily. Pak jen stačí na iPhone otevřít Mail, IMAP složku Mapy, daný email a kliknout na vložený odkaz. Od této chvíle je již vše v režii aplikace Maps, která mě v tomto příjemně překvapila. Bez váhání je totiž schopna najít nejen linkovaný bod, ale i okamžitě zobrazit odkazovanou trasu. Vše bez toho, abyste museli trasu datlit na iPhone.

    Než tedy Apple zařídí synchronizaci s Google Maps účtem (připadne mi to jako natolik přirozená funkce, že to považuju jen za otázku času), budu to řešit takto. A popravdě, zas tak krkolomné řešení to není.

    UPDATE: Zajímavou službou v této oblasti je také http://my-maps.appspot.com/


  • Faktury-online.cz je první online generátor faktur s podporou Apple iWork '09 / Numbers

    Nedávno jsem uvedl online generátor faktur faktury-online.cz, který na rozdíl od jiných podobných služeb nevytváří faktury v PDF, ale v několika formátech podporovaných nejrozšířenějšími kancelářskými balíky (zda je to výhoda či nevýhoda, to posuďte sami).

    Včera v noci přibyla na českém internetu unikátní podpora pro tabulkový procesor Numbers z balíku Apple iWork '09. Proč jsem implementoval podporu pro balík, jehož podíl na trhu je ještě menší než podíl samotného Applu a oproti konkurenci je mizivý? Důvodů bylo několik.

    • Mám Apple rád, takže z části to byla srdcová záležitost.
    • iWork je dobrý kus softwaru, slušná konkurence pro Office a OpenOffice.org / NeoOffice a těší mě, že mu tímto můžu malinko pomoci.
    • Přestože nový formát iWorku není veřejně specifikovaným standardem, je v principech velmi podobný ODF a OOXML (XML-in-a-ZIP) a já jako příznivec XML jsem měl chuť se v něm trošku pohrabat...
    Pocity z formátu Numbers '09 mám vcelku dobré. Dopouští se sice stejné ohavné chyby jako ODF (resp. tedy OpenOffice.org) a ukládá vše do jednoho souboru (data, styly -- pro tuto relativně jednoduchou fakturu je to XML soubor o velikosti více než 1MB), ale jinak je celkem rychle pochopitelný i bez jakékoliv dokumentace (do určité míry, ovšem). Celkem jsem neměl problém na úrovni XML laborovat ani třeba s formátováním textu či slučováním buňek.
    Doufám, že Apple se jednoho dne také rozhodne tento formát nějak standardizovat a nebo alespoň pro vývojáře registrované na ADC uvolní zdokumentovaná XML Schemata. Do jisté míry by to iWorku mohlo pomoci.
    Tak tedy doufám, že alespoň někomu přijde podpora iWorku vhod a že jí využije. Chyby hlaste :)


  • Google Sync a iPhone OS 3.0: co je jinak a proč už stojí za to to zkusit

    Nedávno jsem se rozčiloval, že kalendářové funkce v iPhone OS 3.0 jsou stále jaksi omezené. Bylo to hlavně kvůli tomu, že jsem nemohl díky limitu 5 kalendářů využít Google Sync a tudíž pro mě pozvánky byly zapovězené. Alespoň jsem si to myslel.

    Zjistil jsem však, že se věci mají jinak. Především došlo s uvedením iPhone OS 3.0 ke změně, o které se moc nemluví (na českém internetu snad vůbec), a to sice k navýšení maximálního počtu synchronizovaných kalendářů na 25. Tím padla první překážka.

    Dalším problémem byly zvěsti o tom, že kalendáře lze synchronizovat pouze sloučením do kalendáře jednoho. Dočetl jsem se to spolu s dalšími nepřesnostmi (neomezený počet synchronizovaných kalendářů, představování Google Sync jako novinky v 3.0, nefunkčnost pozvánek) na iphonetips.cz. Není tomu tak. Po nastavení Exchange účtu v iPhone a provedení první synchronizace se váš stroj u Google zaregistruje a vy pak můžete na adrese http://m.google.com/sync (třeba přímo z vašeho iPhone) zaškrtnout, které kalendáře chcete synchronizovat (dokonce pro každý stroj využívající Google Sync zvlášť). Funguje to přesně tak, jak má.

    Posledním problémem, který se ovšem vyřešit nepodařilo (a Google o něm ví), je částečná nefunkčnost pozvánek. Má se to totiž tak, že pokud vámi zvaný účastník má Google Calendar, akce se mu v kalendáři objeví, ale mailem mu nepřijde. Pokud Google Calendar nemá, pak opravdu pozvánky nefungují vůbec. Nevím, jestli je to věc iPhone, ale spíše podezírám Google (pokud je někdo Exchange expert, můžete do komentářů napsat kdo že to má tu zodpovědnost odeslat mail s pozvánkou, zda klient či server?). Každopádně ale lepší než nic.

    Suma sumárum, novinky spojené s příchodem iPhone OS 3.0 mě umožnily konečně vypnout synchronizaci kalendářů přes iTunes a přejít na mnohem pohodlnější OTA sync. A vám to doporučuji také. Stále však považuji za smutné, že práce s pozvánkami je tolik omezená.

    Na Macu řeším sync za pomoci BusySync. Aniž bych chtěl dělat reklamu, musím říci, že funguje téměř perfektně (pozvánky se nesynchronizují směrem iCal -> Google) a na rozdíl od některých řešení se neplatí paušálně, pouze jednorázově. Pohled na to, jak se vám v iCalu objeví událost, kterou jste před pár desítkami sekund uložili na iPhone (aniž byste platili za mobileMe), za to stojí :)

    Pokud jde o synchronizaci kontaktů, tak tu jsem ještě Google Syncu nepřenechal. Neměl bych pak totiž jak synchronizovat Address Book s Gmailem (bez instalace dalšího SW, do které se mi nechce -- a nebo mi něco ušlo?).


Předchozí stránka 1 2 3 Další stránka
25 příspěvků