What information does the Android UI display provide to mtk? M

Source: Internet
Author: User

 

 

 

 

UI-related problems (incorrect image, spent image, no image, black screen, white screen, or floral screen) are difficult to locate through ordinary mobile log. layer dump, window log, and view system log must be used for analysis.

Note: Because the log volume is large, you must describe the operation process of the log in detail to quickly locate the problem range, and describe the time when the problem is displayed when attaching the log.

[SOLUTION]

The method for capturing Layer dump is as follows:

Android 2.3:

Please help confirm that there are two files under alpsrameworksaseservicessurfaceflinger estslayerdump: Android. mk and layerdump. cpp.

If you do not have these two files, please inform us that our colleagues will first send them to you, and then ask you to help capture information related to layerdump in the following ways.

I) IN THE PROJECT root directory where you can reproduce the problem, run the following command :. /makeMtk-t xxx mm frameworks/base/services/surfaceflinger/tests/layerdump (xxx indicates the project name ). After the command is executed, a readable line named test-layerdump will be generated under out/target/product/xxx/system/bin.

 

II) push the test-layerdump command to the system/bin of the mobile phone: adb push test-layerdump system/bin

 

III) execute the following command to reproduce the problem:

Adb shell chmod 777 system/bin/test-layerdump

Adb shell test-layerdump

Adb shell dumpsys SurfaceFlinger> SF_layerdump_all.log

 

IV) package the generated/data/*. png and/data/*. uyvy parameters and the generated SF_layerdump_all.log information to us.

 

Note: to export a layer png image from/data, run the adb pull command. For example, to export a/data/5.png image, run the following command: adb pull data/5.png D:/. This command exports/data/5.png to drive D.

 

 

Versions later than Android 2.3:

(I) Create a txt file named SF_layerdump_all.bat.txt with the following content:

SET raw = % 1

SET layerdump = % 2

 

IF % raw % = SET raw = 0

IF % layerdump % = SET layerdump =-1

 

Adb shell setprop debug. sf. layerdump. raw %

Adb shell setprop debug. sf. layerdump %

Adb shell dumpsys SurfaceFlinger> SF_layerdump_all.log

Adb shell mkdir/data/SF_dump

Adb shell mv/data/*. png/data/SF_dump

Adb shell mv/data/*. i420/data/SF_dump

Adb shell mv/data/*. yv12/data/SF_dump

Adb shell mv/data/*. RGBA/data/SF_dump

Adb shell mv/data/*. RGB565/data/SF_dump

Rmdir/S/Q SF_layerdump_all

Md SF_layerdump_all

Move SF_layerdump_all.log SF_layerdump_all

Adb pull/data/SF_dump SF_layerdump_all/

Adb shell rm/data/SF_dump /*

 

II) after creating and saving the txt file, rename it SF_layerdump_all.bat and put the bat on the windows desktop on your computer.

 

III) connect the mobile phone to usb. Double-click SF_layerdump_all.bat to display the problem on the screen (that is, when the portrait screen is displayed as a horizontal screen, then, package the generated folder and send it to us (the file package contains some Png images, corresponding to the snap shot of each layer, and a log file ).

For a transient display problem, it is difficult to catch the Layer dump at the scene of the problem. You can use the adb command: adb shell dumpsys SurfaceFlinger> desktop/sf.txt can now enter this command string on the console. When a transient problem occurs, press enter to execute the command and try it several times, check whether the layer dump of the problem picture can be captured.

Note: Use eng build to capture layer dump!

 

 

The method for capturing window logs is as follows:

1) modify the code and compile it.

Open DEBUG_XXX in WindowManagerService. java to true and re-compile the services. jar module. The corresponding log is in the main log of mobile log.

 

2) do not modify the code. Enable the debug switch dynamically (you need to set it again after reboot)

 

-Open the mobile log in the module first.
-Open the following debug switch through the command line:
Adb shell dumpsys window-d enable 0 1 2 3 4 5 6 8 9 10 11 12 13 14 16 17 19 22 23 24 26 29 30 32 33 34
Adb shell dumpsys window-d disable 18
-Reproduce the problem and capture the mobile log. Note: The window log contains a large amount of content. To locate the problem easily, make sure to record the exact time of the problem, the window log is attached with a description.

The method for capturing the View system log is as follows:

Open DEBUG_XXX in ViewRootImpl. java to true, and re-compile the framework. jar module. The corresponding log is in the main log of mobile log.

 


 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.