Make checking app availability after external changes a little bit safer
This commit is contained in:
parent
6345195d41
commit
37b310575a
@ -109,8 +109,8 @@ public class AppDetails2 extends AppCompatActivity
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
supportPostponeEnterTransition();
|
||||
|
||||
resetCurrentApp(getPackageNameFromIntent(getIntent()));
|
||||
if (app == null) {
|
||||
String packageName = getPackageNameFromIntent(getIntent());
|
||||
if (!resetCurrentApp(packageName)) {
|
||||
finish();
|
||||
return;
|
||||
}
|
||||
@ -662,10 +662,12 @@ public class AppDetails2 extends AppCompatActivity
|
||||
* removed while F-Droid was in the background.
|
||||
* <p>
|
||||
* Shows a {@link Toast} if no {@link App} was found matching {@code packageName}.
|
||||
*
|
||||
* @return whether the {@link App} for a given {@code packageName} is still available
|
||||
*/
|
||||
private void resetCurrentApp(String packageName) {
|
||||
private boolean resetCurrentApp(String packageName) {
|
||||
if (TextUtils.isEmpty(packageName)) {
|
||||
return;
|
||||
return false;
|
||||
}
|
||||
app = AppProvider.Helper.findHighestPriorityMetadata(getContentResolver(), packageName);
|
||||
|
||||
@ -678,15 +680,18 @@ public class AppDetails2 extends AppCompatActivity
|
||||
}
|
||||
if (app == null) {
|
||||
Toast.makeText(this, R.string.no_such_app, Toast.LENGTH_LONG).show();
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private void onAppChanged() {
|
||||
recyclerView.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
resetCurrentApp(app.packageName);
|
||||
if (app == null) {
|
||||
String packageName = app != null ? app.packageName : null;
|
||||
if (!resetCurrentApp(packageName)) {
|
||||
AppDetails2.this.finish();
|
||||
return;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user