iPhoneアプリにAboutBoxを実装

公開日: : 最終更新日:2010/07/13 iPhone, My Apps

iPhoneアプリにAboutBoxを実装するためのメモ。

今回、自分のiPhoneアプリにAboutBoxを追加してみることにした。追加の理由は2つ。

  • 無料版から多少でも収益を得るために、Admobを追加したかった。(そもそも使ってみたかったのもあるが)
  • 無料版と比べて有料版のダウンロードが少ないので、有料版への導線を増やしたかった

スクリーンショット(2010-01-10 5.52.39).png

Admob はアプリのメイン画面に入れるのが一番効果は高いのだと思うが、画面が狭くなるしうざいのでAboutBoxにのみ入れることにした。実装には、下記を参照した。

  

Admobはサイズ320×48 で固定。 広告を入れたり、他のAdmob登録アプリを紹介したりできる。その割合は管理ページで調整ができる。結構良くできていると思った。

ただ、なぜかよくロードに失敗する。ちゃんとAdmobの説明通りに実装しているのだが。(上記のコードで一言。のやり方と同じ)

Admob 対応の次は、自分のアプリへの導線を増やすために、有料版の App Store のURLと自分のWebページへのリンクをAboutBoxに追加した。

最初、AppleのQA1629の方法1を使っていたのだが、どうもURLの仕様が変わったようで現在は使えないようだ。方法1とは、iTunes 上でアプリアイコンを右クリックしてURLを取得し、取得したURLの itunes の部分を phobos に変更するもの。 QA1629 では、http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=284417350&mt=8 が例としており、それはAppleのRemoteだが、Remoteを今iTunesでURLを取得すると、http://itunes.apple.com/us/app/remote/id284417350?mt=8 になりこれを phobos に変更するとページが見つかりませんエラーになる。
仕方がないのでphobosに変えるのはあきらめてiTunesで取得できるURLそのままを使用したところ、iPhone Simulatorではエラーが発生して開けない。ただ、実機だと問題なく開けるので、これはSimulator特有の問題なのかも知れない。

直接関係ないが、この作業をしている間に、iTunes Link Maker なるものを初めて知った。iTunes 上のコンテンツを表示するためのHTMLを生成するツールのようだ。

文字列に下線を入れてクリックして指定したURLに飛べるようにする実装だが、当初UILabelか何かにサポートがあるかと思ったらどうやらないようで、いろいろ試行錯誤したが結局UIButtonをCustomにして枠を表示しないようにするだけでそれっぽく表示できたのでそれで済ませた。

Webページ自体はWebViewを使うほどでもないと思ったので Safari を起動して開くことにした。コードは書くまでもないけれどこんな感じ。

 -(IBAction) openOnpuURL:(id)sender { NSString *str = NSLocalizedString(@"http://itunes.apple.com/us/app/id%d?mt=8", @"OnpuURL"); NSURL *target = [[NSURL alloc] initWithString:[NSString stringWithFormat:str, OnpuAppID]]; [[UIApplication sharedApplication] openURL:target]; } 

AboutBox 自体は、UIViewControllerの navigationItem に UIButtonTypeInfoLight のボタンを追加して、そこから呼ばれた関数内で presentModalView することで表示した。

 UIButton* infoButton = [UIButton buttonWithType:UIButtonTypeInfoLight]; [infoButton addTarget:self action:@selector(showInfoView:) forControlEvents:UIControlEventTouchUpInside]; self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:infoButton]; 

<br />
// AboutBox 表示<br />
-(void)showInfoView:(id)sender {<br />
<br />
InfoViewController *controller = [[InfoViewController alloc] initWithNibName: @"InfoViewController" bundle: nil];<br />
// controller.delegate = self;<br />
<br />
controller.modalTransitionStyle = UIModalTransitionStyleCoverVertical;<br />
<br />
[self presentModalViewController: controller animated: YES];<br />
[controller release];<br />
}<br />

Submit したアプリは現在審査中。

関連記事

no image

インド式計算マスター

最近朝起きたらやっているアプリ。 これはいい。今まで全く知らなかったインド式計算がいつの日かマスター

記事を読む

[Apple Watch] EverLearn 1.9.7 Release

初の Apple Watch 対応アプリ EverLearn 1.9.7 をリリースしました。間違え

記事を読む

iPhone X simulator が表示されない

dyld: dyld_sim is not compatible with the loaded p

記事を読む

no image

[iPhone SDK] sqlite 学習中。FMDB を知る。

SQLite入門 第2版西沢 直木 翔泳社 2009-05-19売り上げランキング : 17582

記事を読む

no image

Kickstarter で iPhone/Android で使える腕時計 Pebble に出資してみた

Kickstarter で28時間で100万ドルを調達したという Pebble E-Pape

記事を読む

[iOS8] BlocksKit で不具合発生

iOS8 にアップデートしたところ、BlocksKit の UIAlertView と UI

記事を読む

no image

[iPhone SDK] アクションメソッドの種類

UIKitのコントローラは、3種類のメソッドで呼び出すことができる。 いつもこれを忘れてしまうので、

記事を読む

ついにうちにもジェットブラックが来た。

予約から1ヶ月、ようやくうちにもiPhone 7 Plus ジェットブラックがきた。(2016/10

記事を読む

Jony Ive: The Genius Behind Apple’s Greatest Products

Jony Ive: The Genius Behind Apple's Greatest Produ

記事を読む

no image

LogLocations iOS7 不具合調査 (startMonitoringSignificantLocationChanges 挙動変更)

LogLocations のユーザの方から、iOS7 になってからLogLocationsでログが保

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

iPad 第7世代がほしい

自分は iPad mini 4 を使っているが、これだと画面

.heicファイルをAutomatorで変換する

iPhone 11 Pro Maxで撮った写真をいつものようにAir

macOS用BDドライブを購入

子どもの学芸会を撮影したので、実家の親にDVDを送ろうと思い

watchOS6でWKRefreshBackgroundTaskが動かない

自作アプリ Watch Battery Loggerの改良版を作って

Xcode 11.2 Release

Xcode 11.2 がようやくリリースされた。これにより、

→もっと見る

  • 2010年1月
    « 12月   2月 »
     123
    45678910
    11121314151617
    18192021222324
    25262728293031
PAGE TOP ↑