commit 150488dd9c04594cc646e38e728a16659683e6aa
Author: Nathan Freitas <[email protected]>
Date:   Thu Apr 2 23:11:04 2015 -0400

    fixes for onboot logic and handling
---
 AndroidManifest.xml                                |   16 +++++-
 .../torproject/android/service/OnBootReceiver.java |    7 +--
 .../torproject/android/vpn/OrbotVpnService.java    |   51 ++++++++++----------
 3 files changed, 43 insertions(+), 31 deletions(-)

diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 2dd7d1c..18e13c3 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -17,6 +17,7 @@
        <uses-permission android:name="android.permission.INTERNET"/>
        <uses-permission 
android:name="android.permission.ACCESS_NETWORK_STATE"/>
        <uses-permission 
android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+       
 
     <application android:name="org.torproject.android.OrbotApp" 
android:icon="@drawable/ic_launcher"
      android:label="@string/app_name" 
@@ -89,7 +90,8 @@
                                
                                
        <activity 
android:name="org.torproject.android.ui.wizard.PromoAppsActivity" 
android:exported="false"/>
-  
org.torproject.android.ui.wizard.ChooseLocaleWizardActivityui.ChooseLocaleWizardActivity"
 android:exported="false"/>
+       <activity 
android:name="org.torproject.android.ui.wizard.ChooseLocaleWizardActivity" 
android:exported="false"/>
+       
        
        <activity android:name=".settings.SettingsPreferences"  
android:label="@string/app_name"/>
         <activity android:name=".settings.AppManager"  
android:label="@string/app_name"/>       
@@ -105,11 +107,21 @@
            </intent-filter>
        </service>
        
-       <receiver android:name="org.torproject.android.service.OnBootReceiver">
+       <receiver android:name="org.torproject.android.service.OnBootReceiver"
+           android:enabled="true" android:exported="true"
+           
+           >
                        <intent-filter>
                                <action 
android:name="android.intent.action.BOOT_COMPLETED" />
+                                 <category 
android:name="android.intent.category.HOME" />
+                       </intent-filter>
+                       <intent-filter>
                                <action 
android:name="android.intent.action.QUICKBOOT_POWERON" />
+                                 <category 
android:name="android.intent.category.HOME" />
+                       </intent-filter>
+                       <intent-filter>
                                <action 
android:name="android.intent.action.MEDIA_MOUNTED"/>
+                                 <category 
android:name="android.intent.category.HOME" />
                        </intent-filter>
                </receiver>
                
diff --git a/src/org/torproject/android/service/OnBootReceiver.java 
b/src/org/torproject/android/service/OnBootReceiver.java
index 340bfab..9ed66ae 100644
--- a/src/org/torproject/android/service/OnBootReceiver.java
+++ b/src/org/torproject/android/service/OnBootReceiver.java
@@ -20,12 +20,13 @@ public class OnBootReceiver extends BroadcastReceiver {
                
                if (startOnBoot)
                {
-                       if (useVPN)
-                               startVpnService(context);
                        
                        startService(TorServiceConstants.CMD_INIT,context);
                        startService(TorServiceConstants.CMD_START,context);    
        
-               
+                       
+                       if (useVPN)
+                               startVpnService(context);
+                       
                }
 
        }
diff --git a/src/org/torproject/android/vpn/OrbotVpnService.java 
b/src/org/torproject/android/vpn/OrbotVpnService.java
index 93a4d0a..ec841cb 100644
--- a/src/org/torproject/android/vpn/OrbotVpnService.java
+++ b/src/org/torproject/android/vpn/OrbotVpnService.java
@@ -28,8 +28,11 @@ import 
android.content.pm.PackageManager.NameNotFoundException;
 import android.net.VpnService;
 import android.os.Build;
 import android.os.Handler;
+import android.os.IBinder;
 import android.os.Message;
+import android.os.Parcel;
 import android.os.ParcelFileDescriptor;
+import android.os.RemoteException;
 import android.util.Log;
 import android.widget.Toast;
 
@@ -37,6 +40,7 @@ import com.runjva.sourceforge.jsocks.protocol.ProxyServer;
 import com.runjva.sourceforge.jsocks.server.ServerAuthenticatorNone;
 
 @TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
+
 public class OrbotVpnService extends VpnService implements Handler.Callback {
     private static final String TAG = "OrbotVpnService";
 
@@ -217,37 +221,32 @@ public class OrbotVpnService extends VpnService 
implements Handler.Callback {
     
         
     }
-
+    
     @Override
     public void onRevoke() {
-        
-        new Thread ()
+    
+        try
         {
-            public void run()
+               Log.d(TAG,"closing interface, destroying VPN interface");
+            
+               //Tun2Socks.Stop();
+               
+               if (mInterface != null)
             {
-                try
-                {
-                       Log.d(TAG,"closing interface, destroying VPN 
interface");
-                    
-                       //Tun2Socks.Stop();
-                       
-                       if (mInterface != null)
-                    {
-                               mInterface.close();
-                               mInterface = null;
-                    }
-                       
-                }
-                catch (Exception e)
-                {
-                    Log.d(TAG,"error stopping tun2socks",e);
-                }
-                   catch (Error e)
-                   {
-                       Log.d(TAG,"error stopping tun2socks",e);
-                   }
+                       mInterface.close();
+                       mInterface = null;
             }
-        }.start();
+               
+        }
+        catch (Exception e)
+        {
+            Log.d(TAG,"error stopping tun2socks",e);
+        }
+        catch (Error e)
+        {
+            Log.d(TAG,"error stopping tun2socks",e);
+        }
+
         super.onRevoke();
     }
     



_______________________________________________
tor-commits mailing list
[email protected]
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits

Reply via email to