てくてくテック

気ままに開発のメモを書いていこうと思います。主にSwiftかと。

サンプル勉強会 1-2 実装

はじめに 前回、ForceSketchを題材にソースコードリーディングをしたお話をしました。今回は、そのソースコードリーディングの結果を踏まえて、サンプルと同じ機能の実装に挑戦しました。 勉強会の進め方 実装フェーズ(1h)と共有フェーズ(0.5h)の次回配分で…

サンプル勉強会 1-1 ソースコードリーディング

はじめに 前回お話ししたiPhoneアプリのサンプル集を用いた勉強会について記します。今回は、シンプルでコード量の少なそうなForceSketchを題材にソースコードリーディングをします。 勉強会の進め方 ソースコードリーディングフェーズ(1h)と共有フェーズ(0.…

ViewDidLayoutがいつ呼ばれるのか知りたい

みなさんこんにちはtakenoteです。 この二日三日で突然暖かくなって、家から出た時に幸せを感じるようになってきました。 朝明るくなるまでの時間も徐々に早くなってきて、冬の終わりを肌で感じます。良いですよね、春。花粉がなければ。 今日のお話 StoryBo…

iPhoneアプリ開発初心者の友人たちとサンプル集を使った勉強会をしてみます

はじめに こんにちは。toosaaです。今日は、最近アプリ開発に興味ある友人たちとサンプル集を使った勉強会をやり始めたので、この勉強会についてお話しします。今回は、勉強会の進め方や目的について話し、次回以降で各会の様子について書こうと思います。 …

kituraのコードをIBM Cloud(Bluemix)のDevOps経由でdeployする

はじめに こんにちは。toosaaです。 今回は、Kituraで書いたコードをIBM Cloud(Bluemix)上のホスティングサーバーに、同じくIBM Cloud(Bluemix)のDevOpsを利用して自動deployするやり方について解説します。 ただし、今回はチュートリアルなど公式のドキュメ…

Viewを出したり消したりしたい

ゲームの設定画面を作りたい はじめに こんにちは、takenoteです。 今回もボードゲームのアプリを作成してみながらSwiftの勉強をしていきます。 どこから手をつけていいものかわかりませんが、 とりあえずゲームプレイ前の初期設定画面の作成を試みます。 今…

ゴキブリポーカーでSwiftの練習

とりあえず挨拶回です はじめに こんにちは、takenoteです。toosaaのマブダチです。 最近toosaaと一緒(?)にSwiftの勉強のためにボードゲームを作っています。基本的にProgramingは初心者、かつSwiftも初めて触っているため作成にあたっては何度もつまづい…

Kituraのチュートリアル(ToDoBackend)で気になったことを調べた

はじめに こんにちは。toosaaです。 前回、Kituraのチュートリアルの一つであるToDoBackendを動かしました。今回は、その中で気になった点について調べます。 Codable プロトコル Swift4から追加されたプロトコルで、これを使うとjsonとの変換を勝手にやって…

Kituraのチュートリアル(ToDoBackend)を試してみた

はじめに こんにちは。toosaaです。 前回IBM製のフレームワークKituraのGetting Startedに従ってサーバーサイドのHello, World!を行いました。今回は、Getting Startedに続いてチュートリアルとして用意されているToDoBackendを試してみます。そして次回、そ…

Kituraを使ってサーバーサイドSwiftを試してみた

はじめに すごく久しぶりに投稿します。今後は、友人たちと投稿しようと思います。 今回は、Swiftを使ってサーバーサイドを書いてみたいと思い、IBM製フレームワークのKituraを使ってみた件について、toosaaがお話しします。 内容としては、Getting Started…

youtube-ios-player-helperで再生できないことがある

はじめに youtube の動画でたまに再生されないものがあったので、それについてのお話 現象 youtube-ios-player-helperを使ってyoutubeの動画再生していました。 大半の動画は再生されるのですが、一部の動画(ex. ID: A_bdeYlpasE)で再生されませんでした。 …

Mac Book Pro頼んだら決済が通ってなかった

はじめに 先月とうとう発表された新Mac Book Proを意気揚々と予約して今か今かと待ちわびてたんですが ふとApple Storeのご注文一覧のページにステータスの確認をしに行ったら お支払い確認中となってましたorz 状況確認 発表された日にMac Book Proを予約 …

Reporterを使ってiTunes ConnectのSales and Trendsを自動で取得する - 解析編

はじめに 今回はReporterを使ってiTunes ConnectのSales and Trendsを自動で取得する - 設計編におけるdaily reportの"iTunes Connectから取得"と"インストール数の取得"のサンプルを実装しようと思います。最終的な実装とはちょっと違いますが基本は同じで…

SpreadsheetをRubyで操作する

google_driveというgemを利用したGoogle SpreadsheetとRubyの連携について書きます。

Reporterを使ってiTunes ConnectのSales and Trendsを自動で取得する - 設計編

はじめに Reporterを使ってiTunes ConnectのSales and Trendsを自動で取得するでReporterを使ってみてAppleが提供するレポートファイルのダウンロードするところまでお話をしました。今回は、ダウンロードするだけでなく数値データを取得してどのように自動…

Swift3でのclosure

はじめに Swift3にした時にclousureの部分の書き方が変わっていたなーというメモです 変更点 非同期の時は@escapingをつける Swift2まではデフォルトが@escapingの状態で@noescapeにする際に明示的に@noescapeにするという文法だったのに、Swift3から逆転し…

NavigationbarをHiddenじゃなくて透明にする

はじめに NavigationbarをHiddenにして消すのではなく、タイトルやボタンは表示するがNavigationbarはあくまで透明としたい時があります(下図参照)。単純にBar TintをclearColorに変更するとなぜか黒くなります。今回は、下図のようにNavigationbarを透明に…

Reporterを使ってiTunes ConnectのSales and Trendsを自動で取得する

はじめに iOSアプリのインストール数はiTunes ConnectのWebページに行ってデータを見るかエクスポートすれば確認することができます。 しかし、いちいちWebページにアクセスして確認するのは面倒なので、プログラムで自動化しちゃおうというお話です。今回は…

Swift3 jsonをローカルから読み込む

はじめに apiと実際につなぐ前にダミーデータで実装するときなどに jsonファイルをローカルに保存しておいてそこから読み込む ということをしたくなった時のお話です 利用するライブラリ SwiftyJsonを使ってます。 2016年10月26日の時点では本家でもSwift3対…

Swift3(というかXcode8)にしたらPush通知が動かなかった

はじめに Swift3にあげたら(というより多分Xcode8にしたら)Push通知が動かなかった時のお話です。 状況 Xcode7で作っていた時はPush通知は動いていたのに、 Xcode8にあげたらPush通知が届かなくなりました。 調べてみるとDevice Tokenが取得できていないよう…

Alamofire(非同期通信)をsemaphoreで同期的に処理できなかった

はじめに Alamofireでapi通信する際に、同期的に処理したくなったためSemaphoreを使ってやってみたけどうまくいかなかった時のお話です。 Semaphoreとは Semaphoreは排他制御の仕組みのことで、リソースへのアクセス可能な数のことです。Semaphoreが0の状態…

Swift3のGCD(dispatch_async)

はじめに Swift3でのGCD(dispatch_async)の使い方が変わっていたのでメモメモ Grand Central Dispatch(GCD)とは タスクを非同期に実行する技術のひとつとして、Grand CentralDispatch(GCD)というものがありま す。通常はアプリケーション中に記述するスレ…

Swift3対応した時の手順

はじめに 過去の記事(Swift3でPush通知から起動の時の、userinfo取得でちょっと迷った、Swift3にしたらAnyObjectがAnyになった)でSwift3にした時にというお話をしているのに、実際に移行する時の話をしていないなと思ったので、超簡単に手順をまとめます。 …

Google AnalyticsのDAUデータをスプレッドシートに自動インポートして、さらにSlackに通知する

はじめに 無料で簡単に使えるWebアクセスツールとしてGoogle Analyticsを利用している人は多いと思います。 Google Analyticsのページを見るだけでも色々なデータを見ることができて楽しいのですが、どうしてもエクセルやスプレッドシートなどの表計算ソフト…

GASからIncoming Webhooksでslackに通知を投げる

はじめに 最近はほとんどの開発でslack使ってますね。 その際に色々なことを自動化してその結果をslackに通知したくなる時があります。 今回は、Google Apps Script(GAS)からslackに Incoming Webhooksを用いて通知を投げるコードについてお話しします。 Inc…

PageViewControllerでNavigationbar(またはStatusbar)の高さ分ずれる

はじめに PageViewControllerを使っていて、なぜか遷移した直後の画面でNavigationbarかStatusbar分高さがずれるという現象に出会ったので そのことについて記します。 現象 PageViewControllerを利用した画面にUINavigationbarからpushViewControllerした際…

Swift3でPush通知から起動の時の、userinfo取得でちょっと迷った

はじめに Swift2.2からSwift3に移行する際に少し詰まった事をメモします。 アプリがキルされている状態からPush通知で起動した時にuserinfoを取得する際のObjectの型宣言をどうするのか?というお話です。 詰まった内容 そもそも実装したい内容 Push通知から…

Swift3にしたらAnyObjectがAnyになった

はじめに Swift2.2で作っていたプロジェクトをSwift3に対応させるために Xcode8についている自動コンバートを利用してみたところ AnyObject型がAnyに変更されました。 このことについて少し調べたことをまとめます。 どんな風に変わっていたのか? AppDelega…

初めまして

初めまして。 はてなブログを始めさせていただきました。 気ままにプログラミング開発系のことを書いていこうと思います。 iOSの開発をしているのでSwiftの話が多いかと思いますが Ruby on Railsだったり、他のも触っているのでSwift以外の話もあると思いま…