これを整理できたかどうかはわかりませんが、Cordova は NSMutableArray を拡張して pop メソッドを追加します。Word ドキュメントを開くと、ビューアーは Cordova バージョンの pop をオーバーライドし、アプリに戻ると、Cordova はそのバージョンの使用を開始します。
同じ問題があることを確認するには、[argument pop] を数回呼び出すプラグインを作成します。Word 文書を読み込んだ後、動作の変化に気付くはずです。
以下のコードのようなものを実行することで回避できます。ドキュメントを表示する前にストア メソッドを保存し、ドキュメントを閉じた後に復元を呼び出す必要があります。
objc/runtime.h をインポート objc/message.h をインポート
@実装 ...
static IMP cordovaPopImplementation = NULL; static const char* cordovaPopEncoding = NULL;
+(void)storeCordovaPop { メソッド popMethod = class_getInstanceMethod([NSMutableArray クラス], @selector(pop)); if (!cordovaPopImplementation) { cordovaPopImplementation = method_getImplementation(popMethod); cordovaPopEncoding = method_getTypeEncoding(popMethod); } }
+(void)restoreCordovaPop {
class_replaceMethod([NSMutableArray クラス], @selector(pop), cordovaPopImplementation, cordovaPopEncoding); }