导致Hopper失败可能的原因:
1.发生exception.
2. 电量为0. 这各情况下没有关键字 ”ended by”或 ”endtype”的信息。
BattMsg: [2004-03-10 05:05:56] Battery capacity = 6.
BattMsg: [2004-03-10 05:21:26] Battery capacity = 5.
BattMsg: [2004-03-10 05:36:47] Battery capacity = 4.
BattMsg: [2004-03-10 05:53:38] Battery capacity = 3.
BattMsg: [2004-03-10 06:10:59] Battery capacity = 2.
BattMsg: [2004-03-10 06:29:09] Battery capacity = 1.
BattMsg: [2004-03-10 17:42:29] Battery capacity = 0.
3. 函数调用一直没有返回。
1. Default system crash; this is where Hopper is not able to send keystrokes and mouse events.
2. Start menu not responding. this is where Hopper is able to send keystrokes and mouse events but is not able to switch to any other application.
3. Stuck in the same window, this is where Hopper is able to send keystrokes and mouse events but it detects that it is stuck in the same window for more than 15 minutes.
Once this happens Hopper will attempt to dismiss the current foreground window by sending ENTER keys, sending simulated screen taps around the 4 corners and the center of the window, sending ESCAPE keys, try to find a button to click, and finally it will also try to switch away by clicking the Start menu. If none of the above attempts change the foreground window, it will quit and report a hang.
The important stuff
Applications that run in full screen (using SHFullScreen) can sometimes create problems for Hopper. Since Hopper likes to jump around, switch apps, and test the Start Menu-- it needs to be able to get out of an application running in full screen mode. Many full screen apps like games, navigation software, etc., will use a custom UI to take over the display and omit standard exit controls and window messages that Hopper uses. Once Hopper gets into a full screen app like this, it can get stuck and then report failures when it can't get out or access the Start Menu. When it does, your failure log will often look something like this:
If you have an application that runs in fulls screen mode, be sure that Hopper can get out and access the Start Menu. If it sends a VK_THOME, it should always take you to the Home Screen. If it sends a VK_LWIN then it should always bring up the Start Menu. If you do anything to hold focus or prevent those messages from activating another window, then you will have problems. If Hopper cannot get out, it will try to dismiss your application by issuing a VK_ESCAPE and VK_RETURN on PPC (Classic/Pro). On Standard (Smartphone) it will attempt to dismiss by trying variations of the softkeys and sending a VK_TBACK. Make sure you handle those messages to close your app or release screen control in order to avoid the Start Menu Dead failure in Hopper.