読者です 読者をやめる 読者になる 読者になる

脱・文字列ハードコーディング

こんにちは、iOSエンジニアのにこらすです。 SwiftがiOSの主な開発言語になってから、多くの良いプログラミング習慣が標準になっています。 型安全な設計やコンパイル時のエラー検出が当たり前になりましたが、まだSwiftの型システムを活用せずに、Objective…

iQONをSwift 3.0.1にアップデートしたときに対応したポイント

iOSエンジニアの庄司 (@WorldDownTown) です。 iOS 10.1 のリリースから遅れること3日、Xcode 8.1 がリリースされました。この Xcode 8.1 では Swift のバージョンが 3.0.1 にアップデートされています。 iQON の iOS アプリでは、Xcode 8 リリース後すぐに …

Swift 3の変更点の裏側 (アクセス制御 / @escaping)

こんにちは。VASILYのiOSエンジニアのにこらすです。 2015年の12月からSwiftがオープンソースになり、 Swift Evolution(Swift言語の新しい仕様について提案する場所)で多くの開発者の提案が採用されました。 今回はSwift 3の アクセス制御 と @escaping につ…

Embedded Frameworkを導入してXcodeのビルドパフォーマンスをあげる

iOS

iOSエンジニアの遠藤です。 先日iQONで、Xcodeのビルドパフォーマンス改善の一環としてEmbedded Frameworkの導入を行いました。 今回は、そのEmbedded Frameworkの導入について紹介したいと思います。

iOSの月額課金レシート検証をサーバーサイドで行うときのTipsまとめ

こんにちは、バックエンドエンジニアのjoeです。 みなさんはお気に入りのアプリに月額課金をしたことがありますか?したことがない人は今すぐお気に入りのアプリをみつけて月額課金しましょう! 実際にiOSで月額課金をすると、課金の証明としてAppStoreがレ…

画像がズームインしながら画面遷移するSwiftライブラリを公開しました

iOSエンジニアの庄司(@WorldDownTown)です。 iQONのiOSアプリ内部で使われている画面遷移処理をOSSライブラリ化したのでご紹介します。 TL;DR UINavigationControllerでの遷移時に、タップした画像をズームして遷移するトランジション処理をSwiftライブラリ…

iOSチームでのインターンシップのすすめ

こんにちは、iOSエンジニアの遠藤です。 学生の皆さん、夏のインターンシップはもう決めましたか? 各社で様々な形式のインターンシップがあると思いますが、今回はiOSチームを例にVASILYでのインターンシップについて紹介をしたいと思います。 記事には実際…

カスタムmitmproxy入門

VASILYのiOSエンジニアにこらすです! 今回はプロキシツールmitmproxyのカスタムスクリプト機能について説明したいと思います。 モバイル開発をする際にAPIリクエストのデバッグツールとして mitmproxy はとても役に立ちます! カスタムスクリプトを使うと何…

iPhoneでテザリング中にレイアウトが崩れる問題の解決方法

iOSアプリを開発しているエンジニアの庄司です。 今回は、iPhoneでのテザリング中や通話中に、ステータスバーの高さが変わることによる表示崩れの対応について紹介します。 TL;DR iPhoneでテザリング中、UITabBarが画面からはみ出したりすることへの対応方法…

UIPageViewControllerをつかって無限スクロールできるタブUIを実装してOSSとして公開しました

こんにちは、エンジニアの遠藤です。 最近iQONアプリのホーム画面のデザインをリニューアルしました。 タブを使ったデザインにすることで、iQON内にある多くのコンテンツが見やすくなりました。 今回はこのタブ機能の実装についてざっくりと紹介しようと思い…

SequenceTypeの利便性 in Swift 2.2

Making Sequences work for you こんにちは! VASILYのiOSエンジニアにこらすです。 SwiftのコントリビューターとSwift EvolutionSE-0053の作者です。 他のOSSプロジェクトにも貢献してるので興味があればGithubでフォローしてください。 今回のトピックはSw…

アプリのAPIリクエストのトレースはどうするのが効率的か?

こんにちは。iOSエンジニアの庄司です。 普段のアプリ開発において、バックエンドチームから「○○のページで△△のデータ取得するためにリクエストしているURLってどんなの?」と聞かれることがよくあります。 その都度、APIリクエストとリクエスト結果をprint…

【iOS】一定以上スクロールするとタブの位置が固定されるUIの実装について

iOS

こんにちは。iOSエンジニアの遠藤です。 最近のiQONはコンテンツ量が増えてユーザーの詳細ページに表示する情報が多くなってきました。今のデザインでは情報量が多すぎて詳細ページが見づらい状況になっています。そこで以下のようなコンテンツをタブで管理…

Carthageクイックスタートガイド

Carthageとは? こんにちはVASILYでiOSエンジニアをしているニコラスです。今回はCarthageの紹介をしたいと思います。 CarthageはiOS / OS X開発のための分散型の (decentralized) パッケージマネージャーです。 既にプロジェクトでCocoaPodsを使っていても…

Swiftで会社の受付アプリを作った話とCADisplayLink

iQONのiOSアプリはまだ全てObjective-Cで記述されています。 Swiftへの移行については「たいしてパフォーマンスが上がるわけでもないし…」と思って渋っていました。 そんな中、オフィスの移転をきっかけに来客の受付システムをiPadアプリで作ることになりま…

WWDCの現地に来るべき7つの理由 [2014年版]

iOS

VASILY iOSエンジニアの庄司です。 同じくiOSエンジニア荒井とチーム全員(2名)でサンフランシスコで開催中のWWDCに来ています。 今回のKeynoteは既にご存知の通り、「OS X Yosemite」、「iOS 8」、新言語「Swift」など盛りだくさんの内容でした。 SwiftはRub…

WWDC 2014現地から

VASILYのiOSエンジニアは今年もWWDCへ参加しています。 同時に、WWDCへ参加する世界各国のエンジニアたちとの交流も深めています。 和服で来ています

iQONエンジニアセミナーの資料を一挙公開!〜グロースエンジニアリングなど〜

iOSエンジニアの庄司です。 先月2月20日、『【第2回】iQONエンジニアセミナー ~進化し続けるiQONを支えるグロースハック的エンジニアリング手法とは?~』と題して、エンジニアセミナーを開催しました。 会場となった弊社オフィスにたくさんのエンジニアの…

最強のプッシュ通知には必要不可欠!グロースハックの為のAPNs Feedbackサービス導入方法

バックエンドエンジニアのBoBです。 今回はiOSプッシュを最適化するためには必要不可欠な、Apple Push Notification service(以下APNs)のFeedbackサービスについて紹介したいと思います。 はじめに iPhoneやAndroidにはプッシュ通知という仕組みがあることは…

iOSエンジニアは今すぐ導入! CocoaPodsで簡単ライブラリ管理

iOS

iOSエンジニアの荒井です。 今回はXcodeプロジェクトのライブラリ依存関係を簡単に管理出来る”CocoaPods”の紹介をします。 未導入の方はオープンソースの管理が劇的に変わるので是非導入してみてください。

iOS7に最適化して新しくなったiQONのiOSアプリの新機能

iOS

2013年も終盤にさしかかり、年内に+10kgに到達しそうなiOSエンジニアの庄司です。 先日、iQONのiOSアプリをiOS7にデザインを最適化してリニューアルしました。 今回は新しくなったiQONの新機能とUIについてご紹介します。 まずはあたらしくなったiQON v2.0.0…

【iOS】Viewの再利用性が確実に高まるiQONアプリのView構成

iOS

はじめに こんにちは、iOSエンジニアの荒井です。 先日、株式会社Rettyのエンジニアの方々と技術勉強会を開催しました。 今回はiOSアプリについて、自分たちが使用している技術を紹介し合いました。 その場でXcodeを立ち上げ、instrumentsを起動してのLIVEメ…

サーバとiOSアプリのデータのやり取りを〇〇倍高速化する方法

こんにちは最近一日に一回は波紋のビートを刻んでる村田です。 はじめに スマートフォンアプリの開発では回線状況や端末のスペックなど様々な状況下で動作するため、少しでも高速化できる余地があるのであればなんとか頑張りたいところですよね。 今日はサー…