タグ

ブックマーク / blog.katty.in (2)

  • iOSとAndroidのプッシュ通知の開発の違いまとめ

    少し言い訳しておくと、ちゃんと確認せずに書いているので間違いがあるかもしれません。Wikipediaだったら[要出典]ってたくさん付けられてしまいそうです。 大きな違いをいくつか紹介していきます。 Androidは受信処理を各自実装する必要がある。 iOSとAndroidプッシュ通知の設計の大きな違いは、iOSはOSの仕組みに乗らなければいけないのに対して、Androidは自由度が高く各自の実装にゆだねられているという点です。 iOSのAPNSは送信するデータの形式もしっかり決まっていて、その形式にしたがって送信すれば、あとはOSが定めた方法で表示されるだけです。一方のAndroid送信データは完全に自由で、それを受信した際にアプリがどんな動作をするかも、制限されていません。 逆にいえばAndroidは受信時の表示などの処理をすべて独自で実装する必要があり、クライアントの実装の手間は数倍

    iOSとAndroidのプッシュ通知の開発の違いまとめ
  • Objective-Cでスレッドをデッドロックさせずに非同期処理の終了を待つ方法。

    「Objective-Cで非同期処理を同期処理にする方法。」に、ディスパッチセマフォによってスレッドがデッドロックしてしまう場合があるということを書きました。 デッドロックする例 これがその例です。 NSLog(@"start."); dispatch_semaphore_t semaphore = dispatch_semaphore_create(0); dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{ for (int i = 0; i < 5; i++) { sleep(1); NSLog(@"Process: %d", i); dispatch_sync(dispatch_get_main_queue(), ^{ NSLog(@"Main Process"); }

    Objective-Cでスレッドをデッドロックさせずに非同期処理の終了を待つ方法。
  • 1