Changeset View
Changeset View
Standalone View
Standalone View
src/it/reyboz/bustorino/ActivityMain.java
Show All 28 Lines | |||||
import android.os.Build; | import android.os.Build; | ||||
import android.os.Bundle; | import android.os.Bundle; | ||||
import android.os.Handler; | import android.os.Handler; | ||||
import androidx.annotation.NonNull; | import androidx.annotation.NonNull; | ||||
import androidx.appcompat.app.ActionBar; | import androidx.appcompat.app.ActionBar; | ||||
import androidx.appcompat.widget.Toolbar; | import androidx.appcompat.widget.Toolbar; | ||||
import androidx.core.app.ActivityCompat; | import androidx.core.app.ActivityCompat; | ||||
import androidx.core.content.ContextCompat; | |||||
import androidx.preference.PreferenceManager; | import androidx.preference.PreferenceManager; | ||||
import androidx.work.BackoffPolicy; | import androidx.work.BackoffPolicy; | ||||
import androidx.work.Constraints; | import androidx.work.Constraints; | ||||
import androidx.work.ExistingPeriodicWorkPolicy; | import androidx.work.ExistingPeriodicWorkPolicy; | ||||
import androidx.work.NetworkType; | import androidx.work.NetworkType; | ||||
import androidx.work.PeriodicWorkRequest; | import androidx.work.PeriodicWorkRequest; | ||||
import androidx.work.WorkInfo; | import androidx.work.WorkInfo; | ||||
import androidx.work.WorkManager; | import androidx.work.WorkManager; | ||||
▲ Show 20 Lines • Show All 604 Lines • ▼ Show 20 Lines | class NearbyStopsRequester implements Runnable { | ||||
Activity runningAct; | Activity runningAct; | ||||
public NearbyStopsRequester(Activity runningAct) { | public NearbyStopsRequester(Activity runningAct) { | ||||
this.runningAct = runningAct; | this.runningAct = runningAct; | ||||
} | } | ||||
@Override | @Override | ||||
public void run() { | public void run() { | ||||
final boolean canRunPosition = Build.VERSION.SDK_INT < Build.VERSION_CODES.M || getOption(LOCATION_PERMISSION_GIVEN, false); | //final boolean canRunPosition = Build.VERSION.SDK_INT < Build.VERSION_CODES.M || getOption(LOCATION_PERMISSION_GIVEN, false); | ||||
final boolean noPermission = ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && | final boolean noPermission = ContextCompat.checkSelfPermission(getApplicationContext(), | ||||
ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED; | Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED; | ||||
//if we don't have the permission, we have to ask for it, if we haven't | //if we don't have the permission, we have to ask for it, if we haven't | ||||
// asked too many times before | // asked too many times before | ||||
if (noPermission) { | if (noPermission) { | ||||
if (!canRunPosition) { | |||||
pendingNearbyStopsRequest = true; | pendingNearbyStopsRequest = true; | ||||
Permissions.assertLocationPermissions(getApplicationContext(),runningAct); | Permissions.assertLocationPermissions(getApplicationContext(),runningAct); | ||||
Log.w(DEBUG_TAG, "Cannot get position: Asking permission, noPositionFromSys: " + noPermission); | Log.w(DEBUG_TAG, "Cannot get position: Asking permission, noPositionFromSys: " + noPermission); | ||||
return; | return; | ||||
} else { | |||||
Toast.makeText(getApplicationContext(), "Asked for permission position too many times", Toast.LENGTH_LONG).show(); | |||||
} | |||||
} else setOption(LOCATION_PERMISSION_GIVEN, true); | } else setOption(LOCATION_PERMISSION_GIVEN, true); | ||||
LocationManager locManager = (LocationManager) getSystemService(LOCATION_SERVICE); | LocationManager locManager = (LocationManager) getSystemService(LOCATION_SERVICE); | ||||
if (locManager == null) { | if (locManager == null) { | ||||
Log.e(DEBUG_TAG, "location manager is nihil, cannot create NearbyStopsFragment"); | Log.e(DEBUG_TAG, "location manager is nihil, cannot create NearbyStopsFragment"); | ||||
return; | return; | ||||
} | } | ||||
if (anyLocationProviderMatchesCriteria(locManager, cr, true) | if (anyLocationProviderMatchesCriteria(locManager, cr, true) | ||||
▲ Show 20 Lines • Show All 151 Lines • ▼ Show 20 Lines | public class ActivityMain extends GeneralActivity implements FragmentListenerMain { | ||||
} | } | ||||
private void openIceweasel(String url){ | private void openIceweasel(String url){ | ||||
utils.openIceweasel(url, this); | utils.openIceweasel(url, this); | ||||
} | } | ||||
} | } | ||||
No newline at end of file | No newline at end of file |
Public contents are in Creative Commons Attribution-ShareAlike 4.0 (CC-BY-SA) or GNU Free Documentation License (at your option) unless otherwise noted. · Contact / Register