web-dev-qa-db-ja.com

Google Chromeが突然終了する

数時間前、ChromeはOS X Yosemite10.10.2を搭載したMacBookAirで閉じられ、回復する方法がありません。起動しようとするたびに「Google Chromeが予期せず終了しました」というメッセージが表示されて終了し、Appleにレポートを送信するか、無視するか、Chromeを再起動するオプションが表示されます。その後も同じことが起こります。

「--safe-plugins」オプションを使用してChromeの安全なセッションを開始しようとしましたが、成功しませんでした。ターミナルからこれを実行すると、次のようになります。

Mac-705681ad12c1-2:MacOS javipas$ ./Google\ Chrome --safe-plugins
2014-11-26 18:02:09.266 Google Chrome[921:21325] -[NSTouch _initWithPreviousTouch:newPhase:position:isResting:]: unrecognized selector sent to instance 0x7fb71afabcc0
[921:1299:1126/180209:FATAL:chrome_browser_application_mac.mm(148)] Someone is trying to raise an exception!  NSInvalidArgumentException reason -[NSTouch _initWithPreviousTouch:newPhase:position:isResting:]: unrecognized selector sent to instance 0x7fb71afabcc0
Trace/BPT trap: 5
Mac-705681ad12c1-2:MacOS javipas$

また、AppsフォルダーからChromeを削除して再インストールしようとしましたが、成功しませんでした。何かアイデアはありますか?

4
javipas2

ただの推測:

これは、Chromeのユーザープロファイルに問題がある可能性があります。私は以前にWindows PCでこの問題に遭遇したことを知っています。 Macでアプリケーションをアンインストールして再インストールしても、これらのユーザーファイルは削除されないため、これは理にかなっています。

破損または破損している可能性があります。

案内する:

~/Library/Application Support/Google/Chrome/

フォルダの名前をDefaultの名前をDefault-Backupのように変更し、Chromeを再起動します。新しいデフォルトプロファイルが生成され、問題が修正されることを願っています。

ただし、これを行うと、データが失われます。何かを失うことを心配している場合は、このプロセスを開始する前にChrome同期をオンにしてください。

修正が機能する場合は、問題が再び発生し始めるまでバックアップディレクトリからファイルとフォルダを「チェリーピック」して、クラッシュの根本原因である可能性のあるファイルを絞り込むことができると思います。

編集:

問題:

注意の量から判断すると クロムの問題 過去数日間に発生しましたが、あなたが説明している問題は Macタッチパッドドライバーの問題 が原因であるようです。

しかし、これは奇妙なバグです。MacOS Xの最新バージョン(10.10.2)を使用している人でさえも、誰にも影響がないことは明らかです。しかし this によると、問題はApple depreciatingisRestingセレクターから発生し、最新のアップデートで完全に削除されます。

繰り返しますが、人々が報告しているエラーは次のようになります。

[NSTouch _initWithPreviousTouch:newPhase:position:isResting:]: unrecognized selector sent to instance

解決策:

一部の人は単に外部マウスを接続しているように見えますが、トラックパッドに触れなければ問題ありません。これが適切な解決策のように思われる場合は、「マウスのときにトラックパッドを無視する」も有効にしてください。アクセシビリティ設定で。

Chrome前のオプションが面倒そうに聞こえる場合はダウングレードしてみることもできます。これが機能するかどうかはわかりませんが、試してみるとよいでしょう。

パッチが今後数日でカナリアビルドにプッシュされるか、Appleが新しいドライバーアップデートを送信する(ただし、isRestingの削除に取り組んでいたためではない)と思います)。そのことに気をつけてください。

5
James Taylor

Pippynの回答のオプション2が機能するため、一時的に完全に修正できます(回答に賛成することはできません)。

[1]ファイル「patch.m」に以下を入れてください。

#import <AppKit/AppKit.h>

__attribute((constructor)) void Patch_10_10_2_entry()
{
    NSLog(@"10.10.2 patch loaded");
}

@interface NSTouch ()
- (id)_initWithPreviousTouch:(NSTouch *)touch newPhase:(NSTouchPhase)phase position:(CGPoint)position isResting:(BOOL)isResting force:(double)force;
@end

@implementation NSTouch (Patch_10_10_2)
- (id)_initWithPreviousTouch:(NSTouch *)touch newPhase:(NSTouchPhase)phase position:(CGPoint)position isResting:(BOOL)isResting
{
    return [self _initWithPreviousTouch:touch newPhase:phase position:position isResting:isResting force:0];
}
@end

それをコンパイルします:

clang -dynamiclib -framework AppKit patch.m -o patch.dylib

これを使って:

env DYLD_INSERT_LIBRARIES=/path/to/patch.dylib "/path/to/Google Chrome.app/Contents/MacOS/Google Chrome"

パート2オートメーション

Automatorで[シェルスクリプトの実行]を選択し、上記のコマンドを貼り付けて、アプリとしてデスクトップに保存します

3
David Glance

これは、OSX10.10.2の新しいトラックパッドドライバーの問題です。

オプション1:外部マウスを使用して、USBマウスが接続されている間はトラックパッドの使用を無効にすることができます。 (アクセシビリティ>マウスとトラックパッド>マウスまたはワイヤレストラックパッドが存在する場合は組み込みのトラックパッドを無視)

オプション2 :( Reddit にあります)この修正は最善の解決策ではありませんが、機能します。指示に従うと、Chromeを実行するたびに最後の端末コマンドを実行する必要があります。しかし、chromeランチャーをオートマトンアプリとターミナルコマンドで作成することもできます。

2
Pippyn

基本的に~/Library/Application Support/Google/Chrome/Local Stateと呼ばれる他のファイルの名前を変更して、この問題を解決しました。名前をLocal State-backupに変更しました。

chromeをもう一度開始すると、新しいLocal Stateファイルが作成されます。~/Library/Application Support/Google/Chrome/Defaultフォルダーに触れる必要はまったくありません。

2
kushdilip

この問題は、OS XYosemiteで2014年12月20日をもって修正されました。 Appleが新しいバージョンのOSXをリリースした時期はわかりませんが、現在は通常の方法を使用してGoogle Chromeを開き、それなしでマウスを動かすことができますクラッシュします。

上記の以前のパッチでは、Chromeの起動時にマウスを動かすとプログラムがクラッシュします。

0
Michael Wass

Chorome Canary を使用している場合は、次の手順に従ってください。それは私のために働いた。データの損失はありません。私でさえすべてのタブを取り戻しました。

1)ターミナルを開き、これらのコマンドを発行します

cd ~/Library/Application\ Support/Google/Chrome\ Canary/
mv Local\ State Local\ State_bkp

2)ChoromeCanaryを起動します

0
Harikrishnan