Android :: Use Traceview To Analyze Performance
Mar 19, 2009
I am getting complaints about my app's performance and want to get to the bottom of it. I am not really sure how to use traceview for that. I'd like to sketch how I used it and maybe you can give me some advice what to to differently and what to look for in the traceview output. The case: I have a list activity that lists articles. When clicking on one of the articles another activity is started that shows the article itself. I measure from the moment onClick() is entered on the ListActivity until the moment onResume() is about to be left in the Show Article Activity. I have two cases that I measure: "Cold" means the app is running and the ListActivity is started, but the Show Article Activity has not been called yet. "Warm" means the same, but the Show Article Activity has been called before during the runtime of the app. Here are the traces:.......
View 4 Replies
Feb 22, 2014
Ok, so I wonder how to troubleshoot Android phone crashes, freezes, reboots, etc.
Maybe there are ways to troubleshoot these kind of events by looking at loggings to pinpoint the problem (like does a particular app cause this, or a hardware event, etc).
I see my HTC notices it recovered from an abnormal reset for instance, and asks to send logging to HTC HQ, so there seems to be ways that could tell more what is causing trouble?
View 1 Replies
View Related
Apr 19, 2009
The following is the log from native code.
CODE:.................
View 6 Replies
View Related
May 23, 2010
I'm looking into writing an Android game, tough I don't curerntly own an Android device. For those of you who own a device, how does the performance on the emulator relate to real device performance? I'm especially interested in graphics related tasks.This obviously depends on both the machine running the emulator, and the specific device in question, but I'm talking rough numbers here.This question is a duplicate, but since that post is heavily outdated, I figured it's irrelevant by now.
View 3 Replies
View Related
Nov 20, 2009
I'm running the basic HelloActivity from the SDK 2. samples. When I try Trace view in the DDMS prespective its generate the trace file but can not opened. "'/sdcard/com.google.android.apps.uploader.trace': Permission denied". Do I need a permission to write in the SD card? 4:38.380: INFO/dalvikvm(10434): Debugger has detached; object registry had 1 entries 11-20 21:34:38.380: DEBUG/dalvikvm(10434): VM cleaning up 11-20 21:34:38.411: ERROR/AndroidRuntime(10434): ERROR: thread attach failed 11-20 21:34:38.466: DEBUG/VoiceDialerReceiver(1225): onReceive Intent { act=android.intent.action.PACKAGE_ADDED dat=package:com.example.android.helloactivity flg=0x20000000 cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) } 11-20 21:34:38.466: DEBUG/dalvikvm(10434): LinearAlloc 0x0 used 636716 of 5242880 (12%) 11-20 21:34:38.490: WARN/ResourceType(1015): Resources don't contain package for resource number 0x7f080000 11-20 21:34:38.490: WARN/ResourceType(1015): Resources don't contain package for resource number.....
View 4 Replies
View Related
Jul 4, 2009
I tried to use traceview on a computer with a 64bit processor, the error I get is "architecture word width mismatch": I do use the 64bit version of Eclipse for development, I know SWT works on my computer. What do I need to do to make traceview work on my computer? For now, I copy the trace files to my laptop, which has a 32 bits architecture. android-sdk-linux_x86-1.5_r2/tools/lib/libswt-pi-gtk-3236.so: /home/ christine/java/android-sdk-linux_x86-1.5_r2/tools/lib/libswt-pi- gtk-3236.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch) at java.lang.ClassLoader$NativeLibrary.load(Native Method at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1767) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1676).....
View 4 Replies
View Related
Jun 15, 2009
I have been trying to use traceview for profiling my Android app. So far I have gotten it to work on very small parts of the program. If I use it for bigger chunks it creates too much information (.trace file is too large) and I get an OutOfMemory (heap memory) error from the java compiler. I tried some tricks with setting higher min and max heap memory values but no luck. If anyone has used traceview with similar effects before. I would highly appreciate any tips you may have. Here are the details. First I am reproducing the error message: $ traceview.bat tmp.trace Exception in thread "main" java.lang.OutOfMemoryError:.....
View 3 Replies
View Related
Dec 10, 2009
We know that it's very convenient to use TraceView in Android java code to check the runtime of different chunks of code. Now I develop my app with NDK and I want to check the runtime of some native functions, but I found nothing in TraceView guide if it's possible to use this tool. Because I noticed that one of my native methods spent too much time and I want to dig out the more detailed root cause. Is there anybody know if we can use TraceView in native code?
View 2 Replies
View Related
Sep 24, 2010
I'm usign starMethodTrace() and stopmethodTtrace() to get trace data to use on traceview. Everything seems to work fine. I test my app for 50 (real world) seconds having two important events after 15 and 45 seconds from start tracing. However, when analyzing the traceview's timeline I found the total tracetime is only 1.068,964 (msec). My two events are displayed as they were occurred at time 257,743 msec and 642,654 msec. This is just about 1 second of total execution time. Why there is this huge difference between real world time and trace view time? May be because I have a lot of idle time? Is there a way to relate the times displayed in the time line with real world time?
View 2 Replies
View Related
Aug 17, 2010
I'm using traceview to identify bottlenecks in my app. If I use the emulator, everything works fine. But when the device is used, no matter how long I run the app, traceview only gets the initial 5 seconds of my session and nothing more. I also noticed an error message in the console: Traceview: (<unknown>:10301): GLib-WARNING **: g_set_prgname() called multiple times. Have you ever experienced this problem?
View 3 Replies
View Related
Sep 24, 2009
I'm working with an OpenGL ES app in Android, but when I want to use traceview to profile my code, I always obtain the following error: ThreadData: 'android/XX/XX' call time (xxxxxxxx) is less than previous time (xxxxxxx) for thread '[3] main'. I've tried to call Debug.startMethodTracing() and stopMethodTracing() in different places of my code but it never works, anyone can help?
View 2 Replies
View Related
Feb 20, 2010
Motorola CLIQ Over-the-Air Update
[Retail Partner Sales - T-Mobile Employees and Authorized Dealers]
February 19 Update
The over-the-air update for the Motorola CLIQ has been delayed to the week of February 22. An updated article will be available once a date has been determined.
On February 18, Motorola will begin sending over-the-air (OTA) software updates to Motorola CLIQ customers. The software update will improve device performance and resolve several known issues.
Improved Performance:
Improved battery life
Improved software performance and stability
Improved widget response
Decreased Force Close error messages
New Manage SIM Card application
Support of .WMA and .WAV media files
Removal of the imeem mobile application
Known Issues Resolved:
Accessories & Bluetooth
Error: 'Unable to pair' or 'Unable to connect to device'
Call functions
Can activate other functions while listening to visual voicemail
Call not ended by pressing the End key
Speakerphone turns on unexpectedly when answer incoming call
Plays ringtone or vibrates while on an active call
Unable to answer incoming call using �Slide to answer� feature
Accidentally opens Dialer or makes outbound while holding device
Device hardware (battery, keys, power, screen)
Battery indicator may not display accurate battery power
Call not eded by pressing the End key
Touch screen issues
Cannot answer incoming call using the Slide to answer feature
Incorrect keys registered using on-screen keyboard
Touch display appears to have �dead spots� that are unresponsive
Accidentally selects item when trying to flick through screens or menus
Messaging
Wrong message deleted
Phone may reset when turning Wi-Fi off in area with no Wi-Fi coverage
Customers can manually download the OTA on demand by going to Settings > About Phone > System Updates. Customers do not need to wait for a notification message to download.
Action Steps
Be aware of the fixes and enhancements included in the Motorola CLIQ update.
If customers are experiencing any Known Issue that will be resolved by the software update:
Do not file a handset exchange
Advise customers that the issue will be resolved by a software update on February 18.
Important Rebate Changes
[Retail Partner Sales - T-Mobile Employees and Authorized Dealers]
Customers eligible for rebates as part of new activations or upgrades must be advised they will receive their rebates in the form of a prepaid Visa card.
When customers take advantage of our new Early Upgrade or Early Upgrade Plus options, they are not eligible for upgrade rebate cards. These new upgrade options allow customers to take advantage of upgrades sooner and provide an instant discount, instead of having to wait for rebate cards.
To be eligible for an upgrade rebate card, customers must meet upgrade eligibility requirements.
Current, 1-year contracts: 11 or more active months since last discounted handset purchase.
Current, 2-year contracts: 22 or more active months since last discounted handset purchase.
Rebates on eligible purchases require contract extensions and a $9.99 or higher Data/Messaging feature.
Valid only on FlexPay plans with 1 or 2-year contracts.
Not valid for Even More Plus plans.
Active Months: The number of months in which the account has been in good standing and during which service has not been suspended.
Action Steps
Inform customers that Early Upgrade and Early Upgrade Plus are not eligible for upgrade rebate cards.
Advise customers eligible for rebates that they will receive their rebates in the form of a prepaid Visa card.
"With the purchase of your new handset, you can submit a rebate form to receive your rebate. The rebate will be in the form of a prepaid Visa card that can be used anywhere Visa is accepted. See the rebate form for additional details."
Trackball Replacement Program
[Retail Partner Sales - T-Mobile Employees and Authorized Dealers]
On February 24, T-Mobile will launch a Trackball Replacement program for BlackBerry Pearl 8100/8120 and BlackBerry Curve 8320 customers that are having trackball issues. This program will be available in T-Mobile retail stores only at this time.
Action Step
Refer customers to a T-Mobile retail store after February 24 for further assistance if they come in to your location looking to complete a trackball replacement.
First Connect for Dealers
[Retail Partner Sales]
First Connect for Dealers is an exciting class designed to help on-board and prepare Retail Partners to successfully sell T-Mobile products and services and provide differentiated customer experiences. This four hour class is conducted via the T-Mobile Live Virtual Classroom and covers the following:
Welcome to T-Mobile
Who is T-Mobile?
PCC
Differentiated Handsets
Differentiated Rate Plans
Service Excellence / Selling Skills
Tools and Resources
Customer On-Boarding
The attached flyer contains dates and times for these calls as well as registration details. ADRs should educate their locations about these calls and encourage them to attend.
To successfully be able to attend the training sessions, Retail Partners should have the following:
Computers with high speed Internet connections
The ability to play and hear video segments on the computer using speakers or headset
The use of a fully charged mobile phone to hear the audio portion of the conference call
Printer access to print Participant Workbook.
Action Steps
Share the attached flyer with your locations and encourage them to attend one of the scheduled calls.
View 1 Replies
View Related
Apr 3, 2009
Tried to trace for the first time but got the following exception when I started the "traceview" application with my trace file. mane@Labbe:/tmp$ traceview gldraw.trace Exception in thread "main" java.lang.RuntimeException: Method exit (java/lang/BootClassLoader.getInstance ()Ljava/lang/BootClassLoader;) does not match currentmethod (dalvik/system/VMDebug.startClassPrep () V) at com.android.traceview.ThreadData.exit(ThreadData.java:116) at com.android.traceview.ThreadData.handleCall(ThreadData.java: 78).....
View 4 Replies
View Related
Aug 17, 2010
I'm calling Debug.startMethodTracing("fnord") and I'm getting a java.lang.RuntimeException: file open failed message. It looks like I'm supposed to have the android.permission.WRITE_EXTERNAL_STORAGE permission set. But how do you set that permission when you're debugging through Eclipse? Aren't permissions normally set at install time (which doesn't happen in a normal way when you're debugging)?
View 2 Replies
View Related
Aug 16, 2010
I deleted all battery monitoring apps and stopped looking at the battery usage info 50 times a day. I did this over one week ago, and couldn't be happier. No more looking at that god awful percentage meter, no more watching in dismay as it drops, and drops, and drops. My battery performance has never been better now that I quite looking at it all day and my sanity has slowly begun to return.
View 5 Replies
View Related
Dec 4, 2009
We acquired a Samsung Moment today, and find that it's 3D performance is very poor compared to the HTC and Motorola devices. I've tried all the tricks I know (color depths, rendering options), but can't get much out of it. Rotating a single textured quad is jerky. I understand that the Galaxy was missing a software component, and that once a surrogate was added, the 3D performance was acceptable. Does anybody have the real low-down on this issue? Specifically: * Do others also find the Moment to be a poor 3D performer? * Is there any word about Samsung fixing this? * Am I missing something obvious?
View 6 Replies
View Related
Jun 19, 2010
I've been trying VBOs (3D) and I've seen no improvement at all on my Motorola Dext over not using VBOs.I've tried all kinds of configurations, interleaved arrays, by t buffers instead of float buffers, both direct and indirect. My question is, has anybody got any measured improvement in frames per second by using VBOs instead of exactly the same content without VBOs? If and only if so, what were your fps results? And can you therefore show me the "proper" way of doing VBOs instead of not? Has anybody else got exactly the same fps with and without VBOs?
View 8 Replies
View Related
Sep 6, 2010
My experience is that loading websites in a WebView is much slower than performing the same actions in the Android Web Browser. I can see that all files have been loaded in my Apache log, it will take a few seconds until the page is displayed in the WebView control, however. Opening the same page in the native Web browser will result in an immediate display. It seems that rendering is somehow crippled.Which browser settings do we have to apply in order to achieve the same performance as loading the page in the native web browser?
View 1 Replies
View Related
Dec 2, 2009
I'm experienced with openGL but not Android. I just started. I have some spinning cubes running on a Droid and I'm barely getting 30FPS. Should I be using GLSurfaceView to get the best performance or is there a better way?
View 6 Replies
View Related
Apr 17, 2010
I have a map in my android application that shows many markers (~20-50). But the app performs very poor when i try to scroll/zoom (in Google Android Maps i did a sample search for pizza and there were also some 20-50 results found and i didn't notice any particular performance problems when zooming/scrolling through the map).
onCreate() {
....
drawable = this.getResources().getDrawable(R.drawable.marker1);
itemizedOverlay = new MyItemizedOverlay(drawable,mapView);
...
callWebServiceToRetrieveData();
createMarkers();
}..............................
View 4 Replies
View Related
Jun 4, 2010
I read on many other topics that the Android emulator starts really slow. Indeed, it takes +15 mins to start. However, on my machine is slow even after that.The 'phone' responds with a 3-4 seconds delay and everything has a huge lag.Is there any way to improve the performance of my laptop (Asus 1201N) is too rusty for the Android emulator? Tried in different emulator resolutions and the result is the same.My laptop has 2 cores with HyperThreading. And it shows as 4 CPU in Device Manager. However, when using the emulator, just one of the graphs is at 100%. Can I do something to make it work multi core?
View 5 Replies
View Related
Oct 5, 2009
I am working on an app that uses the SoundPool class to play sounds. Basically every n milliseconds I need to play up to 16 sounds and I need this to be as steady as possible. The best solution I found so far is to use a java.util.Timer and the scheduleAtFixedRate method (setting also a THREAD_PRIORITY_URGENT_AUDIO in the TimerTask run method), the result is pretty good but it is still not perfect and sometimes the executions get slightly delayed. Is there some other way I should try to play sounds _exactly_ every n milliseconds? Different threads, some kind of optimization, stuff like this?
View 3 Replies
View Related
May 1, 2009
One of the new features mentioned in the 1.5 SDK is "Easier application performance profiling". Can somebody shed some light on what new profiling features are available in the new SDK? Are those enhancements to TraceView, DDMS, or new profiling APIs ?
View 2 Replies
View Related
Oct 19, 2010
I am using following global variables in my activity
CODE:..........
I have made them global in activity because i need them all in more than 1 functions now my question is how to improve performance of my activity it is too slow should i make them static or what?
View 2 Replies
View Related
Jul 29, 2010
I'm getting started with Android development, but the emulator performance on my machine leaves much to be desired. In all fairness, my machine is not a powerhouse by any stretch of the imagination.
Short of upgrading my hardware or spending $$$, are there any good tips for improving Android emulator performance?
View 2 Replies
View Related
Aug 24, 2010
I am using GestureOverlayView with ViewFlipper, and it takes about one second for the android to recognize my gesture and flip to next view. However, the Android calendar flips almost immediately. I checked the Android calendar code, and it uses GestureDetector. Is there big difference between these two gesture detecting mechanisms?
I am also wondering what's the difference between these two mechanism of detecting gestures. I know GestureOverlayView came out at 1.6, while GestureDetector was in 1.0. But why didn't they just deprecate GestureDetector when GestureOverlayView came out?
View 1 Replies
View Related
Apr 14, 2010
I need to render video on android. I got sw decoder which decodes stream to YUV or RGB with very reasonable cpu usage, but so far haven't found a nice way how to render frames.
I have tried 3 methods so far: 1) using opengl from native code: * create a texture of type GL_TEXTURE_2D * set coordinates to fill full opengl rendering area * to render a frame update the texture with glTexSubImage2D or glTexImage2D function (more or less the same method that is used in vlc media player)
With this method the performance is most terrible.. VGA rendering @5..7FPS uses up 100% of nexus one cpu!
2) rendering with canvas function Canvas.drawBitmap(int[] colors, int offset, int stride, int x, int y, int width, int height, boolean hasAlpha, Paint paint)Was hoping to use this via JNI. First i just made a simple perfo test: * colors array was initialized in java code * then I just called mSurfaceHolder.lockCanvas(); canvas.drawBitmap(colors, ... ); mSurfaceHolder.unlockCanvasAndPost(canvas); in sequence
Perfo is better than with opengl - VGA@30FPS uses up 40% of nexus one- s cpu...
3) Rendering with canvas function Canvas.drawBitmap(Bitmap bitmap, float left, float top, Paint paint), while updating bitmap in native code * in java code i do:
CODE:.......
To get native pointer to memory (need to link to native android library libskia.so to get these functions) * copy or decode the video frame to this memory
With this method i get only 10% cpu usage when doing VGA@30fps... but lets face it - its a hack which may break in future. Am I missing something or there really isn't any better way to render video? for example some opengl extension function etc..?
View 2 Replies
View Related
May 14, 2009
I have question on what is the best approch to take.I have a header view in all my screens of the app.
So is it best to have the setContent of the header view and then adding the views by inflating them in the sub-class activity as below
CODE:.................
View 2 Replies
View Related
Oct 7, 2010
Taking into account JIT and non-JIT devices, what would be most efficient on Android for returning multiple values from functions: an array like this: Code...
View 6 Replies
View Related
Oct 29, 2010
I am trying to go widget-free, using Zeam launcher instead of LauncherPro which seems to randomly have issues for me, I'm just wondering what tips you all may have for getting the best performance possible from your phone. I'm on a Captivate. I care more about in-app performance and stability over bells and whistles. What do you suggest?
View 6 Replies
View Related