Tôi chỉ tìm thấy một công cụ lược tả - http://code.google.com/p/android-ndk-profiler/. Đã không thể làm cho nó hoạt động cho đến nay, vì vậy tôi tự hỏi nếu có những công cụ khác có sẵn. Tôi cần hồ sơ trên thiết bị thực, vì ứng dụng của tôi thậm chí không hoạt động trên trình giả lập.Android: có công cụ nào để định dạng mã gốc không?
Trả lời
Việc tạo hồ sơ Android-NDK không dễ dàng. Bạn cần thực hiện theo các bước here kỹ lưỡng.
Dưới đây là một số mẹo mà dẫn tôi đến thành công:
- Hãy chắc chắn rằng android.mk của bạn là chính xác và rằng bạn xuất NDK_MODULE_PATH.
Sử dụng đúng các chức năng sau
monstartup ("your_lib.so");
moncleanup();
Nếu gmon.out được tạo ra ngay bây giờ, bạn cần phải kéo nó ra khỏi thiết bị, nhưng không cần đến bất kỳ đâu trong máy tính của bạn. Đối với tôi nó chỉ hoạt động nếu tôi đi đến thư mục của ứng dụng (nơi JNI, obj, res và thư mục khác) và tôi làm:
console $ adb pull sdcard/gmon.out
Sau đó chạy gprof. Hãy thử tất cả các phiên bản trong bộ công cụ NDK của bạn. Đối với tôi chỉ có một làm việc, điều này một:
console $ ~/thư viện/android-ndk-r9/toolchains/cánh tay-linux-androideabi-4,8/dựng sẵn/linux-x86_64/bin/cánh tay-linux-androideabi -gprof obj/local/armeabi-v7a/libxxxx.so> profile.txt
Shiny profiler là nền tảng độc lập, nó chạy ở bất kỳ đâu và nó không có bất kỳ phụ thuộc nào ngoài trình biên dịch C++ chuẩn. Trong cách sử dụng đơn giản hơn, tất cả những gì bạn cần làm là thêm một macro vào đầu tất cả các hàm và phương thức (hoặc ít nhất là những hàm mà bạn muốn cấu hình).
Bộ khuếch đại VTune của Intel. Hồ sơ này cho phép bạn thu thập các điểm nóng với ngăn xếp trên các thiết bị Android không có gốc hoặc bất kỳ sửa đổi hệ điều hành nào. Đây là hướng dẫn đơn giản: http://software.intel.com/en-us/articles/using-intel-vtune-amplifier-on-non-rooted-android-devices
Thời gian bắt đầu nhắm mục tiêu Android. Nhưng họ có hỗ trợ ARM hay chỉ là x86? –
Có, nó hoạt động tốt trên cả hai vòm. –
Xin chào Ilya! :) Có thực sự tốt hơn android-ndk-profiler không? Chi phí là bao nhiêu? –
trong r13b NDK có một công cụ mới có tên gọi simpleperf
Tài liệu Simpleperf được đăng tại https://android.googlesource.com/platform/system/extras/+/master/simpleperf/README.md – osgx
- 1. Có công cụ nào để định dạng lại mã C# không?
- 2. Công cụ định dạng Python
- 3. Có công cụ lint nào cho C và C++ để kiểm tra định dạng không?
- 4. Có công cụ nào để nhận xét mã JavaScript không?
- 5. Có mã định dạng Sass nào không?
- 6. "Công cụ ngăn xếp" ở đâu cho android dev? (để giúp gỡ lỗi mã gốc C++)
- 7. Công cụ để định dạng mã với quy ước mã hóa Java Sun
- 8. Công cụ định dạng SQL miễn phí
- 9. Công cụ phân loại/định dạng XML
- 10. Công cụ phân tích mã cho Android
- 11. Có bất kỳ công cụ DRYer mã nào không?
- 12. Có cách nào để đánh dấu mã để yêu cầu ReSharper không định dạng mã không?
- 13. Có công cụ nào cho mã obfuscation cho Scala không?
- 14. Có trình định dạng mã Haskell không?
- 15. Xcode: có cách nào để nhận mã nhận dạng gói của dự án gốc không?
- 16. Có công cụ nào để chuyển đổi các báo cáo XML của Emma sang định dạng XML Cobertura không?
- 17. Có trình định dạng mã tự động cho C# không?
- 18. Có tồn tại: Công cụ tìm mã lặp lại không?
- 19. Có công cụ nào để chuyển đổi đánh dấu thành văn bản Wiki ở định dạng khác không
- 20. Có bất kỳ công cụ nào trong IDE để tự động sửa định dạng nhận xét không?
- 21. Giá trị chú giải công cụ định dạng jqplot
- 22. Có công cụ hợp nhất nào để kiểm soát nguồn hiểu mã không?
- 23. Có công cụ nào để chuyển đổi giữa ANTLR và các dạng khác của BNF không?
- 24. Bất kỳ công cụ định dạng dòng lệnh nào có sẵn cho tệp java?
- 25. Bạn sử dụng công cụ/định dạng nào để viết thông số kỹ thuật của mình?
- 26. Có công cụ nào để chuyển đổi mã nguồn c/C++ thành html không?
- 27. Công cụ để phân tích mã PHP
- 28. Công cụ tìm kiếm có tăng thêm trọng lượng cho vi định dạng không?
- 29. Công cụ định dạng SQL miễn phí tồn tại?
- 30. Có công cụ nào ở đó để cấu trúc lại kiểu mã hóa của cơ sở mã java không?
Sửa đổi mỗi chức năng trong dự án là đau đớn. Tôi thích dụng cụ tự động hơn. Nhưng cảm ơn về tiền boa! –
Nếu không có gì khác hoạt động, tôi đảm bảo bạn sẽ sáng bóng. Tôi đã có một vấn đề tương tự với webOS. Hỗ trợ gprof đã bị hỏng và không có gì khác có sẵn. Shiny đã làm rất tốt và giúp tôi giải quyết các vấn đề về hiệu suất của mình. Đối với các nỗ lực của thiết bị mã tôi chỉ viết một kịch bản mà tất cả các cơ quan chức năng bằng cách sử dụng một biểu thức chính quy, sau đó chèn các cuộc gọi macro tự động, do đó, nó không phải là đau đớn cả. Chúc may mắn với tìm kiếm của bạn. – Miguel
Làm cho tinh thần! Tự động chèn macro, ý tôi là. Cảm ơn! –