MvvmCross DownloadCache plugin breaks bindings in custom controls on Android - xamarin.android

I've wanted to use DownloadCache plugin in my MvvmCross project, but when I've added this package from nugget it broken bindings in custom controls on Android.
I'm using MvvmCross v.3.1.1
I have tried:
Updating MvvmCross and all plugins to v.3.2.2, but this did't helped.
Using target bindings instead of custom control properties, this has helped me, but this solution is not satisfying, because I have lots of custom controls where bindings are broken.
Also I can see an error in output saying:
MvxBind:Warning: 41,01 Failed to create target binding for binding ControlProperty for ViewModelProperty
Thanks for any help.

Related

Using a modified PDFTron Tools Framework

I'm working on a iOS Framework (using CocoaPods) that, as of today, uses PDFNet.framework as its only dependency.
Everything works as expected when I use the resulting framework in another "top level" project.
Now I'm trying to make this same Framework use the Tools.framework, as I intend to use the annotations from the Tools library.
Is there a common approach in doing so?
I've tried building the Tools source code but it fails as the dependency isn't found.
Everything you need should be in the following guide.
https://blog.pdftron.com/2016/11/14/getting-started-with-pdfnet-for-ios/
If that guide does not help, then please answer my comment above.

Cordova plugin ios for telerik : Add Custom framework to embedded binaries

I'm trying to create a cordova iOS plugin for a telerik ios app.
To integrate the custom(PressReader_SDK) framework embedded binaires i'm using this method :
Custom Cordova Plugin: Add framework to "Embedded Binaries"
The problem i'm encountering is that when i try to use the plugin in a cordova app it works fine but when i add the same plugin in telerik app, i get the error "image not found" this error occurs when cordova plugin isn't loading the embedded binaires.
I've searched all over cordova documentation but i can't find any way to make it work.
Any kind of help would be appreciated.
Well it looks like I'm not the only one to encounter this frustrating problem. The issue is this: Your using the solution found in the question Custom Cordova Plugin: Add framework to “Embedded Binaries” and it's only working in a plain Cordova app, but not a Telerik app. That's because the this solution relies on using custom hooks in the plugins config.xml and Telerik doesn't allow custom hooks. So your hook actually isn't running at all and your no better off than when you started. I'm not aware of any work around for this problem and I've created a SO question to find out if anybody does (Telerik AppBuilder and Embedded Binaries). Hope we get some results!

Xamarin not resolving DialogViewController

I am trying to use the DialogViewController in Xamarin but it cannot resolve it within Visual Studio. The same goes for RootElement, Section and EntryElement. Any idea why it doesn´t recognize these elements?
Using Xamarin.iOS 9.4.1.24.
You need to add the MonoTouch.Dialog-1 assembly to your References. It isn't included by default.

Reference to type 'System.IConvertible' claims it is defined in assembly mscorlib

Anytime I try to reference an NUNIT data type in the iOS framework, I am given a compiler error saying it can't find the IConvertible type
Error CS7069: Reference to type System.IConvertible' claims it is defined assemblymscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089', but it could not be found (CS7069) (logic)
I was able to reproduce this by creating a brand new Xamarin.Forms project that only targets iOS.
Immediately after creating it, I added a second Xamarin.Forms project, this time a PCL.
I then needed to add the Xamarin.iOS library so that I can reference the iOS specific APIs, specifically the Photos API. I did this by navigating to
~/Library/Frameworks/Xamarin.iOS.framework/Versions/9.0.1.29/lib/mono/Xamarin.iOS/Xamarin.iOS.dll
Lastly, I added a blank class to the new PCL project, and created a locally scoped NUNIT field. This is where the compiler error happens. This happens in my current project when I try to get the number of photos in a PHAssetCollection, as that is an NUNIT data type.
using System;
namespace logic
{
public class EmptyClass
{
public EmptyClass()
{
nuint test = 5;
}
}
}
This gives me the compiler error I've referenced above. How can I solve this? This has become a blocking issue for me, am I referencing the wrong Xamarin.iOS.dll? It's not available in the list of nuget packages when I scan for them, so I can't add it via NuGet. NuGet only has Xamarin.Forms.dll available.
Update 1
After trying a few different combinations, I think that I have a working solution. Instead of creating a Xamarin.Forms Library, I created a normal iOS PCL library instead. This solved that problem.
I don't know why the Xamarin.Forms library wouldn't work. Is it not intended to be used for platform specific code?
Xamarin Forms PCL's need to be platform agnostic. If you have a NUnit project that needs access to a Xamarin.iOS specific reference, then you need to build within the iOS project / iOS PCL.
Xamarin.iOS.dll can only be referenced from a iOS related project.

how to use protobuf-net in the xamarin ios pcl

I am trying to use protobuf-net with the new xamarin ios pcl, and it's nuget packet doesn't appear to support the framework. Is there a way to import protobuf-net into the pcl?
Update:
I just found recompiling the PCL with the new Xamarin PCL definitions allowed the resulting library to be references. Nice work! Let me know when a new version is posted to Nuget.
The NuGet package includes PCL drops, but it is unclear to me what change you would have me make to the NuGet package here, as there is no specific "Xamarin" target that I know of; the example targets are described here; protobuf-net currently includes a broad target of portable-sl4+net40+wp7+windows8. If you know of a target (or indeed a PCL build combination) that works for Xamarin for iOS, please let me know.
I should also note that the NuGet drop is the "Full" implementation, where meta-programming is performed at runtime. Because of the limitations in iOS, you may find you get better performance by using the "CoreOnly" implementation combined with the "precompile" tool, available from the google-code drop. This is described here.
I was able to use NuGet version of protobuf-net by manually editing the .csproj file for my portable library and setting the target framework profile to match protobuf-net:
<TargetFrameworkProfile>Profile136</TargetFrameworkProfile>
The resulting portable library worked well with Xamarin.Android. According to this list, it should work with Xamarin.iOS as well.

Resources