そんな時、itunestoreのアップデートのお知らせ機能以外に
アプリ内からアップデートをするように促す方法を以下にまとめます。



上記のように、アラートを表示してOKボタンを押下すると、ituneStoreへ遷移します。

Google App Engine でバージョン管理するテーブルを作成します。
1.GQLで降順でデータを一番目だけ取得します。
http://xxx.appspot.com/xxx/rest/page_size=1&ordering=-ver
2. XMLを取得します
TBXMLで取得してます。
例)XMLデータ
<versiontables>
<version>1.4</version>
<comment>データ取得スピード****</comment>
</versiontables>
TBXMLElement* versionsElement = [TBXML childElementNamed:@"versionTables" parentElement:element];
while(versionsElement != nil)
{
// 取得したいエレメントを入れる
TBXMLElement* version = [TBXML childElementNamed:@"vertion" parentElement:versionsElement];
if(version != nil)
{
[*aVersion setVer:[[TBXML textForElement:version] floatValue]];
}
TBXMLElement* content = [TBXML childElementNamed:@"comment" parentElement:versionsElement];
if(content != nil)
{
[*aVersion setContent:[TBXML textForElement:content]];
}
// find the next sibling element
versionsElement = [TBXML nextSiblingNamed:@"versionTables" searchFromElement:versionsElement];
}
3. plistのバージョンと比較して、最新バージョンがあればアラート表示
if([[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"] floatValue]
cancelButtonTitle:nil
otherButtonTitles:@"OK",nil];
[alertView show];
[alertView release];
}
4. itunestoreへ遷移します。
NSString* urlString = [NSString stringWithString:@"http://itunes.com/apps/アプリ名"];
NSURL* url= [NSURL URLWithString:urlString];
[[UIApplication sharedApplication] openURL:url];
このやり方で行えば、plistからバージョン取得とituneに飛ばす所をandroid用に変えれば
サーバ側は、何も変更せず対応が可能です。
android版とiphone版をそれぞれのバージョンを管理する場合、カラムを[oskind]というようなものを用意して、対応することも可能でしょう!
※android でバージョン情報取得方法
Build.VERSION.RELEASE
・・・ユーザーに表示するバージョン番号
0 件のコメント:
コメントを投稿