From 58dddb9d2f9d06c0212151804e354522093649c2 Mon Sep 17 00:00:00 2001 From: Joseph Henry Date: Fri, 24 Jun 2016 13:05:19 -0700 Subject: [PATCH] small SDK proxy ifdef fix, rewording of sentence in readme --- docs/android_zt_sdk.md | 2 +- .../app/src/main/AndroidManifest.xml | 2 +- .../joseph/example_app/MainActivity.java | 8 ++++++++ .../UserInterfaceState.xcuserstate | Bin 60027 -> 60385 bytes src/SDK_EthernetTap.cpp | 2 +- 5 files changed, 11 insertions(+), 3 deletions(-) diff --git a/docs/android_zt_sdk.md b/docs/android_zt_sdk.md index de5f92d..055360f 100644 --- a/docs/android_zt_sdk.md +++ b/docs/android_zt_sdk.md @@ -42,7 +42,7 @@ new Thread(new Runnable() { **Step 4: App permissions** - - In order for your application to write the auth keys to the internal storage you'll need to set a few permissions in your `AndroidManifest.xml` file: + - In order for your application to write the auth keys and network files to the internal storage you'll need to set a few permissions in your `AndroidManifest.xml` file at the same scope level as ``: ``` diff --git a/integrations/android/example_app/app/src/main/AndroidManifest.xml b/integrations/android/example_app/app/src/main/AndroidManifest.xml index cd21495..2faac4b 100644 --- a/integrations/android/example_app/app/src/main/AndroidManifest.xml +++ b/integrations/android/example_app/app/src/main/AndroidManifest.xml @@ -4,7 +4,7 @@ - + diff --git a/integrations/android/example_app/app/src/main/java/com/example/joseph/example_app/MainActivity.java b/integrations/android/example_app/app/src/main/java/com/example/joseph/example_app/MainActivity.java index 3964d41..b174bbf 100644 --- a/integrations/android/example_app/app/src/main/java/com/example/joseph/example_app/MainActivity.java +++ b/integrations/android/example_app/app/src/main/java/com/example/joseph/example_app/MainActivity.java @@ -5,6 +5,9 @@ import android.os.Bundle; import ZeroTier.SDK; +import java.net.InetSocketAddress; +import java.net.*; + public class MainActivity extends AppCompatActivity { @Override @@ -18,5 +21,10 @@ public class MainActivity extends AppCompatActivity { wrapper.startOneService(); // Calls to JNI code } }).start(); + + Socket s = new Socket(); + SocketAddress proxyAddr = new InetSocketAddress("0.0.0.0", 1337); + Proxy proxy = new Proxy(Proxy.Type.SOCKS, proxyAddr); + } } \ No newline at end of file diff --git a/integrations/apple/ZeroTierSDK_Apple/ZeroTierSDK_Apple.xcodeproj/project.xcworkspace/xcuserdata/Joseph.xcuserdatad/UserInterfaceState.xcuserstate b/integrations/apple/ZeroTierSDK_Apple/ZeroTierSDK_Apple.xcodeproj/project.xcworkspace/xcuserdata/Joseph.xcuserdatad/UserInterfaceState.xcuserstate index 08123fa9ebd7d69020e3ee670b62741450bdf3c5..8075abe88277ee80334a86222b5fa19320eee2ce 100644 GIT binary patch delta 25580 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%0Aw*hssU2>)p`c2XJ$6UgKB6Cg0{OeuAe8zMf&*$0 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 diff --git a/src/SDK_EthernetTap.cpp b/src/SDK_EthernetTap.cpp index 9f4c69a..0f567e6 100644 --- a/src/SDK_EthernetTap.cpp +++ b/src/SDK_EthernetTap.cpp @@ -136,7 +136,7 @@ NetconEthernetTap::NetconEthernetTap( // Start SOCKS5 Proxy server // For use when traditional syscall hooking isn't available (ex. some APIs on iOS and Android) - #if defined(USE_SOCKS_PROXY) + #if defined(USE_SOCKS_PROXY) || defined(__ANDROID__) StartProxy(sockPath); #endif