03-17 20:06:37.415: WARN/System.err(301): java.lang.NullPointerException03-17 20:06:37.445: WARN/System.err(301): at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:112) 03-17 20:06:37.485: WARN/System.err(301): at org.json.JSONTokener.nextValue(JSONTokener.java:90) 03-17 20:06:37.515: WARN/System.err(301): at org.json.JSONObject.<init>(JSONObject.java:154) 03-17 20:06:37.515: WARN/System.err(301): at org.json.JSONObject.<init>(JSONObject.java:171) 03-17 20:06:37.535: WARN/System.err(301): at com.dtwconsulting.golfcaddietrial.GolfCaddie$initialiseServer.doInBackground(GolfCaddie.java:114) 03-17 20:06:37.556: WARN/System.err(301): at com.dtwconsulting.golfcaddietrial.GolfCaddie$initialiseServer.doInBackground(GolfCaddie.java:1) 03-17 20:06:37.565: WARN/System.err(301): at android.os.AsyncTask$2.call(AsyncTask.java:185) 03-17 20:06:37.585: WARN/System.err(301): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 03-17 20:06:37.585: WARN/System.err(301): at java.util.concurrent.FutureTask.run(FutureTask.java:137) 03-17 20:06:37.615: WARN/System.err(301): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068) 03-17 20:06:37.645: WARN/System.err(301): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561) 03-17 20:06:37.645: WARN/System.err(301): at java.lang.Thread.run(Thread.java:1096)
private class initialiseServer extends AsyncTask<Void, Integer, Boolean> {
protected void onPreExecute(){
initDialog = ProgressDialog.show(GolfCaddie.this, "",
"Initializing. Please wait...", true);
}
protected Boolean doInBackground(Void...voids) {
Boolean expired = false;
String installType = "";
String retInit = "";
String initExpDate = "";
SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd");
// Let's get the device ID
TelephonyManager mTelephonyMgr =
(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String imei = mTelephonyMgr.getDeviceId();
// Now, let's check the application to see if we have the
trial or full version.
if
(getApplication().getPackageName().equals("com.dtwconsulting.golfcaddietrial")){
installType = "trial";
} else {
installType = "full";
}
try {
// Construct data
String data = "code=" + imei + "&installtype=" +
installType + "&apikey=" + GlobalVars.GCAPI_KEY + "&platform=" +
GlobalVars.PLATFORM;
// Send data
URL url = new URL(GlobalVars.HOST_WAP +
"initialize.php?" + data);
URLConnection conn = url.openConnection();
// Get the response
BufferedReader rd = new BufferedReader(new
InputStreamReader(conn.getInputStream()));
retInit = rd.readLine();
*JSONObject initLine = new JSONObject(retInit);*
Number initErr = initLine.getInt("errcode");
initExpDate = initLine.getString("expiredate");
rd.close();
} catch (Exception e) {
e.printStackTrace();
}
Date expDate = null;
Date today = new Date();
try {
expDate = df.parse(initExpDate);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (expDate.before(today)){
if (installType.equals("trial")) {
// Trial has expired
expired = true;
}
}
else{
expireDate = df.format(expDate);
}
return expired;
}
protected void onPostExecute(Boolean result) {
initDialog.dismiss();
if (result){
AlertDialog.Builder builder = new
AlertDialog.Builder(GolfCaddie.this);
builder.setMessage("Your Golf Caddie trial has
expired." )
.setCancelable(false)
.setPositiveButton("Ok", new
DialogInterface.OnClickListener() {
public void onClick(DialogInterface
dialog, int id) {
GolfCaddie.this.finish();
}
});
AlertDialog alert = builder.create();
builder.show();
}
else{
checkInstall();
}
}
}
--
------------------------------------------------------------------------
David Williams
Check out our WebOS mobile phone app for the Palm Pre and Pixi:
<http://www.dtw-consulting.com/GolfCaddie> Golf Caddie
<http://www.dtw-consulting.com/GolfCaddie> | Golf Caddie Forum
<http://www.dtw-consulting.com/GolfCaddie/forum> | Golf Caddie FAQ
<http://www.dtw-consulting.com/GolfCaddie/faq.html> by DTW-Consulting, Inc.
-- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
<<inline: GClogo.png>>

