import android.content.SharedPreferences;\r
import android.content.res.Resources;\r
import android.os.Bundle;\r
+import android.os.Parcel;\r
import android.preference.PreferenceManager;\r
import android.text.TextUtils;\r
import android.util.Log;\r
/**\r
* Displays the Eula for the first time, reading it from a raw resource.\r
* \r
- * @version 2009-01-17\r
+ * @version 2009-01-17, 13:00 UTC\r
* @author Peli\r
*\r
*/\r
*/\r
private static final String EXTRA_LAUNCH_ACTIVITY_PACKAGE = "org.openintents.extra.launch_activity_package";\r
private static final String EXTRA_LAUNCH_ACTIVITY_CLASS = "org.openintents.extra.launch_activity_class";\r
+ private static final String EXTRA_LAUNCH_ACTIVITY_INTENT = "org.openintents.extra.launch_activity_intent";\r
\r
private Button mAgree;\r
private Button mDisagree;\r
\r
private String mLaunchPackage;\r
private String mLaunchClass;\r
+ private Intent mLaunchIntent;\r
\r
/** Called when the activity is first created. */\r
@Override\r
Bundle b = i.getExtras();\r
mLaunchPackage = b.getString(EXTRA_LAUNCH_ACTIVITY_PACKAGE);\r
mLaunchClass = b.getString(EXTRA_LAUNCH_ACTIVITY_CLASS);\r
+ //mLaunchIntent \r
+ mLaunchIntent = b.getParcelable(EXTRA_LAUNCH_ACTIVITY_INTENT);\r
\r
//mIntroContinue = (Button) findViewById(R.id.intro_continue);\r
mAgree = (Button) findViewById(RD.id.button1);\r
e.commit();\r
\r
// Call the activity that originally called checkEula()\r
- Intent i = new Intent();\r
- i.setClassName(mLaunchPackage, mLaunchClass);\r
+ Intent i;\r
+ if (mLaunchIntent != null) {\r
+ i = mLaunchIntent;\r
+ } else {\r
+ i = new Intent();\r
+ i.setClassName(mLaunchPackage, mLaunchClass);\r
+ }\r
+ i.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);\r
startActivity(i);\r
finish();\r
}\r
finish();\r
}\r
\r
+ public static boolean checkEula(Activity activity) {\r
+ return checkEula(activity, null);\r
+ }\r
+ \r
/**\r
* Test whether EULA has been accepted. Otherwise display EULA.\r
* \r
* @return True if Eula has been accepted.\r
*/\r
- public static boolean checkEula(Activity activity) {\r
+ public static boolean checkEula(Activity activity, Intent intent) {\r
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(activity);\r
boolean accepted = sp.getBoolean(PREFERENCES_EULA_ACCEPTED, false);\r
\r
Log.d(TAG, "Local class name: " + ci.getClassName());\r
i.putExtra(EXTRA_LAUNCH_ACTIVITY_PACKAGE, ci.getPackageName());\r
i.putExtra(EXTRA_LAUNCH_ACTIVITY_CLASS, ci.getClassName());\r
+ if (intent != null) {\r
+ i.putExtra(EXTRA_LAUNCH_ACTIVITY_INTENT, intent);\r
+ }\r
+ i.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);\r
activity.startActivity(i);\r
activity.finish();\r
return false;\r