ã¨ã ã¹ãªã¼ã¨ã³ã¸ãã¢ãªã³ã°ã°ã«ã¼ã ãã«ãããã¤ã¹ãã¼ã æå±ã®èè°·(@_a_akira)ã§ãã å¼ç¤¾ã§ã¯ãæ¨å¹´ã®12æã«å»å¸«åãã®æ°è¦ã¢ããªãAndroid, iOSåãã«ãã¤ãã£ãå®è£ ããªãªã¼ã¹ãã¾ããã ä»åã¯ããã®éKotlin Multiplatform Projectãç¨ãã¦ã¦ã¼ã¶ã®è¡åãã°éä¿¡é¨åãå ±éåãã話ããããã¨æãã¾ãã Kotlin Multiplatform Projectã¨ã¯ Kotlin Multiplatform Project(以å¾MPP)ã¨ã¯ã Kotlinã§æ¸ãããåä¸ã®ã³ã¼ãã Kotlin/JVM,(Android, Serverç) Kotlin/Native(iOS, Windows, Linuxç) Kotlin/JS ã®åãã©ãããã©ã¼ã åãã«ãã©ã³ã¹ãã¤ã«å¯è½ãªããã¸ã§ã¯ãã®ãã¨ã§ã ãã£ã¨è©³ããç¥ãããæ¹ã¯ å ¬å¼ããã¥ã¡ã³ãã ã£ãããç§
October 24, 2018Kotlin/Nativeãã¥ã¼ããªã¢ã« Android, iOSç·¨ 2019/01/30 Kotlinã®ã¢ãããã¼ãã«ããããã¤ãå¤æ´ç¹ãããã¾ãã ä¸å¿è¿½è¨ãã¦ãã¾ããã追ããããªãé¨åãããã¾ãã®ã§åèªç¢ºèªãé¡ããã¾ãã å人çã«Kotlin/Nativeã¯ãã«ããã©ãããã©ã¼ã ã®éã®å¼¾ä¸¸ã«ãªãå¾ãããã³ã·ã£ã«ãæã£ã¦ããã¨æã£ã¦ãã¾ãã ããããã¾ã Kotlin/Nativeã¯Î²çã®ããå®ç¨æ®µéã«ã¯è³ã£ã¦ãã¾ããããã¤ãã«å æ¥1.0ã®tagãåããã¾ãã! 2018å¹´10æ12æ¥ã«ã1.0ã§ã¿ã°ãåããã¦ããã®ã§ãããæ£å¼ãªãªã¼ã¹ã§ã¯ãªãã®ã§23æ¥ã«å ¥ãæ¿ãã£ã¦ãã¾ããã éç¨æ¬¡ç¬¬ãªã®ã§ãã©ããªãããããã¾ããã1.0ã®æ£å¼ãªãªã¼ã¹ãè¿ãã®ã¯ééãããã¾ããã ãã®è¨äºã§ã¯ãæ®æ®µAndroidãiOSã®ã©ã¡ãããéçºãã¦ããæ¹ãã»ã¨ãã©ã ã¨æãã¾ãã®
èªå®ãã¤ã¤ã¼ã§ã¯ãã¢ãã¤ã«ã¢ããªåºåæ ã®å ¥æãªã¯ã¨ã¹ãã§ã®åºåæ²è¼ IDï¼IDFAï¼ã¾ã㯠Google åºå IDï¼AAIDï¼ã®åã渡ãããµãã¼ãããã¦ãã¾ãã iOS ããã¤ã¹ç¨ã®åºåæ²è¼ IDï¼IDFAï¼ iOS ããã¤ã¹ã§ã¯ãã¢ããªã® App Tracking Transparencyï¼ATTï¼ããã³ããã«åæããã¦ã¼ã¶ã¼ãã¨ã«ããããããã¼ããã¼ã±ãã£ã³ã°æ å½è ãã¦ã¼ã¶ã¼è¡åããã©ããã³ã°ãããã®æ å ±ãåºåæ²è¼ã«æ´»ç¨ã§ããããã«ããèå¥åãæä¾ããã¾ãããããããã¼ããã¼ã±ãã£ã³ã°æ å½è ã¯ãã¦ã¼ã¶ã¼è¡åããã©ããã³ã°ãããã®æ å ±ãã¿ã¼ã²ãã£ã³ã°ãããªã¼ã¯ã¨ã³ã·ã¼ ãã£ãããã³ã³ãã¼ã¸ã§ã³ ã¢ããªãã¥ã¼ã·ã§ã³ãªã©ãåºåæ²è¼ã«æ´»ç¨ã§ãã¾ãã IDFA ã®ä¸»ãªæ©è½ã¯æ¬¡ã® 2 ã¤ã§ãã ã¦ã¼ã¶ã¼ããã¤ã§ãèªç±ã«ãªã»ããã§ãã¾ãã ã¦ã¼ã¶ã¼ã¯ä»¥ä¸ã®æ¹æ³ã§ãIDFA ãå©ç¨ãããªãã¼ã±ãã£ã³
é¢é£è¨äº ãã®è¨äºãå¤ããªãã¾ããããå·çæã®å®è£ ãã¼ã¸ã§ã³Kotlin 0.12ãã1.0.2ã¸ã®ã¢ããã°ã¬ã¼ã対å¿ãããéã®ç¥è¦ãè¨äºã«ãã¾ããã Kotlinãå®æ¡ä»¶ã§ä½¿ãã¾ãã å æ¥ãåã®å¤ãå ã®Qonceptã¯ããªã¢ã«é¬¼ãã£ããÃå¯å£«æ¥ãã¤ã©ã³ãã巨大éåå°ããã®éèµ°ãéçºããªãªã¼ã¹ãã¾ããã å¯å£«æ¥ãã¤ã©ã³ãã§å®éã«é¬¼ãã£ããããä¼ç»ã§ãä¸è¬ã®ã客ãããã¹ããã§å°ç¨ã¢ããªã使ããªããã¯ãªã¢ãç®æãã¾ããåå ã«ã¯é¬¼å½¹ã®ã¹ã¿ããããã²ã¼ã é²è¡ã«é¢ããè¨åãªã©ãããããããã¨ã¹ãããiBeacon(BluetoothLE)ãç¨ãã¦é£åãããã¨ã§ããã¡ã¼ã¸ãåããããã¢ã¤ãã ã使ç¨ããããã¯ã¤ãºã解ããããªã©ãã¾ãã Qonceptã®éçºç¯å²ã¯ãiOSã¢ããª(ã¨AppleWatchã¢ããª)ãAndroidã¢ããªããµã¼ããµã¤ãã§ããã å注確å®ã¨ãªã£ãæç¹ã§ãæ®ãæ¥æ°ã¨éçºè ãªã½ã¼ã¹ã«å¯¾
Chrome 32ä»¥ä¸ Android SDK SDKãå¿ è¦ã¨ããããã¯adbãå¿ è¦ãªã®ã§ãæ¢ã«SDKãå ¥ã£ã¦ããå ´åã¯adbã«ãã¹ãéãã¦ããã ãã§è¯ãã§ãã â» Chromeæ¡å¼µã§ãadbãã¨ãããã®ãããã¾ãããç¾å¨ã¯éæ¨å¥¨ã«ãªã£ã¦ãããããããã§ã¯ä½¿ãã¾ããã Android SDKãã¤ã³ã¹ãã¼ã«ãã æå ã«Windowsãç¡ããããä»åã¯Macã®èª¬æã®ã¿æ¸ãã¾ãã æ¢ã«Android SDKãå ¥ã£ã¦ããå ´åã¯ããã®æé ã¯å¿ è¦ç¡ãã§ãã Android SDKããã¦ã³ãã¼ããã ãããããèªåã®ç°å¢ã®Android SDKããã¦ã³ãã¼ããã¾ãã ä»åã¯adbã®ã¿å¿ è¦ãªãããSDKã®ã¿ã®ãã¦ã³ãã¼ãããã¾ãã ãã¦ã³ãã¼ãããzipãä»»æã®å ´æã«ç½®ããzipã解åãã ã¿ã¼ããã«ã§ãã¦ã³ãã¼ãããSDKã®ãã£ã¬ã¯ããªé ä¸ã®toolsãã£ã¬ã¯ããªãéã
ã¢ã¯ã·ã§ã³ãã¼ã«ããªãã¬ãã·ã¥ããã¿ã³ãã¤ãããã¨ãã¦ã次ã®ãããªã¡ãã¥ã¼ãªã½ã¼ã¹ãæ¸ããã <item android:id="@+id/action_refresh" android:icon="@android:drawable/ic_menu_refresh" android:showAsAction="always" android:title="@string/action_refresh"/> ãã㨠"error: Error: Resource is not public. (at 'icon' with value '@android:drawable/ic_menu_refresh')." ã¨ããã¨ã©ã¼ãã§ã¦ãªã½ã¼ã¹ãã³ã³ãã¤ã«ã§ããªãã SDK ã® res/drawable-hdpi/ ãªã©ã®ä¸ã«ç»åã¯ããããã©ãã©ããã OS ã®ãã¼ã¸ã§ã³ãªã©ã«ãã£ã¦åå¨ãããã
ä»åã¯Androidã©ã¤ãã©ãªãä½ãæé ã¨å©ç¨æã«å°ããªãããã®ãã§ãã¯ãã¤ã³ããç´¹ä»ãã¦ããã¾ãã Androidã©ã¤ãã©ãªã¯AARï¼Android Archiveï¼ãã¡ã¤ã«ã«ã³ã³ãã¤ã«ã§ããã¢ã¸ã¥ã¼ã«ã§ããJARãã¡ã¤ã«ã¯Javaã®ã¯ã©ã¹ãã¡ã½ããããã¤ã©ã¤ãã©ãªãªã½ã¼ã¹ã§ãããAndroidã©ã¤ãã©ãªã§ã¯å ãã¦Androidç¹æã®Androidãªã½ã¼ã¹ï¼ActivityãAndroidManifestãã¡ã¤ã«ï¼ãã¬ã¤ã¢ã¦ããããã¼ã¢ãã«ãStrings.xmlã¨ãã£ãå ±æãªã½ã¼ã¹ãå å ã§ãã¾ãã ãªãã¡ã¬ã³ã¹ããµã³ãã«ã³ã¼ãã¯ãã¡ãã«ç¨æãã¦ãã¾ãã https://developer.android.com/studio/projects/android-library.html https://github.com/TechBooster/AndroidSamples/tree/
With iOS 11.3, Apple has silently added support for the basic set of new technologies behind the idea of âProgressive Web Appsâ (PWAs). Itâs time to see how they work, what are their abilities and challenges, and what do you need to know if you already have a published PWA. â ï¸ Updated version of this article â© firt.dev This App is a PWA and it appears full screen -offline capable- on an iPad. It a
ã³ã¼ã«ããã¯ããã使ãã¾ãããã éåæå¦çã®çµæãåãåãã«ã¯ãå¿ ãã¨è¨ã£ã¦ããã»ã©ä»ãåããã¨ã«ãªãã³ã¼ã«ããã¯ã§ãããUI ã®ããã«ã©ã¤ããµã¤ã¯ã«ãæã¤ãªãã¸ã§ã¯ãã¨å ±åããã«ã¯ãèæ ®ãã¹ããã¨ãããã¤ãããã¾ãã ããã§ã¯ãããã¾ãã«ãä¸æã«ã³ã¼ã«ããã¯ã¨ä»ãåãæ¹æ³ãè¦ã¦ããã¾ãã åºæ¬ã¨ãªããã¤ã³ã ãªãã¨ãã£ã¦ãã¾ãæããªããã°ãããªããã¤ã³ãã¯ãã©ã¤ããµã¤ã¯ã«ãæã¤ãªãã¸ã§ã¯ãã¨ã®å ±åã§ããä¸ã«åºåã£ã¦ããæ§ã ãªã³ã¼ã«ããã¯ç®¡çã®ããã®ã©ã¤ãã©ãªã¯ããã®ã©ã¤ããµã¤ã¯ã«ãæã¤ãªãã¸ã§ã¯ãã¨ã®å ±åãããã«æ¥½ã«ããããã¯ç´æçã«ããããã¨ãããã¨ããã¨ã«ä½ããã¦ãã¾ãã ã©ã¤ããµã¤ã¯ã«ã¨ã¯ã¤ã¾ãããªãã¸ã§ã¯ããçæããã¦ããæ¶æ» ããã¾ã§ã®ä¸é£ã®æµãã®ãã¨ã§ãã newãããallocãããããã¿ã¤ãã³ã°ã§ãªãã¸ã§ã¯ããçæãããGC ã«ååããããdeallocãããããã¿ã¤ãã³
ä»ã¾ã§ã®ãµã³ãã«ã³ã¼ãã«ãæ£ã 使ã£ã¦ããã©ãå°ãè¤éãªãã®ã«ãªãã¨æ¸ãã®ãçµæ§å¤§å¤ãªã®ã§ããã³ãã¬ç¨ã«ã¾ã¨ãã¦ã¿ããã¨æã£ãã調ã¹ã¦ã¿ããæå¤ã¨ä½¿ããã¦ããªã(?)ãã ããããã ããããã¾ã§å¤ããããããã»ãããã¦ããã°ãã¼ãã«ãªåæåã®ã¿ã§ãã£ã¦ã¿ãããã¼ã«ã«ã®å ´åã¯ãããã¯è¡¨è¨ã{ï½}ããä¸è¦ãªã ãã§ãåºæ¬çã«ã¯åãã ãã使ãä¾ã¨ãã¦ããªã¹ã(List) 㨠ãªã¹ããé ååãããã®(List[])ãé£æ³é å(Map)ãã¤ãã§ã«ãã£ã¦ã¿ããã âï¼æ¬¡å é åã®åæå ï¼ int[] public class ArrayInitTest { int[] arr = {1, 2, 3}; public static void main(String[] args) throws Exception { new ArrayInitTest(); } public ArrayInitTest()
ã¤ãã¤ãéããããããªãã£ãã®ã§èª¿ã¹ã¦ã¿ã¾ããã Providing Resources | Android Developers ã® Table.1 ã® raw/ ã«ã¤ãã¦ã®èª¬æã Accessing Resources | Android Developersã® Access to Original Files ã«ããã¨ã ãã£ã¬ã¯ããªæ§é ãæããããã£ãã assets ã§ã ãããªããªã¼ãã£ãªãã¡ã¤ã«ã¨ãã®çãã¼ã¿ãèªã¿è¾¼ã¿ããã ãã ã£ãã res/raw ã使ãã£ã¦æãã¿ããã assets res/raw ãã¡ã¤ã«ã¸ã®ã¢ã¯ã»ã¹
ãããªã«é£ãããªãã 以åç´¹ä»ãã XML ã®ãã¼ã¹ ã¨åæ§ãJSON ã®ãã¼ã¹ã大ãããã¨ãªãã§ãã ããã§ã¯æ©éãç°¡å㪠JSON ããã¼ã¹ãã¦ã¿ã¾ãããã 使ç¨ãã JSON 㯠ãã¡ãã Twitter API ãå©ããæã®ã¨ã©ã¼ã¬ã¹ãã³ã¹ã§ãã ï¼Twitter API ã¯èªè¨¼ãå¿ è¦ãªãããã¨ã©ã¼ã¬ã¹ãã³ã¹ãè¿ã£ã¦ãã¾ãï¼ æ´å½¢ãããã®ã¯ãã¡ãã { "errors" : [ { "code" : 215, "message" : "Bad Authentication data." } ] } ãã® JSON ã®æ§é ã¯ä»¥ä¸ã®ã¨ããã§ãã ãããã¬ãã«ã« è¾æ¸ ããã ãã® è¾æ¸ ã® ãã¼ errors ã®å¤ã¯ é å ã§ãã ãã® é å ã®è¦ç´ æ°ã¯ 1 ã§ãã ãã® é åã®è¦ç´ ã¯ä»¥ä¸ã®ãã¼ãã㤠è¾æ¸ ã§ãã code message iOS iOS 㧠JSON ããã¼ã¹ãã
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}