Fix a bug in making FonBot a user/system app
authorMarius Gavrilescu <marius@ieval.ro>
Thu, 14 Mar 2013 15:10:49 +0000 (17:10 +0200)
committerMarius Gavrilescu <marius@ieval.ro>
Thu, 14 Mar 2013 15:10:49 +0000 (17:10 +0200)
If FonBot was moved to /system and then updated, it will have apks in
both /system/app and /data/app and ApplicationInfo.sourceDir will point
to the second one.

src/ro/ieval/fonbot/FonBotPreferenceActivity.java

index 8754825fb430e1f892296b3a009f53f97f7da8e8..05a6c65403bf710837a63461139a26c7afc4a655 100644 (file)
@@ -109,14 +109,15 @@ public final class FonBotPreferenceActivity extends PreferenceActivity {
                                        final String remountCommand="mount -o remount,rw /system";
                                        final String copyToSystemCommand="cp "+info.sourceDir+" /system/app/FonBot.apk";
                                        final String chmodSystemCommand="chmod 644 /system/app/FonBot.apk";
+                                       final String rmSystemCommand="rm /system/app/FonBot.apk";
                                        final String copyToUserCommand="cp "+info.sourceDir+" /data/app/FonBot.apk";
                                        final String chmodUserCommand="chmod 644 /data/app/FonBot.apk";
-                                       final String rmCommand="rm "+info.sourceDir;
+                                       final String rmUserCommand="rm "+info.sourceDir;
 
                                        if(isChecked){
                                                Runtime.getRuntime().exec(new String[]{
                                                                "su", "-c",
-                                                               remountCommand+';'+copyToSystemCommand+';'+chmodSystemCommand+';'+rmCommand
+                                                               remountCommand+';'+copyToSystemCommand+';'+chmodSystemCommand+';'+rmUserCommand
                                                }).waitFor();
 
                                                Toast.makeText(FonBotPreferenceActivity.this,
@@ -124,9 +125,8 @@ public final class FonBotPreferenceActivity extends PreferenceActivity {
                                        } else {
                                                Runtime.getRuntime().exec(new String[]{
                                                                "su", "-c",
-                                                               remountCommand+';'+copyToUserCommand+';'+chmodUserCommand+';'+rmCommand 
+                                                               remountCommand+';'+copyToUserCommand+';'+chmodUserCommand+';'+rmSystemCommand
                                                }).waitFor();
-
                                                Toast.makeText(FonBotPreferenceActivity.this,
                                                                "Reboot to make FonBot a non-system application", Toast.LENGTH_LONG).show();
                                        }
This page took 0.011969 seconds and 4 git commands to generate.