From b9a2427825aa24aaa9ecb565a197f01b754247f0 Mon Sep 17 00:00:00 2001 From: Joseph Henry Date: Fri, 24 Jun 2016 12:10:47 -0700 Subject: [PATCH] fixed android example project --- .../app/src/main/AndroidManifest.xml | 7 ++++++ .../src/main/java/{SDK => ZeroTier}/SDK.java | 2 +- .../joseph/example_app/MainActivity.java | 2 +- .../UserInterfaceState.xcuserstate | Bin 55056 -> 60027 bytes src/SDK_ServiceSetup.cpp | 21 ++++++++++++++---- src/SDK_ServiceSetup.hpp | 3 +++ 6 files changed, 29 insertions(+), 6 deletions(-) rename integrations/android/example_app/app/src/main/java/{SDK => ZeroTier}/SDK.java (88%) diff --git a/integrations/android/example_app/app/src/main/AndroidManifest.xml b/integrations/android/example_app/app/src/main/AndroidManifest.xml index 090b393..cd21495 100644 --- a/integrations/android/example_app/app/src/main/AndroidManifest.xml +++ b/integrations/android/example_app/app/src/main/AndroidManifest.xml @@ -2,12 +2,19 @@ + + + + + + + diff --git a/integrations/android/example_app/app/src/main/java/SDK/SDK.java b/integrations/android/example_app/app/src/main/java/ZeroTier/SDK.java similarity index 88% rename from integrations/android/example_app/app/src/main/java/SDK/SDK.java rename to integrations/android/example_app/app/src/main/java/ZeroTier/SDK.java index 2d354e6..f172041 100644 --- a/integrations/android/example_app/app/src/main/java/SDK/SDK.java +++ b/integrations/android/example_app/app/src/main/java/ZeroTier/SDK.java @@ -1,4 +1,4 @@ -package SDK; +package ZeroTier; public class SDK { public native void startOneService(); static { System.loadLibrary("ZeroTierOneJNI"); } // Loads JNI code 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 d44b559..3964d41 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 @@ -3,7 +3,7 @@ package com.example.joseph.example_app; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; -import SDK.SDK; +import ZeroTier.SDK; public class MainActivity extends AppCompatActivity { 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 73a9465a06feea86805e8e1bb373ea18b47c27a8..08123fa9ebd7d69020e3ee670b62741450bdf3c5 100644 GIT binary patch literal 60027 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�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 Pmi)h5|Nm` hpsp(ZeroTier::Utils::split(homeDir.c_str(),ZT_PATH_SEPARATOR_S,"","")); std::string ptmp; if (homeDir[0] == ZT_PATH_SEPARATOR) @@ -189,7 +197,7 @@ extern "C" { } } - chdir(current_dir); // Return to previous current working directory (at the request of Unity3D) + //chdir(current_dir); // Return to previous current working directory (at the request of Unity3D) LOGV("homeDir = %s", homeDir.c_str()); //Debug(homeDir.c_str()); @@ -199,8 +207,13 @@ extern "C" { ZeroTier::Utils::getSecureRandom(&randp,sizeof(randp)); int servicePort = 9000 + (randp % 1000); + LOGV("generated port\n"); + + for(;;) { zt1Service = ZeroTier::OneService::newInstance(homeDir.c_str(),servicePort); + LOGV("created new instance\n"); + switch(zt1Service->run()) { case ZeroTier::OneService::ONE_STILL_RUNNING: // shouldn't happen, run() won't return until done case ZeroTier::OneService::ONE_NORMAL_TERMINATION: diff --git a/src/SDK_ServiceSetup.hpp b/src/SDK_ServiceSetup.hpp index df09916..49b134e 100644 --- a/src/SDK_ServiceSetup.hpp +++ b/src/SDK_ServiceSetup.hpp @@ -40,6 +40,9 @@ extern "C" { #define INTERCEPT_DISABLED 222 #if defined(__ANDROID__) + // JNI naming convention: Java_PACKAGENAME_CLASSNAME_METHODNAME + /* If you define anything else in this file it *must* follow that convention + and any corresponding Java package/classes in your Android project must match this as well */ JNIEXPORT void JNICALL Java_ZeroTier_SDK_startOneService(JNIEnv *env, jobject thisObj); #else void *startOneService(void *thread_id);