Ez a megoldás azért is érdekes, hiszen jelenleg ma a mobil applikációk piacán ez egyedülállónak számít.



Hasonló dokumentumok
Közösségi hálózatok integrálása Android platformon. Inotay Krisztián / inotay.krisztian@bmeautsoft.hu

Tel.: 06-30/ Közösségi megosztás előnyei és alkalmazása

Crossplatform mobil fejlesztőkörnyezet kiválasztását támogató kutatás

MVC. Model View Controller

TERC V.I.P. hardverkulcs regisztráció

MOBILHIRDETÉSI SZOLGÁLTATÁSOK MEGRENDELÉSE 2012

Android Wear programozás. Nyitrai István

Cookie Szabályzat. HÁZTARTÁSPANEL GfK Hungária. V április 12.

TaxiLike használati bemutató Taxitársaságok és Taxisofőrök részére

A mobil alkalmazás. Felhasználói útmutató - Android


Felhasználói dokumentáció. a TávTagTár programhoz. Készítette: Nyíri Gábor, hdd@nc-studio.com GDF Abakusz regisztrációs kód: GDFAba43

minic studio Melinda Steel Weboldal kivitelezési árajánlat

Több platform egy kódbázis Tanulságok a Tresorittól. Budai Péter, vezető fejlesztő

Grid menedzsment megoldás az ARC köztesrétegben

Symbian Nokia. A Symbian gyártója és a Nokia szabad forráskódúvá tette a Symbiant, így szabadon fejleszthetőek az applikációk a szoftverre.

A mobil alkalmazás. Felhasználói útmutató - ios

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter

Felhasználói útmutató

ANDROID EMULÁTOR. Avagy nincsen pénz drága telóra.

C++ programozási nyelv

Szoftver fő funkciói. Diszpécser rádió GPS nyomkövetés Adatátvitel és tárolás Telefonhívások kezelése 1 / 7

Gyors, kényelmes, típusbiztos

Taninform KIR kapcsolat

{LINGO} Termékleírás: - Méret: 61x18x8mm. - súly: 8,6 g. - hatótávolság: 10m. -akkumulátor-kapacitás és típus: 90mAh, polimer lítium akkumulátor

Felhasználói kézikönyv

GENERIKUS PROGRAMOZÁS Osztálysablonok, Általános felépítésű függvények, Függvénynevek túlterhelése és. Függvénysablonok

Szerver oldali Java programozás /II. 1. óra. Elemkönyvtárak. Elemkönyvtárak használata Saját elemkönyvtár készítése.

ViCA. Virtuális Chipkártya Alkalmazás

COMET webalkalmazás fejlesztés. Tóth Ádám Jasmin Media Group

Felhasználói útmutató CVR mobil kliens, ios rendszerhez.

Földmérési és Távérzékelési Intézet

Felhasználói leírás a DimNAV Server segédprogramhoz ( )

Kommunikáció Androidon Mobilinternet Wifi

Gyakorlati vizsgatevékenység B

Felhasználói kézikönyv. Tőkepiaci Közzététel. Magyar Nemzeti Bank

Erste Sorszámhúzó Felhasználói kézikönyv

A mobil nyelvtanár megvalósításának folyamata

NEPTUN MOBIL ALKALMAZÁS FELHASZNÁLÓI SEGÉDLET

Pager4 PRO - 3G.IN6.R1

OZEKI Phone System. 4 elengedhetetlen szolgáltatás a jövőbeli vállalati telefonos rendszerek számára. A jövő üzleti telefon rendszere SMS

Pick Pack Pont kereső és boltválasztó alkalmazás

HASZNÁLATI ÚTMUTATÓ DOLGOZÓK IMPORTÁLÁSA KULCS BÉR PROGRAMBA AZ ONLINE MUNKAIDŐ NYILVÁNTARTÓ RENDSZERBŐL. Budapest, november 08.

Hogyan váljunk profi felhasználóvá 80 nap alatt, vagy még gyorsabban? Ingyenes tanfolyam.

Bevezető. Servlet alapgondolatok

Mobil Telefonon Keresztüli Felügyelet Felhasználói Kézikönyv

A programozás alapjai 1 Rekurzió

BaBér bérügyviteli rendszer telepítési segédlete év

Gyakorlati vizsgatevékenység A

API tervezése mobil környezetbe. gyakorlat

Reenger alkalmazás Felhasználói kézikönyv

Zoiper VoIP mobil alkalmazás szoftver beállítása Android rendszerre

A Qpocket egy mobileszközökre optimalizált kupon applikáció

Humor Parádé Vicc Gyűjtemény Program V

1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben?

Még közelebb. a taghoz, Még közelebb

E-építési napló offline vezetése

Vízcenter. Mobil alkalmazás

GPRS Remote. GPRS alapú android applikáció távvezérléshez. Kezelési útmutató

Webes alkalmazások fejlesztése

Smarty AJAX. Miért jó ez? Ha utálsz gépelni, akkor tudod. Milyen műveletet tudunk elvégezni velük:

Grafikus keretrendszer komponensalapú webalkalmazások fejlesztéséhez

Partner. kezelési útmutató

A MOODLE KERETRENDSZER TELEPÍTÉSE

MAGYAR. Android 4.0 vagy újabb, vagy ios 5.0 vagy újabb operációs rendszerű készülék. WiFi útválasztó.

Hírlevél küldés kézikönyv

Angol szótár V

Számítógépes Hálózatok. 5. gyakorlat

Nokia N9 - MeeGo Harmattan bemutatkozik

WebResponder információs füzetek

Általános tájékoztató szolgáltatások megrendeléséhez

OZEKI Phone System. A jövő vállalati telefon rendszerének 4 alappillére. A jövő üzleti telefon rendszere SMS. Mobil mellékek. Összhang az IT-vel

és az instanceof operátor

HIK-CONNECT szolgáltatás beállítása

Pénzügyi Szervezetek Állami Felügyelete. ERA Postaláda szolgáltatás. Felhasználói segédlet

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán

FEOR szám kereső V

NAV on-line adatszolgáltatás dokumentáció

Mobilalkalmazás! RÖVID ÁTTEKINTÉS: HOGYAN MŰKÖDIK AZ ALKALMAZÁS? " 2015, QBSW, Inc.

Kréta elektronikus napló elektronikus ellenőrző

Helyzetalapú szolgáltatások közösségi hálózatokon. Helyzetalapú szolgáltatások

Vonalkód olvasó rendszer. Specifikáció Vonalkód olvasó rendszer SoftMaster Kft. [1]

Erste MobilBank Felhasználói kézikönyv

Leolvasói rendszer kialakításának koncepciója ipari mobil eszközökkel (ipari PDA-val)

ÉVI ADATSZOLGÁLTATÁSOK JAVÍTÁSA. Készítette: Tóth Péter szeptember 26.

A TERC VIP költségvetés-készítő program telepítése, Interneten keresztül, manuálisan

Tisztelt Telepítő! A központ és az alkalmazás összehangolását a következőképpen hajthatja végre:

ELEKTRONIKUS MUNKABÉRJEGYZÉK MODUL

Bevezetés a Python programozási nyelvbe

Használati utasítás.

weblakszov Felhasználói útmutató

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Digitális Szabadidő Térkép mobil és web alkalmazás Útmutató

Marketing szolgáltatás tájékoztató

SCnet Eladói Applikáció. Felhasználói kézikönyv

Tanúsítványok kezelése az ibahir rendszerben

Országos Területrendezési Terv térképi mel ékleteinek WMS szolgáltatással történő elérése, Quantum GIS program alkalmazásával Útmutató 2010.

Ügyviteli rendszerek hatékony fejlesztése Magic Xpa-val mobilos funkciókkal kiegészítve. Oktatók: Fülöp József, Smohai Ferenc, Nagy Csaba

ELEKTRONIKUS DOKUMENTUMOK AZ ONILNE FELÜLETEN LAKOSSáGI ÉS ÜZLETI ÜGYFELEK SZáMáRA

Marketing szolgáltatás tájékoztató

Átírás:

Appioneer Mobil alkalmazásfejlesztő vállalkozás - App Webalkalmazás Kft. A mai mobil alkalmazások gyártásánál fontos szempont a felhasználók elérése. Minden platformon biztosított a hivatalos áruház, ahonnan beszerezhetők az alkalmazások. Ezáltal nagy verseny alakul ki az alkalmazások árazásánál. Az ingyenes alkalmazások segítségével a legkönnyebb elérni nagy letöltés számot, azonban ez megköveteli, hogy a fejlesztők reklámokat helyezzenek el az alkalmazásban. Valós igény merülhet fel egy olyan megoldásra, ahol a fejlesztő további funkciókkal (például a reklámmentesség) támogathatja lelkes felhasználóit, méghozzá a lehető legkevesebb idő ráfordításával. Ez mindkét fél számára hasznos lehet, ha a fejlesztő alkalmazását megosztva közösségi csatornákon a felhasználók is képesek eljuttatni bizonyos rétegekhez. Ez a megoldás azért is érdekes, hiszen jelenleg ma a mobil applikációk piacán ez egyedülállónak számít. A fejlesztéshez a programozási módszertanok közül az extrém programozásra esett a választás. Az extrém programozás a gyakori kapcsolattartásra és a változó igényekre épít elsősorban. Itt azért volt előnyös, hiszen első lépésekben egy különálló projekt készült el melyben csak a nézetek működése lett összehangolva, aztán következett a megosztások implementálása, majd a szerver kapcsolat felépítése. Végül a megvalósított rutinok átkerültek egy framework projektbe, amelyből előáll a végleges állomány. A keretrendszer elkészült ios és Android operációs rendszerekre. Segítségével eltűntethetővé válnak a reklámok, persze amennyiben a fejlesztő implementálja ezt a lehetőséget az alkalmazásába. Ennek eléréséhez a szükséges megosztások után a view-en található button, illetve banner elemekre javasolt a.hide tulajdonságot beállítani, ez garantálja a biztos eltávolítást. Ezt meg is tudja tenni a fejlesztő aki használja a keretrendszert, hiszen az egy callback metódus segítségével tájékoztatja a fejlesztő alkalmazását, hogy sikeres a megosztás. A metódusok és osztályok implementációja a frameworkben található, így a fejlesztőnek nem szükséges implementálni a megosztási folyamatokat csak be kell importálni, példányosítani és elvégezni az osztályok beállításait.

Az első lépés, az importálás után a framework példányosítása, ez egy singleton osztály. Az adattárolásért.plist kiterjesztésű állomány felelős, amely key-value elven működik. állítható be a bónusz funkció ami a megosztásokért jár. Ezt a framework példányosításakor hozza létre a program, ha még nem létezik. Később minden egyes megosztást ebbe a plistbe ír bele, és a feltételeknek való megfelelés esetén http protokollon keresztül postolja a szerverre az értékeket. A framework hívó osztályának szükséges megvalósítani a delegált metódusokat, hiszen a delegáltban megvalósított eljárásokat hívja a program, hogy sikeres megosztás történt-e, vagyis ezen keresztül A példány létrehozása után gombnyomásra vagy valamilyen eventre hívható meg a metódus melynek segítségével a felhasználó navigálhat a framework nézetei között. A gombra nyomva egy újabb nézetre animál a rendszer, amelyen elolvashatjuk az általános feltételeket, amely szükséges ahhoz, hogy a felhasználó sztában legyen azzal, hogy esetleg milyen kötelességekkel jár(hat) a reklámok alkalmazásból történő eltűntetése az adott készüléken. Ha a felhasználó az elfogadom gombra ka nt, akkor új nézetet tölt be az alkalmazás amelyet a ShareViewController osztály valósít meg. Ezen találhatóak a szo ver által támogato közösségi szolgáltatások, amelyeken megosztva az előre beépített szöveget vagy hivatkozást a felhasználó eltűntethe a zavaró reklámot az alkalmazásból. Jelenleg 4 helyen oszthatjuk meg élményeinket az alkalmazásról. Ezek a facebook, twitter, google plus illetve email. A fejlesztőknek a további szükséges frameworköket saját kézzel kell importálniuk, így garantálható, hogy mindig a legfrissebb api hívások lesznek megvalósítva a programban. A facebook esetében a program támogatja a natív facebook alkalmazás hívását, valamint a webviewből való megosztást is. Az api tájékoztat arról, hogy a megosztás sikeres volt-e vagy sem. Amennyiben igen, a keretrendszer ezt rögzíti a helyi állományban Andorid esetén a Facebook SDK szintén elérhető a Facebook hivatalos fejlesztői oldalán. A natív Android Share funkció az APIban nem használható, mert

szükségünk van arra az információra, hogy a felhasználó, ténylegesen megosztotta-e az alkalmazás leírását, így a Facebook SDK-t kell használni, a felhasználót beléptetni majd a megosztás után vizsgálni, hogy megosztotta-e a leírást. ios esetén a twitter megoldása egészen egyszerű, a social framework segítségével valósítható meg. A rendszer szintű integritás miatt elég egy egyszerűen konfigurálható nézetet megjeleníteni. A felhasználónak egyszerűen be kell lépnie a beállításokban, vagy ha ezt korábban megtette semmi dolga, csak kényelmesen megosztani a tartalmat. Androidon a Twitter nem rendelkezik hivatalos API-val, így ki kellett próbálni az elérhető API-kat, majd hosszas tesztelás után a Twitter4J-re esett a választás. A Facebookhoz képest nem olyan jól dokumentált, így több ideig tartott az API kiismerése és használata. ios esetében a google megosztás teljes egészében a google api-n keresztül valósul meg, amely fel van készítve a különböző eshetőségekre, azonosítás után azonnal kezdetét veheti a megosztási folyamat. A facebook és google apinak is szüksége van a normális működéshez egy függvényre amelyet az appdelegáltba kell beépíteni. Adódhat ütközés abból, hogy ezek egyforma paraméterezésű függvények, és kettő nem lehet belőlük. Így egy egyszerű elágazás beépítésével kikerülhető ez a probléma, hiszen string paraméterben megkapjuk hogy melyik alkalmazásról is van szó. Az email megosztás megvalósításához szükség volt egy tableviewcontrollerre, amelyen keresztül megjelenítjük az adatokat. Megoldható lett volna egy peoplepickernavigationcontroller példánnyal is, azonban felmerült az a probléma, hogy nincs szűrési lehetőség. Így szükséges volt a táblázat nézet. Továbbá szükség volt a névjegyzékben található adatokra, amelyet az ABAddressBookRef típusban tárol el az alkalmazás. Ezt leválogatva egy foreach ciklus segítségével elmentett email cím alapján feltölthetővé vált a tömb, amely így már csak azokat a kontakt

adatokat tartalmazza, amelyekhez van hozzárendelt email cím. Ezzel könnyedén konfigurálhatóak a tábla cellái. Ha a felhasználó kiválasztott egy barátot azonnal lefut egy ellenőrző eljárás, amely a tömb számosságát figyelembe véve számítja, hogy hány embert szükséges még kijelölni. Megfelelő esetben beállítja a küldés gombot. Ez a szükséges adatokkal a mailcomposecontroller eljárást hívja meg, amely az ios rendszer része. Két sikeres megosztás esetén a program beírja a szerverre az adatokat, amelyek a helyi fájlban vannak eltárolva. Ehhez két osztály lett létrehozva. Egyik a beírásért felelős, a másik pedig a kiolvasásért, illetve a szervertől kapott adatok feldolgozásáért. A szerverrel való kommunikáció json fájlok segítségével történik. Az insertjson működése: kiolvassa az összes adatot a plistből, lekéri a telefon azonosítóját az identifierforvendor property segítségével, a bundleidentifier segítségével meghatározza az alkalmazás nevét aztán egy datetime típussal kiegészítve json formátumra alakítja az adatokat. Ezután a szerverre postolja az adatokat, ahol a feldolgozó program lép működésbe, és egy adatbázisba kerülnek az adatok. A sikeres beküldésről az insertjson értesíti a hívó osztály delegáltját.

A queryjson osztályra akkor van szükség, amikor indul az alkalmazás. Ekkor ugyanis lekérhető, illetve célszerű lekérni a reklám jelenlegi státuszát. Az osztály úgy működik, hogy a készülék egyedi azonosítóját kéri le a korábban tárgyalt módon, és az alkalmazás bundleidentifier-ével társítva küldi el a szerverre. Az onnan kapott választ egy dictionarybe fejtve adja vissza a hívónak további feldolgozásra Végül amennyiben a megosztások és az adatok szerverre való beküldése is sikeresen lezajlott a reklám, és az eltűntetésre figyelmet felhívó gomb elem korábban említett.hide property-je igaz lesz. Konklúzió: Egy hasznos újítás került megvalósításra, amely ebben a formában eddig nem volt elérhető a fejlesztők számára. A legfontosabb pedig a felhasználók élményének fokozása, illetve talán az alkalmazások jobbá tétele, mind minőségileg, mind tartalmilag. A keretrendszer továbbfejleszthető más közösségi szolgáltatások, illetve nagyobb testreszabhatóság implementálásával, amely elősegítheti a további elterjedését, illetve széleskörűbb alkalmazását.