我有一个Ionic应用程序。我在Xcode for iOS中编译了它,它可以工作。我还为这个应用程序创建了一个小部件。我的愿望是,如果应用程序以正常的应用程序图标打开,主屏幕应该出现。但是,如果它是用小部件打开的,它将重定向到另一个页面。我怎么做?我尝试了很多方法,但找不到解决方案。
为此,我尝试在Typescript端创建一个服务并在那里进行路由,但我无法在这里运行Typescript中的代码。
Ts:
import { registerPlugin } from '@capacitor/core';
import { NavController } from '@ionic/angular';
// Define the interface
export interface MyServicePlugin {
routeProfile(): any;
routePage(): any;
}
// Implement the class
export class MyService implements MyServicePlugin {
constructor(
private navCtrl: NavController
) { }
routeProfile() {
console.log("sssssssss")
return this.navCtrl.navigateForward(['/login-control']);
}
routePage() {
console.log("ddddddd")
return this.navCtrl.navigateForward(['/login-control']);
}
}
const myService = registerPlugin<MyServicePlugin>('MyService');
export default myService;`
字符串
Swift代码:
import Foundation
import Capacitor
@objc(MyService)
public class MyService: CAPPlugin {
@objc func routePage(_ call: CAPPluginCall) {
}
@objc func routeProfile(_ call: CAPPluginCall) {
if let viewController = self.bridge?.viewController {
//viewController.performSegue(withIdentifier: "/login-control", sender: nil)
call.resolve([:])
} else {
call.reject("NavController is not available.")
}
}
}
型
`
我在设备中的结果:
To Native -> MyService routeProfile 134138947
型
1条答案
按热度按时间njthzxwz1#
好像没什么问题。我想你忘了调用函数了。
在ts文件中调用func:
字符串
此外,您还可以发送参数。
在Swift中:
型
你可以在ts文件中得到这个值。
型