From b545aed175ac86829ca172c99a9a793cadacd2fa Mon Sep 17 00:00:00 2001 From: Joseph Henry Date: Fri, 24 Jun 2016 11:07:57 -0700 Subject: [PATCH] refactored android example_app --- docs/android_zt_sdk.md | 11 ++++++++++- .../android/example_app/app/build.gradle | 2 +- .../ExampleInstrumentationTest.java | 4 ++-- .../app/src/main/AndroidManifest.xml | 6 +----- .../ZeroTierSDK.java => SDK/SDK.java} | 4 ++-- .../MainActivity.java | 9 +++++---- .../app/src/main/res/layout/activity_main.xml | 2 +- .../app/src/main/res/values/strings.xml | 2 +- .../ExampleUnitTest.java | 2 +- .../android/example_app/gradle.properties | 3 --- .../UserInterfaceState.xcuserstate | Bin 54600 -> 55056 bytes make-mac.mk | 13 +++++++++++-- src/SDK_ServiceSetup.hpp | 2 +- 13 files changed, 36 insertions(+), 24 deletions(-) rename integrations/android/example_app/app/src/androidTest/java/com/example/joseph/{example_android_app => example_app}/ExampleInstrumentationTest.java (83%) rename integrations/android/example_app/app/src/main/java/{ZeroTierSDK/ZeroTierSDK/ZeroTierSDK.java => SDK/SDK.java} (65%) rename integrations/android/example_app/app/src/main/java/com/example/joseph/{example_android_app => example_app}/MainActivity.java (81%) rename integrations/android/example_app/app/src/test/java/com/example/joseph/{example_android_app => example_app}/ExampleUnitTest.java (88%) diff --git a/docs/android_zt_sdk.md b/docs/android_zt_sdk.md index e19cd3f..de5f92d 100644 --- a/docs/android_zt_sdk.md +++ b/docs/android_zt_sdk.md @@ -23,13 +23,14 @@ In this example we aim to set up a minimal [Android Studio](https://developer.an ``` package ZeroTierSDK; -public class ZeroTierSDK_Wrapper { +public class ZeroTierSDK { public native void startOneService(); static { System.loadLibrary("ZeroTierOneJNI"); } // Loads JNI code } ``` - And now, start the service: + ``` new Thread(new Runnable() { public void run() { @@ -55,3 +56,11 @@ new Thread(new Runnable() { **Step 6: Join a network!** - Simply call `zt_join_network("XXXXXXXXXXXXXXXX")` + + + +*** + +*Note for the curious on JNI naming conventions: In order to reference a symbol in the JNI library you need to structure the package and class in your Android Studio project in a very particular way. For example, in the ZeroTierSDK we define a function called `Java_ZeroTier_SDK_startOneService`, the name can be broken down as follows: `Java_PACKAGENAME_CLASSNAME_startOneService`, so as we've defined it, you must create a package called `ZeroTier` and add a class called `SDK`.* + + diff --git a/integrations/android/example_app/app/build.gradle b/integrations/android/example_app/app/build.gradle index ec81786..ee857cf 100644 --- a/integrations/android/example_app/app/build.gradle +++ b/integrations/android/example_app/app/build.gradle @@ -4,7 +4,7 @@ android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { - applicationId "com.example.joseph.example_android_app" + applicationId "com.example.joseph.example_app" minSdkVersion 15 targetSdkVersion 23 versionCode 1 diff --git a/integrations/android/example_app/app/src/androidTest/java/com/example/joseph/example_android_app/ExampleInstrumentationTest.java b/integrations/android/example_app/app/src/androidTest/java/com/example/joseph/example_app/ExampleInstrumentationTest.java similarity index 83% rename from integrations/android/example_app/app/src/androidTest/java/com/example/joseph/example_android_app/ExampleInstrumentationTest.java rename to integrations/android/example_app/app/src/androidTest/java/com/example/joseph/example_app/ExampleInstrumentationTest.java index 449fb8e..9bf64aa 100644 --- a/integrations/android/example_app/app/src/androidTest/java/com/example/joseph/example_android_app/ExampleInstrumentationTest.java +++ b/integrations/android/example_app/app/src/androidTest/java/com/example/joseph/example_app/ExampleInstrumentationTest.java @@ -1,4 +1,4 @@ -package com.example.joseph.example_android_app; +package com.example.joseph.example_app; import android.content.Context; import android.support.test.InstrumentationRegistry; @@ -24,6 +24,6 @@ public class ExampleInstrumentationTest { // Context of the app under test. Context appContext = InstrumentationRegistry.getTargetContext(); - assertEquals("com.example.joseph.example_android_app", appContext.getPackageName()); + assertEquals("com.example.joseph.example_app", appContext.getPackageName()); } } \ No newline at end of file diff --git a/integrations/android/example_app/app/src/main/AndroidManifest.xml b/integrations/android/example_app/app/src/main/AndroidManifest.xml index 48d32c8..090b393 100644 --- a/integrations/android/example_app/app/src/main/AndroidManifest.xml +++ b/integrations/android/example_app/app/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ + package="com.example.joseph.example_app"> - - - - diff --git a/integrations/android/example_app/app/src/main/java/ZeroTierSDK/ZeroTierSDK/ZeroTierSDK.java b/integrations/android/example_app/app/src/main/java/SDK/SDK.java similarity index 65% rename from integrations/android/example_app/app/src/main/java/ZeroTierSDK/ZeroTierSDK/ZeroTierSDK.java rename to integrations/android/example_app/app/src/main/java/SDK/SDK.java index 8d416f9..2d354e6 100644 --- a/integrations/android/example_app/app/src/main/java/ZeroTierSDK/ZeroTierSDK/ZeroTierSDK.java +++ b/integrations/android/example_app/app/src/main/java/SDK/SDK.java @@ -1,5 +1,5 @@ -package ZeroTierSDK.ZeroTierSDK; -public class ZeroTierSDK { +package SDK; +public class SDK { public native void startOneService(); static { System.loadLibrary("ZeroTierOneJNI"); } // Loads JNI code } \ No newline at end of file diff --git a/integrations/android/example_app/app/src/main/java/com/example/joseph/example_android_app/MainActivity.java b/integrations/android/example_app/app/src/main/java/com/example/joseph/example_app/MainActivity.java similarity index 81% rename from integrations/android/example_app/app/src/main/java/com/example/joseph/example_android_app/MainActivity.java rename to integrations/android/example_app/app/src/main/java/com/example/joseph/example_app/MainActivity.java index 2099e6c..d44b559 100644 --- a/integrations/android/example_app/app/src/main/java/com/example/joseph/example_android_app/MainActivity.java +++ b/integrations/android/example_app/app/src/main/java/com/example/joseph/example_app/MainActivity.java @@ -1,8 +1,10 @@ -package com.example.joseph.example_android_app; +package com.example.joseph.example_app; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; +import SDK.SDK; + public class MainActivity extends AppCompatActivity { @Override @@ -12,10 +14,9 @@ public class MainActivity extends AppCompatActivity { new Thread(new Runnable() { public void run() { - ZeroTierSDK wrapper = new ZeroTierSDK(); + SDK wrapper = new SDK(); wrapper.startOneService(); // Calls to JNI code } }).start(); - } -} +} \ No newline at end of file diff --git a/integrations/android/example_app/app/src/main/res/layout/activity_main.xml b/integrations/android/example_app/app/src/main/res/layout/activity_main.xml index 754c23e..ce1cf4c 100644 --- a/integrations/android/example_app/app/src/main/res/layout/activity_main.xml +++ b/integrations/android/example_app/app/src/main/res/layout/activity_main.xml @@ -5,7 +5,7 @@ android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context="com.example.joseph.example_android_app.MainActivity"> + tools:context="com.example.joseph.example_app.MainActivity"> - Example_Android_App + example_app diff --git a/integrations/android/example_app/app/src/test/java/com/example/joseph/example_android_app/ExampleUnitTest.java b/integrations/android/example_app/app/src/test/java/com/example/joseph/example_app/ExampleUnitTest.java similarity index 88% rename from integrations/android/example_app/app/src/test/java/com/example/joseph/example_android_app/ExampleUnitTest.java rename to integrations/android/example_app/app/src/test/java/com/example/joseph/example_app/ExampleUnitTest.java index 4448952..33fc216 100644 --- a/integrations/android/example_app/app/src/test/java/com/example/joseph/example_android_app/ExampleUnitTest.java +++ b/integrations/android/example_app/app/src/test/java/com/example/joseph/example_app/ExampleUnitTest.java @@ -1,4 +1,4 @@ -package com.example.joseph.example_android_app; +package com.example.joseph.example_app; import org.junit.Test; diff --git a/integrations/android/example_app/gradle.properties b/integrations/android/example_app/gradle.properties index 5eb079f..aac7c9b 100644 --- a/integrations/android/example_app/gradle.properties +++ b/integrations/android/example_app/gradle.properties @@ -11,9 +11,6 @@ # The setting is particularly useful for tweaking memory settings. org.gradle.jvmargs=-Xmx1536m -org.gradle.daemon=true -org.gradle.parallel=true - # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 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 d59d34f088204c5e80aed6898411a1cfa6944968..73a9465a06feea86805e8e1bb373ea18b47c27a8 100644 GIT binary patch delta 23441 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 fma}cyw!PcVZ@aSX7G$9e6BC5ySA)