Vytvoření instalace

Věnujete se vývoji aplikací pro Mac OS X, iOS nebo třeba webových služeb spojených s Apple produkty. Nabízíme prostor pro sdílení zkušeností.

Moderátoři: MichalM.Mac, zmiy, dandas, Macforum_Admin

Odpovědět
mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Vytvoření instalace

Příspěvek od mg-ware » 14 lis 2012 19:31

Zdravím,
poradili by jste mi jak udělat instalačku na MAC OS X.

balíček .app mám hotový, ale potřeboval bych ho nějak nainstalovat a to následovně:
1. moje.app někam umístnit
2. něco nahrát do /users/jméno uživatele/moje/
3. něco nahrát do /share/moje/
4. někde třeba na ploše udělat ikonu

Díky moc
Jedeme na FireMonkey

Uživatelský avatar
MichalM.Mac
Příspěvky: 3342
Registrován: 30 črc 2012 11:03
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od MichalM.Mac » 14 lis 2012 20:07

Asi budeš chtít vytvořit .pkg (instlační balíček). Apple na to poskytuje aplikaci PackageMaker nebo CLI nástroje.
developer.apple.com -> downloads -> auxilliary xcode tools

koukni na dokumentaci k tomu a zkus i trochu googlování.
Kdyby sis s něčim nevěděl rady, můžu zkusit pomoct, budu-li mít čas :-)

Případně můžeš ještě zkusit Packages -> http://s.sudre.free.fr/Software/Packages/about.html
nebo se na to zcela vykašlat, zabalit .app do dmg a soubory do ~/ a zástupce řešit až po spuštění aplikace..

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 14 lis 2012 20:21

MichalM.Mac píše:nebo se na to zcela vykašlat, zabalit .app do dmg a soubory do ~/ a zástupce řešit až po spuštění aplikace..
varianta, že to rozkopíruju z .app do příslušných adresářů jsem už uvažoval a mám to na to připravené, když to nepůjde jinak :D
jak to myslíš, zabalit .app do DMG?

ještě jak by se dala udělat ikona, ale to už by si snad uživatel udělal i sám.
Jedeme na FireMonkey

Uživatelský avatar
MichalM.Mac
Příspěvky: 3342
Registrován: 30 črc 2012 11:03
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od MichalM.Mac » 14 lis 2012 21:41

Můžeš jí dát třeba do ZIPu, ale dmg (s drag&drop na zástupce /Applications) je asi běžnější způsob. Pro distribuci je to dobré mít v jednom souboru..

Pěkné dmg jde dělat ručně nebo s pomocí vhodné app -> třeba https://itunes.apple.com/cz/app/dmg-arc ... 4753?mt=12 (před tim to stálo tušim nějaké dolary, tak radši stahni hned)

Zástupce -> to se dá řešit ve skriptu (skripty jdou zabalit do .pkg, aby se vykonaly před nebo po instalaci)
Softlink v shellu

Kód: Vybrat vše

ln -s /Applications/iTunes.app ~/Desktop/iTunes.app
Finder alias v AppleScriptu http://stackoverflow.com/questions/7072 ... mmand-line

Do Docku -> můžeš se hrabat v ~/Library/Preferences/com.apple.dock.plist třeba pomocí defaults nebo si vygooglit nějaký skript, ve kterém to už někdo udělal (tušim dockutil)

Uživatelský avatar
lanny
Příspěvky: 1820
Registrován: 01 srp 2012 08:51
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od lanny » 14 lis 2012 23:05

mg-ware píše:Zdravím,
poradili by jste mi jak udělat instalačku na MAC OS X.

balíček .app mám hotový, ale potřeboval bych ho nějak nainstalovat a to následovně:
1. moje.app někam umístnit
2. něco nahrát do /users/jméno uživatele/moje/
3. něco nahrát do /share/moje/
4. někde třeba na ploše udělat ikonu

Díky moc
Já bych aplikace, která chce zapisovat něco jinam než je v OS/X standard vůbec nestahoval. A už vůbec ne něco, co by mi tvořilo samo ikony na ploše. Jako běžný užicatel Macovských aplikací předpokládáím, že aplikace půjsde od Applications a podpůrné soubory do Application Support.

Wamer
Příspěvky: 118
Registrován: 30 črc 2012 15:16
Bydliště: Holešov
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od Wamer » 15 lis 2012 00:02

Nejběžnější způsob je přibalit soubory do aplikace, která je při prvním spuštění nakopíruje na patřičná místa a pak je používá.

Samotná aplikace je pak zabalena v obrazu disku .DMG, které obsahuje aplikaci *.app a zástupce do Applications :)
Zdeněk Topič - Stormio - vývoj kvalitních iOS aplikací

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 15 lis 2012 08:45

v podstatě mimo balíček musí jít pouze dva soubory.
1. konfigurace aplikace (dal bych to asi home uživatele)
2. databáze firebird (/shared/moje)

s Mac se teprve učím, tak mi prosím poraďte, kam to dát aby to bylo jak má?
Dík
Jedeme na FireMonkey

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 15 lis 2012 09:18

ještě se zeptám, nemůže být aplikace umístněna v DMG včetně databáze i konfigurace?
myslím tím, že by se to pouštělo přímo v tom DMG a data se také do toho ukládala. Pokud to teda jde?
Jedeme na FireMonkey

Uživatelský avatar
lulu
Příspěvky: 2606
Registrován: 31 črc 2012 10:44

Re: Vytvoření instalace

Příspěvek od lulu » 15 lis 2012 12:56

2MichalM.Mac: klobouk dolů!

Uživatelský avatar
MichalM.Mac
Příspěvky: 3342
Registrován: 30 črc 2012 11:03
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od MichalM.Mac » 15 lis 2012 14:00

mg-ware píše:ještě se zeptám, nemůže být aplikace umístněna v DMG včetně databáze i konfigurace?
myslím tím, že by se to pouštělo přímo v tom DMG a data se také do toho ukládala. Pokud to teda jde?
To nechceš! Sice můžeš mít r/w image, ale tento nápad je lehce "šílený". Stačí, že často potkávám Macy, kde si uživatel stáhl dmg se Skypem, nepřetáhl to do Aplikací a do docku přidal Skype z dmg. Dokud je dmg v ~/Downloads, při kliknutí na ikonu Skypu se namontuje, ale jakmile někdo v ~/Downloads udělá pořádek (bordel složka no.1), bude se divit proč mu nejde spustit Skype...

Nevim, co vytváříš za software, ale ve většině případů souhlasím s Lannym. Aplikaci je dobré nacpat do /Applications, podpůrné soubory do ~/Preferences/Application Support a nastavení do ~/Library/Preferences. Apple se v aplikacích pro MAS nebrání i umístění přímo v ~/Library, ale já to třeba nevidím vůbec rád, protože to dělá nepořádek. Když máš na počítači víc uživatelů, můžeš použíš obdobné složky v /Library.

Instalovat podpůrné soubory do jiných uživatelských složek (např. ~/Documents) by mělo mít nějaký dobrý důvod -> uživatel s těmi soubory bude muset něco dělat. (do ~/Library by lézt neměl, proto jí Apple od Liona defaultně skrývá)

Běžné typy instalace z pohledu uživatele:
1) MAS ...
2) stáhne si .dmg (samo se může namontovat a ukázat okno) -> v něm je Aplikace a zástupce na složku Applications + obrázek na pozadí -> uživatel přetahne aplikaci -> uživatel by měl odmontovat .dmg a něco s nim udělat (ale nemusí)
Screen Shot 2012-11-15 at 13.48.03.png
3) stáhne si .dmg (samo se může namontovat a ukázat okno) -> v něm je instalační balíček (.pkg) -> dvakrát na něj klikne -> spustí se intalátor -> next,next,next,heslo admina, next -> uživatel by měl odmontovat .dmg a něco s nim udělat (ale nemusí)
Screen Shot 2012-11-15 at 13.54.16.png
4) obdobné jako 2), ale .app je zabalena v ZIPu -> Safari většinou (open safe files after downloading) rozbalí ZIP a uživatel by si měl přetahnout .app někam jinam (to, že to často neudělá, je věc jiná...)
5) podobné jako 3, ale místo .dmg je to .zip

Koukni se do dokumentace na developer.apple.com.

Uživatelský avatar
lanny
Příspěvky: 1820
Registrován: 01 srp 2012 08:51
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od lanny » 15 lis 2012 14:21

@MichalIM.Mac: Výborně.

Ono jde také o od-installaci - soubory , které nejsou spojeny s aplikací buď podle aplikačního identifikátoru nebo plistu po instalaci zůstavají osiřele na disku. To nenávidím ze všeho nejvíce.

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 15 lis 2012 21:15

Asi bych preferoval variantu 2 od MichalM.Mac

chtěl bych se omluvit za moje začátečnické dotazy. Jenom abych to uvedl na pravou míru. Aplikaci vytvářím mimo Mac, ale jsem schopen ji na Mac spustit, proto jsem vlastně v tomto oboru začátečník. Nicméně jsem schopen dodržet pravidla, která jsou daná.

Rád se nechám poučit a z této diskuze to také vyplynulo, kam umístnit které soubory.
Když to shrnu:
1. ikonu vytvářet nebudu, ať si to každý udělá jak potřebuje
2. aplikaci do /Applications ale nevím jak to zajistit, aby se to tam nakopírovalo
3. databázový file do ~/Preferences/Application Support/MojeApp (tady si nejsem jist, firebird standardně nepreferuje sdílení tohoto souboru, to zajišŤuje Firebird, ale měl bych mít práva to tam nějak skopírovat)
4. nastavení do ~/Library/Preferences/MojeApp tohle bude v pohodě, pokud tam bude mít uživatel práva
5. jak zajistit, že smazáním programu se smaže i konfigurace. (Soubor databáze bych asi ponechal, data bývají cenná)

Musím toho nastudovat víc, tak prosím buďte ke mě shovívavý
Jedeme na FireMonkey

Uživatelský avatar
MichalM.Mac
Příspěvky: 3342
Registrován: 30 črc 2012 11:03
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od MichalM.Mac » 15 lis 2012 21:52

2) Buď to nechat na uživateli (kdo to bude instalovat? sekretářka? :-) nebo použít instalační balíček viz. výše
3) uživatel má na soubory ve své knihovně ~/Library read/write práva, /Library (společná pro všechny uživatele patří rootovi -> potřebuješ admina)
5) Odinstalátor nebo to neřešíš. Mrňavý konfigurační soubor ničemu nevadí.
Jak velká může být ta databáze?

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 21 lis 2012 09:59

tak jsem to nakonec musel vyřešit následovně
aplikace je pouze zabalena do ZIPu.
při prvním spuštění se vytvoří adresář ~/library/Preferences/MG-Suite a do něj se udělá konfigurační soubor
stejně tak se vytvoří databáze v /Users/Shared/mgsuite.fdb (tohle místo bylo jediné, kde lze korektně pracovat s firebirdem) Aplikace na tuto skutečnost upozorní dialogem při prvním spuštění.
vše ostatní je již na uživateli, aplikaci samotnou si může přesunout kam chce.

Mě to funguje dobře, tak bych Vás chtěl požádat, jestli by jste mi to nemohli vyzkoušet?
mělo by to fungovat na OS X 10.6 nebo vyšší
Aplikaci lze stáhnout z http://www.mg-ware.com/download/cs/MGSuite.app.zip a jedná se o pokročilý plánovací kalendář

Dík za jakoukoliv odezvu
Jedeme na FireMonkey

Uživatelský avatar
lanny
Příspěvky: 1820
Registrován: 01 srp 2012 08:51
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od lanny » 21 lis 2012 11:11

Já to rád vyzlouším, ale než to nainstaluji, zeptám se: Má to odinstalační (uninstall) skript?

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 21 lis 2012 12:21

lanny píše:Já to rád vyzlouším, ale než to nainstaluji, zeptám se: Má to odinstalační (uninstall) skript?
nemá bo nevím, jak to udělat. Nicméně jsem popsal, co a kam to ukládá. pro odinstalaci je potřeba smazat:
~/Library/Preferences/MG-Suite
/Users/shared/MGSuite.fdb
a aplikaci samotnou

jestli mi poradíte, jak ten uninstall udělat, tak na tom zapracuju.
Jedeme na FireMonkey

Uživatelský avatar
MikeshCZ
Příspěvky: 137
Registrován: 30 črc 2012 11:32
Bydliště: Pardubice
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od MikeshCZ » 21 lis 2012 12:26

Jinak Apple zdarma poskytuje odborné příručky pro vývojáře, kde mimo jiné je doporučeno, jak a kam by měla aplikace ukádat svoje věci nebo třebo jak by mělo být koncipováno UI. Doporučuji se po tom poohlédnout.

Jinak v ~/library/Preferences/MG-Suite je zbytečné ještě vytvářet složku, pokud jde pouze o jeden preferenční soubor. stačí rovnou do ~/library/Preferences/ vytvořit soubor com.[jméno vývojáře/firmy].MG-Suite.plist
iBook G3 Indigo - Mac OS9 | MacBook Pro 15" (Late 2006) | Mac Mini (Mid 2007) | MacBook 13" (Early 2008) | iPhone 4S - iOS7

Uživatelský avatar
lanny
Příspěvky: 1820
Registrován: 01 srp 2012 08:51
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od lanny » 21 lis 2012 12:46

Zkusi jsem naistalovat. Instalační dialog se objevil. Po odkliknutí zmizel a žádná jiná zpráva se neobjevila.

Po znovu nastartování aplikace chvíli běžela, pak zmizela. Žádné zprávy v Console nebyly. Vytvořené soubory jsem odinstaloval takto

Kód: Vybrat vše

rm -R ~/Library/Preferences/MG-Suite
rm    /Users/shared/MGSuite.fdb

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 21 lis 2012 13:47

lanny píše:Zkusi jsem naistalovat. Instalační dialog se objevil. Po odkliknutí zmizel a žádná jiná zpráva se neobjevila.

Po znovu nastartování aplikace chvíli běžela, pak zmizela. Žádné zprávy v Console nebyly. Vytvořené soubory jsem odinstaloval takto
pokud to trvalo cca 15 sec. tak by to mohlo být způsobené absencí databáze Firebird. Dá se to doinstalovat, ale já to měl součástí snow leopard. Máš tam uživatele Firebird (Firebird database)?
Jedeme na FireMonkey

Uživatelský avatar
lanny
Příspěvky: 1820
Registrován: 01 srp 2012 08:51
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od lanny » 21 lis 2012 13:51

Samozřejmě že firebird database nemám, není součástí standardního OS/X, myslím.

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 24 lis 2012 21:18

to vypadá, že pro tyto účely to budu muset překopat na něco jiného jak Firebird. Rozhodl jsem se pro SQLite, což by mělo být bez problémů.
Jedeme na FireMonkey

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 28 lis 2012 21:00

Tak se zase po nějakém čase ozývám.
Momentálně jsme aplikaci upravil pro databázi SQLite, která je na každém MAC OS X. Proto není potřeba nic více instalovat, ani dávat práva navíc a experimentálně jsem všechno potřebné umístnil do .app. tím je zajištěno, že se nic a nikam mimo aplikaci nekopíruje. samozřejmě, blbě se to bude aktualizovat.

Tak jestli bych vás mohl znovu poprosit o vyzkoušení.
http://www.mg-ware.com/download/cs/MGSuite.app.zip

Díky moc a dejte mi prosím vědět, jak to vypadá.
Jedeme na FireMonkey

Uživatelský avatar
MichalM.Mac
Příspěvky: 3342
Registrován: 30 črc 2012 11:03
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od MichalM.Mac » 28 lis 2012 21:21

Uvnitř .app bundle by se neměly vyskytovat věci, které se mění..

Ve virtuálu mi tvoje aplikace funguje.
Asi ještě budeš chtít zapracovat na GUI :-)

+ Pro Mac verzi by se hodilo implementovat základní funkce v menubaru

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 29 lis 2012 12:16

MichalM.Mac píše:Uvnitř .app bundle by se neměly vyskytovat věci, které se mění..
vím o důvodech, ale jako standalone aplikace to asi nemůže udělat jinak.

GUI se vylepšit samozřejmě dá, ale nemyslím, že je to úplně špatně. je to spíš jiné jak standardní.

Dík
Jedeme na FireMonkey

Uživatelský avatar
lanny
Příspěvky: 1820
Registrován: 01 srp 2012 08:51
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od lanny » 29 lis 2012 12:24

mg-ware píše:Díky moc a dejte mi prosím vědět, jak to vypadá.
Okamžitě po stáhnutí aplikace fungovala. Vemi rychlá a responsivní. GUI je pro Apple uživatele poněkud nezvyklá, ale Vaši uživatelé ji jistě znají.

SQLite bylo, IMO, dobré rozhodnutí.

mg-ware
Příspěvky: 12
Registrován: 14 lis 2012 19:23
Bydliště: Zlín
Kontaktovat uživatele:

Re: Vytvoření instalace

Příspěvek od mg-ware » 29 lis 2012 13:13

lanny píše:SQLite bylo, IMO, dobré rozhodnutí.
uvažuji i o nasazení SQLite na portable aplikaci ve Widlích. vyřeší to spoustu problémů a v jednouživatelském prostředí to zdá se funguje dobře.
Jedeme na FireMonkey

Odpovědět