RealmSwift vs CoreData

はじめに iOSのローカルデータベースとして、これまでは、CoreDataが主流でした。 CoreDataの他だと直接SQLiteを弄ったり、ラッパーとなるFMDBなどのOSSがありましたが、Appleが提供している機能として、やはりCoreDataのシェア率は高かったと思います。 実…

Firebase A/Bテストを試す - Firebase A/B Testing

Firebase A/Bテスト Firebaseが提供しているA/Bテストを利用した記事となります。 この記事では、A/Bテストとは?から、 実際にTIME HACKERアプリで、インタースティシャルの表示頻度を確認する際に、A/Bテストを導入しているので、実際に実装した際の手順・…

TIME HACKER 更新情報

TIME HACKER 更新情報 www.project-unknown.jp このカテゴリでは、TIME HACKERの更新情報を掲載していきます。

GDPRを受けてアプリで対応したこと

GDPR(General Data Protection Regulation)とは 詳しいことは他サイト様に委ねますが、ざっくりというとEUでのデータ保護法則の新しい個人情報保護法が策定され、EU諸国では勝手に個人情報を取得、解析する事ができなくなりました。 ここ最近(2018年)、AdMob…

iTunesConnectで銀行情報の「Account Holder Type」でエラーが起きている時の対処法

はじめに iTunes Connectを開いたら、 こんな画面になっており、Agreements, Tax, and Banking のリンクを開いた際に、以下のように、あまり見慣れないエラーが出て焦りました。 Our records indicate that your banking information is incomplete: Missing…

UIViewからはみ出したViewを見れなくする方法

はじめに UIViewは、初期設定だと画面からViewがはみ出してもそのまま表示されてしまいます。 例えば以下のように高さ230pxのUITableViewCellがあるとして、 UITableViewで表示する際に、最初隠したい為に、44pxとした場合、以下のように崩れてしまいます。 …

UINavigationControllerに複数ボタンを並べる方法

はじめに アプリによっては、ナビゲーションの部分にボタンを複数設置しているものもあります。 提供中のKeyHolder もトップ画面のナビゲーションに複数配置してます。 この記事では、このやり方について紹介します。 はじめに Storyboard上、Xib上で配置 コ…

Quickを使ってSwiftコードのユニットテストを行う - Carthageからの利用

はじめに iOSのユニットテストを行うのに、標準ですとXCTestがありますが、 最近Quickと呼ばれるテストフレームワークがよく使われ出しました。 XCTestも非常に強力なテストフレームワークですが、初見であったり、他の人が記載したテストコードは中々読みづ…

KeyHolder Version 2.5.2 パフォーマンスを向上させました

いつもKeyHolderをご利用戴き、ありがとうございます。 前回のアップデートで、一部パフォーマンス向上の施策を打ったのですが、今回新たにパフォーマンスを向上させる施策を打ちました。 具体的には、パスワードの数が多く登録している時に、アプリを立ち上…

Swift 構造体の使い方 - 基本定義, イニシャライザ, メソッドを扱う

はじめに 構造体とは値型のデータを構造的に持つものです。 特にSwiftの構造体は、その中でメソッドを作成出来たりと、クラスと何が違うねん!と思いますが、 構造体はクラスと違って代入や関数呼び出しの際、データの実態がコピーされ、新しいインスタンス…

Module compiled with Swift 4.0.3 cannot be imported in Swift 4.1: x86_64.swiftmodule エラーの対応

はじめに XCodeのVersionを挙げたら、標題の通りのエラーが発生するようになりました。 詳細には Module compiled with Swift 4.0.3 cannot be imported in Swift 4.1: RxSwift.framework/Modules/RxSwift.swiftmodule/x86_64.swiftmodule Carthage経由で入…

KeyHolder Version 2.5.1 軽微な不具合を修正しました

いつもKeyHolderをご利用戴き、ありがとうございます。 今回のVersion2.5.1で一部操作でクラッシュする不具合の修正を行いました。 ご利用の皆様にはご不便をおかけして大変申し訳ありませんでした。 また、今回のVersionにて、パスワードが大量に登録された…

GoogleHome の喋らせ方 - 勝手に喋らせる方法

IoT

はじめに Google HomeはIFTTT連携で声で命令して色んなことをさせることが出来ますが、まだ何かのトリガーをきっかけに自動で喋ってくれるという機能までは提供されていません。 今日は、GoogleHomeを自動的に喋らせる事が出来たので、そのやり方とハマった…

FireBaseの曖昧な点をヒアリングしてみた - 料金や各プランの制限、停止など運用上できる事について

はじめに FireBaseはGoogleが運営するサービスで、リアルタイムデータベースなどいろいろ使えて便利なようです。 基本無料ですが、容量制限などがあります。有料にすれば、その制限を増やせたり、無制限にすることが可能です。 でも、アプリで使ってみようと…

MacにJenkinsをインストールして初期設定を行う

はじめに 今回はMac(High Sierra)にJenkins公式のパッケージよりJenkinsをインストールし、初期設定までを記載しています。 はじめに Jenkinsのインストール 表示されない時 Javaがインストールされていない (Javaのバージョンがあってない) 単純にマシンス…