æ°ã¢ã㪠IconTimer ããªãªã¼ã¹ãã¾ãã。決ããæéãã«ã¦ã³ããã¦ã³ãã¦ã¢ã©ã¼ã ãé³´ããã ãã®ã·ã³ãã«ãªã¿ã¤ãã¼ã¢ããªã§ã。è¦ãç®ã«ãé³ã«ããã ããã¾ãã。
ç¹å¾´çãªã®ã¯æéã®é¸ã³æ¹。
ã¿ãããããã¿ã³ã®æ°åã足ããåè¨ãè¨æ¸¬æé(å)ã«ãªãã¾ã。
以ä¸ã¯ç´¹ä»åç»。
æé・ã¢ã¤ã³ã³・è²ãèªç±ã«ã«ã¹ã¿ãã¤ãº。
以ä¸ã¯éçºã¡ã¢ãã¤ãã¤ãã¨æ¸ãã¾ã。
ã¦ã¼ã¶ã¤ã³ã¿ã¼ãã§ã¤ã¹ãã
æ¢åã®ã¿ã¤ãã¼ã¢ããªã使ã£ã¦ãã¦æ¯åä¸æºã«æãã¦ããã®ã¯、æéãé¸ã¶æã«é ã®ä¸ã§「ã²ã£ããã」ãããã¨ãã。ãã¾ã説æã§ããªãã®ã ããã©、ããã¦è¨ãã°æéãé¸ã¶æã«æ³¨æãæãããã®ãè¦çã ã£ã(ã©ãã ããã®ããã¨è¨ããããã§ãã。。)
ã¢ããªã使ãã®ãã¡ã£ã¨ã楽ãããªã。

ä¾ãã°é»åå¼ã®æéãç´æ¥å ¥åããã¿ã¤ãã®å ´å、ç®çã®æ°åãæ¼ãã¦ã¹ã¿ã¼ãããã ã....ãªãã ãã©æã¡ééãããã¯ãªã¢ããªãã¨ãããªã。ã ããç¡æèã®ãã¡ã«ééããªãããã«æ³¨æãæã。ãããã²ã£ããã。ä¸æ¹ãããããæéããªã¹ãã§é¸ã¹ãã¿ã¤ãã®å ´å、ããããã®é¸æè¢ããç®çã®æéã注æãæã£ã¦æ¢ããªããã°ãªããªã。ãããã²ã£ããã。
ãããªæ°ãé£ããã«ãã³・ãã³・ãã³ã¨é¸ã¶ã ãã§æéãé¸ã¹ã UIã¯ã§ããªãã®ã?ãããéçºã®åºçºç¹ã ã£ã。注æãæãç¡ãã¦è¯ã UIã£ã¦、ãã£ã¨å¤±æãã¦ãç´ãã®ãè¦ã«ãªããªããã®ã ãã。試è¡é¯èª¤ãããããUI ã¯ã©ããªãã®ã。

æåã¤ã¡ã¼ã¸ã¨ãã¦ãã£ãã®ã¯、å°ãªããã¿ã³ãé ç½®ãã¦ããããæéãé¸ãã§ã¹ã¿ã¼ããããã¶ã¤ã³。ã©ãããã使ãæéã¯æ±ºã¾ã£ã¦ããã ãããã、ããããã好ããªæéãå²ãå½ã¦ã¦ããã°ãã¿ã³ã¯å°ãªãã¦ããã ãã。æ°ãå°ãªãã®ã§ã²ã¨ç®ã§ææ¡ã§ãã¦å¤æããããããã 。ãã åé¡ãªã®ã¯ãã¿ã³ãå°ãªãã¨æéã®ãã¿ã¼ã³ãç©è¶³ããªããã¨。ããã«ä½¿ãåã«æéã決ãã¦è¨å®ããã®ã¯ãã¡ãã¡é¢å。ãããã¿ã¼ã³ãå¤ããããã¨ãã¿ã³ãå¢ããã°é¸ææ¹å¼ã¨åãç½ ã«é¥ã。

ãããªãã¨ãæãã¤ã¤ãããã¿ã¤ããã²ãããå¼ã£ã¦ã。ãµã¨ãã¿ã³ãæä»çã«æ±ãã§ã¯ãªã「足ãç®」ã«ãããã©ããã¨æãã¤ã。ã¿ããããæã«ONã ã£ãä»ã®ãã¿ã³ãOFFã«ããã®ã§ã¯ãªããã®ã¾ã¾æ®ã。ãã®æ®ã£ãONãã¿ã³ã®æ°åã®åè¨ãã¿ã¤ãã¼ã®æéã¨ãã。éã«ããä¸åº¦æ¼ãã¨OFFã«ãªã、ãã®åã¿ã¤ãã¼ã®æéãæ¸ã。ã¤ã¾ãã¿ããã®ON・OFFãã¡ããã©è¶³ãç®・å¼ãç®ã®æå³ãæã¤ãã¨ã«ãªã。ãããªãééã£ã¦ãä½åº¦ã§ãããç´ãã。ããã¦ä½ããããã®æ¹æ³ã ã¨ãã¿ã³ã®æ°ä»¥ä¸ã®æéãã¿ã¼ã³ãä½ãåºããã¨ãã§ããã®ã«æ°ãã¤ãã。

éçºæ å ±
ãã¼ã«:Xcode7 / swift 2.0æé:ï¼ã¶æ
è¦å¡:ï¼äºº
ã¢ã¤ãã£ã¢ãå ã«ãããã¿ã¤ãããä½ãå§ãã。ããã iPhoneã«å ¥ãã¦æãããã°å¼ã£ã¦æ¹è¯ãå ãã漸é²çãªã¢ããã¼ã。ããã°ã©ã ããã¶ã¤ã³ãä¸äººã§ããã®ã§ãæ°æ¥½。
ã¢ã¤ã³ã³
ã¢ã¤ã³ã³ã¯ãã¤ã使ã£ã¦ãã icons8 ã®ã«ã©ã¼ã¢ã¤ã³ã³ã使ç¨。èªåã®éçºã§ã¯ãã¯ãå®çª。ãã¶ã¤ã³ãè¯ãã¦ç¨®é¡ãè±å¯ã ã、SVGããµãã¼ããã¦ãããªã©ä½¿ãåæããã。100pxã¾ã§ã®PNGã¯ããªã¼。$149 ã§PNGã®ãã¹ã¦ã®ãµã¤ãºã¨ï¼å¹´éã®æ´æ°æ¨©。$249ãªãSVG / PDF / EPS / AI å½¢å¼ã®ã»ããã©ã³ã/SVGã®çæ、ã«ã©ã¼ãªã³ã°çã ãã¾ãã¾ãªãªãã·ã§ã³ãä»ã。
å¹æé³
ã©ã¤ãã©ãª
Crashlytics, AdMob ã®ã¿。ãã®ä» UI / æ©è½ã«é¢ãã¦ã¯èªå。UIã¯è²ã
ãªãã¿ã¼ã³ã試ä½ãã¦æ¨ã¦ããã®ãå¤æ°。ãã®åä½ãã®ã¯æéãããã£ãã楽ããä½æ¥ã§ããã£ã。
å¤è¨èªå¯¾å¿(ã¢ããª)
éçºå½åããæèãã¦ãã。ã¢ããªã®æ§æ ¼ä¸、æåã§ã®èª¬æã¯è¦ããªãã¨å²ããã£ã¦æåã®åãè¾¼ã¿ãããã¦、ãã®å UI ã誰ãè¦ã¦ãç解ã§ãã¦è¿·ããªããã®ã«ãããã¨ãå¿ããã。ããã«ãã£ã¦ç¿»è¨³ã®æéãã»ã¼ã¼ãã¨ãªã£ã。ä¸äººéçºã§ããã¯å¬ãã。対å¿è¨èªã¯Xcodeã§é¸æå¯è½ãªãã®ãããã£ã±ããããã¼ã«ã©ã¤ãºãã。ãªãå¯ä¸æåãããã¯ã¬ã¸ããã¯è±èªè¡¨è¨ã®ã¿ã¨ãã¦ã©ã®è¨èªãçµ±ä¸ãã。
(1) ç¡é§ç¡ãç°¡æ½ã§çãæä½éã®æé¢ãæ¥æ¬èªã§ä½æ
(2) ãããGoogle翻訳ã®å©ããåãã¦è±èªã¸ç¿»è¨³
(3) Google Sheetã使ã£ã¦è±èªããä»ã®è¨èªã¸ä¸æ°ã«ç¿»è¨³
å¤è¨èªå±éã®å ãè±èªã«ããã®ã¯æ¥æ¬èªèµ·ç¹ããã精度ãè¯ãããã ãã。
Google Sheet(Google Driveã§æä¾ããããªã³ã©ã¤ã³ã®ã¹ãã¬ããã·ã¼ãã¢ããª)ã«ã¯ã»ã«ã®æååã Google翻訳ãµã¼ãã¹ã¸æ¸¡ãé¢æ°ãç¨æããã¦ãã¦、ããã使ãã¨å¤§éã®æååãä¸æ°ã«ç¿»è¨³ãããã¨ãã§ãã。ãããªæã。
å¤è¨èªå¯¾å¿(AppStore)
å¤è¨èªã¨ããã°ã¢ããªã¨ã¯å¥ã« AppStoreåãã®èª¬æããã。ããã°ã£ããã¯ç¿»è¨³ããããªãããã«ã¯è¡ããªãã®ã§åè¨èªç¨ã«æé¢ãä½ã£ã。ã¢ããã¼ãã¯、(1) ç¡é§ç¡ãç°¡æ½ã§çãæä½éã®æé¢ãæ¥æ¬èªã§ä½æ
(2) ãããGoogle翻訳ã®å©ããåãã¦è±èªã¸ç¿»è¨³
(3) Google Sheetã使ã£ã¦è±èªããä»ã®è¨èªã¸ä¸æ°ã«ç¿»è¨³
å¤è¨èªå±éã®å ãè±èªã«ããã®ã¯æ¥æ¬èªèµ·ç¹ããã精度ãè¯ãããã ãã。
Google Sheet(Google Driveã§æä¾ããããªã³ã©ã¤ã³ã®ã¹ãã¬ããã·ã¼ãã¢ããª)ã«ã¯ã»ã«ã®æååã Google翻訳ãµã¼ãã¹ã¸æ¸¡ãé¢æ°ãç¨æããã¦ãã¦、ããã使ãã¨å¤§éã®æååãä¸æ°ã«ç¿»è¨³ãããã¨ãã§ãã。ãããªæã。
ãããããè¨èªã³ã¼ã(jaã¨ãen)ã®åãç¨æãã¦ãã、ãããé¢æ°ã¸æ¸¡ãã¦ç¿»è¨³ãããã。
æ¥æ¬èªãå«ã23è¨èªã®ç¿»è¨³ããã®æ¹æ³ã§ãã£ã¨ããéã«ã§ãã。Googleããã。
Apple審æ»
12/04 Ver1.0ãç³è«
12/12 ãªã¸ã§ã¯ã:1.0 ã¡ã¿ãã¼ã¿ã§ã®å´ä¸
AppStoreç¨ã®ã¢ããªåã«é·ã説æãå
¥ããã®ãã¾ããã£ãããã。説æã¯ãã㦠IconTimer ã ãã«ãã¦åç³è«。ãã¤ããªã¯æ´æ°ãã。
12/18 ãªã¸ã§ã¯ã:1.0 ãã¤ããªã§ã®å´ä¸
è¨å®ç»é¢ã«åãå¢æ¸ããã+−ã®ãã¿ã³ãããã®ã ã、ãããæ¼ãã¦ããæã«ã¯ã©ãã·ã¥ããã®ã§ãã¡ã¨ãããã®。èªåã®ææã¡ã® iPhoneãiPadãã·ãã¥ã¬ã¼ã¿ãç·åå¡ãã¦è©¦ããåç¾ããªã。åç¾ããªãä¸ã«、ã¡ã¤ã³æ©è½ãªãã¨ãããè¨å®ã®ä¸é¨ã®æ©è½ã®ã¯ã©ãã·ã¥ã ãã§è½ã¨ããª=3、ã¨ãªãã ãé ã«æ¥ã¦「åç¾ããªã」「ãã£ã¨è©³ããæ
å ±ãåºãã¦」çãªã³ã¡ã³ããéã。
ã、ãã®å¾ç¹°ãè¿ããã¿ã³ãæ¼ãç¶ããã¨ã¯ã©ãã·ã¥ãåç¾。ç°¡åã«ã¯èµ·ããªãã、確ãã«ä½¿ã£ã¦ããã¨èª°ã§ããã¤ãã¯ã¯ã©ãã·ã¥ã«ééããã。ã¯ã©ãã·ã¥ãã°ã¯ãããªæã。
ã、ãã®å¾ç¹°ãè¿ããã¿ã³ãæ¼ãç¶ããã¨ã¯ã©ãã·ã¥ãåç¾。ç°¡åã«ã¯èµ·ããªãã、確ãã«ä½¿ã£ã¦ããã¨èª°ã§ããã¤ãã¯ã¯ã©ãã·ã¥ã«ééããã。ã¯ã©ãã·ã¥ãã°ã¯ãããªæã。
Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Subtype: KERN_INVALID_ADDRESS at 0x00000000155d3f40 Triggered by Thread: 0
Oh...ãããã。
ãã®å¾、Xcodeã«ç¹ãã iPhoneã§åé¡ãåç¾ãããã AppDelegateã§åæ¢ãã¦ä¸è¨ä¾å¤ãåºã¦ãã ã。調æ»ãéããããã£ã±ãããããªã。ä»æ¹ãªããã¿ã³ãé£æãã¤ã¤(ãããå¯ä¸ã®æ¡ä»¶ãªã®ã§)、ä¸ã¤ä¸ã¤ã³ã¼ãããè¡ãåãé¤ãã¦ã¯ã©ãã·ã¥ã«é¢ä¿ã®ããç®æãçµãè¾¼ãã§ãã£ã。æ³£ããå
¥ãããã«ãªã£ããã、ãã¿ã³ãæ¼ããæã«é³´ããé³ã®å¦çã§è½ã¡ã¦ãããã¨ãå¤æ。é³ãé³´ããããã« Soundã¨ããã¯ã©ã¹ãä½ã、AVAudioPlayerã®ã¤ã³ã¹ã¿ã³ã¹ãã¯ã©ã¹å¤æ°ã§ç®¡çãã¦ããã®ã ã、ã©ãããããã¯ã©ãã·ã¥ã®åå ã½ã。ãããªæã。
class Sound: NSObject { static var player:AVAudioPlayer? static func play(...) { if let sound = NSDataAsset(name: name) { do { : try player = AVAudioPlayer(data: sound.data, fileTypeHint: fileTypeHint)
※å
ãã¿ã¯ãããä¸ã®ããã°ããæ¾ã£ã¦ãã。ãã¾æå
ã«æ
å ±ãç¡ãã®ã§ç¥
ãã¿ã³ãç¶ãã¦æ¼ãããå ´å、åã®çºé³ãçµãããªãå ã«ãã® play()ã¡ã½ãããå¼ã³åºãã、æ°ãã AVAudioPlayerã®ã¤ã³ã¹ã¿ã³ã¹ãä½ããã。ãã®æ、ç´åã®çºé³ã§ä½¿ã£ã¦ãã AVAudioPlayer ã¯é³ãé³´ã£ã¦ããæä¸ã«åç §ãåãã¦å»æ£å¯¾è±¡ã«ãªã£ã¦ãã¾ãã±ã¼ã¹ãããããã 。ããã¦é³ãé³´ãçµãã£ãæã«ãã®å»æ£å¯¾è±¡ã®ã¤ã³ã¹ã¿ã³ã¹ã§å¾å¦çãè¡ããã¨ãã¦ã¯ã©ãã·ã¥(ãã¶ã)。ããã§æ¬¡ã®é³ãé³´ããæã«ã¯ç´åã®çºé³ãæ示çã«åæ¢ããå¦çãå ¥ãã。
ifæãããªããã。ã¨ãããããã§ã¯ã©ãã·ã¥ããã¿ãã¨ç¡ããªã£ã。éæ»ã§ãã¤ããªãã¢ãããã¼ããã¦åç³è«。é ã«æ¥ã¦éã£ãã³ã¡ã³ããæãåºãã¨ãªãã ããããæªãã£ãã®ã§、ã¯ã©ãã·ã¥ã®ææã®(æ大éã®)ã礼ã¨、ã¤ãã§ã«æ¥ãã§å¯©æ»ãé¡ãã¨ä»ã足ãã¦ãã。ãã®å¾ãªãã expedited review ã¯ã§ããªãã、ã¨ããé£çµ¡ã¡ã¼ã«ãæ¥ã(expedited reviewã¯ä¾é ¼ãã¦ããªã)。
12/22 審æ»éé
æ¥æ¬æé㧠0æããã¬ãã¥ã¼éå§、6æããã«ééã®é£çµ¡。ããã¯å¬ããã£ã。
(ããã)
ãã¿ã³ãç¶ãã¦æ¼ãããå ´å、åã®çºé³ãçµãããªãå ã«ãã® play()ã¡ã½ãããå¼ã³åºãã、æ°ãã AVAudioPlayerã®ã¤ã³ã¹ã¿ã³ã¹ãä½ããã。ãã®æ、ç´åã®çºé³ã§ä½¿ã£ã¦ãã AVAudioPlayer ã¯é³ãé³´ã£ã¦ããæä¸ã«åç §ãåãã¦å»æ£å¯¾è±¡ã«ãªã£ã¦ãã¾ãã±ã¼ã¹ãããããã 。ããã¦é³ãé³´ãçµãã£ãæã«ãã®å»æ£å¯¾è±¡ã®ã¤ã³ã¹ã¿ã³ã¹ã§å¾å¦çãè¡ããã¨ãã¦ã¯ã©ãã·ã¥(ãã¶ã)。ããã§æ¬¡ã®é³ãé³´ããæã«ã¯ç´åã®çºé³ãæ示çã«åæ¢ããå¦çãå ¥ãã。
class Sound: NSObject { static var player:AVAudioPlayer? static func play(...) { if let _ = player { player?.stop() } if let sound = NSDataAsset(name: name) { do { : try player = AVAudioPlayer(data: sound.data, fileTypeHint: fileTypeHint)
ifæãããªããã。ã¨ãããããã§ã¯ã©ãã·ã¥ããã¿ãã¨ç¡ããªã£ã。éæ»ã§ãã¤ããªãã¢ãããã¼ããã¦åç³è«。é ã«æ¥ã¦éã£ãã³ã¡ã³ããæãåºãã¨ãªãã ããããæªãã£ãã®ã§、ã¯ã©ãã·ã¥ã®ææã®(æ大éã®)ã礼ã¨、ã¤ãã§ã«æ¥ãã§å¯©æ»ãé¡ãã¨ä»ã足ãã¦ãã。ãã®å¾ãªãã expedited review ã¯ã§ããªãã、ã¨ããé£çµ¡ã¡ã¼ã«ãæ¥ã(expedited reviewã¯ä¾é ¼ãã¦ããªã)。
12/22 審æ»éé
æ¥æ¬æé㧠0æããã¬ãã¥ã¼éå§、6æããã«ééã®é£çµ¡。ããã¯å¬ããã£ã。
(ããã)