Reputation: 2962
Xamarin iOS app was crashed while running swift framework.
In my .framework - Swift class
import Foundation
@objc(Member)
open class Member: NSObject {
@objc
func getMemberID() -> String {
return "Hii, This is member code .framework"
}
}
I have build a framework for simulator iPhone7 and added in Native framework on Visual studio Xamarin.iOS
And I have coded manually for interface class.
using System;
using ObjCRuntime;
using Foundation;
using UIKit;
namespace CustomLibrary {
[BaseType(typeof(NSObject))]
interface Member
{
[Export("getMemberID")]
string MemberID { get; }
}
}
After that I have add reference for Binding library to iOS App project.
In ViewController I have imported a Binding library and allocate a class and print in log.
using System;
using UIKit;
using CustomLibrary;
namespace SwiftFrameworkApp
{
public partial class ViewController : UIViewController
{
public ViewController(IntPtr handle) : base(handle)
{
}
public override void ViewDidLoad()
{
base.ViewDidLoad();
// Perform any additional setup after loading the view, typically from a nib.
Member memberObj = new Member();
System.Diagnostics.Debug.Print(memberObj.MemberID());
}
public override void DidReceiveMemoryWarning()
{
base.DidReceiveMemoryWarning();
// Release any cached data, images, etc that aren't in use.
}
}
}
When I build a project. Its was shown
Errors 0 and warning 1
After that When I run a project. App was launched in simulator and crashed with below error.
Upvotes: 1
Views: 197
Reputation: 15806
I mean in your Member
interface, it should be something like this:
[BaseType(typeof(NSObject))]
interface Member
{
[Export("getMemberID")]
string GetMemberID ();
}
Upvotes: 1