面白きことは良きことなり

拙く未熟なiOSエンジニアの備忘録と戯言

Xcode7でiOS10をデバッグ実行する方法

メモ: 最新のiOSを古いXcode上でデバッグ実行する方法 結論:Xcode7パッケージの内容を表示して、Xcode8βのパッケージ内容からiOS10のDisk Imageをコピーしてくる Disk ImageがあるPATH: Xcode/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSuppor…

ATS(App Transport Security)を"Xcode8 beta6"+"iOS10 beta6"でテストしてみた

夏期休暇でだらけている間にXcodeβ5、β6と出ていたので、生活を戻しつつ検証記事含めもろもろ書いていこうかなと。 とりあえずβ5やる意味がないので、β6をいつも通り検証してみました。 テスト方法 テスト方法は、プログラムの使い回しで基本今までを踏襲し…

Lightningケーブルのイヤホンが気になったので買った話

開発とは大きく離れた話。音楽を日常的に聞くので音質に少しこだわろうと思って、音質をCDと同等以上で取り込むためALACで曲を取り込むようにしたわけですよ。 可逆圧縮のロスレスなら少なくとも音質の劣化なく取り込んで保存しておけると。 FLACにしなかっ…

ATS(App Transport Security)を"Xcode8 beta4"+"iOS10 beta4"でテストしてみた

いつも通りbeta4が出たので検証してみた。 テスト方法 テスト方法は、プログラムの使い回しで基本今までを踏襲していますが、下記赤字が変更点となります。 iOS10は、iOS10.0 beta4を使用 iOS9は、iOS9.3.3を使用 ATSは、最初Xcode7BuildのipaとiOS9の組み合…

ATS(App Transport Security)を"Xcode8 beta3"+"iOS10 beta3"でテストしてみた

今回は、beta3が出て早々記事にしてみた! どうせ結果は、beta2と変わらないんだろうなーと思って検証してみたが…前回のXcode8.0 beta2の追記からhttpによるLANへのアクセスも検証に加え始めた。 テスト方法 テスト方法は、プログラムの使い回しで基本今まで…

ATS(App Transport Security)を"Xcode8 beta2"+"iOS10 beta2"でテストしてみた(追記)

前回、"Xcode8 beta1"と"iOS10 beta1"でATSと新しいKeyNSAllowsArbitraryLoadsInWebContentの調査したが、想定と違う結果になり、バグだったのでは?という結論に至った。 beta2リリースから1週間経ってしまったが、beta2で改めて確認してみた。今回NSAllows…

Swiftで値が含まれるかif文で判定する方法

qiita.com上記記事をひょんなことで知って、そんな書き方もあるのか!!と目から鱗状態になり、 記事が少し古いから今のSwiftで使えるか確認しつつ気になったことをPlaygroundで検証してみた。 (たぶん自分がまだ無知なだけで、Swift慣れている人は知ってい…

Amazon Prime めぼしいものリスト (自分用)

Amazon Prime めぼしいものリスト(買うとは言っていない) 07月12日 0時〜 Microsoft Office Personal 2013 [プロダクトキーのみ] [パッケージ] [Windows版](PC2台/1ライセンス)出版社/メーカー: マイクロソフト発売日: 2013/02/07メディア: License クリック…

Mac向けのはてなブログ用エディタ"mocha"

Mac向けのはてなブログ用エディタ"mocha"がMac App Storeでリリースされたようです。 新規リリースキャンペーンで今なら無料らしい。まだ、はてな記法には対応していないものの、対応予定ということで、先にDLしていずれ使うことになるかも?! オフラインで…

iOS10+FirebaseでPushNotificationの最小実装

iOS10でPushが大きく変わるってことで、以前にちょろってどんな実装になるか試そうとしたことがあったけど、 時間都合により実装できずに終わった。時間が取れたので改めて実装する。 また、前回やろうとした時、Parse.comからPushを送るテストをしていたが…

MacとWindowsを並行使用するのによさそうなロジクールのキーボードK780

昔いた現場では、WindowsとMacを同時に使用する環境で、キーボードとマウスがそれぞれにあって机の上がごちゃごちゃしてた。 その上、たまに操作も間違えたりとややこしかったり。なんか7/1からロジクールから出るキーボードが3台登録しておいて、瞬時に切り…

ATS(App Transport Security)を"Xcode8 beta1"+"iOS10 beta1"でテストしてみた

developer.hatenastaff.com この記事に触発されたこと、愛用するKinoppyがiOS10βで一切通信が正常に行えなかったこと、そのあたりでATS(App Transport Security)の振る舞いが気になり実機でテストしてみた。気になったこととして Xcode7系でBuildされている…

iOSアプリの申請時に画像関係で引っかかった箇所

何度かiOSアプリの新規申請や更新申請を経験していて、慣れているもののそれでもたまにちょっとだけミスしてエラーになることがある。 現在プライベート開発で作成したアプリの1.0版が完成したので、申請を仲間内で協力して行っていたのだけど、 スクリーン…

怠け癖のあるあなたのための記事まとめ

自分酷い怠け癖があるんで、記事を参考に改善目指したい…www.lifehacker.jpwww.lifehacker.jpwww.lifehacker.jpwww.lifehacker.jpwww.lifehacker.jp

UIView(とおまけでUIViewController)のLifecycle

UIViewControllerのLifecycleは馴染み深く、よく使うしわかりやすいので覚えているから困らないけど、たまにUIViewのLifecycleの知識が必要になるときがある。 名前と処理と呼ばれる順序が脳内で一致していないので、ひとまず順序だけでもまとめておこうと思…

iOS9系のiPadで不可解なフリーズ現象

iOS9系のiPadで不可解なフリーズ現象に遭遇し、原因はわからないものの解消することができたので、 今後同じことに遭遇した時のために、備忘録として記載。 最小限のテストプロジェクトで試してみたが、再現できなかった。 発生した条件 iOS9のiPad端末(ただ…

WWDC2016のページのまとめ(2/2)

1ページに収め切るのきつかったので、WWDC2016の情報を分割してまとめ。 基本自分の興味と関係がありそうなところを抽出。 WWDC2016 Video WWDC 2016 - Videos - Apple Developer macOS Sierra developer.apple.comdeveloper.apple.com developer.apple.comd…

WWDC2016のページのまとめ(1/2)

WWDC2016の発表から時間それなりに経ったし、いい加減情報に目を通しておきたいところ。 ざっと興味というか覚えておかなきゃなーと思ったのは、Notificationか。以下、自分用にWWDCのリンクまとめ macOS www.youtube.comwww.youtube.comwww.youtube.com iOS…

疲れている人のためのLifehacker

どうにも疲れて、平日のどこかで帰ってきてから仮眠をとらないと生活に支障をきたすことが…。 体力が足りてないのもあるけど、疲れがとれないことも原因かな。 あと睡眠時間が5〜6時間っていうのは、記事見る限り足りてないみたいね。www.lifehacker.jpwww.l…

2017年01月でiOSアプリはhttps通信が必須に

半年後の2017年1月でhttps通信が必須になるそうで。 iOS側の設定自体は大したことない。 どちらかと言えば、サーバ側がTLSv1.2に対応したりしないといけないので大変。 Webが絡むiOSアプリは対応しなければいけない。既存のリリース済みアプリは対応しない場…

guard let で2つ以上の変数をまとめて処理する

Swift2からoptional型をunwrapを保証しつつnilでないことを確認するためにguard let構文が用意されるようになった。 非常に便利なので積極的に使われるけど、括弧やreturnが必要なのでいくつもguard letを使おうとするとかさばるとおもっていた。しかし、実…

Swift2で数字をenumに変換

Swift2でtagを設定したObjectからenumに変換する時に調べたので、備忘録として残す enumType(rawValue: numberType) ざっくり書けばこんなん。 // tagをenumに変換 guard let direction = Direction(rawValue: sender.tag) else { return }

CGFloatを使う時の注意点

Objective-CやSwiftを使ってiOSアプリを開発する時、小数点使用する型は8割CGFloatを使う。 このCGFloatを使う時に Use of undeclared type 'CGFloat': did you mean to use 'CGFloat'? というエラーが出たことがあった。 解決方法は単純に、UIKitをimportす…

presentedとpresentingの違い

たまにpresentedviewcontrollerとpresentingviewcontrollerの違いがわからなくなるのでメモA presentViewController B B presentViewController C となった時、画面手前から奥にかけてC > B > Aの階層になる。この時、Bから見て…、 - presentedviewcontrol…

El Captainでpodsが使えない

El Captainでpodsが使えないとかなんとか。 自分はpods嫌いだし、極力Frameworkも使いたくない人だけど、使わざるを得ないことがあるかもしれないのでリンクだけ貼っておくhanhan's blog - El Capitanでpodが使えなくなったら試すこと

iOS端末のタスクキルは電池を消耗するからしない方がいいとか

iOS端末で電池の消費を気にして、よくタスクを切ることあるけど、実はそれが逆に電池を消耗する結果になるという記事が最近あった。 しかも、Appleも認めてる。でも、タスクが大量にある状態もなんか嫌なんだよなー。 充電できる環境の時だけ、切るようにし…

UIColorの設定で色が正常に表示されなかった現象

ViewControllerのbackgroundColorに色設定しようとしたのに、何故か真っ暗になって困った話 viewWillAppear(_:)でUIColorでCGFloat(0xNN / 0xMM)みたいに指定して色設定しているのに、実際に表示せたら画面が黒一色だった。 print文で吐かせて数値みたら下記…

使いにくいメソッドの再定義

そのままだと使いにくい、使えないので拡張やオーバライドして使ってるメソッド ローカライズの文字列呼び出す時、"commnet"は基本空文字だし、呼び出しが長くなるのはよろしくないのでこんな感じで定義してる func EXLocalizeString(key: String) -> String…

プログラマー向け命名サイト

プログラム書いていると、時たま変数やメソッド名に悩み困ることがある。 大体は英語に翻訳するサイトを使うんだけど、それでも本当にこれでいいのかなーと悩む。そこでとある人にこのサイトを教えて頂いた。割といい感じに命名できる。 codic.jp

Localizeで苦戦した備忘録

知人らと少人数チームでアプリの開発をしているのだけど、英語でしかリリース予定ないとは言え今後を見据えて勉強がてらLocalizeをやろうとしたら嵌った。色々やり方とか調べたり、過去関わったプロジェクトを思い出してこんなファイルがあって…とか試行錯誤…