タグ

iOSとサーバに関するs_ryuukiのブックマーク (41)

  • SSL/TLSライブラリの正しい使い方(もしくは、コモンネームの検証について)

    スマホアプリの市場拡大に伴い、直接SSL/TLSライブラリを使用するプログラムを書く機会も増えてきている今日この頃かと思います。 SSL/TLSライブラリを使う際には、接続確立時にサーバの認証を正しく行う必要があります。具体的には、クライアントプログラムで以下の2種類の検証を行うことになります。 SSL/TLSライブラリがサーバの証明書の検証に成功したこと サーバの証明書に含まれるコモンネーム注1が接続しようとしたサーバと同一であること 前者については、OpenSSLの場合はSSL_CTX_set_verifyの引数にSSL_VERIFY_PEERを指定するなどして、ライブラリ側で処理を行わせることが可能です(証明書の検証に失敗した場合はSSL_connectがエラーを返します)。 一方、後者についてはSSL/TLSライブラリによって差があり、検証機能を有効にするために特別な呼出が必要だっ

  • 課金コンテンツをAppleに預ける - How to implement "Hosting Content with Apple" - おおばログ

    iOSアプリ内課金についての記事です。 前置き iOSのアプリ内課金を実装するとき、プロダクト(課金アイテム)をどのように提供するか、検討が必要になります。そうはいっても採択できる方法は次の2つになるのですが。 プロダクトをアプリに内包し課金後それが使用できる実装にする プロダクトをアプリ外(公開サーバ等)に配置し課金後にダウンロードし使用できるようにする 前者は、軽量なコンテンツを提供する場合や、課金アイテムの実体が要らない場合で採用されることが多いです。 対して後者は、比較的大きなコンテンツを提供するときに使われます。たとえばコンテンツがゲームの追加ステージの場合、ステージの画像データ、BGMなどが含まれるでしょう。それらをアプリに内包してしまうと、アプリのサイズが肥大化、アプリダウンロードに問題が生じる可能性があります(モバイル回線でダウンロード可能なiOSアプリのサイズは100MB

    課金コンテンツをAppleに預ける - How to implement "Hosting Content with Apple" - おおばログ
  • Gilt: iOS7でbackground fetchを利用するとログアウトしてしまうバグへの対応 - ワザノバ | wazanova

    http://tech.gilt.com/post/67708037571/sleuthing-and-solving-the-user-logout-bug-on-ios-7Giltがエンジニアブログで、background fetchを利用するとログアウトしてしまうバグを修正した取り組みを紹介してます。 1) 背景 iOS7の新機能background fetchを利用すれば、裏側で定期的にサーバにリクエストをしてデータを取得できるので、ユーザに最新のコンテンツを提供できる。サーバ駆動型のアプリにありがちな、「読み込み中...」という表示も減らせる。毎日ユーザにセール情報を提供するGiltにとっては待望の機能。以前は、ユーザがアプリを立ち上げた後にサーバとの通信を繰返し、新しいデータを取得していたので、せっかくのフラッシュセールの目玉商品がやっと表示されたときには売り切れとなる事態もあ

    s_ryuuki
    s_ryuuki 2013/12/01
    UIApplicationDelegateのapplicationProtectedDataDidBecomeAvailable:メソッドにフックをしかける。
  • SpikaApp.com is for sale | HugeDomains

    Working with hugedomains.com was a quick and easy process. We got to speak to multiple real people located in Colorado without having to wait on hold! Our only complaint was we felt we had to overpay more than this particular domain was worth, and we weren't able to negotiate it down to a level that we felt was fair. However, payment and delivery were seamless, and within a few hours we had all of

    SpikaApp.com is for sale | HugeDomains
  • ネットワーク通信を行う場合に検討すべきこと

    特にモバイルアプリで頻繁にネットワークが切れる可能性がある場合こういった対策を考えた方がいい。 接続のタイムアウト通信を行う場合には基的にタイムアウトの設定をする。 「どのくらいの秒数でタイムアウトするか」は難しいが、「課金や決済等の2重投稿が問題になる通信」は長く、「ページの表示等の2重投稿が問題にならない通信」は短くするのがいい。 ただし、2重投稿が問題になる通信でも、「タイムアウト後は再送信前にサーバに最初の通信が成功したかどうか確認する」のであればタイムアウトは短くても機能的な問題は少ない。 (または、サーバ側が2重送信前提で処理を行う) 自動再接続特にストリーミング等で「常時コネクションを張り続ける」系の実装を行う場合、一度通信が切断しても自動的に再接続する実装が行われることが多い。 ただ、このときにコネクションの管理が正しく行われず複数のコネクションが同時張られる状態になると

    ネットワーク通信を行う場合に検討すべきこと
  • Technology Partnerships - Kii

    The Gartner Cool Vendor Logo is a trademark and service mark of Gartner, Inc., and/or its affiliates, and is used herein with permission. All rights reserved. Gartner does not endorse any vendor, product, or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications co

  • GitHub - swisspol/GCDWebServer: The #1 HTTP server for iOS, macOS & tvOS (also includes web based uploader & WebDAV server)

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - swisspol/GCDWebServer: The #1 HTTP server for iOS, macOS & tvOS (also includes web based uploader & WebDAV server)
  • サーバとiOSアプリのデータのやり取りを〇〇倍高速化する方法 | VASILY TECH BLOG

    こんにちは最近一日に一回は波紋のビートを刻んでる村田です。 はじめに スマートフォンアプリの開発では回線状況や端末のスペックなど様々な状況下で動作するため、少しでも高速化できる余地があるのであればなんとか頑張りたいところですよね。 今日はサーバサイドとiOSアプリの間のデータのやり取りを高速化する方法をご紹介したいと思います。 サーバサイドはRuby on Railsを前提にすすめさせて頂きます。 こんな感じでできないか? 弊社ではアプリとサーバサイドのデータのやり取りをjsonで行なっていました。 レスポンスを受け取ってからパースする部分を高速化するには? と考えたときパーサ自体を高速なものに置き換えてみたりしましたが、それよりもplistのバイナリをシリアリズして扱えばパースをする処理を省けるので高速化できないかという仮説に達しました。 このようなイメージですね。 実際どうなのよ

  • WebView 中の HTML のデバッグ方法まとめ

    iPhone, Android で WebView を用い、HTML5 + CSS3 + Javascript でアプリを開発するケースは、PhoneGap (Cordova) が登場して以来増えつつあるのではないでしょうか。 HTML 開発には Firebug や Web Inspector といったデバッグツールはもはや必須ですよね。 そこで今回は WebView 中の HTML のデバッグ方法をまとめてみました。 1. Android 全般・iOS4 (実機・シミュレータ)・iOS5 (実機) weinre (ワイナリー)というツールが利用できます。 weinre はウェブサーバとして動作し、そのサーバが提供するスクリプト・ページにアクセスすることで、ブラウザ上でデバッグが行えます。 (なお、この方法は後述する iOS5, 6 においても利用可能です) ・インストール・サーバの起動

  • スマホアプリ開発に超絶便利なBaaSとは、MEAPとは

    バックエンドの設定用のモバイル向けクラウドサービス「BaaS」と、企業向け業務アプリの複数プラットフォーム対応ソリューション「MEAP」についてまとめて紹介します サーバ周りの開発に悩むアプリ開発者の救世主「BaaS」 近年、iPhoneAndroidなどのスマートフォンの浸透とともに、アプリの利用も広がり、多くのスマートフォン向けアプリが開発されるようになってきました。大規模な電子商取引系のWebサービスの開発に比べれば、少人数の開発者で短期間に開発できるのがスマートフォンアプリです。しかし、世界中の数多くの人々に使ってもらえる新しいサービスを考えた場合、アプリ単体で完結しないことが多く、Webサーバとの連携が必須になる場合も考えられます。 伝え聞くところによると、人気の写真共有アプリ「Instagram」の開発者は、初めは、まったくバックエンドに関する経験がなく、アプリを開発しながら

    スマホアプリ開発に超絶便利なBaaSとは、MEAPとは
  • objective-c | Share Technical Blogs

    はじめに 以前AndroidでサーバとHTTP通信する方法を書きましたが、その実装になぞらえてiPhoneでも同様のサンプルを作ろうと思います。汎用的な基底クラスを作成することで開発効率が向上することを切に願います。 [Android]サーバーと通信する方法 作成するクラスとその説明 ・リクエストパラメータクラス RequestParam abstract ⇒サーバに送信するデータを保持したクラス。業務や処理によって送信したいパラメータは異なってくるので、基的には当該クラスのサブクラスを作成し、送信したいパラメータのカスタマイズを行って利用します ・レスポンスパラメータクラス ResponseParam abstract ⇒サーバから受けたデータを保持したクラス。業務や処理によって受信したいパラメータは異なってくるので、基的には当該クラスのサブクラスを作成し、受信したいパラメータのカス

  • BaaSサービスのParseを使ってみた(2) Parseで出来る事

    前回のエントリ「BaaSサービスのParseを使ってみた」で紹介したBaaSサービスのParseですが、実際Parseを使うと具体的にどういう事が出来るのか、もう少し突っ込んで調べてみました。 ParseのAPI ParseのAPIは大きく、 iOS API Android API REST API の3つがあり、iOS APIAndroid APIは見ての通り、それぞれのモバイルデバイスからParseクラウドにアクセスする為のAPIです。 一方、REST APIはモバイルアプリに限らず、HTTP通信が可能なあらゆるものからParseクラウドのデータに対してアクセスが可能です。 つまりモバイルアプリでParseクラウドに蓄積したデータを、サマリ/表示するWebサイトの構築が可能になるので、ソーシャルなサービスも実現が可能になります。 REST APIを使った用途は、以下の様なケースを想定

    BaaSサービスのParseを使ってみた(2) Parseで出来る事
  • iOSのSiriと任意のアプリ / Webアプリとをハンズフリー連携させる方法

    いいSiriしてる iOS 5.xとiPhone 4Sという組み合わせのみに許された禁断の新機能、Siri。 日語対応したiOS 5.1リリース直後、僕のTwitterのタイムラインはSiri専用タイムラインになるほどでした。 Newton Message Pad所有者の僕は、Messagepad Padのアシスタント機能を想起します。 あのころ夢でしかなかったものが、こうして現実になっていることに感動を禁じ得ません。 Siriをサードパーティーに解放してほしい! さて、そんな素敵なSiriも、使い始めると欲が出てきます。 その最たるものは、サードパーティーのアプリケーションへの対応ではないでしょうか。 住所録に登録しての画面のタップを経由するURLの起動はできますが、その仕組み上、起動可能なのはあらかじめ登録された静的なもののみで、Siriならではの醍醐味にやや欠けます。 Google

    iOSのSiriと任意のアプリ / Webアプリとをハンズフリー連携させる方法
  • 【解決】サーバの識別情報が検証できません&サーバの証明書は無効です【iPhoneトラブル】 - イジるブログ【カスブロ】

    この記事を書いて5年近く経ちますが、今でも公式AppleサポートでiPhone6(iOS9.3)で同じ現象起きているようですね。 アップルサポートコミュニティ「サーバの識別情報を検証できません」とポップアップが... 解決方法は変わらず下記です。 エラーが出てサーバに接続できない! 突然、mixiやTwitterのようなログインが必要なアプリで次のようなエラーが出ました。以下にその解決方法を書きました ↑エラー画面 サーバーへ接続できません ツイッターにアクセス出来ません。インターネット接続を確認して下さい。(-1202:このサーバの証明書は無効です。"api.twitter.com"に偽装したサーバに接続している可能性があり、機密情報が漏洩するおそれがあります。)

  • ServersMan@iPhone 4.2β

    ServersMan@iPhone 4.2β Release! ServersManダウンロード ※こちらのボタンをクリックするとソフトウェア「iTunes」が起動します。 iPhoneのアプリケーションの入手については、AppStoreから無料でダウンロード、インストールできます。なお、このアプリケーションを利用するためにはメールアドレスにて申し込みが必要(無料)になります。 動作環境: iPhone、iPod touch および iPad 互換 iOS 5.0 以降が必要 IPv6 Nativeルーティング対応 「ServersMan」は今までも仮想化技術によって、固定グローバルIPv6アドレスを割り当てておりましたが、仮想化ネットワーク以外からのルーティングを遮断しておりました。今回のアップデートにより、ユーザーが任意に設定を行うことで、グローバル IPv6のネットワークから直接「S

  • Pusherでお手軽WebSocket - iPhoneから加速度をリアルタイム送信

    はじめに タイガーマスクが貢いでくれるのを待っている皆さんこんばんは。 前振り考えるのが面倒なので結論から書くと、今日はWebSocketについて扱おうと思います。iPhoneを使って↓こんなサンプルを作ってみました。 Safari上のJavaScriptと、WebSocketをWebサービスとして提供しているPusherを利用して、サーバサイドの言語を使わずに実装しています。 WebSocketってなぁに? httpおさらい Webの通信に使われる皆さんお馴染みのhttpは、クライアント(ブラウザとかね)とサーバが常に「問い合わせ(リクエスト)と返答(レスポンス)」のペアでやりとりをおこないます。 クライアント(FirefoxやChromeなど): 「情報ください」 サーバ(Apacheやnginxなど): 「はい、どうぞ」 このシンプルな仕組みがhttpの強みであり、URLと共にここま

    Pusherでお手軽WebSocket - iPhoneから加速度をリアルタイム送信
  • StoreKitDemo

    Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode

  • PHP製のSyncMLサーバ·MOOHA MOONGIFT

    MOOHAはPHP/MySQL製のオープンソース・ソフトウェア。SyncMLとはXMLをベースにした、携帯電話やスマートフォンとPCなどでデータを同期するためのプロトコルだ。主流にはなっていないがオープンな規格だけにスマートフォンが取り入れていけば普及する可能性はあるだろう。 iPhoneから同期中(最後にエラーになってしまうが) SyncMLでは色々なデータが取り込めるようになっている。取り込んだデータは同じくSyncMLに対応した機器やソフトウェアによって取り込まれて連携が可能だ。そのSyncMLに対応したサーバとしてMOOHAがある。 MOOHAはPHPで作られたSyncMLサーバで、コンタクト/ノート/カレンダー/タスクが取り込み可能になっている。もちろん双方向性だ。なおiPhoneのSyncML対応アプリで試した限りではエラーになってしまった(認証周りのようなので筆者の問題かも知

    PHP製のSyncMLサーバ·MOOHA MOONGIFT
  • iPhoneにFTPサーバを内蔵する·DiddyFtpServer MOONGIFT

    DiddyFtpServerはMac OSX/iPhone向けのオープンソース・ソフトウェア。iPhoneアプリを使って外部(母艦)とデータのやり取りをするアプリは数多い。例えばバックアップ目的であったり、独自のファイルを授受する場合だ。 デモアプリはグレー表示のみ そうした時に利用できる仕組みとしてFTPを採用するケースは多い。独自にWeb APIを実装したりするのに比べて簡易的に使えて、既存のライブラリも数多いからだ。iPhoneアプリでFTPサーバ機能を付け加えるならDiddyFtpServerを使ってみよう。 DiddyFtpServerはCocoa製のオープンソース・ソフトウェアで、Mac OSXiPhoneで動作する。デモアプリを実行すると20000番ポートでサービスが立ち上がる。デモアプリでは特に認証は設けておらず任意のID/パスワードでログインできる。この部分は各自で任意

    iPhoneにFTPサーバを内蔵する·DiddyFtpServer MOONGIFT
  • はてなブログ | 無料ブログを作成しよう

    オーベルジーヌ実レポ べ物の鼻塩塩(未だに通じるのかな) オーベルジーヌというカレーをご存知だろうか 都内にあるデリバリー専門のカレー屋で、 ロケ弁などで大人気の格欧風カレーが楽しめるらしい いいな〜 いいな〜オブザイヤー 都内の奴らはこんな良いモンってんのか 許せねえよ………

    はてなブログ | 無料ブログを作成しよう
    s_ryuuki
    s_ryuuki 2010/02/02
    GPSロギング