
ä»å¹Žã¯ãå€ãã®æ°ããããã€ã¹ãæ°ããOSããŒãžã§ã³-Android Marshmallowãããã³æã人æ°ã®ããã¢ããªã±ãŒã·ã§ã³ã®ãã¶ã€ã³ã®å€ãã®å€æŽïŒMaterial Designãå§ãŸããŸãïŒãåãåã£ãäžè¬ãŠãŒã¶ãŒã ãã§ãªããããã»ã©éèŠã§ã¯ãªããšæããAndroidéçºè ã«ãšã£ãŠãéåžžã«æ³¢ä¹±ã«å¯ãã ãã®ã§ããäœæ¥ç°å¢ãã©ã€ãã©ãªãããã³èšèšãã¿ãŒã³ã®å€æŽã
æåŸã«ãææèšèšã¬ã€ãã©ã€ã³ã
Androidãã·ã¥ãã
Androidãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®æ°ããããŒãžã§ã³ã¯ãã€ã³ã¿ãŒãã§ã€ã¹ã®èšèšã«æ°ããã¢ãããŒãããããããã ãã§ãªããã¢ããªã±ãŒã·ã§ã³ã®çãšããšã¢ã¯ã»ã¹æš©ãå€§å¹ ã«ä¿®æ£ããŸããã éçºè ã«ã¯ãSDKã®æ°ããããŒãžã§ã³ïŒAPI 23ïŒãå°å ¥ãããŸãããããã¯ãé©æ°ãšãšãã«å€ãã®åé¡ããããããŸããã
- ãªã¢ã«ã¿ã€ã ã®èš±å¯ã çŸåšãæœåšçãªãå±éºãªãã¢ã¯ã·ã§ã³ã«ã€ããŠãéçºè ã¯ã¢ããªã±ãŒã·ã§ã³ã®å®è¡äžã«ãŠãŒã¶ãŒã«èš±å¯ãæ±ããå¿ èŠããããŸãã 詳现ã¯ãã¡ããã芧ãã ãã ã ãµããŒãã©ã€ãã©ãªã®ææ°ããŒãžã§ã³ã¯ãæš©éãæäœããããã®éåžžã«äŸ¿å©ãªã€ã³ã¿ãŒãã§ã€ã¹ãæäŸããŸãããããã¯ãæš©å©ã®ååŸã«é¢é£ããåé¡ã®ã»ãã®äžéšã解決ããŸãããã¢ããªã±ãŒã·ã§ã³ã®ããžãã¯ã«ã¯è§£æ±ºããŸããã ããšãã°ããŠãŒã¶ãŒãã¢ã¯ã»ã¹èš±å¯ãä»äžããŠããªãå Žåã®å¯ŸåŠæ¹æ³ã«é¢ããè«äºã¯äŸç¶ãšããŠç¶ããŠããŸãã
- DOZEã¢ãŒãã GoogleããŒã ã¯ã以åã¯å€ãã®æ¹å€ãåŒãèµ·ãããŠããããããªãŒããã©ãŒãã³ã¹ã®æé©åã«åããŠéåžžã«éèŠãªäžæ©ãèžã¿åºããŸããã ãŠãŒã¶ãŒã¯ãããããªãŒæ¶è²»ã®å±¥æŽãèŠãã«ãOSãçŽæ¥éé£ãã
çãããäœè ããã®çãããã¢ããªã±ãŒã·ã§ã³ãããããªãŒã䜿ãæãããŠããããšã«æ°ã¥ããŸããã§ããã ããã§ããŠãŒã¶ãŒã¯ããã«ã€ããŠå¿é ããå¿ èŠããªããªããŸããã å± ç ãã¢ãŒããšã¢ããªã¹ã¿ã³ãã€ã®2ã€ã®æ°ããã¢ãŒãã®ç»å Žã«ããããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã¯ãé床ã«å€§é£ãããã¢ããªã±ãŒã·ã§ã³ãžã®é žçŽ ãé®æããŸãã å± ç ãã¢ãŒãã¯ãAndroid Marshmallow OSãå®è¡ããŠãããã¹ãŠã®ããã€ã¹ãäžå®ã®éã¢ã¯ãã£ãæéãçµéããåŸãå é»ããã«é²ãã¢ãŒãã§ãã 2çªç®ã®æ°ããã¢ãŒãã¯ã¢ããªã¹ã¿ã³ãã€ã§ããããã¯ãé·æé䜿çšãããŠããªããã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ã®ããã€ã¹ãªãœãŒã¹ãžã®ã¢ã¯ã»ã¹ã®èªå奪åã§ãã éçºè ã¯JobShedulerã¯ã©ã¹ãšSyncAdapterã¯ã©ã¹ã®äœæ¥ã®å€æŽãèæ ®ããããšãéèŠã§ããæ°ããã¢ãŒãã«åãæ¿ãããšãçŸåšã®ã¿ã¹ã¯ã¯ãã¹ãŠãã£ã³ã»ã«ãããæ°ããã¿ã¹ã¯ã¯ç®èŠãããŸã§å»¶æãããŸãã 詳现ã¯ãã¡ããŸãã¯ãã¡ã ã å± ç ãã¢ãŒãã®èå³æ·±ã移è¡ã¹ã±ãžã¥ãŒã« ã - ã¢ããã API 23ã§ã®Apacheããã±ãŒãžã®ã¢ã¯ã»ã¹äžèœã®ãã¥ãŒã¹ã¯è¯ããã®ã«ãªããŸãããã以åã«ã¢ããªã±ãŒã·ã§ã³ã§äœ¿çšããŠããå Žåã¯ãæåŠããããåå¥ã«æ¥ç¶ããå¿ èŠããããŸãã
- ã·ã¹ãã èªäœã䜿çšããã·ã¹ãã ã»ãã¥ãªãã£ã ç»é¢ã®ããã¯ã解é€ãããµãŒãããŒãã£ã¢ããªã±ãŒã·ã§ã³ã®ã»ã³ãµãŒãšé£æºããã¹ããŒããã©ã³ã®ã¢ãã«ã«é¢ä¿ãªããGoogle Playã¹ãã¢å ã§è³Œå ¥ããæçŽã§ãµã€ããèªèšŒããããšã¯ãAndroidã®äžçã§çŸå®ã«ãªããŸããã 詳现
Google PlayãµãŒãã¹
ããŒãžã§ã³8.4ãžã®æ°ãããµãŒãã¹ã®æŽæ°ã«ãããéçºè ã¯ä»¥åã®ã¢ãžã¥ãŒã«ã䜿çšããå¯èœæ§ãæ¡å€§ããŸããã
- Googleããã -ãªãã©ã€ã³ã§äœæ¥ããæ©äŒã ããã«ãWearããã€ã¹ã§ã®ã«ãŒãã®å®è£ ãå©çšå¯èœã«ãªããŸããã
- Gcm ã ããã·ã¥éç¥ã®ã¢ãžã¥ãŒã«ãåèšèšãããŠããã以åã«WakefulBroadcastReceiverã䜿çšããŠããå Žåã¯ãæ°ããã¢ãŒããã¯ãã£ã«åãæ¿ããããšããå§ãããŸã ã詳现ã¯ãã¡ããã芧ãã ãã ã
å€ãã®æ°ããã¢ãžã¥ãŒã«ãGoogle Playéçºè ãµãŒãã¹ã«è¿œå ãããŸããã
- Google Fit API-ããŸããŸãªããã€ã¹ã»ã³ãµãŒã䜿çšããŠããŒã¿ãåéãããã£ãããã¹ã¢ããªã±ãŒã·ã§ã³ã®æ¥çããããŸãã ããã§ãã»ã³ãµãŒãæäœããããã®æ°ããã¢ãžã¥ãŒã«ãç°¡åã«ãªããŸããã
- Places API -Google Addressesãžã®ã¢ã¯ã»ã¹ãç»å ŽããŸããïŒä»¥åã¯Web APIãä»ããŠã®ã¿ã¢ã¯ã»ã¹ã§ããŸããïŒã ãã ããGoogleã¯ãŸã GoogleãããïŒDirections APIïŒã§ã®ã«ãŒãæ¡å ã®ãµããŒããå®è£ ããŠããªãããšã«æ³šæããŠãã ããã
- Google DriveãMobile Vision APIãMarshmallow PermissionsãApplication MeasurementãNearby Messagingãªã©ãä»ã®å€ãã®ã¢ãžã¥ãŒã«ãããã§èŠã€ããããšãã§ããŸãã
ã©ã€ãã©ãªãšãã¬ãŒã ã¯ãŒã¯
ã¬ãããã£ãã2
éåžžã«éèŠãªã®ã¯ãæãäžè¬çãªãããã¯ãŒã¯ã©ã€ãã©ãªã§ããRetrofitãããŒãžã§ã³2.0ã«æŽæ°ããããšã§ãã ãããŸã§ã®ãšããããã®ããŒãžã§ã³ã¯ããŒã¿çã§ãããéçºè ãç©æ¥µçã«äœ¿çšããããšã劚ãããã®ã§ã¯ãããŸããã äž»ãªå€æŽç¹ïŒãªã¯ãšã¹ããCallãªããžã§ã¯ãã«ã«ãã»ã«åããïŒãªã¯ãšã¹ãã®ãã£ã³ã»ã«ãå«ããããæè»ãªäœæ¥ãæŽçã§ããããã«ããïŒãã©ã€ãã©ãªãã³ã³ããŒãã³ãã«åå²ãããããŸããŸãªã³ã³ããŒã¿ãŒãšã¢ããã¿ãŒããµããŒããããæ°ããã¢ãããŒã·ã§ã³ã®åœ¢åŒã®æ§æã·ã¥ã¬ãŒ ããã«è©³ãã-Droidcon ã§ã® Jake Warthonã®ããã©ãŒãã³ã¹ ã
Rxjava
ä»å¹Žã¯ãAndroidã§ã®RxJavaãã¬ãŒã ã¯ãŒã¯ã®äººæ°ãé£èºçã«é«ãŸã£ãããšãç¹åŸŽã§ãã ãã®ã©ã€ãã©ãªã¯ãRetrofitããã³Realmãªã©ã®ä»ã®ã©ã€ãã©ãªãšå¯æ¥ã«é£æºããŸãã RxJavaã«ã¯ãã¯ãšãªã®å®è¡ã«å€ãã®å©ç¹ããããçµåãåèµ·åãªã©ã®å¯èœæ§ãããããããããã¯ãŒã¯ã®æäœãªã©ã«äœ¿çšãããšäŸ¿å©ã§ãã ä»æ¥ãå€ãã®ãªãœãŒã¹ããã®ãã¬ãŒã ã¯ãŒã¯ã«è²»ããããŠããŸãïŒ ããã° ã habrãªã©ã ãŸããå€ãã®éçºè ã¯ããªã¢ã¯ãã£ãã¹ã¿ã€ã«ã§æšæºæ©èœãæ éã«æžãçŽããŸãïŒ RxBinding ã RxPermissions ã RxLoader ã
ãã¬ãŒ2
ãŸãã人æ°ãé«ãŸã£ãŠããã®ã¯Dagger 2ã§ããããã§ã¯ãDagger 1ãšã®äž»ãªéãã«èšåãã䟡å€ããããŸãã
- ãªãã¬ã¯ã·ã§ã³ã®æ¬ åŠãããã«ããããœãŒã¹ã³ãŒãã®å¯èªæ§ãåäžããçç£æ§ãåäžããŸããã
- POJOãšé£æºããããã®APIã
- ã³ã³ãã€ã«æ®µéã§ã®ã°ã©ãã®æ€èšŒã
ããã¥ã¡ã³ããšãµã³ãã«Dagger 2 + MVPãã³ãã«ã
ã³ããªã³
ãã®èšèªã®çŽæããããªãªãŒã¹ã¯ã»ãŒè¡ãããçŸåšã®ããŒãžã§ã³ã¯1.0 Beta 4ã§ãããã¡ãããã³ã³ãã€ã«ã«é¢ããå€ãã®èŠæ ãå«ãåé¡ãçºçããå ŽåããããŸãããJetBrainsã¯ããã«ç©æ¥µçã«åãçµãã§ããŸãã ãããŠäžè¬çã«ãKotlinã¯ãã§ã«æŠéãããžã§ã¯ãã§äœ¿çšããæºåãã§ããŠããŸãã 詳现ã¯ãã¡ããšãã¡ã ã
確ç«ãããæ £è¡
å幎ãã€ã³ã¿ãŒãã§ãŒã¹èšèšã®ç¹ã§æšæºåãããå Žåãä»å¹ŽåºŠã¯ã¢ããªã±ãŒã·ã§ã³ã®ãå éšããæšæºåããè©Šã¿ã§ãã£ã±ãã«ãªããŸãããã€ãŸããããªãæ®éçãªæ¹æ³ã§ã¢ããªã±ãŒã·ã§ã³ãéçºã§ãããããªãã¿ãŒã³ãæäŸããããã§ãã 以åã¯ãAndroidã¢ããªã±ãŒã·ã§ã³ã®äžè¬çãªã¢ãŒããã¯ãã£ã«ã€ããŠè©±ãããšã¯å°é£ã§ããããä»ã§ã¯ã»ãšãã©ã®äŒæ¥ããã§ã«ç¢ºç«ãããéçºãã¿ãŒã³ã䜿çšããããã®ãã©ã¯ãã£ã¹ãšã¢ãããŒããç±å¿ã«å°å ¥ããŠããŸãã
MVP
ããã¯ãæã人æ°ããããæãç©è°ãéžããã¿ãŒã³ã§ãã 人æ°-ããžãã¹ããžãã¯ãšã€ã³ã¿ãŒãã§ã€ã¹èŠçŽ ãæ£åžžã«åé¢ã§ããããããã¹ãäžã«äŸ¿å©ã«ãªããŸãã è°è«ã®äœå°-絶察ã«ãã¹ãŠã®éçºè ããã®ãã¿ãŒã³ã®å®è£ æ¹æ³ã«ã€ããŠç¬èªã®æèŠãæã£ãŠããããã§ãã ããã§ãã®å®è£ ã®ããã€ããèŠãããšãã§ããŸãã ãŸããMVPãšRxJavaã®çµã¿åããã«ã€ããŠèª¬æããŠããããã«é¢ããåªããèšäºããããŸãã
MVVM
WPFã§ç©æ¥µçã«äœ¿çšãããŠããå¥ã®ãã¬ã³ãã£ãªãã¿ãŒã³ã 圌ã¯ãGoogle-Data Bindingã®éçºã®ãããã§ãAndroidã®äžçã§äººæ°ãåŸãŸããã ãã®ã©ã€ãã©ãªã¯ãŸã ååã«å®å®ããŠããªãããšã«æ³šæããå¿ èŠããããŸãïŒããŒã¿ã¹ããŒã¿ã¹ããããŸãïŒã ãã ããGoogleã¯ééããªããããæãèµ·ããããã®ã§ã ä»å匷ãã䟡å€ããããŸã ã
Android Studio 2.0
ä»å¹Žã®çµããã¯ãéçºè ã«ãšã£ãŠãã1ã€ã®éèŠãªã€ãã³ãã§ããã11æã«ãAndroid Studio 2.0ããã¬ãã¥ãŒãã£ã³ãã«ã®ãã¹ãŠã®äººã«å©çšå¯èœã«ãªããŸããã æããã«ãæ瀺ãããæ©èœã«ããããã®æŽæ°ãæãéèŠãªãã®ã«ãªããŸãã
- ã€ã³ã¹ã¿ã³ãå®è¡ã å€ãã®éçºè ãé·ãéåŸ ã£ãŠãããã®ã ããã§ãæ°è¡ã®å€æŽã®åŸãæ¯åã¢ããªã±ãŒã·ã§ã³ãå床ãããã€ããå¿ èŠããªããªããŸããã ãããŸã§ã®ãšãããGradle 2.0 alphaã䜿çšããŠããå Žåã«ã®ã¿ãéåžžã«å®å®ããŠåäœããŸããïŒãããéåžžã«å®å®ããŠããŸããïŒã Googleãå®å®ããã®ãåŸ ã¡ãŸããããã¯ç§ãã¡å šå¡ãä¿¡ããããªãã»ã©å¹žãã§ãã
- æ°ãããšãã¥ã¬ãŒã¿ã ãã¹ãŠã®éçºè
ã¯ãã€ãã£ããšãã¥ã¬ãŒã¿ã®é床ãç¥ã£ãŠããŸããGenymotionã奜ã人ãå€ãã®ã¯é©ãããšã§ã¯ãããŸããã 確ãã«Googleã¯ãã®ãããªç¶æ³ã奜ãŸãªãã£ãã®ã§ãAndroid Studioã«ã¯ãã«ã¡ã©ãGPS
ããã©ãã¯ãžã£ãã¯ãªã©ãå¿ èŠãªãã¹ãŠã®æ©èœãåããåªãããšãã¥ã¬ãŒã¿ãŒããããŸãã - ãŸããGoogleããŒã ã¯ãããžã§ã¯ãã®ãã«ãæéã«ååãªæ³šæãæããŸãã ã 圌ãã«ãããšãæ°ããããŒãžã§ã³ã§ã¯ããããžã§ã¯ãã¯2åã®éãã§çµã¿ç«ãŠãããŸãã åœç¶ãããã¯åã°ããããšã§ãã
éçºè ã®ããã°ã§ãã詳现ãªæ å ±ãèŠã€ããããšãã§ããŸãã
ã«ã³ãã¡ã¬ã³ã¹
2015幎ã«ã¯ãGoogle I / Oãå€ãã®DroidconsïŒDroidcon NYCãäœãããéç«ã£ãŠããïŒãªã©ãå€ãã®äŸ¡å€ã®ããäŒè°ããããŸããã
Google I / O 2015
Google I / O 2015ã®éãã¹ããŒã«ãŒã®æ³šç®ã¯ãã¹ãŠGoogleã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšãµãŒãã¹ã®æ°ããããŒãžã§ã³ã«çŠç¹ãåœãŠããããããäŒè°ã®äž»ãªãããã¯ã¯æ¬¡ã®ãšããã§ãããAndroidMãæŽæ°ãããAndroid Wearãã¢ãã®ã€ã³ã¿ãŒããããGoogle NowãGoogleãã©ãããªãã©ã€ã³ãµãŒãã¹ãæ°ããããŒã«éçºè åãã«ãGoogle CardboardãæŽæ°ããŸããã äžè¬çãªæŠèŠã¯GTã«ãããŸãã
ãã§ã«åå¥ã«ã¬ãã¥ãŒãããã¥ãŒã¹ã®ã»ãšãã©ããèšåãã䟡å€ã®ãããã®ã§ãã
- Webãšã¯ã¹ããªãšã³ã¹ã ããã§ã®äž»ãªæŽæ°ã¯ã ã«ã¹ã¿ã Chromeã¿ãã§ãã ãã®ããŒã«ã解決ããåé¡ã¯æ¬¡ã®ãšããã§ãïŒAndroidçšã®ã¢ããªã±ãŒã·ã§ã³ã¯ã©ãã©ããã©ãŠã¶æ©èœã䜿çšããŸãããå€ãã®å Žåã1ã€ãŸãã¯å¥ã®ããã°ã©ã ã䜿çšãããšãã¯ãã¢ããªã±ãŒã·ã§ã³ãšã¿ããéããç¶æ ã§ãã©ãŠã¶ãŠã£ã³ããŠãåžžã«åãæ¿ããå¿ èŠããããŸã
- ã¢ãã€ã«æ±ºæžã æåŸã«ãGoogleã¯ã¹ããŒããã©ã³ããã®æ¯æãã·ã¹ãã ã®ããŒãžã§ã³ã§ããAndroid Payãå°å ¥ããŸããã éè¡ã«ãŒãã¯NFCããããæèŒããã¹ããŒããã©ã³ã«åãä»ããããŠããããŠãŒã¶ãŒã¯Android Payã§æ¯æããå¯èœãªå Žæã§ããã€ã¹ã䜿çšããŠæ¯æããè¡ãããšãã§ããŸãã
- GoogleããããšYouTubeã¯ãªãã©ã€ã³ã§ãã çŸåšãã€ã³ã¿ãŒãããã«æ¥ç¶ããŠããªãGoogleãããã§ã¯ãäºåã«èªã¿èŸŒãã ãšãªã¢ã®å°å³ã衚瀺ã§ããã ãã§ãªããæ€çŽ¢ã䜿çšããããPOIã衚瀺ããããé³å£°ããã³ããã§ããã²ãŒã·ã§ã³ã䜿çšããããšãã§ããŸãã ããã¯ãGoogleããããŠãŒã¶ãŒãéåžžã«é·ãéåŸ ã£ãŠãããã®ã§ãã 詳现
ããã€ãã³ã³NYC
ãã®äŒè°ã¯ãéçºã«ç¹åããå€æ°ã®ã¬ããŒãã«ãã£ãŠç¹åŸŽä»ããããåœç¶ã®äººæ°ã享åããŠããããšã¯é©ãããšã§ã¯ãããŸããã é·ãéããã«ãšã©ãŸãããã«ã¯ã ããã°ã©ã ãèŠãã ãã§ãååã§ãã ãã¡ããã Retrofit 2ã䜿çšããSimple HTTPã LeakCanaryã䜿çšãããã¹ãŠã®ã¡ã¢ãªãªãŒã¯ã®æ€åº ã FrescoïŒFacebookã1äžçŽã1äžçŽç¯çŽããæ¹æ³ ã KotlinïŒJava 6ã®èéã§ã®æ°ããåžæãªã©ã®ã¬ããŒãã匷調ããå¿ èŠããããŸãã
Android Dev Summit
ãã®äŒè°ã§ã¯ãæãå·®ãè¿«ã£ããããã¯ã«é¢ããå€ãã®èå³æ·±ãã¬ããŒããç®ã«ããŸãããããã®äžã§ãç¹ã«æ³šç®ã«å€ãããã®ã¯æ¬¡ã®ãšããã§ãã
- Android 6.0ãšã®æŠãïŒ ã¢ããªã¹ã¿ã³ãã€vs. å± ç ãïŒã·ã¹ãã ã¹ãªãŒããç解ãã ã ããæ¯ãããã§ããŸããïŒãèš±å¯ãæ±ããŠããããç§å¯ã«ããŠå®å šã«ä¿ã€
- ãµããŒãã©ã€ãã©ãªïŒåæ°ãšæ å
- Androidãã¹ã
- Androidã¢ããªã±ãŒã·ã§ã³ã¢ãŒããã¯ãã£
- ããŒã¿ãã€ã³ãã£ã³ã°-ã¢ããªã®é«éå
2016幎ã«ç§ãã¡ãåŸ ã£ãŠãããã®
ééããªããRxJavaã䜿çšããŠãããå€ãã®ãããžã§ã¯ããäºåŸå¯Ÿå¿åã§éçºãããŸãã ãŸããå€ãã®äŒæ¥ãéçºè ã¯ãMVPãMVVMãªã©ã®ãã¿ãŒã³ãé å®ããããšããŸããããã«ããããã¹ãã«ãã¬ããžã®æ¡å€§ãæåŸ ãããŸããããã¯ãããæé ã§äœã³ã¹ãã«ãªãããã§ãïŒç¹ã«ããã¹ãçšã®ææ°ã®ãã¬ãŒã ã¯ãŒã¯ãèæ ®ãããšïŒã
æ¢åã®ã©ã€ãã©ãªã«ã¯ãŸã å€ãã®æ¬ ç¹ããããããããŒã¿ããŒã¹ãæäœããããã®æœåšçã«æ°ãããœãªã¥ãŒã·ã§ã³ãæåŸ ã§ããŸãã
ãŸãã minSdkVersion 19 ïŒãããŠãããã21ïŒã®å€¢ã«è¿ã¥ãããšãæãã§ããŸãã
ãããŠãã¡ãããæ¯å¹ŽAndroidã®éçºã¯ãŸããŸãé¢çœããªã£ãŠããã®ã§ã2016幎ã¯ç§ãã¡å šå¡ãããã«å€§ããªæ°ããã¢ã€ãã¢ãšãœãªã¥ãŒã·ã§ã³ããããããšä¿¡ããŠããŸãã
è¬èŸ
ãŸãããã®èšäºã®å·çãæäŒã£ãŠãããAndroidéçºè ã®æ°ããã³ãã¥ããã£ã®ãã¹ãŠã®ã¢ã¯ãã£ããªåå è ã«æè¬ããŸãã åå¥ã«æè¬ããã人ãããŸãïŒ atetc iamtodor nexus700120