Android Programjaim

Android fejlesztes, java, kotlin, web.. miegymas:)

Kotlin Bootcamp es Flutter udacity google videok

2018. május 17. 17:02 - lacas82

Bar kotlinban jo ideje dolgozom, de ezeket erdemes lesz megnezni kesobb. Sajnos most el vagyok havazva, de aki teheti nezzen ra ezekre. A Flutter annyira nekem a Google IO 18 alapjan nem igazan jott be, aztan ki tudja, kesobb lehet megszeretem. Csak mar csunya dolog a szegeny fejlesztot szivatni, hogy lassan hetente tanuljon uj dolgokat :D A minap megneztem par IO18 videot, de ugy 4-5 50 perces video utan feladtam, egyszeruen annyi info volt, hogy szethasadt a fejem:)

Remelem a flutter azert jobb lesz, mint a react native...A kotlint meg siman imadom.

Tehat a linkek:

https://eu.udacity.com/course/kotlin-bootcamp-for-programmers--ud9011

https://eu.udacity.com/course/build-native-mobile-apps-with-flutter--ud905

Címkék: flutter kotlin

Jquery maps libek - win d3.js

2018. május 17. 16:37 - lacas82

A sajat ceges weblaphoz kellett egy JQuery plugin ami tud aranylag eles mapeket vector-al rajzolni, es lightweight. Persze tudjon POI-t is kirakni, es lehessen mindent szinezni. Az se gond ha reszponziv...

Pár érdekesebb jquery maps plugin:

http://kartograph.org/showcase/

Ez elég bonyolultnak is tunik. Vektor terkepekre. Mintha terkepesz keszitette volna.

http://planetaryjs.com/examples/rotating.html

Ez 3D-s, tud POI-t is felrakni a foldgombre. Eleg jo kis cucc.

https://www.10bestdesign.com/jqvmap/

JQVMap, ez pl nagyon tetszik, de sajnos nekem az aktualis projecthez nem ilyesmi kellett.

Es vegul amit en hasznaltam fel:

https://medium.com/learning-new-stuff/d3js-map-who-is-smoking-weed-right-now-406e72688bd6

Itt azert voltak fajdalmak persze, mert reszponzivan kellett megirnom, de vegulis sikerult. :)

Voltak meg futottak kategoriak, mint pl a smallworld.js, de sok problema volt vele, es vagy 4 eves a kod szoval inkabb a d3.js maps-et hasznaltam...

https://d3js.org/

 

Címkék: maps jquery

Tizen SDK, Samsung Gear S3 Frontier teszt

2018. május 10. 08:51 - lacas82

Gondoltam veszek mar egy okosorat, mivel nem akartam mar tobb evet varni ra, hogy egy normalisabbat osszerakjanak, es talan mar elegge hasznalhatoak masnapsag.

Minden evben eddig, sot kb felevente megneztem az okosorapiacot, de sajnaltam ra a penzt, mivel mindig ugy gondoltam, hogy meg gyerekcipoben vannak, es nem nagyon erik meg az arukat.

Par gondolat mai szemmel az okosorakrol:

Meg mindig nem letezik normalisabb alternativa szerintem, ami teljes ertekuen hasznalhato. Amit manapsag a legjobbakat lattam...nos...a problemak veges tarhaza merult fel meg a legnagyobb gyartoknal is.

Ugye ezek a szokasos dolgok:

- kisebb uzemido/gyors merules
- fejlesztesi szempontbol egy kesz vicc egyik masik
- keves app/avagy keves ertekes alkalmazas ra
- tenyleges hasznalhatosag

Kicsit feltem az s3-tol, de jelenleg magyar piacon ez a legnepszerubb ora es a legszebb. Feltem az ora kulsejetol es mondjuk feltem a nagysagatol/meretetol/sulyatol is.

Bevallom meg voltam rendesen lepodve mikor felraktam a kozepes meretu csuklomra, mivel nem huzta le, es nem volt nehez. Regebben volt egy Timex oram, a sulya kb ugyanannyi, pedig ez tele van mindenfele cuccal azert.

Hasznalhatosag szempontbol viszont ha bekapcsolsz sok erzekelot (plusz GPS mondjuk, HR szenzor, stb), akkor mondjuk 60-70 perc alatt tud merulni az ora egy jo 20%-ot. Persze ezt ugy, hogy mindent mer kozben. (mar ha tud, mert a szivritmus szenzorral felmerultek vicces gondok: mikor regebben fejlesztettem MIFIT-re, sajnos ott is ez volt a problema: a szoros csuklot annyira nem szereti.)

Szoval ez a 20% ugy volt, hogy GPS, HR, stb szenzorok benn, es az ora nem volt mindig bekapcsolva, hogy lassam az idot. Viszont volt, hogy csatlakoztattam ra BT fulest ra es ugy hogy hallgattam a zenet kozben, sem merult erezhetoen gyorsabban.

A lepeseket jol meri, a HR-ben annyira biztos nem vagyok, mivel sok ilyen okoskarkotore kellett anno fejlesztenem, es hat azert nem bizok ezekben nagyon meg. De nyilvan egy ertelmesebb szenzort raktak itt bele. Bar anno a MIFIT-es karkotovel is meg lehetett jarni. :)

Ami meg zavart, hogy amikor nem vittem telot magammal, akkor az ora gyakran kiirta, hogy csatlakoztassam a telefon BT-hez. Ez roppant idegesito dolog.

Es most jonnek a negativumok erosen:

Android Studioban nevelkedett fejlesztokent elvarom, hogy az IDE hasznalhato legyen, es lehessen refaktoralni, stb. Tehat alap dolgok. Ezzel szemben mikor feltelepitettem ezt a rettenet Tizen SDK/IDE-t majd megutott a "guta" :D Hat en meg ilyen szornyuseget eletemben nem lattam.

Fejlesztoi szempontbol egy remalom az egesz. Az emulator/szimulator is egy kesz vicc, es gyakorlatilag mikor par sample projectet megneztem javascriptben, tudtam, hogy ebben en ugyan nem fogok semmit fejleszteni, mert ez egy oriasi fajdalom. Bevallom oszinten fejlesztettem mar react native-ban/vs.code, azis egy borzalom volt, de azok utan ez a Tizen IDE maga a horror.

A kovetkezo negativumok, hogy az oran nevetsegesen keves a minosegi app, es kevesen is fejlesztenek ra, ami van normalis az penzbe kerul. Egy egyszeru GPS appot akartam ami mondjuk 1-10 percenkent lementi a GPS adatokat valahova telefon nelkul. De eddig nem igazan talaltam ilyet ingyen.

Persze watchface-ekbol van egy kilo, de az nem orvosolja a minosegibb appok problemajat. Gyanitom, hogy sok fejleszto azert nem is fejleszt ra, mert a fejlesztes mai szemmel agyverzest okoz.

Egyebkent maga az ora igenyes, fantasztikus is lenne, ha ilyen egyszerubb dolgokat tudna rogziteni alapbol. A masik problema a samsung health. Sok dolog jo azert benne. Volt mar, hogy crashelt az app... vagy hogy ujra kellett csatizni a BT-t. Volt, hogy erdekes dolgokat produkalt.. Azert ez egy gyari app, es nem kis pistikek fejlesztettek. Elvarom hogy ilyen ne tortenjen. Hisz manapsag van mar azert firebase + crashlitics:D

Jelenleg a problemam az, hogy par nap utan kihasznalatlan az ora. Ugy erzem tobb dolgot is lehetne vele csinalni, ha megfelelo szoftverek lennenek hozza. Igy ez kicsit keveske. Tekintve az arat, ami jelenleg 85 ezer HUF. Szoval jottek a GPS app gondok, letoltottem a samsung sajat boltjabol par cuccot, ami elvileg kiirja lat/lng meg a hely nevet hol vagyunk eppen. Ez volt, hogy nem is mukodott, vagy csak X ido mulva, nagyon lassan pedig kinn voltam az utcan. Lehetseges, hogy osszefuggesben van a telefonnal valo osszekottetessel is, mert mintha az ora egyedul keptelen lenne meghatarozni azt, pedig latok olyat a speciben, hogy van benne GPS...

A masik, hogyha van benne GPS lat lng lekeres, akkor mi a feneert nem menti azt le valahova? Hat ez komolyan orulet. Mai napig nem talaltam egy appot ami megjeleniti terkepen merre jartam. A Samsung Healthben sincs ilyen... Ha erre alapbol nem kepes mondjuk a gyari szamlalos app, akkor ezzel oriasi gondok vannak,.

Ujabb problemak: Ha viszem a telot is az ora melle, akkor bizony a samsung health 2 fele szamol lepest pl.:

A telefon is szamolja meg az ora is. Ezt nem nagyon tudtam hova tenni. Furcsa adatok jottek igy egyutt ki. Ugyanarra mentem, de mintha ketszer szamolta volna. Miert? Ezek apro??? bosszusagok, amik fejlesztoi szemmel eleg bajosak es nem tudom elfogadni. Bevallom ezek utan gondolkodtam egy Android Wear alapu rendszeren, mert a Samsung Gear S3-ban vannak ugyan jo dolgok (csavargatos szamlap), de ez nekem keves.

Tobbet varok el meg mindig egy okosoratol.

Amiket elvarok 2018-ban:

- fenykepezo az oraban (tobb gyengebb teljesitmenyu kinai mar tudja)
- az ora teljes erteku legyen telefon nelkul (gps, uzemido, telefon)
- eredeti, minosegi appok

 

Címkék: tizen gear s3

Teszteles androidon #4 - Instrumentation tests

2016. augusztus 10. 13:28 - lacas82

Lassuk mit ir errol a Vogella: Az Android Testing API lehetoseget ad, hookokra az android komponensekhez es eletciklushoz. Es persze a felhasznaloi interakciokhoz.

Azaz pl van egy Activityd, azon egy gomb, instrumentation-on keresztul lehetoseged van ezeket kodbol tesztelni. PL egy gombnyomast tudsz szimulalni.

Az instument. tesztek azok olyan unit tesztek, amik a mobil eszkozon vagy az emulatoron futnak nyilvan nem a JVM-en. Mig ugye a local unit teszt az a JVM-en fut.

Mockito egy mocking keretrendszer, amivel tudjuk mokkolni azokat az android rendszer reszeket amik nem szuksegesek a tesztunkhoz.

Az instrumentation alapu teszt tehat egy olyan osztaly, ami megengedi, hogy pl key eventeket kuldjunk vagy touch eventeket egy bizonyos cuccnak at. Pl. egy Viewnak ugye.

Vagy pl el tud inditani egy masik activity-t teszt celjabol, etc.

Az alap test runner ez esetben a:

InstrumentationTestRunner

es a helyuk pedig:

app/src/androidTest/java

gradle-be mik kellenek ehhez:

defaultConfig {
       ..... more stuff
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

dependencies {
    // Unit testing dependencies
    androidTestCompile 'junit:junit:4.12'
    // Set this dependency if you want to use the Hamcrest matcher library
    androidTestCompile 'org.hamcrest:hamcrest-library:1.3'
    // more stuff, e.g., Mockito
}

Majd a tesztunket annotalni kell ezzel:

@RunWith(AndroidJUnit4.class)

ami a JUnit4 leszarmazottja.

A tesztek futtatasa parancssorbol:

gradlew connectedCheck

AS-bol, pedig Run a classon.

Teszt riportok helye:
app/build/reports/androidTests/connected/

Teszteles androidon #3

2016. augusztus 10. 10:28 - lacas82

OK, lathattunk peldat az elozoekben unit tesztre, de ez azert nem ilyen egyszeru, hosszu oldalak vannak megtomve a tesztelesekkel, es mar van eleg sok tesztelesi framework is mobilra.

Alapjaban veve ezeken fogunk atmenni, persze csak egyszeruen, erthetoen, nem megyunk bele melyebben a dolgokba.:)

Akit erdekel, par link a mobil es azon belul is androidos tesztekrol:

http://www.vogella.com/tutorials/AndroidTesting/article.html

https://github.com/googlesamples/android-testing - Android testing examples from Google]

https://github.com/googlesamples/android-testing-templates - Android testing template project from Google

http://tools.android.com/tech-docs/unit-testing-support - Unit test support description from Google

http://www.vogella.com/tutorials/Robolectric/article.html - Using Robolectric for Android unit testing on the JVM

http://www.vogella.com/tutorials/AndroidTestingEspresso/article.html - Android user interface testing with Espresso

http://blog.sqisland.com/2015/12/mock-application-in-espresso.html Chiu-Ki Chan about Mock Application in Espresso for Dependency Injection

https://artemzin.com/blog/how-to-mock-dependencies-in-unit-integration-and-functional-tests-dagger-robolectric-instrumentation/ Artem Zinnatullin blog post on How to mock dependencies in Unit, Integration and Functional tests; Dagger, Robolectric and Instrumentation

 

http://www.tesztelesagyakorlatban.hu/index.php

https://io2015codelabs.appspot.com/codelabs/android-studio-testing

Mint lathato azert nem egyszeru, es ez meg csak nem is az elmeleti resze. Aki azzal kivan foglalkozni, az talal meg sok-sok vicces linket, es elmeleti forrast, de mi most erre koncentralunk.