Submit Search
Upload
落ちないアプリ開発の仕組み
•
Download as PPTX, PDF
•
2 likes
•
1,834 views
Kazunari Ebihara
Follow
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 18
Download now
Recommended
『メルカリ』のアップデート監視 を支える(かもしれない)技術
『メルカリ』のアップデート監視 を支える(かもしれない)技術
Shinobu Okano
Rakus MeetUp 正攻法はあるのか!?泥臭く戦ったNode.jsバージョンアップ一部始終
Rakus MeetUp 正攻法はあるのか!?泥臭く戦ったNode.jsバージョンアップ一部始終
masatonishihara
JobScheduler Code Reading
JobScheduler Code Reading
Shinobu Okano
Laravel5.1 Release
Laravel5.1 Release
Yuuki Takezawa
QA improvement
QA improvement
Sadaaki Emura
Jenkinsではじめる継続的インテグレーション
Jenkinsではじめる継続的インテグレーション
Masanori Satoh
Jenkins+Play!で気軽にCI
Jenkins+Play!で気軽にCI
Takafumi Ikeda
隕石という名のスクリーンショットをSlackに落下させる話
隕石という名のスクリーンショットをSlackに落下させる話
Shinobu Okano
Recommended
『メルカリ』のアップデート監視 を支える(かもしれない)技術
『メルカリ』のアップデート監視 を支える(かもしれない)技術
Shinobu Okano
Rakus MeetUp 正攻法はあるのか!?泥臭く戦ったNode.jsバージョンアップ一部始終
Rakus MeetUp 正攻法はあるのか!?泥臭く戦ったNode.jsバージョンアップ一部始終
masatonishihara
JobScheduler Code Reading
JobScheduler Code Reading
Shinobu Okano
Laravel5.1 Release
Laravel5.1 Release
Yuuki Takezawa
QA improvement
QA improvement
Sadaaki Emura
Jenkinsではじめる継続的インテグレーション
Jenkinsではじめる継続的インテグレーション
Masanori Satoh
Jenkins+Play!で気軽にCI
Jenkins+Play!で気軽にCI
Takafumi Ikeda
隕石という名のスクリーンショットをSlackに落下させる話
隕石という名のスクリーンショットをSlackに落下させる話
Shinobu Okano
ドリコムJenkins勉強会資料
ドリコムJenkins勉強会資料
Go Sueyoshi (a.k.a sue445)
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
Yahoo!デベロッパーネットワーク
Trac Plugin Developement with Jenkins
Trac Plugin Developement with Jenkins
Takahisa Wada
テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1
Hiro Yoshioka
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
CROOZ, inc.
OSC福岡 20111203
OSC福岡 20111203
Hiroshi Bunya
大規模ソフトウェア開発とテストの経験について
大規模ソフトウェア開発とテストの経験について
Rakuten Group, Inc.
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
terurou
リモート・スマホ・レンタル(第2回 Androidテスト祭り)
リモート・スマホ・レンタル(第2回 Androidテスト祭り)
NTT Resonant Technology Inc.
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
Yoshihisa Ozaki
第5回札幌SoftLayer勉強会資料_20150311
第5回札幌SoftLayer勉強会資料_20150311
潤 川岡
Androidアプリ開発のテスト環境
Androidアプリ開発のテスト環境
Toshiyuki Hirata
バージョン管理勉強会
バージョン管理勉強会
Hiroaki Murayama
超簡単!バージョン管理入門 最初の一歩
超簡単!バージョン管理入門 最初の一歩
Shin Tanigawa
Gitと出会って人生変わった テックヒルズ2013-03-22
Gitと出会って人生変わった テックヒルズ2013-03-22
Shota Umeda
作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく
Ryo Mitoma
Sansan における Android アプリ自動テスト導入事例
Sansan における Android アプリ自動テスト導入事例
健一 辰濱
nGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テスト
JunHo Yoon
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング
Kiyokazu Kaba
バージョン管理の断捨離
バージョン管理の断捨離
Kazushi Kamegawa
More Related Content
Similar to 落ちないアプリ開発の仕組み
ドリコムJenkins勉強会資料
ドリコムJenkins勉強会資料
Go Sueyoshi (a.k.a sue445)
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
Yahoo!デベロッパーネットワーク
Trac Plugin Developement with Jenkins
Trac Plugin Developement with Jenkins
Takahisa Wada
テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1
Hiro Yoshioka
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
CROOZ, inc.
OSC福岡 20111203
OSC福岡 20111203
Hiroshi Bunya
大規模ソフトウェア開発とテストの経験について
大規模ソフトウェア開発とテストの経験について
Rakuten Group, Inc.
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
terurou
リモート・スマホ・レンタル(第2回 Androidテスト祭り)
リモート・スマホ・レンタル(第2回 Androidテスト祭り)
NTT Resonant Technology Inc.
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
Yoshihisa Ozaki
第5回札幌SoftLayer勉強会資料_20150311
第5回札幌SoftLayer勉強会資料_20150311
潤 川岡
Androidアプリ開発のテスト環境
Androidアプリ開発のテスト環境
Toshiyuki Hirata
バージョン管理勉強会
バージョン管理勉強会
Hiroaki Murayama
超簡単!バージョン管理入門 最初の一歩
超簡単!バージョン管理入門 最初の一歩
Shin Tanigawa
Gitと出会って人生変わった テックヒルズ2013-03-22
Gitと出会って人生変わった テックヒルズ2013-03-22
Shota Umeda
作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく
Ryo Mitoma
Sansan における Android アプリ自動テスト導入事例
Sansan における Android アプリ自動テスト導入事例
健一 辰濱
nGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テスト
JunHo Yoon
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング
Kiyokazu Kaba
バージョン管理の断捨離
バージョン管理の断捨離
Kazushi Kamegawa
Similar to 落ちないアプリ開発の仕組み
(20)
ドリコムJenkins勉強会資料
ドリコムJenkins勉強会資料
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
Trac Plugin Developement with Jenkins
Trac Plugin Developement with Jenkins
テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
OSC福岡 20111203
OSC福岡 20111203
大規模ソフトウェア開発とテストの経験について
大規模ソフトウェア開発とテストの経験について
DLR言語によるSilverlightプログラミング
DLR言語によるSilverlightプログラミング
リモート・スマホ・レンタル(第2回 Androidテスト祭り)
リモート・スマホ・レンタル(第2回 Androidテスト祭り)
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
第5回札幌SoftLayer勉強会資料_20150311
第5回札幌SoftLayer勉強会資料_20150311
Androidアプリ開発のテスト環境
Androidアプリ開発のテスト環境
バージョン管理勉強会
バージョン管理勉強会
超簡単!バージョン管理入門 最初の一歩
超簡単!バージョン管理入門 最初の一歩
Gitと出会って人生変わった テックヒルズ2013-03-22
Gitと出会って人生変わった テックヒルズ2013-03-22
作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく
Sansan における Android アプリ自動テスト導入事例
Sansan における Android アプリ自動テスト導入事例
nGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テスト
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング
バージョン管理の断捨離
バージョン管理の断捨離
落ちないアプリ開発の仕組み
1.
■目的 落ちないアプリ開発の仕組みを作る
2.
■内容 ①新Version申請前に必ず行うべきこと ②新Versionリリース後に必ず行うべきこと ③メモリー?ロジック?落ちバグの切り分け方 ④メモリーで落ちてる際の対応方法 ⑤意外と知らない便利な機能
3.
落ちないアプリを作るために 新Versionを申請する前 に必ずやること
4.
①本番環境に繋いでテストする ┗テスト環境で終了後、エンジニアに許可取ってから、 最終的には、変更箇所を本番でテストしてください。 ネイティブだけの変更なら、基本は問題ないです。 落ちたらcrashlyticsでログ追ってください。 ②本番に近いサーバー状態でテストする ┗本番のデータをダンプして、dev環境に持ってくるなど、 データがおかしいから落ちる、という状態は絶対に作らない。 テスト前にエンジニアと環境に関して、密に話してほしいです ~サーバーversion変わらないなら~ ~サーバーversion変わるなら~
5.
~サーバーversionとか関係なく必ず行うこと~ ①申請前チェックリストは必ず確認 http://wiki.applibot.co.jp/pages/viewpage.action?pageId=6164337 ②強化済ユーザでギルバトを8vs8以上で行う ┗ギルバトに変更なくても、必ず行ってください。 サーバーver上がらない ⇒ 本番環境 サーバーver上がる
⇒ テスト環境 テスト時は、企画職の責任者やエンジニアも出席させてください。 エンジニアはXcode上でプレイして貰ってOKです。(ログすぐ取れる) ③新機能実装時はLeaksでリーク確認 ┗エンジニアが機能実装完了時に、 instrumentsのLeaksでリーク箇所を検出してください 当たり前ですが、リークが多いほど落ちやすくなります
6.
落ちないアプリを作るために 新Versionをリリースした後 に必ずやること
7.
crashlyticsのログ増加量を追う ┗リリース後にcrashlytics上で増えている数の変化を確認。 優先順位を付けて、JIRA化し、次回申請時までに どこまで直すかを決め、実行していく。 ※本番で起きている不具合の原因も特定できます ディレクターは1日5回以上、 crashlytics見た方が良いかと思います。 P、エンジニアと相談して、優先順位を決めて下さい
8.
メモリーで落ちているか ロジックで落ちているか の切り分け方 How to 1
9.
本番、デバッグ関係なく これってメモリで落ちてるの? それともロジックで落ちてるの? ってなったら・・・ How to 1
10.
①crashlyticsのログを見る ┗再現してみて、その落ちログが crashlyticsに届いていればロジック修正が必要 ※メモリー落ちの場合、 crashlyticsにログ届きません ※メール来ないことがあるので、管理画面で確認 ②iFunboxのログをエンジニアに渡す ┗落ちたらデバッガーにiFunboxでログを取得して貰い、 エンジニアにそのログをみて貰い、原因を判断してもらう ※基本は①をエンジニアと確認するのが無難です How to
1
11.
メモリーで落ちている場合 の対処の仕方 How to 2
12.
How to 2 ①もう一度「本当にメモリー?」と疑う ┗何でもメモリーのせいにしない ②何をするとメモリを多く消費しているか、 原因をXcode上で数字で把握する ③原因が分かったら、対応方針を決める
13.
How to 2 ~メモリー消費の減らし方~ ①周辺機能のメモリーリークを全て潰す ┗Leaksでエンジニアに確認してもらってください。リークの数だけ落ちやすくなります ②CCBを細かく分割する(アニメを使うシーンに遷移しようとして落ちてる場合) ┗1つのCCBに大量のタイムラインを持たせると、読み込み時に無駄にメモリ食います 必要なタイミングでCCBを呼ぶ実装にする ③パーティクルの使用量を減らす ┗パーティクルは使わなかった時に比べ、使用時は4~5倍メモリ食います。 アニメーション作成時に注意して貰ってください (例)ガチャ演出、ギルバトのユニークアビ演出など ④必要なタイミングで取ってくる実装を意識 ┗ギルバトに入ろうとして落ちるのは、(頻繁に使わないものも)入る際に一気に読んでいるためでした。 スナイパーチャンスなど、頻繁に使わないものは都度持ってきて、使用後はクリアして貰ってください。 企画が仕様を伝える際に、メモリのことを軽く触れると良いと思います。 (例)「この機能は頻繁に使わないので、都度呼んでもいいかも」と相談する ⑤アニメの画像素材に無駄がないかを確認する ┗ケイオスの場合、アバターのpngに「いずれ、相手が攻撃してくるときの実装が入るときの為の余分なアバター画像」が入ってました。 呼んでいる画像素材にも無駄がないかを確認してください。 ※①~⑤、全て定量的に変化を追えるようにしておいてください
14.
意外と知らない便利な機能 How to 3
15.
①デバッグメニュー 【ケイオス】 ギルバトの攻撃エフェクトの消費メモリー数が 分かる機能がある 【ケイオス・ギャング】 アバターの消費メモリー数が分かる機能がある ②メモリ圧迫アプリについて アンドロイドにはメモリを圧迫してる状態に出来 るアプリがある ⇒ケイオスで使用中 How to 3
16.
Crashlyticsの見方 おまけ
17.
1 2 3 4 5 =
プロジェクト設定 = バージョンでソート = ステータスでソート 1 2 3 4 = 発生時間でソート 5 = 発生時間が分かる 6 6 = 原因を確認できる おまけ
18.
■これからやりたいこと アバターや攻撃エフェクト作成時の メモリに関するレギュレーションづくり
Download now