タグ

iosに関するyuhei_kagayaのブックマーク (70)

  • Embedded Frameworkを導入して、iOS アプリのビルドを爆速にした話 - BASEプロダクトチームブログ

    iOSエンジニアの大木です。 日々の開発で、ちょっとした微修正でメソッドを追加・削除すると、差分コンパイルが効かずビルド10分待ちとなり、開発効率の低下が問題となっていました。それを解決するためEmbedded Frameworkを導入したところ、差分ビルドが成功し1-2分になったというお話です。 私が入社したのは、2017年の2月でした。そして、アプリはもともとObjective-Cで書かれていて、Swiftコードの占める割合は10%以下だったようです。それから1年近くで、90%以上Swiftコードに置き換えました。 その時点で、ビルドにかかる時間の長さが目立つようになり、ちょっとした不具合の調査や微調整しているだけなのに10分近く待たなければいけないケースが目立つようになってきました。 問題としては以下の2つがありました。 1つのメソッドを追加しただけなのに、何故か10分近くかかるため

    Embedded Frameworkを導入して、iOS アプリのビルドを爆速にした話 - BASEプロダクトチームブログ
  • iOS 10.3 から、アンインストールすると Keychain が削除される → されませんでした - star__hoshi's diary

    顛末 iOS 10.3 beta でアンインストールすると keychain が削除される問題が発見される これはバグか?という議論がなされる中、 Apple スタッフから 「これは仕様だ」とコメントが入る しかし iOS 10.3 beta7 でアンインストールしても keychain から消えない、元の仕様に戻った iOS 10.3 Public でもアンインストールしても keychain は消えない ← イマココ! 以下 keychain 削除について nextstep.fm by nextstep.fm on iTunes で iOS 10.3 について話されていて、どうやらアプリをアンインストールすると Keychain が削除されるらしい。 これはバグでそうなっている可能性もあるらしく、修正されるかもしれない。 → 仕様とのこと。 → iOS 10.3 beta7 からアンイ

    iOS 10.3 から、アンインストールすると Keychain が削除される → されませんでした - star__hoshi's diary
  • iOS・Android のディープリンク技術のまとめ – ymyzk’s blog

    この記事は CAMPHOR- Advent Calendar 2015 の9日目の記事です. この記事では Web ページでリンク等をタップした際に, スマートフォンアプリを起動し, 特定の画面を開くことができるディープリンクに関わる技術についてまとめます. これらの技術を利用することで Web ページからスマートフォンアプリへのスムーズな遷移を実現できるようになります. また, アプリがインストールされていない場合も App Store や Google Play からアプリをダウンロード出来るようなものもあります. ディープリンクの基 ディープリンクの基的な実現方法は以下のようになっています. iOS・Android アプリはそれぞれ固有の Custom URL Scheme と呼ばれるものを実装します. URL Scheme は myapp:// のような形をしています. mya

    iOS・Android のディープリンク技術のまとめ – ymyzk’s blog
  • AWS SNSを使ってiOSへpush通知 - Qiita

    #import <AWSCore/AWSCore.h> #import <AWSS3/AWSS3.h> #import <AWSDynamoDB/AWSDynamoDB.h> #import <AWSSQS/AWSSQS.h> #import <AWSSNS/AWSSNS.h> #import <AWSCognito/AWSCognito.h> APNsのための証明書&ProvisiongProfile発行 続いてMemberCenterにて証明書を発行します。 AppIDの作成 まずはAppIDの作成から行います。 App Nameは適当な名前でも大丈夫ですが、Explicit App IDにはXCodeのBundleIdentifierと同様の値を入力します。 App Servicesのpush Notificationにも忘れずにチェックを入れます。 あとは流れに沿って作成します。

    AWS SNSを使ってiOSへpush通知 - Qiita
  • プッシュメッセージのカスタマイズ

    プッシュメッセージのカスタマイズ プッシュメッセージを送信する際、APNs では制御用フィールドを使ってプッシュ通知の詳細動作をカスタマイズすることができます。 Kii Cloud でプッシュメッセージを送信する際は、ユーザープッシュ通知 (Push to User) と 管理者メッセージのプッシュ通知(Direct Push) で、ここに示す制御用フィールドを設定できます。サーバー上変更のプッシュ通知(Push to App) では Kii Cloud でのデフォルトの設定が使用され、設定できません。 APNs の通知メッセージに含まれるデータのうち、特に重要なものを以下に示します。これらの詳細な解説や、その他のタグは 公式ドキュメント をご覧ください。 下記の制御用フィールド以外にも、プッシュメッセージの内部にモバイルアプリで使用するカスタムデータを含めることができます。APNs では

  • iOS 10 で画像つきの Notification を配信する - Qiita

    記事は、一般に公開されている情報を元に作成しています ※図は WWDC 2016 の Advanced Notifications より引用しています WWDC2016 での大きな発表の1つに Notification の変化があります。 新しく User Notifications Framework が追加され、Local Notification と Remote Notification を扱うクラスが結合される、配信できる情報がリッチになるなど様々な変更が発表されました。 変更の概要については以下の記事が詳しいのでご参考ください。 iOS 10 時代の Notification iOS 10 の Push通知 / ローカル通知 でできること Notification に画像や動画をつけられるようになった いろいろな変更の中でも、自分が気になったのは Notification

    iOS 10 で画像つきの Notification を配信する - Qiita
  • Apple Push Notification (APN) 使用時の delegate の挙動について、 iOS 7以降 / iOS 6以前の差をまとめた

    Apple Push Notification (APN) 使用時の delegate の挙動について、 iOS 7以降 / iOS 6以前の差をまとめた iOS 7以降とiOS 6以前で、俗にいうリモートPush通知の受け取り方と受け取った際の挙動がまるで違っているので、最近リモートPush通知を実装した時につまづいた箇所をまとめてみました。 使用するdelegate methodの違い いかなる種類のPush通知においてもapplication:didReceiveRemoteNotification:fetchCompletionHandler:を使用します。 application:didReceiveRemoteNotification:fetchCompletionHandler:とapplication:didReceiveRemoteNotification:が両方実装され

    Apple Push Notification (APN) 使用時の delegate の挙動について、 iOS 7以降 / iOS 6以前の差をまとめた
  • 【2016年度最新版】App Storeの特急申請( Expedited App Review )の方法 - Qiita

    2016年04月06日時点での最新情報となります。 App Storeの特急申請のステップ 通常のApp Storeへの申請と同じく、アップロードし審査待ちにする iTunes Connectの最下部にある「連絡先」をクリックする 1.Please choose from the following topicsは「App Review」を選択する 2.Please choose from the following topicsは「App Store Review」を選択する 3.Please choose from the following topicsは「Request Expedited Review」を選択する 3 ~ 5まで選択が完了すると、下部に文章が出てきて青色の文字で書かれている「Request an Expedited App Review」をクリックする 情報を記載

    【2016年度最新版】App Storeの特急申請( Expedited App Review )の方法 - Qiita
  • iOS 10 時代の Notification - Qiita

    記事は、一般に公開されている情報を元に作成しています ※図は WWDC 2016 の Introduction to Notificationsより引用しています WWDC 2016 で User Notifications Framework が発表されましたね。 これまでは、Remote Notification と Local Notification が別々に存在していましたが、User Notifications Framework の登場により、これらを同じフレームワークでハンドリングできるようになります。 この中で個人的に注目なのは、In-app presentation option(アプリを起動中にも画面上に通知を表示できる)という点。詳しくは後述します。 通知が発生するトリガーとして次の4つが用意されています。 Push Time Interval Calendar

    iOS 10 時代の Notification - Qiita
  • Webプログラマから見たiOS9 Safari9のCSS/JavaScriptなどの新機能解説 - Qiita

    iOS9がリリースされ、iPhone6sも発売され、iOS9 Safari9で使える新機能をWebプログラマ目線で使ってみたいものをいくつか試してみました。iOSはアップデートの進捗がわりと良いので、新機能でもモバイルサイトであれば積極的に使える…はず。デスクトップ版の方は…お察しください。 ぶっちゃけ今回はそこまで目玉機能はなく、地味です。地味ですが、SafariでWebアプリを作れるようになりそうな気配がどことなくするようなしないような感じの内容です。残念ながらServiceWorkerには対応していないので、それに対応してくれたらもっとアレなんですが。 iOS Safari9の新機能(OSX版含む) CSS系 backdropフィルタ対応 新し目のiOSやOSXとかのメニューバーが半透過されるあれが作れます。要は背景要素に対してフィルタがかけられるプロパティです。綺麗で良いですね。

    Webプログラマから見たiOS9 Safari9のCSS/JavaScriptなどの新機能解説 - Qiita
  • Swiftを使ったAFNetworking 2.0 のまとめ [iOS] - sakaharaのブログ

    概要 以前書いた記事を勉強がてらSwiftに置き換えてみました。 習うより慣れろ!と言う言葉通り実際触ってみるのがやはり使えるようになるための一番の近道です。 AFNetworking 2.0以降を使うには下記が必須要件となっていますので導入前に確認してください。 Xcode 5以上 iOS 6.0以上 大きな変更点としてドキュメントにあるようにiOS7以降のサポートのみでよければAFHTTPSessionManagerのサブクラスを作成して実装することが推奨されています。 iOS6やそれ以前のバージョンをサポートする場合の選択肢としてAFHTTPRequestOperationManagerが用意されています。 前回のまとめ同様に主にAFHTTPRequestOperationManagerの使い方について触れておきます。 使い方 Objective-Cを使う際と同様にインストールもCo

    Swiftを使ったAFNetworking 2.0 のまとめ [iOS] - sakaharaのブログ
  • ド定番OSS!AFNetworking 2.xの使い方 | DevelopersIO

    今更なんだよ?って気がしますが、うちのブログにAFNetworkingについての記事が無いので軽く書いてみます。 2.x系になって変わったこと まず、一番の変更点はAFHTTPClientがいなくなったことでしょうか。変わりにAFHTTPOperationManagerやAFHTTPSessionManagerなるものや、AFXxxRequestSerializer、AFXxxResponseSerializerなどが追加になりました。また、動作可能なiOSのバージョンは6.0以降になってました。 なんだこれ?ってわけで早速触ってみます。 AFXxxManager AFHTTPOperationManagerとAFHTTPSessionManagerがありますが、どうやらiOS 6.xに対応するのであればAFHTTPOperationManagerを、iOS 7.x以降であればAFHTTP

    ド定番OSS!AFNetworking 2.xの使い方 | DevelopersIO
  • AFNetworking 2.0 のまとめ - Qiita

    概要 2.0になってから更にシンプルに記述できるようになっています。 下記が必須要件となっていますので導入前に確認してください。 Xcode 5以上 iOS 6.0以上 大きな変更点としてドキュメントにあるようにiOS7以降のサポートのみでよければAFHTTPSessionManagerのサブクラスを作成して実装することが推奨されています。 iOS6やそれ以前のバージョンをサポートする場合の選択肢としてAFHTTPRequestOperationManagerが用意されています。 ここでは主にAFHTTPRequestOperationManagerの使い方について触れておきます。 使い方 インストールもCocoaPodsで簡単に導入できますので、下記Podfileをプロジェクトのルート直下に作成してインストールしましょう。 AFHTTPRequestOperationManager* m

    AFNetworking 2.0 のまとめ - Qiita
  • UITextField - iPhoneアプリ開発の虎の巻

  • DeNAのiOSエンジニア内で利用頻度の高いライブラリをランキング化してみました #iOS #DeNA|CodeIQ MAGAZINE

    DeNAで取り組んできた非ゲームの新規事業開発。その新規サービスの中で、iOS開発にフォーカスして、利用頻度の高かったライブラリやサービスをランキング形式でお届けします。 紹介してくれるのは、DeNAエンターテインメント事業部でiOS/サーバ周りを担当している沖津貴智さんです! by 馬場美由紀 (CodeIQ中の人) DeNAにおけるiOSアプリ開発 DeNA沖津です。DeNAでは、エンターテインメント事業部という部署を新設し、非ゲームの新規事業開発に取り組んできました。 1年以上経過した現在、十数のサービスを開発し、リリース・運用を行ってきました。社内のGithub Enterprise上には、たくさんのプロジェクトのリポジトリが作成されており、エンジニア全員が自由に閲覧・プルリクエストを送れる環境にあります。 詳しくは、デブサミ2014「DeNAにおけるゲーム以外の新規事業の立ち

    DeNAのiOSエンジニア内で利用頻度の高いライブラリをランキング化してみました #iOS #DeNA|CodeIQ MAGAZINE
  • iOSアプリでSQLiteを使い日本語の全文検索をする。 - shobylogy

    iOSアプリで全文検索 iOSアプリで日語の全文検索したいこと、ありますよね。私はあります。 そもそもiOSアプリ内で日語の全文検索をするという需要がないみたいで、情報が少なかったのでまとめました。 SQLiteの全文検索拡張 実はSQLiteにはFTS3 and FTS4 extensionsという全文検索拡張が存在します。 以前は、iOS SDKに含まれているSQLiteライブラリで無効だったため、自前でビルドする必要があったのですが、 iOS 6 SDKからはデフォルトで有効です。 基的なFTSの使い方 テーブル CREATE VIRTUAL TABLE article USING fts4 (title, body); 完全一致、前方一致検索を高速にできます。 INSERT INTO article(title, body) VALUES ('Apple', 'I have

    iOSアプリでSQLiteを使い日本語の全文検索をする。 - shobylogy
  • UIImage - iPhoneアプリ開発の虎の巻

    UIImageクラスは、画像を管理するクラスです。 背景に画像を表示したり、ボタン内に画像を表示したりとプログラム中で画像を扱う場合には、画像ファイルをUIImageオブジェクトにしてから、UIImageViewやUIButton等のコントロールに渡す必要があります。 UIImageのクラス階層 UIImageの生成 // 画像ファイル名を指定したUIImageの生成例 UIImage *image = [UIImage imageNamed:@"Sample.png"]; // URLを指定したUIImageの生成例 NSData *dt = [NSData dataWithContentsOfURL: [NSURL URLWithString:@"http://xxx/aa.png"]]; UIImage *image = [[UIImage alloc] initWithData:d

    yuhei_kagaya
    yuhei_kagaya 2014/03/28
    画像のリサイズ、切り取り
  • 【Objective-C】URLから画像を非同期に読み込む3種類の実装(APIからimageを受け取り表示する方法)

    NSURL *url = [NSURL URLWithString:@"画像のURL"]; NSData *data = [NSData dataWithContentsOfURL:url]; UIImage *image = [UIImage imageWithData:data]; しかし、この実装だとシングルスレッドで読み込むので、その間他の処理が止まり固まったように見えてしまいます。 なので、画像は非同期に読み込むことが必要になります。今回は非同期での画像読み込みの実装を3種類してみました。 3つの実装をまとめたソースコードは、こちらからダウンロードしてください。 一度読み込んだ画像をキャッシュしない。(UITableViewCellの画像) 一度読み込んだ画像をキャッシュして、再び読み込まない。(UITableViewCellの画像) UIImageViewのインスタンスに読み込

    【Objective-C】URLから画像を非同期に読み込む3種類の実装(APIからimageを受け取り表示する方法)
  • 非同期通信で画像をロードする方法について - プログラミングノート

    UITableViewなどのスクロール系のViewでサムネイル画像を出す場合、下記のような記述ではメインスレッドで画像がロードされるため、ユーザーのUI操作に影響が出てしまいます。 NSURL *url = [NSURL URLWithString:@"URL"]; NSData *data = [NSData dataWithContentsOfURL:url]; [instanceOfUIImageView setImage:[[UIImage alloc] initWithData:data]]; こういう場合は非同期通信を行うのが定石だと思いますが、参考になるサンプルがあまり無かったので試しに作ってみました。UIImageViewを継承したUIAsyncImageViewクラスです。 UIAsyncImageView.h 画像URLの指定と、通信中止用のメソッドのみ定義しています。

    非同期通信で画像をロードする方法について - プログラミングノート
  • Xcode 4.2 – Storyboard の Segue を条件分岐させる方法 | Ultradairen's Blog

    まだまだ初心者なの間違いがあるかもしれないけどStoryboardで条件により異なるSegueに飛ばしたい場合のメモ。対象はXcode4.2 on Snow Leopard。 通常通りMaster-DetailでStoryboardを有効化した時、これから発展させてEditの画面を増やしたいって思ったのに、Segueを追加できなくて困りました。そういった時にどうやればSegueを複数飛ばすことが出来るかメモ。 私がこのブログ読むとしたら下まで読むのめんどくさいので答えを最初に書いておきます(笑)要するにデフォルトではTableViewCellからSegueが出ていると思うのですが、それをTableViewControllerからにすれば複数Segueを設定できます。そしてあとはperformSegueWithIdentifierメソッドで好きなようにSegueを使って画面遷移すればOK。

    Xcode 4.2 – Storyboard の Segue を条件分岐させる方法 | Ultradairen's Blog