質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

Q&A

解決済

3回答

6726閲覧

xcode9のiosビルドができない 実機で確認しようとするとアプリが落ちてしまう

neuro_su

総合スコア13

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

0グッド

0クリップ

投稿2018/06/17 14:45

編集2018/07/03 11:22

Xcode9のArchiveでipaファイルを作成しているのですが、
iPhone5sでの実機確認をすると落ちてしまいます。
ですがiPhone7で実機の確認はできます。
ちなみにiPhone5sのシミュレーターでは確認できました。
Xcode9は5sまで対応していると聞いたのですが何か設定が必要でしょうか?

端末情報は
iPhone5s iOS11.1.2
iPhone7 iOS11.4です。

Xcode9のiOSDeploymentTargetはiOS8.0で設定しています。

下記にクラッシュログとdidFinishLaunchingWithOptionsの処理を書いています。

Incident Identifier: 43E8015D-9BF8-4128-841C-9B7D5AC2F8E1 CrashReporter Key: 916fc5e60ceb5c11b042eca748d4521249d5b115 Hardware Model: iPhone,1 Process: MyApp [1377] Path: /private/var/containers/Bundle/Application/D9C036AE-937E-42A9-AF8A-70EC3BC3E949/MyApp.app/MyApp Identifier: Version: 1.0.0 (999.0.17) Code Type: ARM-64 (Native) Role: Foreground Parent Process: launchd [1] Coalition: [1351] Date/Time: 2018-07-03 11:38:55.8189 +0900 Launch Time: 2018-07-03 11:38:35.5416 +0900 OS Version: iPhone OS 11.4 (15F79) Baseband Version: 8.55.00 Report Version: 104 Exception Type: EXC_CRASH (SIGKILL) Exception Codes: 0x0000000000000000, 0x0000000000000000 Exception Note: EXC_CORPSE_NOTIFY Termination Reason: Namespace SPRINGBOARD, Code 0x8badf00d Termination Description: SPRINGBOARD, scene-create watchdog transgression: exhausted real (wall clock) time allowance of 19.81 seconds | | ProcessVisibility: Foreground | ProcessState: Running | WatchdogEvent: scene-create | WatchdogVisibility: Foreground | WatchdogCPUStatistics: ( | "Elapsed total CPU time (seconds): 35.710 (user 35.710, system 0.000), 89% CPU", | "Elapsed application CPU time (seconds): 18.055, 45% CPU" | ) Triggered by Thread: 0 Filtered syslog: None found Thread 0 name: Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0 MyApp 0x00000001007cfd08 lj_str_new + 260 1 MyApp 0x00000001007d2534 lj_meta_cat + 392 2 MyApp 0x00000001007ca568 lj_BC_CAT + 32 3 MyApp 0x00000001007de3b4 lua_pcall + 164 4 MyApp 0x000000010063bfac cocos2d::LuaStack::executeFunction+ 769964 (int) + 172 5 MyApp 0x000000010063c0a4 cocos2d::LuaStack::executeFunctionByHandler+ 770212 (int, int) + 76 6 MyApp 0x0000000100638e30 cocos2d::LuaEngine::handleNodeEvent+ 757296 (void*) + 268 7 MyApp 0x0000000100c021b8 cocos2d::ScriptEngineManager::sendNodeEventToLua+ 6824376 (cocos2d::Node*, int) + 104 8 MyApp 0x00000001009469b0 cocos2d::Director::setNextScene+ 3959216 () + 236 9 MyApp 0x00000001009466e4 cocos2d::Director::drawScene+ 3958500 () + 112 10 MyApp 0x0000000100c09ac4 -[CCEAGLView layoutSubviews] + 172 11 UIKit 0x000000018da976f4 -[UIView+ 308980 (CALayerDelegate) layoutSublayersOfLayer:] + 1420 12 QuartzCore 0x000000018800dfec -[CALayer layoutSublayers] + 184 13 QuartzCore 0x000000018801217c CA::Layer::layout_if_needed+ 1208700 (CA::Transaction*) + 324 14 QuartzCore 0x0000000187f7e830 CA::Context::commit_transaction+ 604208 (CA::Transaction*) + 320 15 QuartzCore 0x0000000187fa6364 CA::Transaction::commit+ 766820 () + 580 16 UIKit 0x000000018de81680 __34-[UIApplication _firstCommitBlock]_block_invoke_2 + 140 17 CoreFoundation 0x0000000183e2f2bc __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 20 18 CoreFoundation 0x0000000183e2ea7c __CFRunLoopDoBlocks + 264 19 CoreFoundation 0x0000000183e2c7b0 __CFRunLoopRun + 1224 20 CoreFoundation 0x0000000183d4cda8 CFRunLoopRunSpecific + 552 21 GraphicsServices 0x0000000185d31020 GSEventRunModal + 100 22 UIKit 0x000000018dd69758 UIApplicationMain + 236 23 MyApp 0x00000001005d4de4 main + 347620 (main.m:13) 24 libdyld.dylib 0x00000001837ddfc0 start + 4
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { cocos2d::Application *app = cocos2d::Application::getInstance(); // Initialize the GLView attributes app->initGLContextAttrs(); cocos2d::GLViewImpl::convertAttrs(); // Override point for customization after application launch. // Add the view controller's view to the window and display. window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bounds]]; // Use RootViewController to manage CCEAGLView _viewController = [[RootViewController alloc]init]; //_viewController.wantsFullScreenLayout = YES; _viewController.extendedLayoutIncludesOpaqueBars = YES; // Set RootViewController to window if ( [[UIDevice currentDevice].systemVersion floatValue] < 6.0) { // warning: addSubView doesn't work on iOS6 [window addSubview: _viewController.view]; } else { // use this method on ios6 [window setRootViewController:_viewController]; } [window makeKeyAndVisible]; [[UIApplication sharedApplication] setStatusBarHidden:true]; // IMPORTANT: Setting the GLView should be done after creating the RootViewController cocos2d::GLView *glview = cocos2d::GLViewImpl::createWithEAGLView((__bridge void *)_viewController.view); cocos2d::Director::getInstance()->setOpenGLView(glview); //run the cocos2d-x game scene app->run(); return YES; }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2018/06/28 05:45

どういうタイミングで落ちるのでしょうか?落ちた後、Consoleで bt と入力して出力されるログを書いて下さい。
neuro_su

2018/06/28 06:18

すいません、Consoleがどこで確認出来るかわからず、教えて頂くことは出来ませんでしょうか?
fuzzball

2018/06/28 06:28

Xcodeの下部にあるDebug areaです。表示されていなければ Shift + Command + C で表示されます。Debug areaの右下にVariables ViewとConsoleの切り替えスイッチがありますので、Consoleを表示させて下さい。(落ちた状態で、文字を打ち込める方がConsoleです)
neuro_su

2018/07/02 01:55

すいません、確認をしたらiPhone5Sの実機デバッグでは正常にアプリは動作しました。Consoleも正常に動いてました。問題は実際にipaファイルを作り、端末にインストールして確認をしようとすると落ちてしまいます。
fuzzball

2018/07/02 02:04

それだとクラッシュログを見るしか無さそうですが‥。Xcode上で、Releaseビルドで実行すると落ちないでしょうか?
neuro_su

2018/07/03 01:04

Xcode上で、Releaseビルドで実行しても落ちませんでした。
fuzzball

2018/07/03 07:25 編集

「端末にインストールして確認をしようとすると落ちてしまいます」ということは、何も画面に表示されていない状態なのでしょうか?LaunchImageも表示されないですか?もひとつ、Cocos-2d使ってます?
neuro_su

2018/07/03 07:53

LaunchImageは表示されます。ですがその後落ちてしまいます。開発環境はCocos-2dxを使用しています。
guest

回答3

0

ベストアンサー

回答に対するコメントの中で断片的に示されているクラッシュログ情報の中に

Exception Type: EXC_CRASH (SIGKILL)

と書かれていて、SIGKILLでクラッシュしていることから、
自分の処理の不具合でエラーが発生したのではなく、
システムに強制的に停止させられたような感じがします。

よくあるのは、アプリがメモリを使いすぎて、システムに
アプリを強制停止されられたケースです。
シミュレータや最新機種では発生しないが少し古い実機だけ
発生するというのもメモリの使いすぎを疑うべき状況だと思います。

せめてクラッシュログの先頭からThread 0の情報あたりまでの
情報を全部開示しないと、勝手に抜粋した断片的な情報を
見せられても何もわからないと思います。


(7/3 17:53回答追記)

追記してもらったクラッシュログを確認しました。

Termination Reasonに「Namespace SPRINGBOARD, Code 0x8badf00d」と書かれていますので、これがクラッシュした原因です。このメッセージをコードの値含めてそのままWebで検索するといろいろ情報が見つかります。

次の記事が日本語で解説されているのでわかりやすいと思います。

http://cocoadays.blogspot.com/2011/02/ios.html

つまり、起動に時間がかかりすぎている(=didFinishLaunchingWithOptionsの処理に時間がかかりすぎている)ため、SPRINGBOARDというシステムモジュールがアプリを強制的に停止させたということです。

おもしろいことに、この記事によると、0x8badf00dというコードは、この数値のビット構成に意味があるのではなく「Ate Bad Food」の略だとのこと! Appleの開発者はダジャレでこんなことするんですね。

Termination Description欄にさらに詳しい情報がありますが、
「"Elapsed total CPU time (seconds): 35.710 (user 35.710, system 0.000), 89% CPU", | "Elapsed application CPU time (seconds): 18.055, 45% CPU"」
という情報は、起動に35秒もかかっていて、そのうちアプリが18秒も使っているいう意味なのだと思います。
(これだけ見せられてもなんの処理の秒数なのかわかりませんが、Termination Reasonで示された原因についての詳しい情報だということがわかれば意味もわかってきます。)

また、記事によると、Xcodeを経由しての実機デバッグ実行時はこの制限が外れるとのことで、Xcode上で実機動作確認しても落ちないという現象とも一致しています。

実機のiPhone5sでどうしてdidFinishLaunchingWithOptionsの処理に時間がかかるのかを調べて、その対策をすればいいと思います。

投稿2018/07/03 07:04

編集2018/07/03 08:55
TakeOne

総合スコア6299

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

neuro_su

2018/07/03 08:09

そうですよね…すいません。 本文のほうにクラッシュログのThread 0あたりまでを明記しました。 ご確認の程よろしくお願いいたします。
TakeOne

2018/07/03 08:55

クラッシュログを見て回答を追記しておきました。
neuro_su

2018/07/03 10:55 編集

didFinishLaunchingWithOptionsの中身を修正するのでしょうか? didFinishLaunchingWithOptionsの処理の中身を理解していないので何を編集すればよいか分かりません… その他didFinishLaunchingWithOptionsの重さが分かるデバッグ方法などがありましたらご教授頂きたいです。 didFinishLaunchingWithOptionsの処理を本文に追加しました。
TakeOne

2018/07/03 14:48 編集

> didFinishLaunchingWithOptionsの処理の中身を理解していないので何を編集すればよいか分かりません… じゃあ勉強して理解したらいいんじゃないですか? たぶんdidFinishLaunchingWithOptionsそのものよりも、didFinishLaunchingWithOptionsから呼び出される初期化処理(自分が書いた処理)に問題があるのだと思うので、didFinishLaunchingWithOptionsから何が呼び出されて自分が書いた処理がどう動いているのかを最低限理解しないと、原因を調べるのは無理だと思います。 私はcocos-2dを使ったことないのでアドバイスできませんし、使うつもりもないものを調べてアドバイスするつもりもありませんが、クラッシュログのThread0呼び出し状況から、たぶんcocos-2dを使ってluaのスクリプトを書いていて、そのスクリプトに問題があるのではないかと想像します。
fuzzball

2018/07/04 00:33

とりあえず各処理の間にNSLog突っ込んで重い処理を突き止めましょう。
neuro_su

2018/07/23 00:52

ありがとうございます! おかげで改善をすることが出来ました。
guest

0

以前クラッシュログの見方について回答をしたのですがこちらは参考にできませんか?
スタックトレースと何で落ちたかの理由が大抵は書かれているのですが。

iOSにはじかれてアプリが起動すらしていないならちょっと事情は異なりますが。

投稿2018/06/27 16:00

toki_td

総合スコア2850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

neuro_su

2018/06/28 05:33

リンク先を参考にさせて頂きました。 こちらの部分が原因なのでしょうか? Exception Type: EXC_CRASH (SIGKILL) 0 MyApp 0x00000001016353a8 gc_sweep + 88 1 MyAPP 0x00000001016356c8 gc_onestep + 388 2 MyApp 0x00000001016354ac lj_gc_step + 92 3 MyApp 0x000000010163a868 lj_meta_cat + 800 4 MyApp 0x0000000101632438 lj_BC_CAT + 32 5 MyApp 0x00000001016466c4 lua_pcall + 164 6 MyApp 0x000000010149ffb4
toki_td

2018/06/28 14:35

luaでスクリプトを組み込んでるんですかね? この辺は詳しくないですが関数名からの予想だとガーベージコレクションの途中で落ちてる?ように思いますが、、、、 インタプリタで動かしてますか?それともコンパイル済みのバイトコードを埋め込んでます? これってiPhone5Sで実機デバッグした場合は発生しないんですか?
neuro_su

2018/07/03 01:06

すいません…インタプリタやコンパイル済みのバイトコード埋め込みなどがいまいち分かっておりません。どう言う意味でしょうか?またその確認方法などもあれば教えて頂けないでしょうか? iPhone5Sで実機デバッグした場合は発生しませんでした。
guest

0

落ちるのであれば、クラッシュログが出力されていると思いますのでその記載内容を確認してはいかがでしょうか。

投稿2018/06/18 01:20

YasuhiroMiyake

総合スコア1336

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

neuro_su

2018/06/18 10:55

/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash クラッシュファイル名 アプリ名.app.dSYM アプリ名.app > crash2.log このpathでcrash.logを作成したのですが、中を見ると白紙でした…
YasuhiroMiyake

2018/06/19 00:22

端末内のログをXCodeで確認出来ると思いますが、symbolicateする前のログは存在しますか。
neuro_su

2018/06/19 01:41

はい、アプリ名.crashという名前で存在しています。 ですがお恥ずかしい話、見方が分からず、 何処が原因か見当がつきません…
neuro_su

2018/06/19 10:35

自分の設定ミスでログが白紙だったようです… 正常にログの出力ができたのですが、 アプリ名.crashと全く同じログが出てきました。
YasuhiroMiyake

2018/06/19 10:49

ログの読み方は一言では難しいです。 クラッシュの原因となっているスレッドがあると思うので、まずは先頭から読んでどのスレッドでクラッシュしているのかを確認して下さい。
neuro_su

2018/06/22 00:05

ここのログが怪しいと思うのですがどうでしょうか? Thread 0 crashed with ARM Thread State (64-bit): x0: 0x000000010172c378 x1: 0x00000001051d4010 x2: 0x000000000008752f x3: 0x000000010525b53f x4: 0x000000010090a364 x5: 0x0000000000000019 x6: 0x000000000000005d x7: 0x0000000000000000 x8: 0x00000000ffbc56a8 x9: 0x00000000fff78ad1 x10: 0x00000000ffe17e28 x11: 0x000000000004a4f0 x12: 0x0000000104784030 x13: 0x000000000004a4f0 x14: 0x000000006b736174 x15: 0x7d7d7d22223a2265 x16: 0x0000000182f95ab0 x17: 0x0000000000000005 x18: 0x0000000000000000 x19: 0x000000010172c378 x20: 0x00000001051d4010 x21: 0x000000000008752f x22: 0x000000000008752f x23: 0x0000000104784018 x24: 0x000000010172c3d8 x25: 0x00000000efb37fdc x26: 0x0000000000000000 x27: 0x0000000000000000 x28: 0x000000010172c3d8 fp: 0x000000016f76c3b0 lr: 0x00000001008e66c8 sp: 0x000000016f76c370 pc: 0x00000001008e3f14 cpsr: 0x80000000
YasuhiroMiyake

2018/06/22 00:09

流石にこれだけでは分かりません。 どのスレッドでクラッシュしているのかは確認出来たのでしょうか。 とりあえず、やはりsymbolicateをしないことには進みそうにないのでまずは既に読んでいるかもしれませんが以下のようなサイトを見て、相違点がないか確認してみてはいかがでしょうか。 https://qiita.com/ruwatana/items/cc470eb229d267d693b0
neuro_su

2018/06/22 00:11

ここも怪しそうだなと思いました。 Elapsed total CPU time (seconds): 22.970 (user 22.970, system 0.000), 57% CPU | Elapsed application CPU time (seconds): 19.432, 49% CPU |
neuro_su

2018/06/22 02:07 編集

何度もすいません…先程は上げていただいたリンクから参考にし、 /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash -v ~/Desktop/test/クラッシュログ.ips ~/Desktop/test/アプリ名.app.dSYM > hoge_symbolicated.crash でだしたクラッシュログなのですが、クラッシュログ.ipsと同じログがでました
YasuhiroMiyake

2018/06/22 04:23

方向性を変えてみるのはいかがでしょうか。 たとえば、テストフライトなどにアップしてからiPhone5Sにインストールした場合に同じ課題が発生しますでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問