2016-04-17 13 views
1

"frida-trace -U -i open -f com.example.hellojni"コマンドを実行した後、アプリケーションHelloJniが正常に設定されます。しかし、私は仲間のpythonスクリプトを実行した後、私はクラッシュした。フリーダウィーンのプロセスがAndroidで失敗しました

device = frida.get_device_manager().enumerate_devices()[-1] 
session = device.attach(device.spawn(["com.example.hellojni"])) 
ss = ''' 
     console.log("hello") 
'''  
script = session.create_script(ss) 
script.load() 
session.detach() 

ログ "hello"がコンソールに表示されます。しかし、アプリがちょうどクラッシュした、UIが表示されませんでした。そしてlogcatは次のようなものを表示しました:

04-17 06:14:58.279: E/WindowManager(570): Starting window AppWindowToken{41e429c0 token=Token{41f753c8 ActivityRecord{41ea5dc0 u0 com.example.hellojni/.view.MainActivity t39}}} timed out 
04-17 06:14:58.279: W/ActivityManager(570): Process ProcessRecord{41dffd18 16943:com.example.hellojni/u0a203} failed to attach 
04-17 06:14:58.289: I/ActivityManager(570): Killing 16943:com.example.hellojni/u0a203 (adj -100): start timeout 

私のスクリプトは間違っていましたか?私はandroid4.4.4(dalvikモード)、windows7、frida7.0.11 ..を使用しています。 助けていただければ幸いです。

答えて

3

ツールは素晴らしいですが、真剣にドキュメントを更新する必要があります。同じ問題を解決しようとしているソースコードを掘り下げて、何の問題もないことを知るために、一週間ほどかかった。すべてが設定されたら、device.resume()を呼び出すだけです。あなたの場合:

device = frida.get_device_manager().enumerate_devices()[-1] 
pid = device.spawn(["com.example.hellojni"]) 
session = device.attach(pid) 
ss = ''' 
     console.log("hello") 
'''  
script = session.create_script(ss) 
script.load() 
device.resume(pid) 
session.detach() 
+0

ありがとうsoooooooo!それは実際に動作します!!! – jinsheng

関連する問題