ãã®ã·ãªãŒãºã®èšäºã§ã¯ãAndroidã®å éšããã€ã¹ã«ã€ããŠèª¬æããŸã-ããŒãããã»ã¹ããã¡ã€ã«ã·ã¹ãã ã®ã³ã³ãã³ãããã€ã³ããŒãšAndroidã©ã³ã¿ã€ã ãã¢ããªã±ãŒã·ã§ã³ã®æ§æãã€ã³ã¹ããŒã«ãå®è¡ãçžäºäœçšãAndroidãã¬ãŒã ã¯ãŒã¯ã Androidã®ã»ãã¥ãªãã£ä¿è·æ¹æ³ã
ã·ãªãŒãºèšäºïŒ
- Androidã®ä»çµã¿ãããŒã1
- Androidã®ä»çµã¿ãããŒã2
- Androidã®ä»çµã¿ãããŒã3
- Androidã®ä»çµã¿ãããŒã4
- ...
ããã€ãã®äºå®
Androidã¯ã 20å人以äžã®ã¢ã¯ãã£ããŠãŒã¶ãŒãããæã人æ°ã®ãããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ããã³ã¢ããªã±ãŒã·ã§ã³ãã©ãããã©ãŒã ã§ãã ãã¢ãã®ã€ã³ã¿ãŒãããããã¹ããŒããŠã©ãããããã¬ããã©ããããããè»ãŸã§ããŸã£ããç°ãªãããã€ã¹ã䜿çšããŠããŸãããã»ãšãã©ã®å ŽåãAndroidã¯ã¹ããŒããã©ã³ãã¿ãã¬ããã§äœ¿çšãããŠããŸãã
Androidã¯ç¡æã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã§ãã ã»ãšãã©ã®ãœãŒã¹ã³ãŒãïŒ https://source.android.comã«ãããŸã ïŒã¯ãç¡æã®Apache 2.0ã©ã€ã»ã³ã¹ã®äžã§é åžãããŠããŸãã
Android Inc. 2003幎ã«èšç«ããã2005幎ã«Googleã«ãã£ãŠè³Œå ¥ãããŸããã Androidãããªãã¯ããŒã¿ã¯ 2007幎ã«ãªãªãŒã¹ããã æåã®å®å®ããŒãžã§ã³ã¯2008幎ã«ãªãªãŒã¹ãããŸããããã以éãã¡ãžã£ãŒãªãªãŒã¹ã¯å¹Žã«çŽ1åãªãªãŒã¹ãããŸãã å·çæç¹ã§ã®Androidã®ææ°ã®å®å®ããŒãžã§ã³ã¯7.1.2 Nougatã§ãã
Androidã¯Linux
ãã®èšãåãã«ã€ããŠå€ãã®è«äºããã£ãã®ã§ããã®ãã¬ãŒãºã®æå³ãããã«èª¬æããŸããAndroidã¯Linuxã«ãŒãã«ã«åºã¥ããŠããŸãããä»ã®ã»ãšãã©ã®Linuxã·ã¹ãã ãšã¯å€§ããç°ãªããŸãã
å ã®AndroidéçºããŒã ã®äžã«ã¯ãLinuxã«ãŒãã«ã®æãæåãªéçºè ã®1人ã§ããRobert LoveãããŸããããä»ã§ãGoogleã¯ã«ãŒãã«ãžã®æãç©æ¥µçãªè²¢ç®è ã®1ã€ã§ãããããAndroidãLinuxäžã«æ§ç¯ãããŠããããšã¯é©ãããšã§ã¯ãããŸããã
ä»ã®Linuxã·ã¹ãã ãšåæ§ã«ãLinuxã«ãŒãã«ã¯ãã¡ã¢ãªç®¡çãããŒã¿ä¿è·ããã«ãããã»ãã·ã³ã°ãšãã«ãã¹ã¬ããã®ãµããŒããªã©ã®äœã¬ãã«ã®ãã®ãæäŸããŸãã ãã ããããã€ãã®äŸå€ãé€ããŠãAndroidã«ã¯ä»ã®äœ¿ãæ £ããGNU / Linuxã·ã¹ãã ã³ã³ããŒãã³ãã¯ãããŸãããGNUãããžã§ã¯ãã«ã¯äœããããŸãããX.Orgã¯äœ¿çšããããsystemdã§ãããããŸããã ãããã®ã³ã³ããŒãã³ãã¯ãã¹ãŠãã¡ã¢ãªãéãããããã»ããµã®é床ãé ããæ¶è²»é»åãæå°ã®æ¡ä»¶ã§ã®äœ¿çšã«é©ããã¢ããã°ã«çœ®ãæããããŸãããããã£ãŠãAndroidã¯GNU / Linuxãããçµã¿èŸŒã¿Linuxã·ã¹ãã ã«äŒŒãŠããŸãã
AndroidãGNUãœãããŠã§ã¢ã䜿çšããªããã1ã€ã®çç±ã¯ãããç¥ãããŠããããŠãŒã¶ãŒç©ºéã«GPLã䜿çšããªããããªã·ãŒã§ãã
Apache Software License 2.0ãAndroidã®åªå ã©ã€ã»ã³ã¹ã§ããçç±ãå°ããããããšããããŸãã ãŠãŒã¶ãŒã¹ããŒã¹ïŒã€ãŸããéã«ãŒãã«ïŒãœãããŠã§ã¢ã®å Žåãå®éã«ã¯LGPLãªã©ã®ä»ã®ã©ã€ã»ã³ã¹ãããASL 2.0ïŒããã³BSDãMITãªã©ã®åæ§ã®ã©ã€ã»ã³ã¹ïŒãåªå ããŸãã
Androidã¯èªç±ãšéžæã®åé¡ã§ãã Androidã®ç®çã¯ãã¢ãã€ã«ã®äžçã§ãªãŒãã³æ§ãä¿é²ããããšã§ããããŠãŒã¶ãŒããœãããŠã§ã¢ã䜿çšãããã¹ãŠã®çšéãäºæž¬ãŸãã¯æ瀺ããããšã¯äžå¯èœã ãšèããŠããŸãã ãã®ããããã¹ãŠã®äººã«ãªãŒãã³ã§å€æŽå¯èœãªããã€ã¹ãäœæããããšããå§ãããŸãããããããããšã匷å¶ããã®ã¯ç§ãã¡ã®å Žæã§ã¯ãªããšèããŠããŸãã LGPLã©ã€ãã©ãªã䜿çšãããšãå€ãã®å Žåããããã匷å¶çã«å®è¡ããŸãã
Androidã®Linuxã«ãŒãã«èªäœãè¥å¹²å€æŽãããŠããŸããashmem ïŒå¿åå ±æã¡ã¢ãªïŒãBinderãã©ã€ããŒïŒä»¥äžã§èª¬æãã倧èŠæš¡ã§éèŠãªBinderãã¬ãŒã ã¯ãŒã¯ã®äžéšïŒãwakelocksïŒã¹ãªãŒã管çïŒãlowãªã©ãããã€ãã®å°ããªã³ã³ããŒãã³ããè¿œå ãããŸããã¡ã¢ãªãã©ãŒã æåã¯ãã«ãŒãã«ãžã®ãããã§ããããã³ãŒãã¯ããã«ã¢ããã¹ããªãŒã ã«ãŒãã«ã«è¿œå ãããŸããã ãã ãããéåžžã®Linuxãã§ã¯ããããèŠã€ããããšãã§ããŸãããä»ã®ã»ãšãã©ã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ã¯ãã¢ã»ã³ããªäžã«ãããã®ã³ã³ããŒãã³ããç¡å¹ã«ãªããŸãã
Androidã¯GNU Cã©ã€ãã©ãªïŒ glibc ïŒãlibcïŒæšæºCèšèªã©ã€ãã©ãªïŒãšããŠäœ¿çšããŸããããçµã¿èŸŒã¿ã·ã¹ãã åãã«æé©åãããbionicãšåŒã°ããç¬èªã®æå°éã®å®è£ ã§ããäºææ§ã®å€ãã®å±€ã§å€§ãããªããããŠããŸãã
Androidã«ã¯ã³ãã³ãã©ã€ã³ã·ã§ã«ãšãå€ãã®æšæºçãªUnixã©ã€ã¯ãªã³ãã³ã/ããã°ã©ã ã·ã¹ãã ããããŸãã çµã¿èŸŒã¿ã·ã¹ãã ã§ã¯ãéåžžBusyboxããã±ãŒãžãããã«äœ¿çšããã1ã€ã®å®è¡å¯èœãã¡ã€ã«ã§å€ãã®ã³ãã³ãã®æ©èœãå®è£ ããŸãã Androidã¯ToyboxãšåŒã°ãã察å¿ç©ã䜿çšããŸãã ãéåžžã®ãLinuxãã£ã¹ããªãã¥ãŒã·ã§ã³ïŒçµã¿èŸŒã¿ã·ã¹ãã ãšã¯ç°ãªããŸãïŒãšåæ§ã«ãã·ã¹ãã ãšå¯Ÿè©±ããäž»ãªæ¹æ³ã¯ãã³ãã³ãã©ã€ã³ã§ã¯ãªãã°ã©ãã£ã«ã«ã€ã³ã¿ãŒãã§ã€ã¹ã䜿çšããããšã§ãã ããã§ããã³ãã³ãã©ã€ã³ã«ã¢ã¯ã»ã¹ããã®ã¯éåžžã«ç°¡åã§ããã¿ãŒããã«ãšãã¥ã¬ãŒã¿ã¢ããªã±ãŒã·ã§ã³ãå®è¡ããã ãã§ãã ããã©ã«ãã§ã¯ãéåžžã¯ã€ã³ã¹ããŒã«ãããŸããããããšãã°Playã¹ãã¢ïŒ Androidã®ã¿ãŒããã«ãšãã¥ã¬ãŒã¿ãŒ ã ãããªã¢ã«ã¿ãŒããã« ã Termux ïŒããç°¡åã«ããŠã³ããŒãã§ããŸãã LineageOS ïŒä»¥åã®CyanogenModïŒãªã©ãå€ãã®ãé«åºŠãªãAndroidãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ã¯ãã¿ãŒããã«ãšãã¥ã¬ãŒã¿ãããªã€ã³ã¹ããŒã«ãããŠããŸãã
2çªç®ã®ãªãã·ã§ã³ã¯ã Android Debug Bridge ïŒadbïŒãä»ããŠã³ã³ãã¥ãŒã¿ãŒããAndroidããã€ã¹ã«æ¥ç¶ããããšã§ãã ããã¯ãSSHãä»ããæ¥ç¶ã«éåžžã«äŒŒãŠããŸãã
user@desktop-linux$ adb shell android$ uname Linux
ä»ã®éŠŽæã¿ã®ããã³ã³ããŒãã³ãã®ãã¡ãAndroidã¯FreeTypeã©ã€ãã©ãªïŒããã¹ãã®è¡šç€ºçšïŒã OpenGL ES ãEGLãããã³Vulkanã°ã©ãã£ãã¯ã¹APIãããã³è»œéã®SQLite DBMSã䜿çšããŸãã
ããã«ã WebKitãã©ãŠã¶ãŒãšã³ãžã³ã¯ä»¥åã«WebViewã®å®è£ ã«äœ¿çšãããŠããŸããããããŒãžã§ã³7.0以éã§ã¯ãã€ã³ã¹ããŒã«ãããChromeã¢ããªã±ãŒã·ã§ã³ã代ããã«äœ¿çšãããŸãïŒãŸãã¯å¥ã®; WebViewãããã€ããŒãšããŠæ©èœããããšãèš±å¯ãããŠããã¢ããªã±ãŒã·ã§ã³ã®ãªã¹ãã¯ãã·ã¹ãã ã®ã³ã³ãã€ã«ã®æ®µéã§æ§æãããŸã ïŒã å éšã§ã¯ãChromeã¯WebKitããŒã¹ã®Blinkãšã³ãžã³ã䜿çšããŸãããã·ã¹ãã ã©ã€ãã©ãªãšã¯ç°ãªããChromeã¯Playã¹ãã¢ãéããŠæŽæ°ãããŸãããããã£ãŠãWebViewã䜿çšãããã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ã¯èªåçã«ææ°ã®æ¹åãšãã°ä¿®æ£ãåãåããŸãã
ã¢ããªããã¹ãŠ
ã芧ã®ãšãããAndroidã®äœ¿çšã¯ãéåžžã®Linuxãã®äœ¿çšãšã¯æ ¹æ¬çã«ç°ãªããŸããã¢ããªã±ãŒã·ã§ã³ãéãããéãããããå¿ èŠã¯ãªãããã¹ãŠã®ã¢ããªã±ãŒã·ã§ã³ãåžžã«å®è¡ãããŠãããã®ããã«åãæ¿ããã ãã§ãã å®éãAndroidã®ãŠããŒã¯ãªæ©èœã®1ã€ã¯ãã¢ããªã±ãŒã·ã§ã³ãå®è¡äžã®ããã»ã¹ãçŽæ¥å¶åŸ¡ããªãããšã§ãã ããã«ã€ããŠè©³ãã説æããŸãããã
Unixã©ã€ã¯ã·ã¹ãã ã®åºæ¬åäœã¯ããã»ã¹ã§ãã ãŸããäœã¬ãã«ã®ã·ã¹ãã ãµãŒãã¹ãã·ã§ã«å
ã®åã
ã®ã³ãã³ããããã³ã°ã©ãã£ãã¯ã¹ã¢ããªã±ãŒã·ã§ã³ã¯ããã»ã¹ã§ãã ã»ãšãã©ã®å Žåãããã»ã¹ã¯ã·ã¹ãã ã®æ®ãã®éšåã®ãã©ãã¯ããã¯ã¹ã§ã-ã·ã¹ãã ã®ä»ã®ã³ã³ããŒãã³ãã¯ããã®ç¶æ
ãèªèãããæ°ã«ããŸããã ããã»ã¹ã¯main()
é¢æ°main()
å®éã¯_start
ïŒãåŒã³åºãããšã§éå§ããç¬èªã®ããžãã¯ãå®è£
ããã·ã¹ãã ã³ãŒã«ãšåçŽãªããã»ã¹ééä¿¡ïŒIPCïŒãä»ããŠã·ã¹ãã ã®æ®ãã®éšåãšå¯Ÿè©±ããŸãã
AndroidãUnixã«äŒŒãŠãããããããããã¹ãŠåœãŠã¯ãŸããŸãããäœã¬ãã«ã®éšåïŒUnixã¬ãã«ïŒã¯ããã»ã¹ã®æŠå¿µã§åäœããããé«ãã¬ãã«ïŒAndroidãã¬ãŒã ã¯ãŒã¯ã¬ãã«ïŒã§ã¡ã€ã³ãŠãããã¯ã¢ããªã±ãŒã·ã§ã³ã§ã ã ãã®ã¢ããªã±ãŒã·ã§ã³ã¯ãã©ãã¯ããã¯ã¹ã§ã¯ãããŸãããã·ã¹ãã ã®ä»ã®éšåã«ããç¥ãããŠããåã ã®ã³ã³ããŒãã³ãã§æ§æãããŠããŸãã
Androidã¢ããªã±ãŒã·ã§ã³ã«ã¯main()
é¢æ°ããããŸããã1ã€ã®ãšã³ããªãã€ã³ãã¯ãããŸããã äžè¬ã«ãAndroidã¯ããŠãŒã¶ãŒãšéçºè
ã®äž¡æ¹ããå®è¡ãããã¢ããªã±ãŒã·ã§ã³ã®æŠå¿µãå¯èœãªéãæœè±¡åããŸãã ãã¡ãããã¢ããªã±ãŒã·ã§ã³ããã»ã¹ãéå§ããã³åæ¢ããå¿
èŠããããŸãããAndroidã¯ãããèªåçã«å®è¡ããŸãïŒããã«ã€ããŠã¯ã以äžã®èšäºã§è©³ãã説æããŸãïŒã éçºè
ã¯ãããããç¬èªã®ã©ã€ããµã€ã¯ã«ãæã€ããã€ãã®åå¥ã®ã³ã³ããŒãã³ããå®è£
ããããã«æåŸ
ãããŠããŸãã
ãã ããAndroidã§ã¯ããã©ãããã©ãŒã ã§ã¢ããªã®å®è¡æ¹æ³ããã詳现ã«å¶åŸ¡ããå¿ èŠããããããmainïŒïŒé¢æ°ã䜿çšããªãããšãæ瀺çã«æ±ºå®ããŸããã ç¹ã«ããŠãŒã¶ãŒãã¢ããªã®èµ·åãšåæ¢ã«ã€ããŠèããå¿ èŠããŸã£ãããªãã·ã¹ãã ãæ§ç¯ãããã£ãã®ã§ããããããã·ã¹ãã ããããã®é¢åãèŠãŠãããŸãã...ãã®ãããã·ã¹ãã ã¯åã¢ããªå ã§äœãèµ·ãã£ãŠãããã«ã€ããŠã®æ å ±ãããã«æã£ãŠããªããã°ãªããŸããã§ããã¢ããªãããã³çŸåšå®è¡ãããŠããªããŠããå¿ èŠãªãšãã«ãã€ã§ãã¢ããªãããŸããŸãªæ¹æ³ã§èµ·åã§ããŸãã
ãã®ãããªã·ã¹ãã ãå®è£ ããã«ã¯ãã¢ããªã±ãŒã·ã§ã³ãçžäºã«ããŸãã·ã¹ãã ãµãŒãã¹ãšéä¿¡ã§ããå¿ èŠããããŸããã€ãŸããéåžžã«é«åºŠã§é«éãªIPCã¡ã«ããºã ãå¿ èŠã§ãã
ãã®ã¡ã«ããºã ã¯ãã€ã³ããŒã§ãã
ãã€ã³ããŒ
ãã€ã³ããŒã¯ãé«éã§äŸ¿å©ã§ãªããžã§ã¯ãæåã®ããã»ã¹ééä¿¡ã®ããã®ãã©ãããã©ãŒã ã§ãã
Be Inc.ã§ãã€ã³ããŒéçºãéå§ãããŸãã ïŒBeOSã®å ŽåïŒãLinuxã«ç§»æ€ãããŠéãããŸããã Binderã®äž»èŠãªéçºè ã§ããDianne Hackbornã¯ãAndroidã®äž»èŠãªéçºè ã®1人ã§ãã éçºäžã«ãAndroidãã€ã³ããŒã¯å®å šã«æžãçŽãããŸããã
Binderã¯System V IPCïŒbionicã§ããµããŒããããŠããªãïŒäžã§ã¯åäœããŸãããããŠãŒã¶ãŒç©ºéããä»®æ³ããã€ã¹ã /dev/binder
ã·ã¹ãã ã³ãŒã«ïŒäž»ã«ioctl
ïŒãéããŠå¯Ÿè©±ããç¬èªã®å°ããªã«ãŒãã«ã¢ãžã¥ãŒã«ã䜿çšããŸãã ãŠãŒã¶ãŒã¹ããŒã¹åŽããã /dev/binder
ãšã®çžäºäœçšãããŒã¿ã®ããŒã·ã£ãªã³ã°/ã¢ã³ããŒã·ã£ãªã³ã°ãªã©ãBinderã®äœã¬ãã«ã®äœæ¥ãlibbinderã©ã€ãã©ãªã«å®è£
ãããŠããŸãã
ãã€ã³ããŒã®äœã¬ãã«éšåã¯ãããã»ã¹éã§è»¢éã§ãããªããžã§ã¯ãã®èŠ³ç¹ããåäœããŸãã ãã®å Žåãåç §ã«ãŠã³ãã䜿çšããŠãæªäœ¿çšã®å ±æãªãœãŒã¹ãšãªã¢ãŒãããã»ã¹ã®å®äºéç¥ïŒæ»ãžã®ãªã³ã¯ïŒãèªåçã«è§£æŸããããã»ã¹å ã®ãªãœãŒã¹ã解æŸããŸãã
ãã€ã³ããŒã®é«ã¬ãã«ã®éšåã¯ãã€ã³ã¿ãŒãã§ã€ã¹ããµãŒãã¹ãããã³ãããã·ãªããžã§ã¯ãã®èŠ³ç¹ããæ©èœããŸãã ããã°ã©ã ãä»ã®ããã°ã©ã ã«æäŸããã€ã³ã¿ãŒãã§ãŒã¹ã®èª¬æã¯ãJavaã®ã€ã³ã¿ãŒãã§ãŒã¹ã®å®£èšãšéåžžã«ãã䌌ãç¹å¥ãªèšèªAIDL ïŒAndroid Interface Definition LanguageïŒã§èšè¿°ãããŠããŸãã ãã®èª¬æã«ãããšãå®éã®Javaã€ã³ã¿ãŒãã§ãŒã¹ãèªåçã«çæãããã¯ã©ã€ã¢ã³ããšãµãŒãã¹èªäœã®äž¡æ¹ã§äœ¿çšã§ããŸãã ããã«ããã®ã€ã³ã¿ãŒãã§ã€ã¹ãå®è£
ãããããã·ïŒã¯ã©ã€ã¢ã³ãåŽã§äœ¿çšïŒãšã¹ã¿ãïŒãµãŒãã¹åŽïŒã®2ã€ã®ç¹å¥ãªã¯ã©ã¹ã.aidl
ã«ãã£ãŠèªåçã«çæãããŸãã
ã¯ã©ã€ã¢ã³ãããã»ã¹ã®Javaã³ãŒãã®å Žåããããã·ãªããžã§ã¯ãã¯ã€ã³ã¿ãŒãã§ã€ã¹ãå®è£ ããéåžžã®Javaãªããžã§ã¯ãã®ããã«èŠãããã®ã³ãŒãã¯ãã®ã¡ãœãããåçŽã«åŒã³åºãããšãã§ããŸãã ãã®å Žåãçæããããããã·ãªããžã§ã¯ãã®å®è£ ã¯ãæž¡ãããåŒæ°ãèªåçã«ã·ãªã¢ã«åããlibbinderãä»ããŠãµãŒãã¹ããã»ã¹ãšéä¿¡ããæž¡ãããåŒã³åºãã®çµæãéã·ãªã¢ã«åããJavaã¡ãœããããè¿ããŸãã
ã¹ã¿ãã¯å¥ã®æ¹æ³ã§åäœããŸããlibbinderãä»ããŠçä¿¡åŒã³åºããåãå ¥ããåŒæ°ãéã·ãªã¢ã«åããã¡ãœããã®æœè±¡å®è£ ãåŒã³åºããæ»ãå€ãã·ãªã¢ã«åããã¯ã©ã€ã¢ã³ãããã»ã¹ã«æž¡ããŸãã ãããã£ãŠããµãŒãã¹ãå®è£ ããã«ã¯ãããã°ã©ããŒãã¹ã¿ãããç¶æ¿ããã¯ã©ã¹ã«æœè±¡ã¡ãœãããå®è£ ããã ãã§ååã§ãã
Javaã¬ãã«ã§ã®ãã®ãã€ã³ããŒã®å®è£ ã«ãããã»ãšãã©ã®ã³ãŒãã¯ããã®æ©èœãå¥ã®ããã»ã¹ã§å®è£ ãããŠãããšããäºå®ãèæ ®ããããšãªãããããã·ãªããžã§ã¯ãã䜿çšã§ããŸãã å®å šãªéææ§ã確ä¿ããããã«ãBinderã¯ãã¹ããããååž°çãªããã»ã¹éåŒã³åºãããµããŒãããŠããŸãã ããã«ã䜿çšããããµãŒãã¹ã®å®è£ ãåãããã»ã¹ã«ãããå¥ã®ããã»ã¹ã«ãããã«é¢ä¿ãªããã¯ã©ã€ã¢ã³ãåŽã§ã®ãã€ã³ããŒã®äœ¿çšã¯ãŸã£ããåãã«èŠããŸãã
ç°ãªãããã»ã¹ãäºãã®ãµãŒãã¹ããèŠã€ãããããã«ãAndroidã«ã¯ãä»ã®ãã¹ãŠã®ãµãŒãã¹ã®ããŒã¯ã³ãä¿åãç»é²ãããã³çºè¡ããç¹å¥ãªServiceManagerãµãŒãã¹ããããŸãã
ãã€ã³ããŒã¯ã·ã¹ãã ãµãŒãã¹ïŒããã±ãŒãžãããŒãžã£ãŒãã¯ãªããããŒããªã©ïŒãå®è£ ããããã«Androidã§åºã䜿çšãããŠããŸããããã®è©³çŽ°ã¯Activity ã Intent ã Contextãªã©ã®Androidãã¬ãŒã ã¯ãŒã¯ã®é«ã¬ãã«ã¯ã©ã¹ã«ãã£ãŠã¢ããªã±ãŒã·ã§ã³éçºè ããé ãããŠããŸãã ãŸããã¢ããªã±ãŒã·ã§ã³ã¯ãã€ã³ããŒã䜿çšããŠçžäºã«ç¬èªã®ãµãŒãã¹ãæäŸã§ããŸããããšãã°ã Google Play Servicesã¢ããªã±ãŒã·ã§ã³ã«ã¯ç¬èªã®ã°ã©ãã£ã«ã«ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ã¯ãããŸããããä»ã®ã¢ããªã±ãŒã·ã§ã³ã®éçºè ã«Google PlayãµãŒãã¹ã䜿çšããæ©äŒãæäŸããŸãã
ãããã®ãªã³ã¯ã§ãã€ã³ããŒã«ã€ããŠè©³ããç¥ãããšãã§ããŸãïŒ
- Androidãã€ã³ããŒ-çµã¿èŸŒã¿Linux Wiki
- Androidã€ã³ã¿ãŒãã§ã€ã¹å®çŸ©èšèª ã IBinder
- Android IPC /ãã€ã³ããŒãã¬ãŒã ã¯ãŒã¯ã®è©³çŽ°
- Android Binder-Androidããã»ã¹ééä¿¡
- Android Binder Frameworkã®æŠèŠ
- ãã€ã³ããŒãšãŠã£ã³ããŠããŒã¯ã³
次ã®èšäºã§ã¯ãAndroidã®é«ã¬ãã«éšåããã®å身ã®ããã€ããããã³åºæ¬çãªã»ãã¥ãªãã£ã¡ã«ããºã ãæ§ç¯ããããã€ãã®ã¢ã€ãã¢ã«ã€ããŠèª¬æããŸãã