Missing namespace of existing library, Xamarin Android - xamarin

I have an auxiliar project that contains Java libraries used in the project. That project contains a folder with a mbwaysdk.jar and a WheelPicker-1.1.1.aar in it.
After building that project, it generates the .NET classes for the mbwaysdk.jar without any problem, but the classes of WheelPicker-1.1.1.aar don't show up. I've checked and the obj/Debug/generated/src folder contains the file classes for the mbwaysdk.jar and WheelPicker-1.1.1.aar libraries.
Within Visual Studio, the namespace Com.Aigestudio.Wheelpicker isn't recognized, although the project succesfully builds and deploys to devices, and any usage of the Com.Aigestudio.Wheelpicker views and methods works. While in debug I'm able to inspect the object, but unable to navigate to the class.
What can be causing this issue?

Related

Unity : I can't reference my managed plugin into my test project

Beginning at Unity.
I have made my unity project.
I have added a C# SimAnt.dll project of mine as a managed project into the unity project.
I have created an EditMode test Asset into the unity project.
At this stage, if I can make a test and run it OK.
I can instantiate classes from SimAnt project into the unity project scripts.
But I do not manage to reference SimAnt project into the test project.
I understand where I should do it into the UI:
But the SimAnt project is not available into the list of projects that I can reference :(
I have also tried to add the reference directly into the test project via VS.
If I do so, the test project correctly sees the Simant Dll classes as I would expect into VS UI, but the Unity interface still complains about the reference:
error CS0246: The type or namespace name 'SimAnt' could not be found (are you missing a using directive or an assembly reference?)
I tried including my SimAnt dll into the .asmdef file of the test project via VS. I am not sure about the syntax though:
My Assets directory is like this:
I closed / reopened Unity after adding the reference from VS, no luck.
Any idea?
EDIT: requested screenshots of the editor:
I Got it!!!!
I was trying to add the plugin into the wrong box.
The plugins (copy pasted DLL) need to be added into the "Assembly references" tab. (2 in screenshot below).
The other projects assemblies need to be added into the "Assembly Definitions References" tab (1 in screenshot below).
PS : You can add as a plugin the dll file compiled in Debug. It does not have to be the Release compiled file. I had a doubt about this part.

Requiring unreferenced assemblies to be included in Xamarin App package

I have a Xamarin Forms app that requires me to dynamically load a single one of several possible assemblies at runtime (based on versioning). This should not be a problem as iOS can load assemblies using the mono interpreter. The problem I face is that the IPA and APK packages do not include the assemblies because they are not referenced directly in the app. I include them in the project references but they do not appear in the app package.
Is there a way to tell Xamarin to always include an assembly in the package regardless if it is being directly referenced in code?
==UPDATE==
I have a complete working POC with what I am trying to accomplish in terms of versioning in the application.
https://github.com/rlasker-b2w/XamVersioning
I specifically have to add references in the VersionSelector class otherwise the version projects do not get their assemblies added to the app package.
https://github.com/rlasker-b2w/XamVersioning/blob/main/VersionApp/VersionSelector.cs

Xamarin Java Library Binding issues

I want to use agency tango materialintroscreen library in my Xamarin.Android project.
I have created a Xamarin Android Binding Project, copy the ARR file in the Jars Folder and set Build Action to LibraryProjectZip.
Then I reference the project in my main Xamarin.Android project.
Normally I can access to agency.tango.materialintroscreen but have the error the namespace doesn't exist.
I try to use jetBrains dotpeek I saw dll was create well with all class.
I have the same error with 3 library
Visual Studio Error list
Object Browser

The target "GetBuiltProjectOutputRecursive" does not exist in the project when referencing netstandard library

I have a Xamarin Android project, and I am trying to add a reference to my own netstandard1.4 class library. When I add the reference, my Android application will no longer build. I get error MSB4057: The target "GetBuiltProjectOutputRecursive" does not exist in the project.
If I remove the reference, my android project builds fine.
The class library is a brand new library that I just created. It doesn't contain any actual code yet.
I am using Visual Studio 2017.
UPDATE: If I add a reference to my dll using the "Browse" function, it works. I only get the error when I add the reference to the project in my solution.
This appears to be fixed in 15.4

Binding Eclipse Library Project with Xamarin: At least one Java library is required for binding, this must be either 'EmbeddedJar'...for build action

We need to bind the Pulltoloadmoreandrefresh Eclipse Library Project in our Xamarin Android project as mentioned in Binding an Eclipse Library Project.
We created the Eclipse library project, added the respective files (screenshot for reference), and created the zip files with res and bin folders as mentioned in the above link.
Created the Android Library Project in Visual Studio and added the the zip file. But it shows error "At least one Java library is required for binding, this must be either 'EmbeddedJar', 'InputJar' (for jar), 'LibraryProjectZip' (for aar or zip) or 'LibraryProjectProperties' (project.properties) build action" for build action "LibraryProjectZip"
Kindly suggest on how to resolve this.
I solved this problem by swapping in Build Action.
For me the solution came with the type InputJar in the project that generates the library for Xamarin.

Resources