Commit 515cf011 authored by Wei Han's avatar Wei Han

code update

parent d6d9a637
......@@ -9,16 +9,24 @@ Pod::Spec.new do |s|
s.homepage = package["homepage"]
s.license = package["license"]
s.authors = package["author"]
s.platforms = { :ios => "12.4"}
s.platforms = { :ios => "12.4" }
s.source = { :git => "http://convep.ddns.me:20000/WeiHan/weihan-plugin.git", :tag => "#{s.version}" }
s.source_files = "ios/QmsPlugin/**/*.{h,m,mm,cpp}"
s.source_files = "ios/QmsPlugin/**/*.{h,m,mm,cpp}", "ios/QmsPluginSpec/**/*.{h,mm}"
s.private_header_files = "ios/QmsPlugin/**/*.h"
s.dependency "React-Core"
s.dependency "ReactCommon"
s.public_header_files = "ios/QmsPluginSpec/**/*.h"
s.preserve_paths = "ios/QmsPluginFramework.xcframework"
s.vendored_frameworks = "ios/QmsPluginFramework.xcframework"
s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' }
s.dependency "React-Core"
s.dependency "ReactCommon"
s.dependency "React-Codegen"
s.pod_target_xcconfig = {
"DEFINES_MODULE" => "YES",
"CLANG_CXX_LANGUAGE_STANDARD" => "c++17"
}
install_modules_dependencies(s)
end
......@@ -17,6 +17,14 @@ class QmsPluginModule(reactContext: ReactApplicationContext) :
return a * b
}
override fun sum(a: Double, b: Double): Double {
return a + b
}
override fun showPluginUI() {
QmsPluginViewManager.showPluginUI(reactApplicationContext)
}
companion object {
const val NAME = "QmsPlugin"
}
......
......@@ -4,11 +4,12 @@
NS_ASSUME_NONNULL_BEGIN
@interface QmsPluginFunc : NSObject
+ (NSNumber *)multiplyA:(double)a withB:(double)b;
@end
//@interface QmsPluginFunc : NSObject
//
//+ (NSNumber *)multiplyA:(double)a withB:(double)b;
//+ (NSNumber *)sumA:(double)a withB:(double)b;
//
//@end
@interface QmsPluginUI : NSObject
......
......@@ -6,7 +6,7 @@
<dict>
<key>Headers/QmsPlugin.h</key>
<data>
jEA1lzv3I0dEoWQcMSw2ZhWcuN8=
INDfuKT/tXvd59OKxALrlk7Mh0Q=
</data>
<key>Headers/QmsPluginFramework.h</key>
<data>
......@@ -27,7 +27,7 @@
<dict>
<key>hash2</key>
<data>
w6N+jSiXLutPoCUK4j8sSTNMDql0tV/nT5qBchRO19s=
bEZU5MWGiY3Jr0g9zM93JZAgpDf7fM2qmPh9KoANLiY=
</data>
</dict>
<key>Headers/QmsPluginFramework.h</key>
......
......@@ -4,11 +4,12 @@
NS_ASSUME_NONNULL_BEGIN
@interface QmsPluginFunc : NSObject
+ (NSNumber *)multiplyA:(double)a withB:(double)b;
@end
//@interface QmsPluginFunc : NSObject
//
//+ (NSNumber *)multiplyA:(double)a withB:(double)b;
//+ (NSNumber *)sumA:(double)a withB:(double)b;
//
//@end
@interface QmsPluginUI : NSObject
......
......@@ -6,7 +6,7 @@
<dict>
<key>Headers/QmsPlugin.h</key>
<data>
jEA1lzv3I0dEoWQcMSw2ZhWcuN8=
INDfuKT/tXvd59OKxALrlk7Mh0Q=
</data>
<key>Headers/QmsPluginFramework.h</key>
<data>
......@@ -27,7 +27,7 @@
<dict>
<key>hash2</key>
<data>
w6N+jSiXLutPoCUK4j8sSTNMDql0tV/nT5qBchRO19s=
bEZU5MWGiY3Jr0g9zM93JZAgpDf7fM2qmPh9KoANLiY=
</data>
</dict>
<key>Headers/QmsPluginFramework.h</key>
......
......@@ -4,11 +4,12 @@
NS_ASSUME_NONNULL_BEGIN
@interface QmsPluginFunc : NSObject
+ (NSNumber *)multiplyA:(double)a withB:(double)b;
@end
//@interface QmsPluginFunc : NSObject
//
//+ (NSNumber *)multiplyA:(double)a withB:(double)b;
//+ (NSNumber *)sumA:(double)a withB:(double)b;
//
//@end
@interface QmsPluginUI : NSObject
......
//QmsPlugin.mm
#import "QmsPlugin.h"
@implementation QmsPluginFunc
+ (NSNumber *)multiplyA:(double)a withB:(double)b {
return @(a * b);
}
@end
//@implementation QmsPluginFunc
//
//+ (NSNumber *)multiplyA:(double)a withB:(double)b {
// return @(a * b);
//}
//
//+ (NSNumber *)sumA:(double)a withB:(double)b {
// return @(a + b);
//}
//
//@end
@implementation QmsPluginUI
......
#import <React/RCTBridgeModule.h>
#import <QmsPluginSpec/QmsPluginSpec.h>
#import "QmsPluginSpec.h"
#import <QmsPluginFramework/QmsPluginFramework.h>
@interface QmsPlugin : NSObject <NativeQmsPluginSpec>
......@@ -9,28 +9,37 @@
RCT_EXPORT_MODULE()
RCT_EXPORT_METHOD(showPluginUI)
{
[self showPluginUIInternal];
}
- (instancetype)init {
if (self = [super init]) {
NSLog(@"[QmsPlugin] Native module initialized");
NSLog(@"QmsPlugin loaded");
BOOL responds = [QmsPlugin instancesRespondToSelector:@selector(showPluginUI:reject:)];
NSLog(@"QmsPlugin responds to showPluginUI:reject:? %@", responds ? @"YES" : @"NO");
if (![QmsPlugin conformsToProtocol:@protocol(NativeQmsPluginSpec)]) {
NSLog(@"❌ QmsPlugin does NOT conform to NativeQmsPluginSpec");
} else {
NSLog(@"✅ QmsPlugin conforms to NativeQmsPluginSpec");
}
}
return self;
}
// Wraps the C function QmsPluginMultiply
- (NSNumber *)multiply:(double)a b:(double)b {
NSLog(@"[QmsPlugin] multiply called with a=%f, b=%f", a, b);
NSNumber *result = [QmsPluginFunc multiplyA:a withB:b];
NSLog(@"[QmsPlugin] multiply result = %@", result);
return result;
}
// - (NSNumber *)sum:(double)a b:(double)b {
// NSLog(@"[QmsPlugin] sum called with a=%f, b=%f", a, b);
// NSNumber *result = [QmsPluginFunc sumA:a withB:b];
// NSLog(@"[QmsPlugin] sum result = %@", result);
// return result;
// }
// // Wraps the C function QmsPluginMultiply
// - (NSNumber *)multiply:(double)a b:(double)b {
// NSLog(@"[QmsPlugin] multiply called with a=%f, b=%f", a, b);
// NSNumber *result = [QmsPluginFunc multiplyA:a withB:b];
// NSLog(@"[QmsPlugin] multiply result = %@", result);
// return result;
// }
// Wraps the C function QmsPluginMakeViewController
- (void)showPluginUIInternal {
- (void)showPluginUI {
NSLog(@"[QmsPlugin] showPluginUI CALLED from JS");
dispatch_async(dispatch_get_main_queue(), ^{
......@@ -71,11 +80,15 @@ RCT_EXPORT_METHOD(showPluginUI)
});
}
// TurboModule boilerplate
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
(const facebook::react::ObjCTurboModule::InitParams &)params
{
return std::make_shared<facebook::react::NativeQmsPluginSpecJSI>(params);
}
{
NSLog(@"[QmsPlugin] getTurboModule called");
auto module = std::make_shared<facebook::react::NativeQmsPluginSpecJSI>(params);
NSLog(@"[QmsPlugin] TurboModule created: %p", module.get());
return module;
}
@end
......@@ -4,11 +4,12 @@
NS_ASSUME_NONNULL_BEGIN
@interface QmsPluginFunc : NSObject
+ (NSNumber *)multiplyA:(double)a withB:(double)b;
@end
//@interface QmsPluginFunc : NSObject
//
//+ (NSNumber *)multiplyA:(double)a withB:(double)b;
//+ (NSNumber *)sumA:(double)a withB:(double)b;
//
//@end
@interface QmsPluginUI : NSObject
......
......@@ -6,7 +6,7 @@
<dict>
<key>Headers/QmsPlugin.h</key>
<data>
jEA1lzv3I0dEoWQcMSw2ZhWcuN8=
INDfuKT/tXvd59OKxALrlk7Mh0Q=
</data>
<key>Headers/QmsPluginFramework.h</key>
<data>
......@@ -27,7 +27,7 @@
<dict>
<key>hash2</key>
<data>
w6N+jSiXLutPoCUK4j8sSTNMDql0tV/nT5qBchRO19s=
bEZU5MWGiY3Jr0g9zM93JZAgpDf7fM2qmPh9KoANLiY=
</data>
</dict>
<key>Headers/QmsPluginFramework.h</key>
......
......@@ -4,11 +4,12 @@
NS_ASSUME_NONNULL_BEGIN
@interface QmsPluginFunc : NSObject
+ (NSNumber *)multiplyA:(double)a withB:(double)b;
@end
//@interface QmsPluginFunc : NSObject
//
//+ (NSNumber *)multiplyA:(double)a withB:(double)b;
//+ (NSNumber *)sumA:(double)a withB:(double)b;
//
//@end
@interface QmsPluginUI : NSObject
......
......@@ -6,7 +6,7 @@
<dict>
<key>Headers/QmsPlugin.h</key>
<data>
jEA1lzv3I0dEoWQcMSw2ZhWcuN8=
INDfuKT/tXvd59OKxALrlk7Mh0Q=
</data>
<key>Headers/QmsPluginFramework.h</key>
<data>
......@@ -27,7 +27,7 @@
<dict>
<key>hash2</key>
<data>
w6N+jSiXLutPoCUK4j8sSTNMDql0tV/nT5qBchRO19s=
bEZU5MWGiY3Jr0g9zM93JZAgpDf7fM2qmPh9KoANLiY=
</data>
</dict>
<key>Headers/QmsPluginFramework.h</key>
......
import { TurboModuleRegistry, type TurboModule } from 'react-native';
export interface Spec extends TurboModule {
multiply(a: number, b: number): number;
// multiply(a: number, b: number): number;
// sum(a: number, b: number): number;
showPluginUI(): void;
}
......
import QmsPlugin from './NativeQmsPlugin';
export function multiply(a: number, b: number): number {
return QmsPlugin.multiply(a, b);
}
// export function multiply(a: number, b: number): number {
// return QmsPlugin.multiply(a, b);
// }
// export function sum(a: number, b: number): number {
// return QmsPlugin.sum(a, b);
// }
export function showPluginUI(): void {
QmsPlugin.showPluginUI();
}
export default {
multiply,
// multiply,
// sum,
showPluginUI,
};
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment