技術を活かし、新しい価値を創造する DeNAのエンジニアは、想像を超えるDelightを届けるために何ができるかを考え、技術力と発想力で新しい価値を生み出しています。 多様な専門性を持ったエンジニアが切磋琢磨し、互いに刺激し合える環境や制度がさらなる成長へとつなげます。
※本記事は、一般に公開されている情報を元に作成しています。 (WWDC 2014 発表資料より引用) どういうこと? iOS 8 から位置情報の取得の方法が変わるようです。今までの方法だと位置情報が取れなくなります。 objective c - Location Services not working in iOS 8 - Stack Overflow My app that worked fine in iOS 7 doesn't work with the iOS 8 SDK. CLLocationManager doesn't return a location, and I don't see my app under >Settings > Location Services either. I did a Google search on the issue but noth
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:が両方実装され
In-App Purchaseでプロダクトの購入を扱うときにはStoreKitのSKPaymentTransactionStateを使います。 例えばPurchasedなら購入完了なのでプロダクトのダウンロードを始める、Failedなら失敗なのでアラートを出すなどとします。 iOS 8からはその状態に新しくSKPaymentTransactionStateDeferredが追加されます。 2014/8/6時点ではまだドキュメントに解説はありません。 API diffとヘッダには記載されています。 WWDCのセッション218, 303ではそれなりに詳しく解説されていますので参考になると思います。 Deferredという状態は「Ask to Buy」というiOS 8のApp Storeの新機能のために導入されました。 「Ask to Buy」はiOS 8で搭載される「ファミリー共有 (Fami
Objective-C や Swift のネイティブコードから JavaScript をランタイムで実行するための JavaScriptCore.framework のお話です。基本的な機能の説明と、注意点を整理して紹介しています。Read less
iOS7でBackground Transferを使うときのライフサイクルが分かりにくいので実際に試してみました。アプリの生死に関わらず通信が継続されるというのは本当なのか?通信成功の処理と通信失敗の処理はどこに実装すればいいのか?をはっきりさせます。 iPhone5実機(iOS7.1.2)にて以下のデモアプリを使用してコールバックを確認しました。このデモアプリは複数ファイルダウンロード時の挙動が分かりやすくて良いです。 Background Transfer Service in iOS 7 SDK: How To Download File in Background アプリフォアグラウンドでダウンロード(1セッション2タスク)したとき 複数のファイルをダウンロードしているとき、アプリがフォアグラウンドであればリアルタイムで次のメソッドが実行されます。 ファイルのダウンロード順は保証さ
こんにちは! なんと早くも2度目の登場です、iOSエンジニアの木村です。 最近、ついに実家から独立しました。 これで電車を気にせず、存分にObjective-Cを書けるかと思うと、もう(…) と言いつつ、ネイティブチームの中で誰よりも早く帰るのですが w さて、今回は今、僕が携わっている「Couples」 で実際に使っているViewの実装について、じっくり書きたいと思います! FacebookのタイムラインのようなUIを実装したいと考えている方は必見です! FacebookタイムラインのUIを再現! Facebookを筆頭に、タイムラインを使うアプリでよく見かける、このUI。「Couples」でもタイムラインの写真の表示に使っています。 写真が横に並び、両端に前後の写真が少し見えています。ユーザーが何も考えなくても自然にスワイプしたくなる、さりげない心遣いが魅力です。実装目線で細かく見てい
1画面から始めるStoryboard。 第56回 Cocoa勉強会関西の発表資料。Read less
11. ①AVCaptureSesison の準備 // セッションの作成 self.session = [[AVCaptureSession alloc] init]; _session.sessionPreset = AVCaptureSessionPresetHigh; @property (nonatomic) AVCaptureSession *session; 12. ②入力デバイス(カメラ)の準備 // 入力デバイスの設定 AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo]; ! AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:n
(Andy Myers and the CocoaPods Dev team. Creative Commons - Attribution-NonCommercial 4.0 International) iOSアプリを作るとき、今日ではCocoaPodsを用いて簡単に便利なライブラリの力を借りることができる。 ライブラリを利用するメリットは多い。自分でメンテナンスする必要がないので、放っておいても勝手に改善されていく。潜在的な問題があったとしても、多くの人が利用しているものなら誰かが気付いて直してくれる可能性も高い。また自分より優れたエンジニアの手によって、優れたインターフェースや実装になっているということも多い。何より、自分で実装する手間が省けるのがよい。 反面、デメリットについても考えなければならない。ライブラリがメンテナンスされなくなったとき、なにか問題が起こったり、あるいはAp
ユースケース CADisplayLink を実際に使う例と共にどんなクラスなのか簡単に紹介します。 例えば現在時刻を表示する場合。 画面に表示されている日時を定期的に更新する必要があります。 そのような場合に NSTimer で 0.01 秒など適当なインターバルを設定して更新、みたいなこと実装した経験ありませんか? 僕はあります。 それを解決するための表示されているビューを更新するためのイベントを取得するためのクラス、それが CADisplayLink です。 最近 facebook が OSS 化した pop や、長年 iOS の 2D ゲームフレームワークとして親しまれている cocos2d でも、もちろん使われていました。 facebook/pop cocos2d/cocos2d-iphone CADisplayLink の使い方 CADisplayLink を以下の様にしてセット
もう先週ですが、表題のタイトルで「Consumer Service Engineer MeetUp Vol.1 ~iOS編~」という会でお話しさせていただきました。 このようなタイトルの発表にした理由についてですが、はてなとしてお話しするということで、ちょっと硬派な方に振ってみました。結果としては良いバランスだったのではないでしょうか。 発表資料を掲載します。 また以下に発表の概略を書いておきました。ご参考ください。 前提 このMeet Upの主旨が「コンシューマ向けのWEBサービス(アプリ)の企画・開発・運営をしている会社によるエンジニア向けの講演、パネルディスカッション、懇親会を含めたMeetUpです!」となっていましたので、それではWebサービスとアプリを繋ぐWeb APIについて、それを利用するiOSアプリについて考えます。Web APIというのは古くて新しい話題で、いまや専らJS
iOS 7から MKMapView クラスに - (void)showAnnotations:(NSArray *)annotations animated:(BOOL)animated; メソッドが追加されました。 引数に指定した配列に含まれる MKAnnotation(地図にさすピンやアイコン)が、すべて画面上に表示されるよう、うまく地図の縮尺を自動調整してくれます。 デモ 例えば都内の郵便局を検索し、結果を地図に表示したイメージは次のようになります。 すべてのピンがちゃんと地図上に収まってますね。 とても良いメソッドなので、うまく活用していきたいですね! ▼デモで使用したアプリはこちらです Venue Map for foursquare Kosuke Ogawaナビゲーション無料
NSString には upperCaseString と lowercaseString というメソッドがあり、文字列をそれぞれ大文字・小文字に変換することができます。 では文字列が大文字か小文字かを判別するにはどうすればいいのか気になり調べてみたところ、C の標準ライブラリ関数に isupper() と islower() というものがあるのを見つけました。 こんなふうに使います。 NSString *string = @"Hoge"; unichar c = [string characterAtIndex:0]; // 先頭文字を取り出す if (isupper(c)) { // Upper case } else { // Lower case } 大文字と小文字の判別ができると、例えばキャメルケース(HogePiyo)をスネークケース(hoge_piyo)に変換するといったこと
Written by Mattt October 29th, 2018 (revised) This article has been translated into: 中文 One of the most rewarding experiences you can have as a developer is to teach young people how to program. If you ever grow jaded by how fundamentally broken all software is, there’s nothing like watching a concept like recursion click for the first time to offset your world-weariness. My favorite way to introd
photo by Janitors 前提 iOS 7からView Controller単位でステータスバーを設定しやすいようになりました。 ベストプラクティス Info.plist はじめに、Info.plistでUIViewControllerBasedStatusBarAppearanceがNOになっていないことを確認します。NOだったらこれまでと同様 [UIApplication sharedApplication].statusBarStyle で設定することになります。 アプリ起動時のDefaultイメージでは、Info.plistが優先されるので、Info.plistでUIStatusBarStyleを設定しておきます。 UIViewController ここからView Controllerでの設定についてみていきます。重要なのはUIViewControllerのふたつのメソ
正直、初見の時の可読性が落ちるので微妙かもしれませんが、 発想の1つとしてメモしてみます。 blocksをその場ですぐ使う事で、NSMutableArrayのスコープを最小限にして、その後をNSArrayとして固定してしまいます。 NSMutableArrayがだらだらと下に残ってしまうのを防ぐ事が出来ます。 Mutable系のオブジェクトでは全て可能です。 NSArray *array = ^{ NSMutableArray *r = [NSMutableArray array]; for(int i = 0 ; i < 100 ; ++i) { [r addObject:@(i)]; } return r; }(); for(NSNumber *n in array) { NSLog(@"%@", n); } Register as a new user and use Qiita m
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く