public Event(string name, bool oneTimeOnly) { handle = new Java.Lang.Object( JNIEnv.CreateInstance("com/tapstream/sdk/Event", "(Ljava/lang/String;Z)V", new JValue(new Java.Lang.String(name)), new JValue(oneTimeOnly)), JniHandleOwnership.TransferGlobalRef); addPairId = JNIEnv.GetMethodID(JNIEnv.GetObjectClass(handle.Handle), "addPair", "(Ljava/lang/String;Ljava/lang/Object;)V"); }
void TestTypeConversion() { // Sanity checking to ensure that our binding stays correct. var v = ServerSocketFactory.Default; Log.Info("HelloApp", "ServerSocketFactory.Default={0}", v); var egl = EGLContext.EGL; Log.Info("HelloApp", "EGLContext.EGL={0}", egl); IEGL10 egl10 = egl.JavaCast <IEGL10>(); Log.Info("HelloApp", "(IEGL10) EGLContext.EGL={0}", egl10.GetType().FullName); IntPtr lref = JNIEnv.NewString("Hello, world!"); using (Java.Lang.Object s = Java.Lang.Object.GetObject <Java.Lang.Object>(lref, JniHandleOwnership.TransferLocalRef)) { if (s.GetType() != typeof(Java.Lang.String)) { throw new InvalidOperationException("Object.GetObject<T>() needs to return a Java.Lang.String!"); } } lref = JNIEnv.CreateInstance("android/gesture/Gesture", "()V"); using (Java.Lang.Object g = Java.Lang.Object.GetObject <Java.Lang.Object>(lref, JniHandleOwnership.TransferLocalRef)) if (g.GetType() != typeof(Android.Gestures.Gesture)) { throw new InvalidOperationException("Object.GetObject<T>() needs to return a Android.Gestures.Gesture!"); } }
public Config() { handle = new Java.Lang.Object( JNIEnv.CreateInstance("com/tapstream/sdk/Config", "()V"), JniHandleOwnership.TransferGlobalRef); cls = JNIEnv.GetObjectClass(handle.Handle); }
public CreateInstance_OverrideAbsListView_Adapter(Context context) : base( JNIEnv.CreateInstance( JcwType, "(Landroid/content/Context;)V", new JValue(context)), JniHandleOwnership.TransferLocalRef) { AdapterValue = new ArrayAdapter(context, 0); }
public void GetObject_ReturnsMostDerivedType() { IntPtr lref = JNIEnv.NewString("Hello, world!"); using (Java.Lang.Object s = Java.Lang.Object.GetObject <Java.Lang.Object>(lref, JniHandleOwnership.TransferLocalRef)) { Assert.AreEqual(typeof(Java.Lang.String), s.GetType()); } lref = JNIEnv.CreateInstance("android/gesture/Gesture", "()V"); using (Java.Lang.Object g = Java.Lang.Object.GetObject <Java.Lang.Object>(lref, JniHandleOwnership.TransferLocalRef)) { Assert.AreEqual(typeof(global::Android.Gestures.Gesture), g.GetType()); } }
void TestManualOverrides() { var adder = new Adder(); Console.WriteLine("Adder Class: {0}", adder.Class); var managedAdder = new ManagedAdder(); int result = Adder.Add(managedAdder, 3, 4); if (result != 14) { throw new InvalidOperationException("ManagedAdder.Add(3, 4) != 14!"); } var progress = new AdderProgress(); int sum = Adder.Sum(adder, progress, 1, 2, 3); if (sum != 6) { throw new InvalidOperationException("Adder.Sum(adder, 1, 2, 3) != 6! Was: " + sum + "."); } if (progress.AddInvocations != 3) { throw new InvalidOperationException("Adder.Sum(adder, 1, 2, 3) didn't invoke progress 3 times! Was: " + progress.AddInvocations + "."); } progress.AddInvocations = 0; sum = Adder.Sum(managedAdder, progress, 6, 7); if (sum != 38) { throw new InvalidOperationException("Adder.Sum(managedAdder, 6, 7) != 38! Was: " + sum + "."); } if (progress.AddInvocations != 2) { throw new InvalidOperationException("Adder.Sum(adder, 6, 7) didn't invoke progress 2 times! Was: " + progress.AddInvocations + "."); } IntPtr javaDefaultProgress = JNIEnv.CreateInstance("mono/android/test/Adder$DefaultProgress", "()V"); var progress2 = Java.Lang.Object.GetObject <IAdderProgress>(javaDefaultProgress, JniHandleOwnership.TransferLocalRef); Console.WriteLine("progress2 MCW: {0}", progress2.GetType().FullName); javaDefaultProgress = JNIEnv.CreateInstance("mono/android/test/Adder$DefaultProgress", "()V"); var progress3 = new Java.Lang.Object(javaDefaultProgress, JniHandleOwnership.TransferLocalRef) .JavaCast <IAdderProgress> (); Console.WriteLine("progress3 MCW: {0}", progress3.GetType().FullName); }
public SpassFingerprint (Context context) : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer) { if (Handle != IntPtr.Zero) return; //Create Android Callable Wrapper for derived type if (GetType () != typeof (SpassFingerprint)) { SetHandle (JNIEnv.CreateInstance (GetType (), "(Landroid/content/Context;)V", new JValue(context)), JniHandleOwnership.TransferLocalRef); return; } //Create the Handle from the constructor if (_constructor == IntPtr.Zero) _constructor = JNIEnv.GetMethodID (_classRef, "<init>", "(Landroid/content/Context;)V"); SetHandle (JNIEnv.NewObject (_classRef, _constructor, new JValue(context)), JniHandleOwnership.TransferLocalRef); }
public Spass() : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer) { if (Handle != IntPtr.Zero) { return; } //Create Android Callable Wrapper for derived type if (GetType() != typeof(Spass)) { SetHandle(JNIEnv.CreateInstance(GetType(), "()V"), JniHandleOwnership.TransferLocalRef); return; } //Create the Handle from the constructor if (_constructor == IntPtr.Zero) { _constructor = JNIEnv.GetMethodID(_classRef, "<init>", "()V"); } SetHandle(JNIEnv.NewObject(_classRef, _constructor), JniHandleOwnership.TransferLocalRef); }
public SpassInvalidStateException(string message, int errorType) : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer) { if (Handle != IntPtr.Zero) { return; } //Create Android Callable Wrapper for derived type if (GetType() != typeof(SpassInvalidStateException)) { SetHandle(JNIEnv.CreateInstance(GetType(), "(Ljava/lang/String;I)V"), JniHandleOwnership.TransferLocalRef); return; } //Create the Handle from the constructor if (_constructor == IntPtr.Zero) { _constructor = JNIEnv.GetMethodID(_classRef, "<init>", "(Ljava/lang/String;I)V"); } SetHandle(JNIEnv.NewObject(_classRef, _constructor, new JValue(new Java.Lang.String(message)), new JValue(errorType)), JniHandleOwnership.TransferLocalRef); }