diff --git a/Fresco.Animated.Base/Additions/Additions.cs b/Fresco.Animated.Base/Additions/Additions.cs new file mode 100644 index 0000000..5f28270 --- /dev/null +++ b/Fresco.Animated.Base/Additions/Additions.cs @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Fresco.Animated.Base/Additions/ExperimentalBitmapAnimationDrawableFactory.cs b/Fresco.Animated.Base/Additions/ExperimentalBitmapAnimationDrawableFactory.cs deleted file mode 100644 index 0847550..0000000 --- a/Fresco.Animated.Base/Additions/ExperimentalBitmapAnimationDrawableFactory.cs +++ /dev/null @@ -1,285 +0,0 @@ -using System; -using System.Collections.Generic; -using Android.Graphics.Drawables; -using Android.Runtime; -using Com.Facebook.Imagepipeline.Drawable; -using Com.Facebook.Imagepipeline.Image; - -namespace Com.Facebook.Fresco.Animation.Factory -{ - - // Metadata.xml XPath class reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory']" - [global::Android.Runtime.Register("com/facebook/fresco/animation/factory/ExperimentalBitmapAnimationDrawableFactory", DoNotGenerateAcw = true)] - public partial class ExperimentalBitmapAnimationDrawableFactory : global::Java.Lang.Object, global::Com.Facebook.Imagepipeline.Drawable.IDrawableFactory - { - - - // Metadata.xml XPath field reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory']/field[@name='CACHING_STRATEGY_FRESCO_CACHE']" - [Register("CACHING_STRATEGY_FRESCO_CACHE")] - public const int CachingStrategyFrescoCache = (int)1; - - // Metadata.xml XPath field reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory']/field[@name='CACHING_STRATEGY_FRESCO_CACHE_NO_REUSING']" - [Register("CACHING_STRATEGY_FRESCO_CACHE_NO_REUSING")] - public const int CachingStrategyFrescoCacheNoReusing = (int)2; - - // Metadata.xml XPath field reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory']/field[@name='CACHING_STRATEGY_KEEP_LAST_CACHE']" - [Register("CACHING_STRATEGY_KEEP_LAST_CACHE")] - public const int CachingStrategyKeepLastCache = (int)3; - - // Metadata.xml XPath field reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory']/field[@name='CACHING_STRATEGY_NO_CACHE']" - [Register("CACHING_STRATEGY_NO_CACHE")] - public const int CachingStrategyNoCache = (int)0; - // Metadata.xml XPath class reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory.AnimationFrameCacheKey']" - [global::Android.Runtime.Register("com/facebook/fresco/animation/factory/ExperimentalBitmapAnimationDrawableFactory$AnimationFrameCacheKey", DoNotGenerateAcw = true)] - public partial class AnimationFrameCacheKey : global::Java.Lang.Object, global::Com.Facebook.Cache.Common.ICacheKey - { - - internal static new IntPtr java_class_handle; - internal static new IntPtr class_ref - { - get - { - return JNIEnv.FindClass("com/facebook/fresco/animation/factory/ExperimentalBitmapAnimationDrawableFactory$AnimationFrameCacheKey", ref java_class_handle); - } - } - - protected override IntPtr ThresholdClass - { - get { return class_ref; } - } - - protected override global::System.Type ThresholdType - { - get { return typeof(AnimationFrameCacheKey); } - } - - protected AnimationFrameCacheKey(IntPtr javaReference, JniHandleOwnership transfer) : base(javaReference, transfer) { } - - static IntPtr id_ctor_I; - // Metadata.xml XPath constructor reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory.AnimationFrameCacheKey']/constructor[@name='ExperimentalBitmapAnimationDrawableFactory.AnimationFrameCacheKey' and count(parameter)=1 and parameter[1][@type='int']]" - [Register(".ctor", "(I)V", "")] - public unsafe AnimationFrameCacheKey(int p0) - : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer) - { - if (((global::Java.Lang.Object)this).Handle != IntPtr.Zero) - return; - - try - { - JValue* __args = stackalloc JValue[1]; - __args[0] = new JValue(p0); - if (((object)this).GetType() != typeof(AnimationFrameCacheKey)) - { - SetHandle( - global::Android.Runtime.JNIEnv.StartCreateInstance(((object)this).GetType(), "(I)V", __args), - JniHandleOwnership.TransferLocalRef); - global::Android.Runtime.JNIEnv.FinishCreateInstance(((global::Java.Lang.Object)this).Handle, "(I)V", __args); - return; - } - - if (id_ctor_I == IntPtr.Zero) - id_ctor_I = JNIEnv.GetMethodID(class_ref, "", "(I)V"); - SetHandle( - global::Android.Runtime.JNIEnv.StartCreateInstance(class_ref, id_ctor_I, __args), - JniHandleOwnership.TransferLocalRef); - JNIEnv.FinishCreateInstance(((global::Java.Lang.Object)this).Handle, class_ref, id_ctor_I, __args); - } - finally - { - } - } - - static Delegate cb_getUriString; -#pragma warning disable 0169 - static Delegate GetGetUriStringHandler() - { - if (cb_getUriString == null) - cb_getUriString = JNINativeWrapper.CreateDelegate((Func)n_GetUriString); - return cb_getUriString; - } - - static IntPtr n_GetUriString(IntPtr jnienv, IntPtr native__this) - { - global::Com.Facebook.Fresco.Animation.Factory.ExperimentalBitmapAnimationDrawableFactory.AnimationFrameCacheKey __this = global::Java.Lang.Object.GetObject(jnienv, native__this, JniHandleOwnership.DoNotTransfer); - return JNIEnv.NewString(__this.UriString); - } -#pragma warning restore 0169 - - static IntPtr id_getUriString; - public virtual unsafe string UriString - { - // Metadata.xml XPath method reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory.AnimationFrameCacheKey']/method[@name='getUriString' and count(parameter)=0]" - [Register("getUriString", "()Ljava/lang/String;", "GetGetUriStringHandler")] - get - { - if (id_getUriString == IntPtr.Zero) - id_getUriString = JNIEnv.GetMethodID(class_ref, "getUriString", "()Ljava/lang/String;"); - try - { - - if (((object)this).GetType() == ThresholdType) - return JNIEnv.GetString(JNIEnv.CallObjectMethod(((global::Java.Lang.Object)this).Handle, id_getUriString), JniHandleOwnership.TransferLocalRef); - else - return JNIEnv.GetString(JNIEnv.CallNonvirtualObjectMethod(((global::Java.Lang.Object)this).Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "getUriString", "()Ljava/lang/String;")), JniHandleOwnership.TransferLocalRef); - } - finally - { - } - } - } - - static Delegate cb_containsUri_Landroid_net_Uri_; -#pragma warning disable 0169 - static Delegate GetContainsUri_Landroid_net_Uri_Handler() - { - if (cb_containsUri_Landroid_net_Uri_ == null) - cb_containsUri_Landroid_net_Uri_ = JNINativeWrapper.CreateDelegate((Func)n_ContainsUri_Landroid_net_Uri_); - return cb_containsUri_Landroid_net_Uri_; - } - - static bool n_ContainsUri_Landroid_net_Uri_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0) - { - global::Com.Facebook.Fresco.Animation.Factory.ExperimentalBitmapAnimationDrawableFactory.AnimationFrameCacheKey __this = global::Java.Lang.Object.GetObject(jnienv, native__this, JniHandleOwnership.DoNotTransfer); - global::Android.Net.Uri p0 = global::Java.Lang.Object.GetObject(native_p0, JniHandleOwnership.DoNotTransfer); - bool __ret = __this.ContainsUri(p0); - return __ret; - } -#pragma warning restore 0169 - - static IntPtr id_containsUri_Landroid_net_Uri_; - // Metadata.xml XPath method reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory.AnimationFrameCacheKey']/method[@name='containsUri' and count(parameter)=1 and parameter[1][@type='android.net.Uri']]" - [Register("containsUri", "(Landroid/net/Uri;)Z", "GetContainsUri_Landroid_net_Uri_Handler")] - public virtual unsafe bool ContainsUri(global::Android.Net.Uri p0) - { - if (id_containsUri_Landroid_net_Uri_ == IntPtr.Zero) - id_containsUri_Landroid_net_Uri_ = JNIEnv.GetMethodID(class_ref, "containsUri", "(Landroid/net/Uri;)Z"); - try - { - JValue* __args = stackalloc JValue[1]; - __args[0] = new JValue(p0); - - bool __ret; - if (((object)this).GetType() == ThresholdType) - __ret = JNIEnv.CallBooleanMethod(((global::Java.Lang.Object)this).Handle, id_containsUri_Landroid_net_Uri_, __args); - else - __ret = JNIEnv.CallNonvirtualBooleanMethod(((global::Java.Lang.Object)this).Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "containsUri", "(Landroid/net/Uri;)Z"), __args); - return __ret; - } - finally - { - } - } - - } - - internal static new IntPtr java_class_handle; - internal static new IntPtr class_ref - { - get - { - return JNIEnv.FindClass("com/facebook/fresco/animation/factory/ExperimentalBitmapAnimationDrawableFactory", ref java_class_handle); - } - } - - protected override IntPtr ThresholdClass - { - get { return class_ref; } - } - - protected override global::System.Type ThresholdType - { - get { return typeof(ExperimentalBitmapAnimationDrawableFactory); } - } - - protected ExperimentalBitmapAnimationDrawableFactory(IntPtr javaReference, JniHandleOwnership transfer) : base(javaReference, transfer) { } - - static Delegate cb_createDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_; -#pragma warning disable 0169 - static Delegate GetCreateDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_Handler() - { - if (cb_createDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_ == null) - cb_createDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_ = JNINativeWrapper.CreateDelegate((Func)n_CreateDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_); - return cb_createDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_; - } - - static IntPtr n_CreateDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0) - { - global::Com.Facebook.Fresco.Animation.Factory.ExperimentalBitmapAnimationDrawableFactory __this = global::Java.Lang.Object.GetObject(jnienv, native__this, JniHandleOwnership.DoNotTransfer); - global::Com.Facebook.Imagepipeline.Image.CloseableImage p0 = global::Java.Lang.Object.GetObject(native_p0, JniHandleOwnership.DoNotTransfer); - IntPtr __ret = JNIEnv.ToLocalJniHandle(__this.CreateDrawable(p0)); - return __ret; - } -#pragma warning restore 0169 - - static IntPtr id_createDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_; - // Metadata.xml XPath method reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory']/method[@name='createDrawable' and count(parameter)=1 and parameter[1][@type='com.facebook.imagepipeline.image.CloseableImage']]" - [Register("createDrawable", "(Lcom/facebook/imagepipeline/image/CloseableImage;)Lcom/facebook/fresco/animation/drawable/AnimatedDrawable2;", "GetCreateDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_Handler")] - public virtual unsafe global::Com.Facebook.Fresco.Animation.Drawable.AnimatedDrawable2 CreateDrawable(global::Com.Facebook.Imagepipeline.Image.CloseableImage p0) - { - if (id_createDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_ == IntPtr.Zero) - id_createDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_ = JNIEnv.GetMethodID(class_ref, "createDrawable", "(Lcom/facebook/imagepipeline/image/CloseableImage;)Lcom/facebook/fresco/animation/drawable/AnimatedDrawable2;"); - try - { - JValue* __args = stackalloc JValue[1]; - __args[0] = new JValue(p0); - - global::Com.Facebook.Fresco.Animation.Drawable.AnimatedDrawable2 __ret; - if (((object)this).GetType() == ThresholdType) - __ret = global::Java.Lang.Object.GetObject(JNIEnv.CallObjectMethod(((global::Java.Lang.Object)this).Handle, id_createDrawable_Lcom_facebook_imagepipeline_image_CloseableImage_, __args), JniHandleOwnership.TransferLocalRef); - else - __ret = global::Java.Lang.Object.GetObject(JNIEnv.CallNonvirtualObjectMethod(((global::Java.Lang.Object)this).Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "createDrawable", "(Lcom/facebook/imagepipeline/image/CloseableImage;)Lcom/facebook/fresco/animation/drawable/AnimatedDrawable2;"), __args), JniHandleOwnership.TransferLocalRef); - return __ret; - } - finally - { - } - } - - Android.Graphics.Drawables.Drawable IDrawableFactory.CreateDrawable(CloseableImage p0) - { - throw new NotImplementedException(); - } - - static Delegate cb_supportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_; -#pragma warning disable 0169 - static Delegate GetSupportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_Handler() - { - if (cb_supportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_ == null) - cb_supportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_ = JNINativeWrapper.CreateDelegate((Func)n_SupportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_); - return cb_supportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_; - } - - static bool n_SupportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0) - { - global::Com.Facebook.Fresco.Animation.Factory.ExperimentalBitmapAnimationDrawableFactory __this = global::Java.Lang.Object.GetObject(jnienv, native__this, JniHandleOwnership.DoNotTransfer); - global::Com.Facebook.Imagepipeline.Image.CloseableImage p0 = global::Java.Lang.Object.GetObject(native_p0, JniHandleOwnership.DoNotTransfer); - bool __ret = __this.SupportsImageType(p0); - return __ret; - } -#pragma warning restore 0169 - - static IntPtr id_supportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_; - // Metadata.xml XPath method reference: path="/api/package[@name='com.facebook.fresco.animation.factory']/class[@name='ExperimentalBitmapAnimationDrawableFactory']/method[@name='supportsImageType' and count(parameter)=1 and parameter[1][@type='com.facebook.imagepipeline.image.CloseableImage']]" - [Register("supportsImageType", "(Lcom/facebook/imagepipeline/image/CloseableImage;)Z", "GetSupportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_Handler")] - public virtual unsafe bool SupportsImageType(global::Com.Facebook.Imagepipeline.Image.CloseableImage p0) - { - if (id_supportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_ == IntPtr.Zero) - id_supportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_ = JNIEnv.GetMethodID(class_ref, "supportsImageType", "(Lcom/facebook/imagepipeline/image/CloseableImage;)Z"); - try - { - JValue* __args = stackalloc JValue[1]; - __args[0] = new JValue(p0); - - bool __ret; - if (((object)this).GetType() == ThresholdType) - __ret = JNIEnv.CallBooleanMethod(((global::Java.Lang.Object)this).Handle, id_supportsImageType_Lcom_facebook_imagepipeline_image_CloseableImage_, __args); - else - __ret = JNIEnv.CallNonvirtualBooleanMethod(((global::Java.Lang.Object)this).Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "supportsImageType", "(Lcom/facebook/imagepipeline/image/CloseableImage;)Z"), __args); - return __ret; - } - finally - { - } - } - } -} diff --git a/Fresco.Animated.Base/Fresco.Animated.Base.csproj b/Fresco.Animated.Base/Fresco.Animated.Base.csproj index 9f4cd15..44c0cd4 100644 --- a/Fresco.Animated.Base/Fresco.Animated.Base.csproj +++ b/Fresco.Animated.Base/Fresco.Animated.Base.csproj @@ -13,7 +13,9 @@ Fresco.Animated.Base 512 false - v7.1 + v11.0 + XamarinAndroid + class-parse true @@ -38,12 +40,10 @@ + - - - @@ -65,7 +65,9 @@ Fresco.ImagePipeline - + + + + \ No newline at end of file diff --git a/Fresco.ImagePipeline.OkHttp/Additions/Additions.cs b/Fresco.ImagePipeline.OkHttp/Additions/Additions.cs index bbe5a4e..ecce787 100644 --- a/Fresco.ImagePipeline.OkHttp/Additions/Additions.cs +++ b/Fresco.ImagePipeline.OkHttp/Additions/Additions.cs @@ -1,18 +1,18 @@ using Android.Content; using Com.Facebook.Imagepipeline.Core; -using Com.Squareup.Okhttp; +//using Com.Squareup.Okhttp; namespace Com.Facebook.Imagepipeline.Backends.Okhttp { public partial class OkHttpImagePipelineConfigFactory { // TODO: Expose API in bindings for commented out sections - public static /* ImagePipelineConfig.Builder*/ void NewBuilder(Context context, OkHttpClient okHttpClient) - { + //public static /* ImagePipelineConfig.Builder*/ void NewBuilder(Context context, OkHttpClient okHttpClient) + //{ /* return ImagePipelineConfig.NewBuilder(context) .SetNetworkFetcher(new OkHttpNetworkFetcher(okHttpClient)); */ - } + //} } } \ No newline at end of file diff --git a/Fresco.ImagePipeline.OkHttp/Fresco.ImagePipeline.OkHttp.csproj b/Fresco.ImagePipeline.OkHttp/Fresco.ImagePipeline.OkHttp.csproj index bf48468..9f0b146 100644 --- a/Fresco.ImagePipeline.OkHttp/Fresco.ImagePipeline.OkHttp.csproj +++ b/Fresco.ImagePipeline.OkHttp/Fresco.ImagePipeline.OkHttp.csproj @@ -12,8 +12,9 @@ Fresco.ImagePipeline.OkHttp Fresco.ImagePipeline.OkHttp 512 - True - v8.0 + v11.0 + XamarinAndroid + class-parse true @@ -33,14 +34,7 @@ 4 - - False - ..\..\..\dev\disa\ComponentsJavaBindings\Fresco.ImagePipeline.Base.dll - - - Libs\SquareUp.dll - @@ -51,7 +45,7 @@ - + @@ -63,6 +57,10 @@ {848ee635-2546-44e5-9c31-7cd371a1cec2} Fresco.Core + + {613a5c51-590f-428d-ac85-a0bdc4bf5e5e} + Fresco.ImagePipeline.Base + {b7caa5c0-4cfb-4ba7-9498-8ab47a5d8dc3} Fresco.ImagePipeline diff --git a/Fresco.ImagePipeline.OkHttp/Jars/imagepipeline-okhttp-1.8.1.aar b/Fresco.ImagePipeline.OkHttp/Jars/imagepipeline-okhttp-1.8.1.aar deleted file mode 100644 index 699c0e0..0000000 Binary files a/Fresco.ImagePipeline.OkHttp/Jars/imagepipeline-okhttp-1.8.1.aar and /dev/null differ diff --git a/Fresco.ImagePipeline.OkHttp/Jars/imagepipeline-okhttp3-1.14.0.aar b/Fresco.ImagePipeline.OkHttp/Jars/imagepipeline-okhttp3-1.14.0.aar new file mode 100644 index 0000000..662e3bb Binary files /dev/null and b/Fresco.ImagePipeline.OkHttp/Jars/imagepipeline-okhttp3-1.14.0.aar differ diff --git a/Fresco.ImagePipeline/Additions/Additions.cs b/Fresco.ImagePipeline/Additions/Additions.cs new file mode 100644 index 0000000..56a71fc --- /dev/null +++ b/Fresco.ImagePipeline/Additions/Additions.cs @@ -0,0 +1,7 @@ +/*namespace Com.Facebook.Imagepipeline.Memory { + partial class LruBucketsPoolBackendInvoker { + int global::Com.Facebook.Imagepipeline.Memory.IPoolBackend.GetSize(global::Java.Lang.Object item) { + return 2048; + } + } +}*/ \ No newline at end of file diff --git a/Fresco.ImagePipeline/Fresco.ImagePipeline.csproj b/Fresco.ImagePipeline/Fresco.ImagePipeline.csproj index 1dd277d..f2928d0 100644 --- a/Fresco.ImagePipeline/Fresco.ImagePipeline.csproj +++ b/Fresco.ImagePipeline/Fresco.ImagePipeline.csproj @@ -13,7 +13,9 @@ Fresco.ImagePipeline 512 false - v7.1 + v11.0 + XamarinAndroid + class-parse true @@ -38,11 +40,9 @@ + - - - @@ -52,6 +52,9 @@ Fresco.ImagePipeline.Base + + + + diff --git a/Fresco.NativeImageFilters/Additions/AboutAdditions.txt b/Fresco.NativeImageFilters/Additions/AboutAdditions.txt new file mode 100644 index 0000000..c240307 --- /dev/null +++ b/Fresco.NativeImageFilters/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} \ No newline at end of file diff --git a/Fresco.NativeImageFilters/Fresco.NativeImageFilters.csproj b/Fresco.NativeImageFilters/Fresco.NativeImageFilters.csproj new file mode 100644 index 0000000..05032de --- /dev/null +++ b/Fresco.NativeImageFilters/Fresco.NativeImageFilters.csproj @@ -0,0 +1,66 @@ + + + + Debug + AnyCPU + 8.0.30703 + 2.0 + {5151C676-1AD9-4AC9-A574-5DF99D0AB3E5} + {10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + {77efb91c-a7e9-4b0e-a7c5-31eeec3c6d46} + Library + Properties + Fresco.NativeImageFilters + Fresco.NativeImageFilters + 512 + True + false + v11.0 + class-parse + XAJavaInterop1 + PackageReference + + + true + portable + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + portable + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Fresco.NativeImageFilters/Jars/AboutJars.txt b/Fresco.NativeImageFilters/Jars/AboutJars.txt new file mode 100644 index 0000000..c359b62 --- /dev/null +++ b/Fresco.NativeImageFilters/Jars/AboutJars.txt @@ -0,0 +1,24 @@ +This directory is for Android .jars. + +There are 2 types of jars that are supported: + +== Input Jar == + +This is the jar that bindings should be generated for. + +For example, if you were binding the Google Maps library, this would +be Google's "maps.jar". + +Set the build action for these jars in the properties page to "InputJar". + + +== Reference Jars == + +These are jars that are referenced by the input jar. C# bindings will +not be created for these jars. These jars will be used to resolve +types used by the input jar. + +NOTE: Do not add "android.jar" as a reference jar. It will be added automatically +based on the Target Framework selected. + +Set the build action for these jars in the properties page to "ReferenceJar". \ No newline at end of file diff --git a/Fresco.NativeImageFilters/Jars/nativeimagefilters-1.14.0.aar b/Fresco.NativeImageFilters/Jars/nativeimagefilters-1.14.0.aar new file mode 100644 index 0000000..ea21d5b Binary files /dev/null and b/Fresco.NativeImageFilters/Jars/nativeimagefilters-1.14.0.aar differ diff --git a/Fresco.NativeImageFilters/Properties/AssemblyInfo.cs b/Fresco.NativeImageFilters/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..6be691e --- /dev/null +++ b/Fresco.NativeImageFilters/Properties/AssemblyInfo.cs @@ -0,0 +1,26 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using Android.App; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Fresco.NativeImageFilters")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Fresco.NativeImageFilters")] +[assembly: AssemblyCopyright("Copyright © 2018")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] +[assembly: ComVisible(false)] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Fresco.NativeImageFilters/Transforms/EnumFields.xml b/Fresco.NativeImageFilters/Transforms/EnumFields.xml new file mode 100644 index 0000000..2295995 --- /dev/null +++ b/Fresco.NativeImageFilters/Transforms/EnumFields.xml @@ -0,0 +1,14 @@ + + + \ No newline at end of file diff --git a/Fresco.NativeImageFilters/Transforms/EnumMethods.xml b/Fresco.NativeImageFilters/Transforms/EnumMethods.xml new file mode 100644 index 0000000..49216c6 --- /dev/null +++ b/Fresco.NativeImageFilters/Transforms/EnumMethods.xml @@ -0,0 +1,13 @@ + + + \ No newline at end of file diff --git a/Fresco.NativeImageFilters/Transforms/Metadata.xml b/Fresco.NativeImageFilters/Transforms/Metadata.xml new file mode 100644 index 0000000..91493a2 --- /dev/null +++ b/Fresco.NativeImageFilters/Transforms/Metadata.xml @@ -0,0 +1,9 @@ + + + diff --git a/Fresco.NativeImageTranscoder/Additions/AboutAdditions.txt b/Fresco.NativeImageTranscoder/Additions/AboutAdditions.txt new file mode 100644 index 0000000..c240307 --- /dev/null +++ b/Fresco.NativeImageTranscoder/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} \ No newline at end of file diff --git a/Fresco.NativeImageTranscoder/Fresco.NativeImageTranscoder.csproj b/Fresco.NativeImageTranscoder/Fresco.NativeImageTranscoder.csproj new file mode 100644 index 0000000..fd26e5a --- /dev/null +++ b/Fresco.NativeImageTranscoder/Fresco.NativeImageTranscoder.csproj @@ -0,0 +1,66 @@ + + + + Debug + AnyCPU + 8.0.30703 + 2.0 + {5FADAC74-CBAE-4D42-9374-BD19A52A4912} + {10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + {77efb91c-a7e9-4b0e-a7c5-31eeec3c6d46} + Library + Properties + Fresco.NativeImageTranscoder + Fresco.NativeImageTranscoder + 512 + True + false + v11.0 + class-parse + XAJavaInterop1 + PackageReference + + + true + portable + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + portable + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Fresco.NativeImageTranscoder/Jars/AboutJars.txt b/Fresco.NativeImageTranscoder/Jars/AboutJars.txt new file mode 100644 index 0000000..c359b62 --- /dev/null +++ b/Fresco.NativeImageTranscoder/Jars/AboutJars.txt @@ -0,0 +1,24 @@ +This directory is for Android .jars. + +There are 2 types of jars that are supported: + +== Input Jar == + +This is the jar that bindings should be generated for. + +For example, if you were binding the Google Maps library, this would +be Google's "maps.jar". + +Set the build action for these jars in the properties page to "InputJar". + + +== Reference Jars == + +These are jars that are referenced by the input jar. C# bindings will +not be created for these jars. These jars will be used to resolve +types used by the input jar. + +NOTE: Do not add "android.jar" as a reference jar. It will be added automatically +based on the Target Framework selected. + +Set the build action for these jars in the properties page to "ReferenceJar". \ No newline at end of file diff --git a/Fresco.NativeImageTranscoder/Jars/nativeimagetranscoder-1.14.0.aar b/Fresco.NativeImageTranscoder/Jars/nativeimagetranscoder-1.14.0.aar new file mode 100644 index 0000000..d8f9c3a Binary files /dev/null and b/Fresco.NativeImageTranscoder/Jars/nativeimagetranscoder-1.14.0.aar differ diff --git a/Fresco.NativeImageTranscoder/Properties/AssemblyInfo.cs b/Fresco.NativeImageTranscoder/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..8b2aa58 --- /dev/null +++ b/Fresco.NativeImageTranscoder/Properties/AssemblyInfo.cs @@ -0,0 +1,26 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using Android.App; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Fresco.NativeImageTranscoder")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Fresco.NativeImageTranscoder")] +[assembly: AssemblyCopyright("Copyright © 2018")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] +[assembly: ComVisible(false)] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Fresco.NativeImageTranscoder/Transforms/EnumFields.xml b/Fresco.NativeImageTranscoder/Transforms/EnumFields.xml new file mode 100644 index 0000000..2295995 --- /dev/null +++ b/Fresco.NativeImageTranscoder/Transforms/EnumFields.xml @@ -0,0 +1,14 @@ + + + \ No newline at end of file diff --git a/Fresco.NativeImageTranscoder/Transforms/EnumMethods.xml b/Fresco.NativeImageTranscoder/Transforms/EnumMethods.xml new file mode 100644 index 0000000..49216c6 --- /dev/null +++ b/Fresco.NativeImageTranscoder/Transforms/EnumMethods.xml @@ -0,0 +1,13 @@ + + + \ No newline at end of file diff --git a/Fresco.NativeImageTranscoder/Transforms/Metadata.xml b/Fresco.NativeImageTranscoder/Transforms/Metadata.xml new file mode 100644 index 0000000..91493a2 --- /dev/null +++ b/Fresco.NativeImageTranscoder/Transforms/Metadata.xml @@ -0,0 +1,9 @@ + + + diff --git a/Fresco.SoLoader/Fresco.SoLoader.csproj b/Fresco.SoLoader/Fresco.SoLoader.csproj index 19688e3..e132811 100644 --- a/Fresco.SoLoader/Fresco.SoLoader.csproj +++ b/Fresco.SoLoader/Fresco.SoLoader.csproj @@ -13,7 +13,7 @@ Fresco.SoLoader 512 false - v7.1 + v11.0 true @@ -44,10 +44,7 @@ - - - - +