Skip to content

Instantly share code, notes, and snippets.

@misyobun misyobun/ポテチ
Created Feb 18, 2015

Embed
What would you like to do?
ポテチ発表スライド
### アプリのバージョンアップについて
-: 【第14回】potatotips(iOS/Android開発Tips共有会) -:
-: @misyobun -:
![~: ^xs](http://storyboards.heteml.jp/100001658439168/____.jpg)
```stobo
page: true;
like-text: 'Android最高';
```
***
# :point_up_2: 初めに!
スライド上でダブルクリックすると「Android最高」ができます。
http://goo.gl/0VIl6U
***
# -: ロリポタッチ+ -:
![~: ^l](http://adhock.sakura.ne.jp/mo/lp001.png)
***
# -: minne -:
![~: ^l](http://adhock.sakura.ne.jp/mo/minne_app.png)
***
# 致命的なバグの修正をしたバージョンをリリースした!
***
# でも実際、ユーザのアップデート率はそんなに高くない
***
## 初期バージョンを使い続けるユーザは結構存在する
***
## 致命的なバグが存在するアプリを使い続けるユーザからのレビュー
![](http://storyboards.heteml.jp/100001658439168/review2.png)
(アップデートしてーー!)
***
## アプリのリリース時からバージョンアップを促す仕組みを導入しておきたい!
(コントロールできる運用体制の確立)
***
# 強制版
![^l](http://adhock.sakura.ne.jp/mo/force1.png)
(本当に致命的なバグを修正した時に表示する)
***
# 任意版
![^l](http://adhock.sakura.ne.jp/mo/opriona1.png)
(別にそこまで致命的ではない時に表示する)
***
## アプリ起動時に静的なJSONファイルへリクエスト
```
{"required_version":"2.7.9","type":"optional","update_url":"https://play.google.com/store/apps/details?id=jp.co.paperboy.minne.app"}
```
###type
- force (強制)
- optional (任意)
***
# 3行書くだけでこの仕組みを導入できるライブラリを作った
***
# MSBVersionUpdater
![ ^l](http://adhock.sakura.ne.jp/mo/msb2.png)
***
# MSBVersionUpdater
![ ^l](http://adhock.sakura.ne.jp/mo/msb1.png)
***
# gradleファイルに以下を追記
```
dependencies {
compile 'jp.co.misyobun.lib.versionupdater:versionupdater:1.0.0'
}
```
***
# SRGVersionUpdater
iOSのライブラリをベースにしています!
[https://github.com/kazu0620/SRGVersionUpdater](https://github.com/kazu0620/SRGVersionUpdater)
***
![ ^l](http://adhock.sakura.ne.jp/mo/inspore.jpg)
***
# 今後対応しないといけないこと
### forceのバージョンをアップデートしないまま、次のバージョンがoptionalになった場合
### 直近のforceバージョン情報をjsonに追記してバージョンアップを促す必要がある
***
# 結論
## アプリのリリース時からバージョンアップを促す仕組みを導入すると良い
***
# オススメのAndroid本
![ ^xl](http://adhock.sakura.ne.jp/mo/image2.jpg)
***
***
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.