--- android/CheckUpdates/src/dk/thoerup/checkupdates/CheckUpdates.java 2010/06/26 00:05:44 909 +++ android/CheckUpdates/src/dk/thoerup/checkupdates/CheckUpdates.java 2010/06/26 07:48:40 910 @@ -34,9 +34,10 @@ String title; - Context context; + Context context; - public void checkForUpdates(Context context, String url, String title) { + + public void checkForUpdates(Context context, String url, String title, String apkUrl) { this.context = context; this.title = title; @@ -62,7 +63,7 @@ UpdateTask task = new UpdateTask(); - task.execute(url); + task.execute(url, apkUrl); } catch (NameNotFoundException e) { @@ -75,10 +76,14 @@ class UpdateTask extends AsyncTask { boolean result = false; int newestVersion = 0; + + String apkUrl; @Override protected Void doInBackground(String... arg0) { String requestUrl = arg0[0] + "?version=" + encode(versionName) + "&phone=" + encode(phone_model) + "&android=" + encode(androidVersion); + apkUrl = arg0[1]; + try { URL url = new URL(requestUrl); URLConnection conn = url.openConnection(); @@ -140,7 +145,9 @@ builder.setPositiveButton("Yes", new OnClickListener() { public void onClick(DialogInterface dialog, int which) { - Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("market://search?q=pname:" + packageName) ); + String launchUrl = (apkUrl == null) ? "market://search?q=pname:" + packageName : apkUrl; + + Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(launchUrl) ); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK ); try { context.startActivity(i);