一時期FacebookのゲームCityVille(Zynga)にはまっていて、こういうゲームはどうやって作っているのだろう?と興味があったので読んでみた。ソースコードレベルまで含めた実装の話からインフラ構築や運用・開発体制(コストからエンジニアの割り当てまで含めて!)の話まで、別の本になっててもいいのでは?という内容が詰め込まれていて内容も濃く読み応えがあった。 ソースコードも本文内は概念的なコードが多いが、実際に動作するものも試せて(MacOSX上で動かしてみれる)おもしろい。 自分の仕事と、作っているものも規模もまったく違うものの苦労している点は似ていて、インフラ構築の部分では参考になることも多かった。 意外だったのは(少し考えるとやっぱりそうか、とも思ったが)、ライブラリや外部サービスなど使えるものは使って開発工数を小さくしているという点。逆に言えば、そうだからこそ似たゲームが同じ会社からだけでなく、どんどん出てくるということが可能になっているのだろう。 せっかくなので、サンプルを元に何か作ってみたい。 # by ukulele_trip | 2012-02-26 15:03 | ソフト開発一般 | Trackback | Comments(0)
![]() MacBook ProのRAM増設も順調に済ませたので(ただ後日談があるのだが)、調子にのってiMacも増設した。 iMacはEarly 2009の20インチモデル。MacBook Pro(Early 2008)だと2つのメモリスロットに同じ容量のRAMをつけるよう推奨されていたが、こちらは別々の容量でもよいらしいので、1GB+1GBに4GBを購入して、1GB+4GB=5GBにした。 ただiMacはまだLion化するメリットがないので、SnowLeopardのままで、特に効果は体感できていない…。 # by ukulele_trip | 2011-09-11 13:31 | Mac OS X | Trackback | Comments(0)
![]() TLでみかけておもしろそうだったので手に取り、読んでよかったと思えた本だった。 仕事で昔セキュリティ全般について調べたこともあったし、PGPで盛り上がった(?)世代だったしで、原理はだいたいわかっているつもりではあった。それでも改めて新しい技術や、詳細はぼんやりとしか理解してなかった部分など興味深く読めた。 AESのブロック暗号モード(CBCやCTR)も言葉だけ知ってたが、どういう違いがあるのかまでは本書を読んでようやく納得できた。 # by ukulele_trip | 2011-09-11 13:23 | ソフト開発一般 | Trackback | Comments(0)
![]() MacBook Pro(Early 2008)のRAMを2GBから4GBに増やしたら快適になってうれしいので書いておく。 まずXcode4になってから、Xcodeの動作が遅くてイライラしてた。 次にLionにしたらChromeの動作も遅くなり、さらに日本語を入力しようとしたら(Google日本語入力)まともに入力できないこともしばしば。 買い替えを考えたが、その前に何が遅いのか調べとこうと思ってメモリをみてみたら実は2GBしか積んでなかった(何となく4GB積んでるつもりでいた)ので、RAMをAmazonで探してみた。 2GBで2,000円くらいだったので、ダメもとで増設しても惜しくないと思い2GBx2で4GBにすることにした。(MBP Early 2008は2スロットで両方に同じ容量のRAMをつけろ、とあったので) 購入したのはTranscendのメモリ。RAM増設してもどうせ1年以内には買い替えるだろうし、それまでのつなぎというつもりであまりこだわりなく選んだ。 RAMの交換はAppleのサイトにあるとおりで、簡単だった。 増設後はXcodeはまだ少し遅いけど、Chrome、日本語入力は快適に使えるようになった。Mission Controlも増設前は最初にジェスチャしても起動まで待たされたが、増設後はそんなこともなく、ようやくLionとしてまともに使えるようになった。 これでLion化を躊躇してた家族用のiMacもRAM増設してLionにできる。 # by ukulele_trip | 2011-08-23 00:03 | Mac OS X | Trackback | Comments(0)
ようやくAdMobを新SDKに移行したので、旧SDKからのシンプルな乗り換え方法についてメモっておく
基本的には http://code.google.com/intl/en/mobile/ads/docs/ios/fundamentals.html の手順に従っていく プロジェクト構成の変更 1. 新SDKをダウンロード、どこかに展開しておく 2. 既存プロジェクトからAdmobファイル、TouchJSONファイルを全部削除する。 3. 1で展開して出てくるファイルのうちREADME以外すべてをプロジェクトに追加する。 Xcode4ではプロジェクト右クリック->"Add Files to …"になっている。 ![]() 4. frameworkを追加する。旧SDKをすでに使っている場合、新たに必要になるのはSystemConfigurationだけ。 Xcode4だとprojectを選択→右側のペイン中の左列で"TARGETS"を選択→"Build Phases"のタブを選択→"Link Binary With Libraries"の左下の"+"を押す、という手順になる。 ![]() ソースコードの変更 5. ヘッダファイルの変更: AdMobDelegateProtocol.h → GADBannerViewDelegate.h、AdMobView.h → GADBannerView.h で、それ以外にincludeしてたAdMob関係のヘッダファイルは不要。 6. バナー表示用Viewクラスの変更: AdMobView → GADBannerView 7. バーのサイズ用ラベルの変更:ADMOB_SIZE_[width]x[height]というラベルはGAD_SIZE_[width]x[height]というラベルに変わっている。またサイズも微妙に変わっていて、iPhone用だとGAD_SIZE_320x50になる。 8. GADBannerViewでいくつかメソッドが変わっているので、その変更。 requestAdWithDelegateがなくなっているので、普通にframe指定してインスタンスを生成して、loadRequestというメソッドを呼ぶ必要がある。 また、AdMobViewではdelegateで指定していたpublisherIDはGADBannerViewのプロパティになっているので、これもセットする。 僕がはまったところは、AdMobViewでは広告をrequestして、取得完了した時点でViewのサイズを設定していたのだが、GADBannerViewではloadRequestの時点でサイズを確定して、さらにrootViewControllerで親Viewの指定もしておく必要があるという点。 まとめると以下のようなコードになる。
requestFreshAdもなくなっている。探してみたけど、リフレッシュはサーバ側の設定でやってもらうことが推奨されているみたい。なので、僕はサーバ側で更新間隔の設定をして、クライアント側では何もしないことにした。 9. AdMobDelegateProtocolのメソッド名が変更されているのでその調整 didReceiveAdはadViewDidReceiveAdに、didFailToReceiveAdはdidFailToReceiveAdWithErrorに。 一応、これで移行はできるはず。間違いあれば指摘ください。 [2011-08-15 追記]4.1.1で、iPhoneがネットにつながっていない状態でdidFailToReceiveAdWithErrorが呼ばれたときに、この中でGADBannerViewをreleaseするとBAD_EXC_ACCESSになる。
よく考えればそのdelegateメソッドを呼び出しているもとのオブジェクトを破棄するのはまずい気がするが、旧SDKでは動いていたので注意。 対策としてはここでreleaseするのをやめた。 こちらにも同じようなことが書いてある。http://goo.gl/tx5p6 # by ukulele_trip | 2011-08-15 16:59 | iOS | Trackback | Comments(0)
2.2にバージョンアップしました。App Storeへ 本バージョンの内容:
アプリケーションの説明: 1. 通貨単位変換 ある通貨を別の通貨に変換します。その際、日本語<->英語表記の変換も行います。例えば10M$に対して7.67億円といった結果を表示できます。 2. 財務単位変換 3200百万円とか、18Millionドルとか言われるとまったくわからなくなることはありませんか?この機能はこういったお金の表現を簡単に変換できます。 変換元の金額・表現を指定するだけで、複数の候補が表示されるので素早く使えます。 使い方: 画面下部の入力パッドで変換したい元の金額を入力します。 また入力パッド右側では変換元の金額について以下の指定が行えます。
入力する度に結果のリストが画面中央部に表示されます。 通常は通貨換算結果が表示されますが、左上の「財務単位」ボタンを押すと百万などの財務単位への変換結果表示になります。再び通貨換算に戻るには「通貨単位」ボタンを押します。 財務単位変換の計算はすべての通貨・単位の組み合わせで行われますが、表示されるのは計算結果の数値の部分が1以上100000未満のものだけです。また小数点以下は2桁まで有効としています。将来的にはこの部分も設定できるように考えています。 また結果を選択すると、コピーが行われます。 為替レートについて: 為替レートはオンラインで取得していますが、最新の情報とは限りません。 またネットワークの問題で取得に失敗した時には前回使用したレートを使います。 設定: 有効にする通貨種類や順番を変更できます。 # by ukulele_trip | 2011-08-05 16:01 | 通貨単位変換サポート | Trackback | Comments(0)
iTunesのページはこちらです。
![]() ![]() アプリケーションの説明:Flickrフォトフレームはお手持ちのiPhoneやiPadを手軽にデジタルフォトフレームにするアプリケーションです。Flickrにある写真をインターネット経由で表示するので、写真をiPhone/iPadに入れる必要はなありません。 また自分の写真以外にも、自分のコンタクトに登録したユーザの写真を表示することができますので、例えば遠くに住む家族の写真をみることもできます(自分がみることができるもののみです)。 使い方:準備:あらかじめFlickrサイトでアカウントを取得しておいてください。フォトフレームに表示したい写真が自分のものであれば、写真をアップロードしておきます。このときセットを作成して写真を分類しておくとフォトフレームに表示する写真の選択が簡単に行えます。 表示したい写真が他のユーザのものであれば、そのユーザをFlickrサイト上でコンタクトに登録します。そのユーザが家族(family)だけに公開している写真をみるためには家族として、友人(friends)だけに公開している写真をみるなら友人として登録してください。 コンタクト登録ではそのユーザの承認が必要です。
情報表示設定: スライドショー上に日付時刻や写真情報を表示できます。
制限事項など:
サポート:http://twitter.com/ukuleletrip著作権:Copyright 2011 ウクレレとりっぷ All Rights Reserved.
# by ukulele_trip | 2011-01-30 13:39 | iOS | Comments(0)
Now available on iTunes
![]() ![]() About This ApplicationFlickr Photo Frame makes your iPhone or iPad a digital photo frame easily.Flickr Photo Frame plays slideshow using photos on Flickr, so you don't have to bring photos into your iPhone/iPad. It can also play photos of users in your contact as well as your own photos, you can see photos of your family who live far away from you. How ToPreparationPlease create account at Flickr. If you want to use your own photos for slideshow, please upload the photos to Flickr. If you create Sets and adding photos to them, you can easily change photo set to be used for slideshow. If you want to use photos of other users, please add them to your contact on Flickr. To see photos which the user publish to only family, you have to add the user to your contact as family. You need the user's permission on adding them to your contact.
Display Settings
Notes
Supporthttp://twitter.com/ukuleletripLicenseCopyright 2011 Ukulele Trip All Rights Reserved.
# by ukulele_trip | 2011-01-30 11:28 | iOS | Trackback | Comments(4)
Provisioning Profileの期限が切れた後についてはRenewして…という流れでネットで多くの情報が見つかるのだが、期限が切れる前に期限を延長するための情報は見つからなかったので、書いておく。
(間違っていたり、もっと良い方法があれば指摘ください) 期限が切れてから更新しても実害は少ないのだが、期限が近づいてくるとやたらiPhone上に通知が出てきて鬱陶しい。そこでなるべく簡単にProvisioning Profileの期限を以下のようにして延長してみた。 結論から書くと、既存のProvisioning Profileの期限を延長する方法はない。なので既存のProvisioning Profileをコピーして作成するということになる。 1.iOS Provisioning Portal(ログイン必要)に行く。 2.自分のProvisioning Profileを複製する。(右にある"Edit"をクリックして、"duplicate"を選択する。) 3."Copy of.."という名前で新しいProvisioning Profileが作られる 4.ここで元のProvisioning Profileを削除する。(この項目の左のチェックをONにして、下の"Remove selected"をクリックする。) 5.複製したProvisioning Profileの名前をもとのものにする。(右にある"Edit"をクリックして"Modify"を選択し、名前を変更。) 6.複製したProvisioning Profileをダウンロードする。(右にある"Download"ボタンをクリックしてダウンロードする) 7.ダウンロードしたProvisioning ProfileをダブルクリックするなどしてXcodeにimportする 8.XcodeのオーガナイザでiPhoneに入れる ただ、これだけだとTeam Provisioning Profileがまだ期限間近のまま残っているので、以下を行う。 9.オーガナイザでTeam Provisioning Profileを削除する。 10.オーガナイザの"Provisioning Profiles"タブ(左側)を選択して、その上にあるAutoにチェックが入っていることを確認して"Refresh"をクリックする。 11.iTunes Connectにログインを求められるので、ログインすればTeam Provisioning Profileが複製されたProvisioning Profileから作られ、期限も延長される。 # by ukulele_trip | 2010-11-18 12:23 | iPhone | Trackback | Comments(2)
メモリ管理にも慣れてきて、instrumentsを使ってメモリリークつぶしもやるようになってきた。
ただ、一つ気持ち悪かったことがあった。それはretain指定したプロパティに新しいオブジェクトポインタを代入したとき古いものはどうなるのか?という点。 http://developer.apple.com/jp/documentation/cocoa/Conceptual/ObjectiveC/Articles/chapter_5_section_3.htmlに書いてあってすっきりした。ちゃんとコンパイラが面倒見るコードを吐いてくれてる。 // assign # by ukulele_trip | 2009-12-05 20:24 | iPhone | Trackback | Comments(0)
|
カテゴリ
以前の記事
2012年 02月
2011年 09月 2011年 08月 2011年 01月 2010年 11月 2009年 12月 2009年 11月 2009年 10月 2009年 09月 2009年 07月 2009年 05月 2009年 04月 2009年 03月 2009年 02月 2009年 01月 2008年 11月 2008年 10月 2008年 08月 2008年 07月 2008年 06月 2008年 05月 2008年 04月 2008年 02月 2007年 12月 2007年 11月 2007年 10月 2007年 07月 2007年 06月 2007年 05月 2007年 04月 2007年 03月 2007年 02月 2006年 11月 2006年 10月 2006年 09月 2006年 08月 2006年 07月 2006年 06月 2006年 05月 2006年 04月 2006年 03月 2006年 02月 お気に入りブログ
検索
最新のコメント
最新のトラックバック
ファン
| ||||||||||||||||||||||||||||||||||