- Download the latest trace.jar file found here.
- Create a lib folder in your Android Project and drop the trace.jar file in there.
- Then add the jar file to your project Java Build Path.
- In your android manifest, you must enable internet access for your application
- <uses-permission android:name="android.permission.INTERNET">
- In the onCreate method of your activity or in your service, you must call public static boolean register(Context context) found in the class ExceptionHandler.
- ExceptionHandler.register(this, "http://your.domain/yourpath/AndroidCrashReports");
Java Servlet Source code for AndroidCrashReports.java
package com.as400samplecode;
import java.io.IOException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class AndroidCrashReports extends HttpServlet {
private static final long serialVersionUID = 1L;
public AndroidCrashReports() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String package_name = request.getParameter("package_name");
String package_version = request.getParameter("package_version");
String stacktrace = request.getParameter("stacktrace");
DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
DateFormat timeFormat = new SimpleDateFormat("kkmmss");
System.out.println("Android Error Log Start ***");
System.out.println("Date: " + dateFormat.format(System.currentTimeMillis()));
System.out.println("Time: " + timeFormat.format(System.currentTimeMillis()));
System.out.println("Package name: " + package_name);
System.out.println("Package version: " + package_version);
System.out.println("Stacktrace: " + stacktrace);
System.out.println("Android Error Log End ***");
System.out.println("\n\n");
}
}
The application does HTTP post of the following variables
- package_name
- package_version
- stacktrace
Tip: You can modify the AndroidCrashReports.java to write the info to a file.
No comments:
Post a Comment
NO JUNK, Please try to keep this clean and related to the topic at hand.
Comments are for users to ask questions, collaborate or improve on existing.