
2018幎ã®å€ãå€ãã®åªããAndroidã©ã€ãã©ãªãšããŒã«ãéçºããã³æŽæ°ãããŸããã
æ¯æ¥ã®äœæ¥äžã«è峿·±ããŸãã¯åœ¹ç«ã€Androidã©ã€ãã©ãªãããŒã«ãããã³ãããžã§ã¯ãã®ææ°ã®é äžåãªã¹ãããŸãšããŸããã ã€ã³ã¹ãã¬ãŒã·ã§ã³ãå®éšã«ãæé©ã§ãã
楜ããã§ããã ããã°å¹žãã§ãã ããå§ããŸãããïŒ
ããã¯ã以äžã®gifã®ãããªå¹æãéæããã®ã«åœ¹ç«ã€RecyclerViewã®LayoutManagersã®ã»ãããæäŸããã©ã€ãã©ãªã§ãã

ãããã®LayoutManagersã¯ãåºæ¬çã«RecyclerView.LayoutManager
ãŸãã¯åã«LinearLayoutManager
ã远å ã®æ©èœã远å ããŸãã
ãã®ã©ã€ãã©ãªã«ã¯éåžžã«ç°¡æœãªããã¥ã¡ã³ãããããŸãããã³ãŒãèªäœãèªã£ãŠããŸãã ã©ã€ãã©ãªãçè§£ããæè¯ã®æ¹æ³ã¯ããµã³ãã«ã¢ããªã±ãŒã·ã§ã³ãèŠãŠããã®äžã«Activities
and Fragments
å®è£
ã確èªããããšã§ãã
ãã®ã©ã€ãã©ãªã¯Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠãããæ¬åœã«æ³šæãæã䟡å€ããããŸãã
Creative View Pagerã¯ViewPager
è峿·±ãå®è£
ã§ãããããŒãžã®ã³ã³ãã³ãã«æ²¿ã£ãŠã¹ã ãŒãºã«ã¹ã¯ããŒã«ããããããŒã®ãªã¹ãã远å ããŸãã

ããã¥ã¡ã³ãã¯å
æ¬çã§ãã©ã€ãã©ãªã®äœ¿ç𿹿³ã説æããŠããŸãã Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããã»ãŒå®å
šã«Kotlinã§æžãããŠããŸãã
Instabugã¯ãã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ã®ãã£ãŒãããã¯ãšãã°ãåéããããã®ããŒã«ã§ãã ããã€ãã®ç°¡åãªæé ã§ããŠãŒã¶ãŒãŸãã¯ããŒã¿ãã¹ã¿ãŒããšã©ãŒãå ±åããããã£ãŒãããã¯ãæ®ãããã§ããŸããSDKã¯ããã¹ãŠã®ã³ã³ãœãŒã«ãã°ã ãããã¯ãŒã¯ãªã¯ãšã¹ã ããšã©ãŒãåçŸããæé ãªã©ããŠãŒã¶ãŒã®ããã€ã¹ç°å¢ã®ç¶æ
ãèšæ¶ããŸããããã³ãã°ä¿®æ£ã

æè¿ã®æŽæ°äžã«ãå€ãã®ãã°ãä¿®æ£ãããŸããã ãããã®å€æŽã®è©³çްã«ã€ããŠã¯ã ãã¡ããã芧ãã ãã ã ãããã£ãŠãInstabugã§ã¯æ¬¡ã®ããšãã§ããŸãã
2016幎以æ¥ãInstabugã䜿çšããŠããŸãããããŒã ãšãŠãŒã¶ãŒãæ¯æŽããããŒã«ãæ¢ããŠãããšãã§ãã 匷ããå§ãããŸãã
ããã¯ãGoogle I / O 2018å°çšã«äœæãããã¢ããªã±ãŒã·ã§ã³ã®EventFilterViewã«åºã¥ããAndroidçšã®ãã§ãã¯ãŠã£ãžã§ããã§ããminSdkVersion21ãå¿
èŠã§ãã

åªããREADMEã䜿çšãããšããŠã£ãžã§ããã®æäœãããã«éå§ã§ããŸãã åæå®è£
ã¯ãGoogleã®Nick ButcherãšJose Alkerrekaã«ãã£ãŠéçºãããŸããã
ãŠã£ãžã§ããã¯Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããKotlinã§æžãããŠããŸãã
軜éã§åŒ·åã䜿ããããã«ã¬ã³ããŒã§ãã

ããã¯å€ãã®äŸ¿å©ãªæ©èœãæäŸããŸãïŒ
- åæ¹åã®ç¡éã®åçŽã¹ã¯ããŒã«ã
- ç¹å®ã®æéå
ã®ã¹ã¯ããŒã«ãå¶éããæéæ ãèšå®ããŸãã
- 1ã€ã®æ¥ä»ãè€æ°ã®æ¥ä»ãŸãã¯æéç¯å²ã®éžæã
- éžæããæ¥ä»ãäºåèšå®ããŸãã
- è²ã®èšå®;
- ã«ã©ãŒã€ã³ãžã±ãŒã¿ã®è¡šç€ºã
- ç¬èªã®
ItemDecoration
èšå®ããŸãã View
ã¯ã©ã¹ã®ç¶æ¿ã§ããããã Activity
ã Fragment
ã Dialog
ã©ãã§ã䜿çšã§ããŸãããŸãã¯ãå¥ã®ã«ã¹ã¿ã View
ã³ã³ããŒãã³ãã«çµ±åããããšãã§ããŸãã
å€ãã®äŸãããçŽ æŽãããããã¥ã¡ã³ãã GithubãšGoogle Playã«ããµã³ãã«ã¢ããªã±ãŒã·ã§ã³ããããŸã ã
ãã®ãããžã§ã¯ãã¯ãMITã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
ããã¯ã Google InboxãšReplyã«è§Šçºãããã¢ããªå
ãã€ãããã¯ããã²ãŒã·ã§ã³ã©ã€ãã©ãªã§ãã

InboxRecyclerView
ã¯ãæ¢åã®ãããžã§ã¯ãã«å®å
šã«è¿œå ã§ããŸãã ãµã³ãã«ã¢ããªã±ãŒã·ã§ã³ãèŠãŠãAPKãããŠã³ããŒãããŠæºåž¯é»è©±ã§èŠãããšãã§ããŸãã
èè
ã¯ãŸããã©ã€ãã©ãªã«é¢ããæ¬åœã«è¯ãèšäºãæžããŸããã 圌女ã¯ééããªã泚ç®ã«å€ããã Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸããã
ããã¯å°ãããŠãè峿·±ãã©ã€ãã©ãªã§ã Activity
å
ã§SlideBackView
ã䜿çšããããšããå§ãããŸãã ãããäœã§ããããçè§£ããã«ã¯ã以äžã®gifãã芧ãã ããã

æ®å¿µãªãããããã¥ã¡ã³ãã¯ããªãå°ãªããäžåœèªã§æžãããŠããŸãã ç§ã¯èªåã®ãããžã§ã¯ãã§ã¯äœ¿çšããŸãããã詊ããŠã¿ãŸããã ãã ããã¢ããªã±ãŒã·ã§ã³ãšã©ã€ãã©ãªèªäœãåŠç¿ã§ããŸãã MITã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
ãã®ã©ã€ãã©ãªã¯ãããã°ã©ã ã§ãããŠã¢ãã«ãäœæããéè€ããdrawable.xml
ãã¡ã€ã«ãåé€ããŸãã

Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸããã å®å
šãªããã¥ã¡ã³ãããããAPI 14以éã§åäœããŸãã
ãã®ã©ã€ãã©ãªã¯ãDrawableToolboxãäœæããåãéçºè
ã«ãã£ãŠäœæãããŠããŸãã ããã¯åãªãå¥ã®è²ãŠã£ãžã§ããã§ãã

ãã®ã©ã€ãã©ãªã¯åªããããã¥ã¡ã³ããæäŸããŸãã Apache 2.0ã©ã€ã»ã³ã¹ã§ãªãªãŒã¹ãããAPI 14以éã§åäœããŸãã ã¢ããªã±ãŒã·ã§ã³ã§ã«ã©ãŒããã«ãŒæ©èœãå¿
èŠãªå Žåãããã¯çŽ æŽããããªãã·ã§ã³ã§ãã
ã©ã€ãã©ãªã¯å·šå€§ã§ãã MvRxïŒã mavericks ããšçºé³ïŒã¯ãAirbnbã®Androidãã¬ãŒã ã¯ãŒã¯ã§ãããã»ãŒãã¹ãŠã®è£œåã«äœ¿çšãããŠããŸãã
MvRxã¯ãæåããæãã·ã³ãã«ãªãã®ããæãè€éãªãã®ãŸã§ãã¢ããªã±ãŒã·ã§ã³ç»é¢ã®éçºãç°¡çŽ åããŸãã ãã ãããã¹ãŠããã©ã°ã¡ã³ããã¢ãŒããã¯ãã£ã³ã³ããŒãã³ããªã©ã®æ¢åã®ã³ã³ããŒãã³ãã®äžã«æ§ç¯ããããããå¶éãããããããžã§ã¯ãã§ç°¡åã«äœ¿çšã§ããŸãã
äž»ãªç®æšã¯ãã¢ããªã±ãŒã·ã§ã³ãããéããããå°ãªãåŽåã§äœæããããšã§ããã MvRxã¯æ¬¡ã®ãã¯ãããžãŒãšæŠå¿µã䜿çšããŸãã
- ã³ããªã³
- Androidã®ã¢ãŒããã¯ãã£ã³ã³ããŒãã³ã
- RxJava;
- åå¿ïŒæŠå¿µïŒ;
- ãšããã· ïŒæšå¥šïŒã
ãã®ãã¬ãŒã ã¯ãŒã¯ã¯ãApache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸãã ããã¥ã¡ã³ããšãŠã£ãã¯çŽ æŽãããã§ãã wikiã«ã¯tl;dr
ããŒãžã§ã³ããããæŠå¿µãçè§£ããããã«å¿
èŠãªãã¹ãŠã®èª¬æãå«ã宿çãªããŒãžã§ã³ããããŸãã
Reduxã®åºæ¬æŠå¿µãš3ã€ã®ååã«ã€ããŠèããããšãããã°ããã®ã©ã€ãã©ãªãäœã§ããããããã«çè§£ã§ããã§ãããã
RxReduxã¯ãå¯äœçšãäžåããã®ã«åœ¹ç«ã€RxJavaïŒ redux-observableã«è§ŠçºãããïŒã«åºã¥ãå®è£
ã§ãïŒå¯äœçšã¯(Observable <Action>, StateAccessor <State>) -> Observable <Action>
ãããªé¢æ°ã§ãïŒã

RxReduxã¯ã .scan()
æŒç®åã®äžçš®ã§ãã READMEã¯ããæžãããŠããã ãã®èšäºã§å®å
šã«è£å®ãããŠããŸã ã ã©ã€ãã©ãªã¯ãApache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸãã
ããã¯ã Instagramçµµæåã¹ã©ã€ããŒã«è§Šçºãããã«ã¹ã¿ã SeekBar
ã§ãã

ãããžã§ã¯ãã«ã¯ãéåžžã«åªããããã¥ã¡ã³ããšãµã³ãã«ã¢ããªã±ãŒã·ã§ã³ããããŸãã Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸããã
ããã¯ãRecyclerViewã§ãããªã¢ã«ã¹ã¯ã€ãã¢ã¯ã·ã§ã³ãå®è£
ããã®ã«åœ¹ç«ã€ã©ã€ãã©ãªã§ãã åœç¶ãææèšèšã®ååã«åŸã£ãŠæžãããŠããŸãã

åªããããã¥ã¡ã³ãã®ãããã§ãã»ããã¢ããã¯ç°¡åã§ãã ãã®ãããžã§ã¯ãã¯ãMITã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
ããã¯ã View
ã³ã³ããŒãã³ããŸãã¯SurfaceView
ãJPG/PNG/nomedia
圢åŒã®ç»åãšããŠä¿åã§ããã©ã€ãã©ãªã§ãã ã©ã€ãã©ãªã¯ããã¯ã°ã©ãŠã³ãã¹ã¬ããã§å®è¡ãããå
¥å/åºåãšã©ãŒãåŠçããã¡ã¢ãªå²ãåœãŠã管çããŸãã
ããã䜿çšããŠãã¢ããªã±ãŒã·ã§ã³å
ã§ã¹ã¯ãªãŒã³ã·ã§ãããæ®ãããšãã§ããŸãïŒããšãã°ããšã©ãŒãå ±åããããïŒã
äœ¿ãæ¹ã¯ããªãç°¡åã§ãæ¢åã®ããã¥ã¡ã³ãã§ååã§ãã Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããAPI 19以éããµããŒãããŠããŸãã
WiseFyã¯ãAndroidçšã®WifiManager
ããã³ConnectivityManager
ã©ãããŒã§ãã æ¬¡ã®ãããªç°¡åãªé«ã¬ãã«èšå®ã远å ããŸãã
- ãããã¯ãŒã¯ã®è¿œå ãšåé€ã
- ããã€ã¹æ¥ç¶ã®ç¢ºèªã
- çŸåšã®ãããã¯ãŒã¯ã確èªããŸãã
- Wi-Fiã®ãªã³/ãªãã®åãæ¿ããªã©ã

ããã¯æ°ããã©ã€ãã©ãªã§ã¯ãããŸããããæè¿å€§ããªãªãã¡ã¯ã¿ãªã³ã°ãè¡ãããKotlinã§å®å
šã«æžãçŽãããŸããã
ææžã¯é©åã§è©³çްã§ãã ã©ã€ã»ã³ã¹ïŒApache 2.0ã
MVICoreã¯ã Badoo Techã®ææ°ã®MVIãã¬ãŒã ã¯ãŒã¯ã§ãã
- 100ïŒ
KotlinïŒãªã¢ã¯ãã£ãã¢ãŒãã§ããžãã¹æ©èœãå®è£
ããç°¡åãªæ¹æ³ã
- ã¹ã±ãŒãªã³ã°ïŒåäžã®Reducerã³ã³ããŒãã³ãã§äœæ¥ã§ããŸãããå¿
èŠã«å¿ããŠãããè€éãªã±ãŒã¹ãåŠçããããã«å¿
èŠãªæ°ã ã远å ã§ããŸãã
- ã€ãã³ãåŠçïŒç¶æ
ãä¿åããããªãã€ãã³ããåŠçããããã®ãœãªã¥ãŒã·ã§ã³ããããŸãã
- ãªã¢ã¯ãã£ãã³ã³ããŒãã³ãã®ãªã³ã¯ïŒãªã¢ã¯ãã£ãã³ã³ããŒãã³ããèªåã©ã€ããµã€ã¯ã«ç®¡çãšãªã³ã¯ããããã®éåžžã«ã·ã³ãã«ãªAPIã
- ããã«äœ¿ãããã¬ãŒã
- æéãããã¬ïŒïŒç°å¢å€æ°ã ãã§ãªãïŒãã¹ãŠã®ãªã¢ã¯ãã£ãã³ã³ããŒãã³ãã«ã€ããŠããããã®ç¶æ
ãæéå
ã«èšé²ããŠãã衚瀺ã§ããŸãã
ãã¬ãŒã ã¯ãŒã¯ã«ã¯æ¬åœã«è¯ãããã¥ã¡ã³ãããããŸã ã MVIã®ã¹ã¿ã€ã«ã§ã¢ããªã±ãŒã·ã§ã³ãæžãçŽãããå Žåã¯ããã®ãœãªã¥ãŒã·ã§ã³ã«æ³šæãæãå¿
èŠããããŸãã
ãã®ã©ã€ãã©ãªã¯ãç¬èªã®View
ã³ã³ããŒãã³ããéçºãããšãã«åœ¹ç«ã¡ãŸãã ããšãã°ããã®ãããªå転ããé»è©±ãã£ã¹ã¯ã¯ãããŠã³ããŒãã€ã³ãžã±ãŒã¿ã®ä»£ãããšããŠäœ¿çšã§ããŸãã

ãããžã§ã¯ãã«ã¯çãREADMEããããŸãã ãŸããApache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸããã å®å
šã«ã³ããªã³ã§æžãããŠããŸãã
ããã¯ã Jsoupã©ã€ãã©ãªã«åºã¥ããŠããã Medium Textviewã«è§Šçºããããã·ã³ãã«ãªHTMLããŒãžããã€ãã£ãAndroidãŠã£ãžã§ããããRecyclerViewã«å€æããè峿·±ãã©ã€ãã©ãªã§ãã

ãã®ã©ã€ãã©ãªã¯ãŸã éçºäžã§ããããããããžã§ã¯ãã§ã¯æ³šæããŠäœ¿çšããŠãã ããã ããã¥ã¡ã³ãã¯é©åã§ãããã©ã€ãã©ãªã®äœ¿ç𿹿³ãç°¡åã«èª¬æããŠããŸãã Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸããã
ãã®ã©ã€ãã©ãªã«ã€ããŠç¹°ãè¿ãè¿°ã¹ãŠããŸãããã BufferããŒã ã®åªåã®ãããã§ããŸã éçºäžã§ãã çŸåšãDaggerã®ä»£ããã«Koinã䜿çšããŠäŸåé¢ä¿ã泚å
¥ããæ¹æ³ã瀺ããŠããŸãã

ã©ã€ãã©ãªã¯MITã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
Splittiesã¯å°ããªç¬ç«ããAndroidã©ã€ãã©ãªã®ã³ã¬ã¯ã·ã§ã³ã§ããããã®ç®çã¯Androidåãã®ã¢ããªã±ãŒã·ã§ã³ãšã©ã€ãã©ãªã®éçºãã·ã³ãã«ã§æ¥œãããã®ã«ããããšã§ãã ç§ã¯ãã®ã¢ã€ãã¢ãæ¬åœã«å¥œãã§ãã
ãã®ãããžã§ã¯ãã¯ãç¬ç«ããAndroidã©ã€ãã©ãªãšããŠé
åžãããå°ããªã¢ãžã¥ãŒã«ã«åå²ãããŠããããããSplittiesããšåŒã°ããæ¬åœã«å¿
èŠãªãã®ã ãããããžã§ã¯ãã«è¿œå ã§ããæçµçãªapkãã¡ã€ã«ã®ãµã€ãºãå°ããã§ããŸãã
åã¢ãžã¥ãŒã«ã¯ãå°ãããµã€ãºã§å¯èœãªéãå¹ççã«ãªãããã«èšèšãããŠããŸãã
ããã¥ã¡ã³ãã¯è¯å¥œã§ããããžã§ã¯ãã¯Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
ããã¯ãæå·åãããé衚瀺ã®éããããµããŒãããå°ããªç»åéããã©ã€ãã©ãªã§ãã

ã©ã€ãã©ãªã¯éåžžã«åŒ·åã§ãè€æ°ã®éãããäœæããæç»ã¢ãŒããéžæãããªãœãŒã¹ïŒããã¹ãã View
ã³ã³ããŒãã³ãããŸãã¯AndroidãªãœãŒã¹ïŒãããŒãããæ¹æ³ãéžæã§ããŸãã ããã¥ã¡ã³ãã¯åªããŠããŸããããµã³ãã«ã¢ããªã±ãŒã·ã§ã³ã¯ãŸã ãããŸãã
ã©ã€ãã©ãªã¯ãApache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸãã
ããã¯ããã®èšäºã®ã©ã€ãã©ãªã®2çªç®ã®ã³ã¬ã¯ã·ã§ã³ã§ãã ä»åã¯MozillaããŒã ããã®ãã®ã§ããã©ãŠã¶ãŸãã¯ãã©ãŠã¶ã®ãããªã¢ããªã±ãŒã·ã§ã³ãäœæãããšãã«åœ¹ç«ã¡ãŸãã
以äžã®å³ã¯ã䜿çšå¯èœãªã³ã³ããŒãã³ãã®äžéšã瀺ããŠããŸãã

ãããžã§ã¯ãã«ã¯ãããŸããŸãªã³ã³ããŒãã³ãã®äœ¿çšã瀺ã4ã€ã®ãµã³ãã«ã¢ããªã±ãŒã·ã§ã³ããããŸãã ãŸããåªããããã¥ã¡ã³ãããããMPL 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
ãã®ã©ã€ãã©ãªã¯ãRxJavaãšRxKotlinãAndroidã®Biometric PromptïŒæçŽã¹ãã£ããŒïŒã«æ¥ç¶ããŸãïŒAndroid 9 Pieã«è¿œå ãAPI 28+ïŒã

Androidéçºè
ã®å
¬åŒããã°ã«ãããšãã¢ããªã±ãŒã·ã§ã³ã§ãã£ã³ã¬ãŒããªã³ãã䜿çšããŠç¬èªã®èªèšŒã¡ã«ããºã ã䜿çšããå Žåã¯ãã§ããã ãæ©ãBiometricPrompt APIã®äœ¿çšã«åãæ¿ããå¿
èŠããããŸãã
RxBiometricã¯ãRxJavaã¹ããªãŒã ãä»ããŠãããè¡ãã®ã«åœ¹ç«ã¡ãŸãã 䜿çšäŸã®ããä¿¡é Œã§ããããã¥ã¡ã³ãããããŸãã Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸããã
ããã¯ãGoogleã®BottomNavigationView
ãæ¡åŒµããã©ã€ãã©ãªã§ãéåžžã«è峿·±ãè§åºŠããèŠãããšãã§ããŸãã

ãããžã§ã¯ãã¯ã³ããªã³ã§æžãããŠããŸãã Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããã©ã€ãã©ãªã䜿çšãããµã³ãã«ã¢ããªã±ãŒã·ã§ã³ããããŸãã
ããã¯ãã³ãŒããShopifyããŒã ã®RxJavaãªã©ã®åŒã³åºããã§ãŒã³ã«å€æããKotlin LiveData
æ¡åŒµæ©èœã§ãã Androidã®ã¢ãŒããã¯ãã£ã³ã³ããŒãã³ãã®LiveData
ã䜿çšããŠããå Žåã以äžã®äŸã«ç€ºãããã«ã LiveData KTX
ãLiveData KTX
ç°¡åã«çœ®ãæããŠããã®ãããªãã§ãŒã³ãäœæã§ããŸãã

ãã®ãããžã§ã¯ãã¯4人ã®éçºè
ã«ãã£ãŠéçºãããMITã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
Tumbleweedã¯Universal-Tween-Engineã®æŽŸçç©ã§ããããããžã§ã¯ãå
ã®ãã¹ãŠã®ãªããžã§ã¯ãã®å屿§ã«å¯ŸããŠã¹ã ãŒãºãªè£éãäœæã§ããŸãã

Tumbleweedã¯ãããã€ãã®ç¹ã§å
ã®ãããžã§ã¯ããšç°ãªããŸãã
Tweens
ãšTimelines
倿ŽãTweens
ïŒ Tweens
çºè¡šãšå®è£
ã¯Tweens
ïŒã- è£éã¯ãç¹å®ã®ã¿ã€ãïŒ
TweenType<T>
ïŒãäœæããããšã«ããã«ãã»ã«åãããŸã; - ããŒã«ïŒäºæããªãåäœã®çµ¶ãéãªãçºçæºïŒãªã©ãåé€ããŸããã
å
æ¬çãªããã¥ã¡ã³ããå«ãŸããŠãããApache 2.0ã©ã€ã»ã³ã¹ã§ãªãªãŒã¹ãããŠããŸãã ãµã³ãã«ã¢ããªã±ãŒã·ã§ã³ããããŸã ã
ã¹ã¿ã€ãªã¹ãã¯ã Uberéçºè
ã«ãã£ãŠäœæããããããžã§ã¯ãã§ãã ããã¯ãAndroidããŒãã®åºæ¬ã»ãããçæããKotlin Gradleãã©ã°ã€ã³ã§ãã ããšãã°ãã¢ããªã±ãŒã·ã§ã³ã®æãããŒããšæããããŒãã®ããã¹ãã®ãµã€ãºã決å®ããå Žåãæ¬¡ã®ã¯ã©ã¹ãäœæããŸãã

ãããŠãçæãããXMLããŒããååŸããŸãã

ãã®ãããžã§ã¯ãã¯ãApache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
ããã¯ããªã¢ã¯ãã£ããªå
±æèšå®ãæäŸããå°ããªã©ã€ãã©ãªã§ãã Kotlinã§äœ¿çšããããã«ç¹å¥ã«èšèšãããŠããŸãã
RxkPrefs
ã®ã€ã³ã¹ã¿ã³ã¹ã䜿çšããŠãèšå®ãååŸã§ããŸãã ããããããã¯èšå®ã®çã®å€ã§ã¯ãªããããå€ãã®æ©èœãæäŸããPref
ã€ã³ã¿ãŒãã§ãŒã¹ã®ã€ã³ã¹ã¿ã³ã¹ã§ãã
ã©ã€ãã©ãªã¯ãApache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸãã
ãã®ã©ã€ãã©ãªã¯ãã¢ããªã±ãŒã·ã§ã³ã®æååãªãœãŒã¹ãåçã«çœ®æããããæ°ããããŒãžã§ã³ãGoogle Playã«å
¬éãããããã«æ°ããèšèªã远å ãããããç°¡åãªæ¹æ³ãæäŸããŸãã ã©ã®ããã«æ©èœããŸããïŒ
å°éçšèªã¯ãã¢ããªã±ãŒã·ã§ã³éçºã§ã®ãªãœãŒã¹ã®äœ¿ç𿹿³ã倿ŽããŸããã 代ããã«ããã®ããã»ã¹ã®ç޹ä»ãè¡ãããŸããã¢ããªã±ãŒã·ã§ã³å
ã®ãã¡ã€ã«ããè¿ãããå€ãã€ã³ã¿ãŒã»ããããããµãŒããŒã«æ°ããå€ããããã©ããããã§ãã¯ãããŸãã ããã«ãããã¿ã€ããã¹ããªããããã衚çŸãæ¹åããããæ°ããèšèªã远å ãããããããšãã§ããŸãã ã¢ããªã±ãŒã·ã§ã³ã®æ°ããããŒãžã§ã³ããªãªãŒã¹ããå¿
èŠãªãããã¹ãŠãªã¢ã«ã¿ã€ã ã§ã
ããã¯æ¬åœã«è¯ãèãã§ãã ã©ã€ãã©ãªã¯ãApache 2.0ã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŸãã ãããžã§ã¯ãã«ã¯ãå®å
šãªããã¥ã¡ã³ãã ãã§ãªããµã³ãã«ã¢ããªã±ãŒã·ã§ã³ãå«ãŸããŠããŸãã
ããã¯ãTinderããŒã ã®Kotlinããã³Javaçšã®ã¬ãããã£ããã«ãã³ããåŸãWebSocket
ã¯ã©ã€ã¢ã³ãã§ãã ã©ã€ãã©ãªã¯ã ãã®èšäºã§è©³ãã説æããã³èª¬æãããŠããŸã ã
ãŸãããããã³ã€ã³ã®çºæ¿ã¬ãŒãããªã¢ã«ã¿ã€ã ã§ç¢ºèªããããã®ã¢ããªã±ãŒã·ã§ã³ã§ã®äœ¿çšã確èªã§ããŸã ã
Scarletã¯ãåããTinderããŒã ãéçºããStateMachineã«ãã£ãŠç®¡çãããŠããŸãã

ãã®ãããžã§ã¯ãã¯ãBSD 3-Clauseã©ã€ã»ã³ã¹ã®äžã§ãªãªãŒã¹ãããŠããŸãã
ãããã«
以äžã§ãïŒ ãã®ãªã¹ããæ¥œããã§ãããã€ãã®ãããžã§ã¯ããããªãã«ã€ã³ã¹ãã¬ãŒã·ã§ã³ãäžããŠãããããšãé¡ã£ãŠããŸãã éå»5ãæéã«ãªãªãŒã¹ãããä»ã®å€§ããªã©ã€ãã©ãªãç¥ã£ãŠããŠãããã«ã€ããŠèšåããŠããªãå Žåã¯ãã³ã¡ã³ãã§ãç¥ãããã ããã
ä»ã®é¢é£ã³ã¬ã¯ã·ã§ã³ããèªã¿ãã ããã
ã25ã®é¢çœãAndroidã©ã€ãã©ãªã 2018幎æ¥
ããã¹ãŠã®Androidéçºè
ãç¥ã£ãŠããã¹ã10ã®ã©ã€ãã©ãªã
ãKotlinã§ã®Androidéçºçšã®7ã€ã®ã©ã€ãã©ãªã