in ACRA process, do not run everything in FDroidApp.onCreate()
The `android:process` statement in AndroidManifest.xml causes another process to be created to run CrashReportActivity. This was causing lots of things to be started/run twice including CleanCacheService and WifiStateChangeService.
This commit is contained in:
		
							parent
							
								
									9b96282cbf
								
							
						
					
					
						commit
						7eeab77aaf
					
				@ -20,6 +20,8 @@ package org.fdroid.fdroid;
 | 
			
		||||
 | 
			
		||||
import android.annotation.TargetApi;
 | 
			
		||||
import android.app.Activity;
 | 
			
		||||
import android.app.ActivityManager;
 | 
			
		||||
import android.app.ActivityManager.RunningAppProcessInfo;
 | 
			
		||||
import android.app.Application;
 | 
			
		||||
import android.bluetooth.BluetoothAdapter;
 | 
			
		||||
import android.bluetooth.BluetoothManager;
 | 
			
		||||
@ -183,7 +185,16 @@ public class FDroidApp extends Application {
 | 
			
		||||
                    .build());
 | 
			
		||||
        }
 | 
			
		||||
        updateLanguage();
 | 
			
		||||
 | 
			
		||||
        ACRA.init(this);
 | 
			
		||||
        // if this is the ACRA process, do not run the rest of onCreate()
 | 
			
		||||
        int pid = android.os.Process.myPid();
 | 
			
		||||
        ActivityManager manager = (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE);
 | 
			
		||||
        for (RunningAppProcessInfo processInfo : manager.getRunningAppProcesses()) {
 | 
			
		||||
            if (processInfo.pid == pid && "org.fdroid.fdroid:acra".equals(processInfo.processName)) {
 | 
			
		||||
                return;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        PRNGFixes.apply();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user