如何使用Flutter FFI的iOS版.a文件



我有一个rust项目。把它编译成.所以对于android,我可以用android运行它。我还为iOS生成了.a文件,并使用了该答案的说明,但它引发了以下错误:Semantic Issue (Xcode): Use of undeclared identifier 'LibStackmatePlugin' /Users/mohitsingh/Desktop/myapp/ios/Runner/GeneratedPluginRegistrant.m:17:3

GeneratedPluginRegistration.m如下所示:

//
//  Generated file. Do not edit.
//
// clang-format off
#import "GeneratedPluginRegistrant.h"
#if __has_include(<libstackmate/LibStackmatePlugin.h>)
#import <libstackmate/LibStackmatePlugin.h>
#else
@import libstackmate;
#endif
@implementation GeneratedPluginRegistrant
+ (void)registerWithRegistry:(NSObject<FlutterPluginRegistry>*)registry {
[LibStackmatePlugin registerWithRegistrar:[registry registrarForPlugin:@"LibStackmatePlugin"]];
}
@end

还有什么需要做的吗?

问题出在我的pubspec.yaml文件上。它将插件定义为

android:
package: com.example.libstackmate
pluginClass: LibstackmatePlugin
ios:
pluginClass: LibstackmatePlugin

但在ios/app中,插件被定义为LibStackmatePlugin。由于这个名称不匹配,我得到了这个错误。通过更新pubspec.yaml中的ios pluginClass名称,解决了该错误。

相关内容

  • 没有找到相关文章

最新更新