403 lines
12 KiB
Diff
403 lines
12 KiB
Diff
|
diff --git a/android/phoenix/AndroidManifest.xml b/android/phoenix/AndroidManifest.xml
|
||
|
index b686f73..f45cb74 100644
|
||
|
--- a/android/phoenix/AndroidManifest.xml
|
||
|
+++ b/android/phoenix/AndroidManifest.xml
|
||
|
@@ -19,7 +19,6 @@
|
||
|
android:icon="@drawable/ic_launcher"
|
||
|
android:label="@string/app_name"
|
||
|
android:hasCode="true">
|
||
|
- <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
|
||
|
<activity android:name="com.retroarch.browser.DisplayRefreshRateTest"/>
|
||
|
<activity android:name="com.retroarch.browser.mainmenu.MainMenuActivity" android:exported="true" android:launchMode="singleInstance">
|
||
|
<intent-filter>
|
||
|
diff --git a/android/phoenix/project.properties b/android/phoenix/project.properties
|
||
|
index 164426b..f984037 100644
|
||
|
--- a/android/phoenix/project.properties
|
||
|
+++ b/android/phoenix/project.properties
|
||
|
@@ -14,4 +14,3 @@
|
||
|
target=android-17
|
||
|
android.library.reference.1=libs/appcompat
|
||
|
android.library=false
|
||
|
-android.library.reference.2=libs/googleplay
|
||
|
diff --git a/android/phoenix/res/values/strings.xml b/android/phoenix/res/values/strings.xml
|
||
|
index b6e064e..04db4f8 100644
|
||
|
--- a/android/phoenix/res/values/strings.xml
|
||
|
+++ b/android/phoenix/res/values/strings.xml
|
||
|
@@ -76,7 +76,7 @@
|
||
|
<string name="asset_extraction">Asset Extraction</string>
|
||
|
|
||
|
<!-- GPL cores AlertDialog -->
|
||
|
- <string name="keep_cores">Keep cores</string>
|
||
|
+ <string name="keep_cores">Good for me</string>
|
||
|
<string name="remove_cores">Remove non-GPL cores</string>
|
||
|
|
||
|
<!-- Refresh Rate Set OS Class -->
|
||
|
diff --git a/android/phoenix/src/com/retroarch/browser/mainmenu/gplwaiver/GPLWaiverDialogFragment.java b/android/phoenix/src/com/retroarch/browser/mainmenu/gplwaiver/GPLWaiverDialogFragment.java
|
||
|
index 12b5cc0..41e5604 100644
|
||
|
--- a/android/phoenix/src/com/retroarch/browser/mainmenu/gplwaiver/GPLWaiverDialogFragment.java
|
||
|
+++ b/android/phoenix/src/com/retroarch/browser/mainmenu/gplwaiver/GPLWaiverDialogFragment.java
|
||
|
@@ -36,28 +36,6 @@ public final class GPLWaiverDialogFragment extends DialogFragment
|
||
|
gplDialog.setTitle(R.string.gpl_waiver);
|
||
|
gplDialog.setMessage(R.string.gpl_waiver_desc);
|
||
|
gplDialog.setPositiveButton(R.string.keep_cores, null);
|
||
|
- gplDialog.setNegativeButton(R.string.remove_cores, new DialogInterface.OnClickListener()
|
||
|
- {
|
||
|
- @Override
|
||
|
- public void onClick(DialogInterface dialog, int which)
|
||
|
- {
|
||
|
- final File[] libs = new File(getActivity().getApplicationInfo().dataDir, "/cores").listFiles();
|
||
|
- for (final File lib : libs)
|
||
|
- {
|
||
|
- ModuleWrapper module = new ModuleWrapper(getActivity(), lib);
|
||
|
-
|
||
|
- boolean gplv3 = module.getCoreLicense().equals("GPLv3");
|
||
|
- boolean gplv2 = module.getCoreLicense().equals("GPLv2");
|
||
|
-
|
||
|
- if (!gplv3 && !gplv2)
|
||
|
- {
|
||
|
- String libName = lib.getName();
|
||
|
- Log.i("GPL WAIVER", "Deleting non-GPL core " + libName + "...");
|
||
|
- lib.delete();
|
||
|
- }
|
||
|
- }
|
||
|
- }
|
||
|
- });
|
||
|
|
||
|
return gplDialog.create();
|
||
|
}
|
||
|
diff --git a/android/phoenix/src/com/retroarch/browser/retroactivity/RetroActivityCommon.java b/android/phoenix/src/com/retroarch/browser/retroactivity/RetroActivityCommon.java
|
||
|
index 7b6e499..56ea6a0 100644
|
||
|
--- a/android/phoenix/src/com/retroarch/browser/retroactivity/RetroActivityCommon.java
|
||
|
+++ b/android/phoenix/src/com/retroarch/browser/retroactivity/RetroActivityCommon.java
|
||
|
@@ -5,7 +5,7 @@ import com.retroarch.browser.preferences.util.UserPreferences;
|
||
|
/**
|
||
|
* Class which provides common methods for RetroActivity related classes.
|
||
|
*/
|
||
|
-public class RetroActivityCommon extends RetroActivityLocation
|
||
|
+public class RetroActivityCommon extends android.app.NativeActivity
|
||
|
{
|
||
|
@Override
|
||
|
public void onDestroy()
|
||
|
diff --git a/android/phoenix/src/com/retroarch/browser/retroactivity/RetroActivityLocation.java b/android/phoenix/src/com/retroarch/browser/retroactivity/RetroActivityLocation.java
|
||
|
deleted file mode 100644
|
||
|
index 5d590f9..0000000
|
||
|
--- a/android/phoenix/src/com/retroarch/browser/retroactivity/RetroActivityLocation.java
|
||
|
+++ /dev/null
|
||
|
@@ -1,316 +0,0 @@
|
||
|
-package com.retroarch.browser.retroactivity;
|
||
|
-
|
||
|
-import com.google.android.gms.common.ConnectionResult;
|
||
|
-import com.google.android.gms.common.GooglePlayServicesClient.ConnectionCallbacks;
|
||
|
-import com.google.android.gms.common.GooglePlayServicesClient.OnConnectionFailedListener;
|
||
|
-import com.google.android.gms.location.LocationClient;
|
||
|
-import com.google.android.gms.location.LocationListener;
|
||
|
-import com.google.android.gms.location.LocationRequest;
|
||
|
-import com.retroarch.browser.preferences.util.UserPreferences;
|
||
|
-
|
||
|
-import android.app.NativeActivity;
|
||
|
-import android.content.IntentSender;
|
||
|
-import android.content.SharedPreferences;
|
||
|
-import android.location.Location;
|
||
|
-import android.os.Bundle;
|
||
|
-import android.util.Log;
|
||
|
-import android.widget.Toast;
|
||
|
-
|
||
|
-/**
|
||
|
- * Class that implements location-based functionality for
|
||
|
- * the {@link RetroActivityFuture} and {@link RetroActivityPast}
|
||
|
- * activities.
|
||
|
- */
|
||
|
-public class RetroActivityLocation extends NativeActivity
|
||
|
-implements ConnectionCallbacks, OnConnectionFailedListener, LocationListener
|
||
|
-{
|
||
|
- /* LOCATION VARIABLES */
|
||
|
- private static int CONNECTION_FAILURE_RESOLUTION_REQUEST = 0;
|
||
|
- private LocationClient mLocationClient = null;
|
||
|
- private Location mCurrentLocation;
|
||
|
-
|
||
|
- // Define an object that holds accuracy and frequency parameters
|
||
|
- LocationRequest mLocationRequest = null;
|
||
|
- boolean mUpdatesRequested = false;
|
||
|
- boolean locationChanged = false;
|
||
|
- boolean location_service_running = false;
|
||
|
-
|
||
|
- /**
|
||
|
- * Called by Location Services when the request to connect the
|
||
|
- * client finishes successfully. At this point, you can
|
||
|
- * request the current location or start periodic updates
|
||
|
- */
|
||
|
- @Override
|
||
|
- public void onConnected(Bundle dataBundle)
|
||
|
- {
|
||
|
- if (mLocationClient == null)
|
||
|
- return;
|
||
|
-
|
||
|
- // Display the connection status
|
||
|
- Toast.makeText(this, "Connected", Toast.LENGTH_SHORT).show();
|
||
|
- location_service_running = true;
|
||
|
-
|
||
|
- // If already requested, start periodic updates
|
||
|
- if (mUpdatesRequested)
|
||
|
- {
|
||
|
- mLocationClient.requestLocationUpdates(mLocationRequest, this, null);
|
||
|
- }
|
||
|
- else
|
||
|
- {
|
||
|
- // Get last known location
|
||
|
- mCurrentLocation = mLocationClient.getLastLocation();
|
||
|
- locationChanged = true;
|
||
|
- }
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Called by Location Services if the connection to the
|
||
|
- * location client drops because of an error.
|
||
|
- */
|
||
|
- @Override
|
||
|
- public void onDisconnected()
|
||
|
- {
|
||
|
- if (mLocationClient == null)
|
||
|
- return;
|
||
|
-
|
||
|
- // Display the connection status
|
||
|
- Toast.makeText(this, "Disconnected. Please re-connect.", Toast.LENGTH_SHORT).show();
|
||
|
-
|
||
|
- // If the client is connected
|
||
|
- if (mLocationClient.isConnected())
|
||
|
- {
|
||
|
- /*
|
||
|
- * Remove location updates for a listener.
|
||
|
- * The current Activity is the listener, so
|
||
|
- * the argument is "this".
|
||
|
- */
|
||
|
- mLocationClient.removeLocationUpdates(this);
|
||
|
- }
|
||
|
-
|
||
|
- location_service_running = false;
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Called by Location Services if the attempt to
|
||
|
- * Location Services fails.
|
||
|
- */
|
||
|
- @Override
|
||
|
- public void onConnectionFailed(ConnectionResult connectionResult)
|
||
|
- {
|
||
|
- /*
|
||
|
- * Google Play services can resolve some errors it detects.
|
||
|
- * If the error has a resolution, try sending an Intent to
|
||
|
- * start a Google Play services activity that can resolve
|
||
|
- * error.
|
||
|
- */
|
||
|
- if (connectionResult.hasResolution())
|
||
|
- {
|
||
|
- try
|
||
|
- {
|
||
|
- // Start an Activity that tries to resolve the error
|
||
|
- connectionResult.startResolutionForResult(this, CONNECTION_FAILURE_RESOLUTION_REQUEST);
|
||
|
- }
|
||
|
- catch (IntentSender.SendIntentException e)
|
||
|
- {
|
||
|
- // Thrown if Google Play services cancelled the original PendingIntent
|
||
|
- e.printStackTrace();
|
||
|
- }
|
||
|
- }
|
||
|
- else
|
||
|
- {
|
||
|
- /*
|
||
|
- * If no resolution is available, display a dialog to the
|
||
|
- * user with the error.
|
||
|
- */
|
||
|
- Log.e("Connection failed", "error code: " + connectionResult.getErrorCode());
|
||
|
- }
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Sets the update interval at which location-based updates
|
||
|
- * should occur
|
||
|
- */
|
||
|
- public void onLocationSetInterval(int update_interval_in_ms, int distance_interval)
|
||
|
- {
|
||
|
- // Use high accuracy
|
||
|
- if (mLocationRequest == null)
|
||
|
- return;
|
||
|
-
|
||
|
- mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
|
||
|
-
|
||
|
- if (update_interval_in_ms == 0)
|
||
|
- mLocationRequest.setInterval(5 * 1000); // 5 seconds
|
||
|
- else
|
||
|
- mLocationRequest.setInterval(update_interval_in_ms);
|
||
|
-
|
||
|
- // Set the fastest update interval to 1 second
|
||
|
- mLocationRequest.setFastestInterval(1000);
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Initializing methods for location based functionality.
|
||
|
- */
|
||
|
- public void onLocationInit()
|
||
|
- {
|
||
|
- /*
|
||
|
- * Create a new location client, using the enclosing class to
|
||
|
- * handle callbacks.
|
||
|
- */
|
||
|
- if (mLocationClient == null)
|
||
|
- mLocationClient = new LocationClient(this, this, this);
|
||
|
-
|
||
|
- // Start with updates turned off
|
||
|
- mUpdatesRequested = false;
|
||
|
-
|
||
|
- // Create the LocationRequest object
|
||
|
- if (mLocationRequest == null)
|
||
|
- mLocationRequest = LocationRequest.create();
|
||
|
-
|
||
|
- onLocationSetInterval(0, 0);
|
||
|
- }
|
||
|
-
|
||
|
-
|
||
|
- /**
|
||
|
- * Executed upon starting the {@link LocationClient}.
|
||
|
- */
|
||
|
- public void onLocationStart()
|
||
|
- {
|
||
|
- if (mLocationClient == null)
|
||
|
- return;
|
||
|
-
|
||
|
- mUpdatesRequested = true;
|
||
|
-
|
||
|
- // Connect the client.
|
||
|
- mLocationClient.connect();
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Free up location services resources.
|
||
|
- */
|
||
|
- public void onLocationFree()
|
||
|
- {
|
||
|
- /* TODO/FIXME */
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Executed upon stopping the location client.
|
||
|
- * Does nothing if called when the client is not started.
|
||
|
- */
|
||
|
- public void onLocationStop()
|
||
|
- {
|
||
|
- // Disconnecting the client invalidates it.
|
||
|
- if (mLocationClient != null && mUpdatesRequested)
|
||
|
- mLocationClient.disconnect();
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Gets the latitude at the current location in degrees.
|
||
|
- *
|
||
|
- * @return the latitude at the current location.
|
||
|
- */
|
||
|
- public double onLocationGetLatitude()
|
||
|
- {
|
||
|
- return mCurrentLocation.getLatitude();
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Gets the longitude at the current location in degrees.
|
||
|
- *
|
||
|
- * @return the longitude at the current location.
|
||
|
- */
|
||
|
- public double onLocationGetLongitude()
|
||
|
- {
|
||
|
- return mCurrentLocation.getLongitude();
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Gets the horizontal accuracy of the current location
|
||
|
- * in meters. (NOTE: There seems to be no vertical accuracy
|
||
|
- * for a given location with the Android location API)
|
||
|
- *
|
||
|
- * @return the horizontal accuracy of the current position.
|
||
|
- */
|
||
|
- public double onLocationGetHorizontalAccuracy()
|
||
|
- {
|
||
|
- return mCurrentLocation.getAccuracy();
|
||
|
- }
|
||
|
-
|
||
|
- /**
|
||
|
- * Tells us whether the location listener callback has
|
||
|
- * updated the current location since the last time
|
||
|
- * we polled.
|
||
|
- *
|
||
|
- * @return true if location has changed, false if location has not changed.
|
||
|
- */
|
||
|
- public boolean onLocationHasChanged()
|
||
|
- {
|
||
|
- boolean hasChanged = locationChanged;
|
||
|
-
|
||
|
- // Reset flag
|
||
|
- if (hasChanged)
|
||
|
- locationChanged = false;
|
||
|
-
|
||
|
- return hasChanged;
|
||
|
- }
|
||
|
-
|
||
|
- // Define the callback method that receives location updates
|
||
|
- @Override
|
||
|
- public void onLocationChanged(Location location)
|
||
|
- {
|
||
|
- if (!location_service_running)
|
||
|
- return;
|
||
|
-
|
||
|
- locationChanged = true;
|
||
|
- mCurrentLocation = location;
|
||
|
-
|
||
|
- // Report to the UI that the location was updated
|
||
|
- String msg = "Updated Location: " + location.getLatitude() + ", " + location.getLongitude();
|
||
|
- Log.i("RetroArch GPS", msg);
|
||
|
- //Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
|
||
|
- }
|
||
|
-
|
||
|
- @Override
|
||
|
- public void onPause()
|
||
|
- {
|
||
|
- // Save the current setting for updates
|
||
|
- SharedPreferences prefs = UserPreferences.getPreferences(this);
|
||
|
- SharedPreferences.Editor edit = prefs.edit();
|
||
|
- edit.putBoolean("LOCATION_UPDATES_ON", mUpdatesRequested);
|
||
|
- edit.commit();
|
||
|
-
|
||
|
- super.onPause();
|
||
|
- }
|
||
|
-
|
||
|
- @Override
|
||
|
- public void onResume()
|
||
|
- {
|
||
|
- SharedPreferences prefs = UserPreferences.getPreferences(this);
|
||
|
- SharedPreferences.Editor edit = prefs.edit();
|
||
|
-
|
||
|
- /*
|
||
|
- * Get any previous setting for location updates
|
||
|
- * Gets "false" if an error occurs
|
||
|
- */
|
||
|
- if (prefs.contains("LOCATION_UPDATES_ON"))
|
||
|
- {
|
||
|
- mUpdatesRequested = prefs.getBoolean("LOCATION_UPDATES_ON", false);
|
||
|
- if (mUpdatesRequested)
|
||
|
- location_service_running = true;
|
||
|
- }
|
||
|
- else // Otherwise, turn off location updates
|
||
|
- {
|
||
|
- edit.putBoolean("LOCATION_UPDATES_ON", false);
|
||
|
- edit.commit();
|
||
|
- location_service_running = false;
|
||
|
- }
|
||
|
-
|
||
|
- super.onResume();
|
||
|
- }
|
||
|
-
|
||
|
- @Override
|
||
|
- public void onStop()
|
||
|
- {
|
||
|
- onLocationStop();
|
||
|
- super.onStop();
|
||
|
- }
|
||
|
-}
|