この情報はとても古いので2017年における方法を書きました。よければそちらを参考にしてください。 Raspberry Pi Type Bの256MBは持っていたのですが、物欲が暴走してType B 512MBをMOD MY PIで手に入れました。 Pibow Ninjaとセットで送料込みの$68でした。 このRaspberry Piを鞄に忍ばせ、外出先でiPhoneのテザリングを使って通信ができると素敵かもしれないと思ったので、iPhoneとテザリングできるようにしました。 OSはRasbian。NOOBSを使い簡単にインストールしました。USB BluetoothアダプタはBT-MICRO4を使いました。特別なことをしなくても起動時に認識します。 Bluetoothの設定 BlueZがLinuxでよく使われているようです。 sudo apt-get update sudo apt-get
またまたiOS7(or Xcode5)の話題。 Xcode5にしてからすこぶる開発スピードが落ちた気がする。というのも、シミュレータでアプリを起動できないときが多々ある。「Appをインストールできませんでした」や「SpringBoardはAppを起動できませんでした。エラー:0」という理由で起動できないのだ。 解決方法としては、 ・アプリのバイナリを削除(パスは、/Users/xxx/Library/Application Support/iPhone Simulator/6.1/Applications/hogehoge) ・クリーン ・シミュレータ再起動 で起動できるようになる。 なんだかなー。 参考: iPhone Simulator: SpringBoard failed to launch application with error: 7 - Stack Overflow Xc
2021年9月1日現在、一部のウェブサイトを開いた際に「ロボットでない場合は、[購読]をクリックします」といったページが表示され、続けて画面に表示される「このページをカレンダーで開きますか?」や「カレンダーの照会を追加」から、セキュリティリスクのある外部カレンダーを読み込む事例が増加しています。 詐欺「ロボットでない場合は、[購読]をクリックします」に注意 2021年9月1日現在、悪意のあるウェブサイトや改ざんされたウェブサイトにアクセスすると、悪意ある外部カレンダーの照会等を目的としたページ「ロボットでない場合は、[購読]をクリックします」が表示される場合があります。 直近だと東京都が過去に配布したリーフレット「1歳未満の乳児にはちみつを与えないでください!」に掲載されたQRコードを読み込むと、上記の悪意あるページが表示されるとのことで話題になっています。 ※ 今回の一連の問題はドロップ
第一回目の”fantagramができるまで”は、GPUImageの組み込みの解説をします。 前回のcocos2dで簡単なゲーム作っていくよ(まとめ・サンプルコードあり)と同様に、コードはGitHub上で公開してます。 https://github.com/kasajei/ios-fantagram-kasajei GPUImageはsubmoduleとして追加しているので、ターミナル上で $ git clone https://github.com/kasajei/ios-fantagram-kasajei $ cd ios-fantagram-kasajei $ git submodule init $ git submodule update としてください。 *注:UIKitHelperという独自で作った、UIKitを便利にするライブラリーも使っています。これも、Submodule化
マンガゲットで開発を担当している武上です。最近2歳の息子がいろいろお話ができるようになってきました。今までずっとママと呼ばれていたのですが(男親も女親もどっちもママ)、ついにパパとよばれるようになりました!しかも稀に「パパだいすき」とかいってくれます!生きててよかった! ところで、iOS5が半年前にリリースされてからアプリの通知周りのユーザビリティが随分上がりました。そこで今回は、その裏側で動いている、iOSとAndoroidのプッシュ通知の実装方法の違いについてまとめてみたいと思います。 そもそもプッシュ通知とは何か? ユーザがアプリを起動していなくとも、アプリにリアルタイムに何らかの通知を送る仕組みのことです。 iOSの場合はAPNS、Androidの場合はC2DMという名前で用意されており、それなりに容易に使うことができます。 どちらも基本は事前にユーザの許可を取った上で、Apple
リモート通知はシュミレータではサポートされていないので実機転送する必要がある。 プロヴィジョニングプロファイルに含めるApp IDのBundle Identifierにワイルドカード(*)は使用出来ない。 作成したApp IDのConfigureでDevelopment Push SSL CertificateをEnabledにする必要がある。 App IDを作成後、作成されたAppIDを選択しEditボタンを押したら、Push Notifications の Development SSL Certificate の Create certificateボタンをおしてcertificateする必要があります。 認証局に証明書を要求する際に「鍵ペア情報を指定」にチェックを入れておく。 「アプリケーションの有効な"aps-environment"エンタイトルメント文字列が見つかりません」って
HTML5でiPhoneやAndroid向けのハイブリッドアプリを作るのが最近の流行りみたいです。ハイブリッドアプリとは、外面は普通のアプリとしてAppStoreやGoogle play marketでインストールできるものの、その中身や一部がHTML5で記述されているアプリです。 最近の有名な例だと、CookpadやLinkedIn、はてなスペース、少し前にネイティブに移行してしまいましたがfacebookのモバイルアプリもHTML5を使って記述されていました。GREE界隈で言われているらしいガワネイティブっていう言葉もハイブリッドアプリを指します。ちょっとググってみると、2016年には企業向けのアプリの50%がハイブリッドアプリになるという予測もあります。 ハイブリッドアプリの何がいいかというと、Objective-CとかJavaとかがわからなくてもウェブ系技術者であればAndroid
企画やらUIを考えるツール iPhone Idea Sheet(PDF) 三階ラボさんのアイデアシート(PDF)。 iPhoneの枠だけじゃなく、ナビゲーションバーやタブバー、ステータスバーが書きやすいように、うっすら線が入っていてGOOD。 印刷して何枚か持ち歩いている。何か作りたいなーどうかなーと思ったら、手書きでワーっと書く。このシート自体が美しいので、いいもの作れそうな気がしてくる。 紙なので、対面でのブレストやら打ち合わせしながら書き込みやすい。 Cacoo(Web) UIの構想がまとまってきたら、Cacooで清書してチームで共有。 iPhoneの各パーツのステンシルが揃っているので、きれいに、わかりやすく作れる。SkypeミーティングのときにみんなでCacoo触りながら話したりとかしている。 Interface HD(iPad App) iPad上で、iOSパーツを組み合わせて
# armv7 clang -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk -c mattn.c ar mattn-armv7.a mattn.o ranlib mattn-armv7.a # i386 clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk -c mattn.c ar mattn-i386.a mattn.o ranlib mattn-i386.a
以前は MKMapView 上に線を引いたり四角形を書いたりするのに自前で View を作成しないといけませんでしたが iOS4 になって地図上に図形を書くためのクラスが追加されました。使い方がわりと簡単なので紹介したいと思います。 地図に線を引く 地図に線を引くには MKPolyline クラスと MKPolylineView クラスを使います。山手線の渋谷駅から新宿駅に線を引く例をもとに説明します。 手順は以下の通りです。 プロジェクトに MapKit.framework を追加 UIViewController のサブクラスを作成し MKMapViewDelegate プロトコルの実装を宣言する viewDidLoad メソッドで MKPolyline オブジェクトを生成し MKMapView の addOverlay メソッドを使ってオーバーレイを追加する mapView:view
チャオ! Objective-cで2点間の距離を出すのは超簡単! 2つのCLLocationデータから出すサンプルは結構あるんですが、経緯・緯度からってのがあんまりなかったので!って言っても簡単する過ぎて記事がすぐ終わりング まず、以下のframeworkを突っ込んでおく。 CoreLocation.framework 次に、距離を出したいファイル(*.hでも良いです)でCoreLocationをimport #import <CoreLocation/CoreLocation.h> 最後に下記で距離をゲット、距離はメートルで取れる感じです。 (下記は大阪城から皇居までw) // 2点の経緯・緯度を設定 double latA = 135.5258549; double lngA = 34.6873527; double latB = 139.75313186645508; double
XcodeのコンソールをNSLogの出力結果を確認するためだけの場所だと思っていませんか? ええ、筆者は思っていました。 Javaでの開発環境にEclipseを使っていると、コンソールは実質的に出力専用でした。標準入力を受け取ることもできますが、自分でそういうコードを書かない限りは使いませんし。 Xcodeはデバッガとしてgdbが使われており、コンソールはそのままgdbのコマンドラインインタフェースになっています。 Xcodeでアプリ実行中に一時停止ボタンを押すと、コンソールにgdbのプロンプトが出ます。ブレークポイントやクラッシュによって停止したときも同様です。 ここで対話的にコマンドを実行することができます。 gdbには呆れるほどたくさんのコマンドが用意されていますが、基本的な操作はXcodeのGUIからも実行できるので無理に覚える必要はないと思います。 しかし、print-objec
そのクラスに指定したクラスメソッド(セレクター)が存在するのか判定する為には - (BOOL)respondsToSelector:(SEL)aSelector; を利用します。 このメソッドはインスタンスメソッドなんですけど、なぜかクラスに対して呼び出すことができます。コンパイルも通るし実行時に落ちたりもしません。(小一時間調べたけど分からずじまい)
【CEDEC2013】月商1億円超えタイトルのディレクター達が語る、成功するオンラインゲーム開発&運営の秘訣モノビット エンジン
処理が終わったら(サンプルでは2秒間のウェイトが入れてある) contentInsets.top = -60 へ戻してやる。すると最初のヘッダが隠れた表示に戻る。なお contentInsets も UIViewアニメーションの対象なので +[UIView animateWithDuration:aniamations:] を使うとヘッダが隠れるまでがアニメーションになる(逆に使わないと一瞬で切り替わり、やや不自然になる)。 コードではヘッダの表示制御用にメソッドを用意してある。こんな感じ。 - (void)_setHeaderViewHidden:(BOOL)hidden animated:(BOOL)animated { CGFloat topOffset = 0.0; if (hidden) { topOffset = -self.headerView.frame.size.heig
画面の脇でスクロールする画面が欲しかったので UIScrollViewを使おうかと思ったのですが、 カスタムセルを使いたかったので幅の狭いTableViewを作ってみた。 (Objective-C,Xcode4.3) 1.Storyboardで、オブジェクトライブラリからViewの上に TableViewをD&Dして高さ・幅を調整 2.ViewController.h #import <UIKit/UIKit.h> IBOutlet UITableView *tableView_; @interface MyViewController : UIViewController<UITableViewDataSource,UITableViewDelegate>{ } @end 3.ViewController.m にメソッドを追加 #pragma mark - Table view data
改めて説明するまでも無いかと思ってたけど意外と知らない人は知らないみたいので解説を書いておきます。 @property と @synthesize の組み合わせは端的に言うと「setterとgetter(アクセッサメソッド)をコンパイルの前に生成させる」以上。 ※Objective-Cの場合、 @ で始まるものはプログラムでは無く、コンパイラへの指示となります。この様な指示をObjective-Cではコンパイラディレクティブ(Compiler directive)と呼びます。 詳細説明 setterやgetterはメンバ変数を直接扱わずにメソッド経由で代入やデータの取得をする為に定義するメソッドです。setterがデータを代入する時のメソッド、getterがデータを取得する時のメソッドとなります。 メンバ変数をメソッド経由にすることにより代入前にチェックを行って有効な値のときのみメンバ変数
本記事は「端末情報(デバイス情報)を取得する - iOSアプリ開発の逆引き辞典」に転記しました。プラットフォームコードと製品名とのマッピング表はリンク先の記事の方が最新となっています。 iPadだったらこうするiPhoneだったらこうする。はたまた、iPhone 4は良いがiPhone 3GとiPod touch 2Gはメモリが少ないのでこの機能をドロップするなど、端末のモデルによってあれしたいこれしたいという事が多々あると思います。 端末情報を取得する方法についてご紹介したいと思います。 iOSのバージョンを取得する NSString* sysVersion = [[UIDevice currentDevice] systemVersion]; モデルを取得する NSString* model = [[UIDevice currentDevice] model]; プラットフォームを取得
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く