53ningen.com

@gomi_ningen's Website

DeviceFarm を利用した iOS アプリの UI テスト

XCUITest を Device Farm サービス上で実行するサンプルとして aws-device-farm-xctest-ui-tests-for-ios-sample-app が提供されているので、ひととおり実行してみる

サンプルアプリの概要

いろいろなテストに応用できる画面が用意されている

<a href="https://static.53ningen.com/wp-content/uploads/2019/05/24031939/886893e296537c97f553d56e6b9262b2.png"><img src="https://static.53ningen.com/wp-content/uploads/2019/05/24031939/886893e296537c97f553d56e6b9262b2-167x300.png" alt="" width="167" height="...

Read More

ご注文はRxですか?

この記事は コミックマーケット 89 にて頒布された「ななか Inside Press vol.8」に寄稿した記事です。内容はだいぶ古いですがアーカイブとして、ここに残しておきます。

ゴミ人間(@gomi_ningen)です。2014 年春からラビットハウスで住み込みバイトを始めました。 同僚のリゼちゃんや可愛い妹のチノちゃんと楽しく働いています ♪ 昨年までは JVM と戯れるお仕事をしていたのですが、最近は専ら iOS アプリ開発に携わっています。

さて、今回はネイティブアプリ開発で採用が増えている、Rx 系ライブラリを利用した設計・開発の実践例をご紹介します。 本記事中では RxSwift/RxCocoa 2.0.0-beta4 を用いて説明を行いますが、それぞれ各プラットフォームの対応するライブラリに読み替えていただければ幸いです。

第 1 羽 ココア先輩の優雅な Rx チュートリアル

RxS...

Read More

iOSDC Japan 2017 に CfP を出すときに考えたこと

今年(2018 年)は主に、環境がかわり、忙しみや iOS 以外の内容などをメインにやっていることもあり(というかもともと自分は iOS 専門の人間ではないのでした) CfP を出しませんでした。

なにやら 2018 年も大盛況のようで、500 以上の CfP が出たそうな。応募締め切りも終わり、採択されたセッションも決まったようなので、去年自分が CfP を出すときやスライドや口頭発表の内容を組み立てるときに考えたことを昨年度の知見のひとつとしてメモ書きしておきます。

1022712657080545281

これからスライドや発表内容を練られる方の反面教師もしくはご参考になれば幸いです。

去年出した CfP

これです: RxSwift の Observable とは何か | iOSDC Japan 2017

いまや多くの Swift アプリケーションに採用されている RxSwift。

本セッションでは RxSwift を構成する主要素である Observa...

Read More

[WIP] Xamarin.iOS アプリ開発の全体像

この記事は 「初心者歓迎 Xamarin の LT 会!Xamarin 入門者の集い #4」の発表補足資料です。

私のググる能力が低いだけかもしれませんが Xamarin.Forms での記事や事例報告、スライドに比べて、Xamarin.iOS を使ったという日本語レポートがとても少ない気がするので、特に Swift  や Objective-C で iOS や macOS アプリを書かれている方に向けて、初めての一歩からリリースまでのざっくりとした全体の雰囲気についてお伝えします。

Read More

RxSwift の Observable とは何か

Qiita にあげていた記事ですが、ここにもバックアップをとっておきます

この記事は、2017/09/15〜17 に早稲田大学 理工学部 西早稲田キャンパスで開催される iOSDC Japan 2017 で行われる セッション「RxSwift の Observable とは何か」 の発表原稿、およびその補足資料です。

  • スライドはこちらです ➡︎ https://www.slideshare.net/gomi_ningen/rxswiftobservable-iosdc-japan-2017
  • あわせて読みたい ➡︎ http://qiita.com/gomi_ningen/items/dc08a8a5514be9aa0eb2

なお、本文に先立ち注意事項を掲載しておきます。

注意事項

  • 以下の内容を理解しなくても RxSwift は十分使えるライブラリです...
Read More

Xamarin.iOSでのストーリーボードを使わない開発

Visual Studio で Xamarin.iOS のプロジェクトを作成すると、ストーリーボードなどという忌まわしいものがデフォルトで作成されてしまい非常に厳しい気持ちになります。この記事では、それらを削除して、コードで UI を構成していくためのステップを説明します。3 分ほど作業をすれば邪魔なものが消えてなくなってくれます。

1. Main.storyboard を削除

<img width="490" src="https://qiita-image-store.s3.amazonaws.com/0/56771/45a901e8-92f0-bbc1-da55-bf0996d730ec.png">

2. ViewController.designer.cs を削除

<img width="531" src="https://qiita-image-store.s3.amazonaws.com/0/56771/79380b0f-99a8-fe0b-5738-59dd17d507b9.png">

3. ViewController の余計なコード...

Read More

DelegatingHandlerを用いた快適なiOSアプリのHTTP通信周辺環境の整備

昨今のネイティブクライアントアプリで、 HTTP 通信を行わないものはないと言っても過言ではないくらい、アプリ開発の基本中の基本だと思います。きっと、開発を行う中で HTTP 通信の前後に色々な処理を挟んでみたいという気持ちが湧いてくるのではないでしょうか。たとえば以下のような話です。

  1. リクエストの内容をログ出力したい
  2. 電波状況が悪いときはリクエストを走らせないようにしたい
  3. 通信中はネットワークアクティビティインジケータを走らせたい

そんなときに System.Net.Http.DelegatingHandler はとても便利な代物です。公式のドキュメントはこちら: https://msdn.microsoft.com/ja-jp/library/system.net.http.delegatinghandler(v=vs.110).aspx

1. HTTP リクエストのログ出力

たとえば、Http リクエストの内容をログ出力したいとすれば、以下のような簡単な DelegatingHandler のサブクラスを作ってあげるとよいでしょう。

``...

Read More

iOSDC Japan 2017にてベストトーク賞をいただきました

2017/09/15〜17 の 3 日間にわたって開催されたカンファレンス iOSDC Japan 2017 に参加してきました。私は 2 日目の 14:20〜14:50 に Track A 会場にて「RxSwift の Observable とは何か」というタイトルでセッションを持たせていただきました。

908922980306108416
Read More

iOSアプリ開発の全体像

超技術書展で頒布したiOSアプリ開発の全体像をだらだら書いた本を記事として公開。 ただのポエムです。

1. iOSアプリ開発を取り巻く環境

iOSアプリ開発には、基本的にmacOSを搭載したコンピューターとXcodeとよばれるソフトウェアが必要です。もともと主にObjective-Cという言語が使われるケースがほとんどでしたが、2014年6月にAppleがプログラミング言語Swiftを発表して以後の新規開発には、ほとんどの場合Swiftが採用されているようです。またSwiftは、Objective-Cのコードと共存できるため、もともとObjective-Cで開発されていたアプリを徐々にSwiftに移行しているという話もよく聞きます。

ただし、広告やSNSなどのSDKや、幅広く使われることが予想されていて安定性が必要なライブラリについては、依然としてAPIが安定しているObjective-Cで開発が行われているケースが多いと感じます。裏を返すとSwiftは言語としてまだ成熟していないということです。Swift2系までではマイナーバージョンアップデートでも、激しい破壊的変更が...

Read More

大規模ネイティブアプリへのプッシュ通知機能導入にあたって考えたこと

<div class="alert alert-info text-center"><img src="https://qiita-image-store.s3.amazonaws.com/0/25109/d193e0b9-ca5c-3ba2-d5b9-34ee0456c356.png" width="16" height="18" alt=""> この記事は <a href="http://qiita.com/advent-calendar/2016/dwango">「ドワンゴ Advent Calendar 2016」</a>23日目の記事です。</div>

この記事は、比較的規模の大きなサービスのネイティブアプリにプッシュ通知機能を導入する風景を淡々と描いたものです。過度な期待はしないでください。なお、一応お約束として書いておくと、この記事は個人の見解であり、所属する組織の公式見解ではありません。

はじめに

Amazon SNS や **[Firebase](https://firebase.g...

Read More

Copyright © 53ningen.com