Note that there are some explanatory texts on larger screens.

plurals
  1. POHow can I debug a seemingly hardware-dependent issue with my Android app without access to the hardware?
    primarykey
    data
    text
    <p>I have an open-source application on the Android market. It seems to work fine for me (with over 1,000 active installs, I have to presume that it works for most people).</p> <p>I recently got a <a href="http://code.google.com/p/anddaaven/issues/detail?id=21" rel="nofollow noreferrer">bug report</a> that indicated a problem for at least three users on Samsung phones (Intercept and Captivate). I have been unable to reproduce the problem on my ADP2 and on the emulator.</p> <p>In order to get enough data to diagnose the problem, I first tried to add logging and then I asked users to submit logs via <a href="http://www.appbrain.com/app/com.xtralogic.android.logcollector" rel="nofollow noreferrer">Log Collector</a>. Each time a user tried to send the log (there were four attempts), it was truncated and I did not get any useful data.</p> <p>I then added <a href="http://acra.googlecode.com/" rel="nofollow noreferrer">ACRA</a> to the project in an attempt to get information, but I don't seem to be able to automatically detect the bug in order to send a report.</p> <p>Since I don't have a Samsung phone and I can't reproduce it on anything where I could connect with the debugger, I am mostly out of ideas. The only idea I have left is to add a button to the UI to generate a report.</p> <p>Are there any other approaches to suggest?</p> <p><strong>Update</strong>: since people are asking for more specifics: essentially, the app reads in text files from the assets and puts them (with some preprocessing) into a TextView in a ScrollView. (The data is prgressively added to a SpannableStringBuffer and then that is passed to TextView's setText() function.) Depending on the options chosen, the text displayed is between 15k-115k. On phones with this issue, only part of the text is displayed. The cutoff point depends on the options, but seems to be somewhere between 17k-18k.</p> <p>ACRA sends a report for all uncaught exceptions and puts them into a Google Form/Spreadsheet. I've gotten reports from my emulator and from my phone, so I know that end works. (Actually, I've often found it faster to debug from the stack trace in that report than to attach the debugger to the process.)</p> <p>Phone specs: I have exercised the app on emulators running 1.5, 1.6, 2.1, and 2.2. My phone is ADP2 (the developer version of the MyTouch), but I've installed a <a href="http://www.cyanogenmod.com/" rel="nofollow noreferrer">third-party ROM</a> to jump up to Froyo (2.2). I am unaware of an emulator specifically for the Samsung OS build, although that would be quite helpful here.</p> <p>Since the expected text length is constant, I <em>should</em> be able to detect if it is read correctly or not. I added checks at the end of my text processing, but those never triggered, indicating that the problem was not with reading the file. I then tried adding checks to onPostCreate and onPostResume, but those did not fail either. It seems that the UI thread had not yet actually run at that point, though.</p> <p>I've now done 6 private APK versions attached to the bug in the bug tracker. I frankly am surprised that any users are still trying them. This latest version has a button to force a bug report - that will only be called after the UI thread has laid out the screen. Hopefully that will give me enough variable information to point me in the right direction.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload