Files
NativeScript/nativescript-core/utils/utils.ios.ts
Nathan Walker da3c0b973d chore: format
2020-07-11 11:01:40 -07:00

62 lines
1.3 KiB
TypeScript

import { ios } from "./native-helper";
import { Trace } from "../trace";
export { ios };
export * from "./utils-common";
export function openFile(filePath: string): boolean {
try {
const appPath = ios.getCurrentAppPath();
let path = ios.isRealDevice()
? filePath.replace("~", appPath)
: filePath;
const controller = UIDocumentInteractionController.interactionControllerWithURL(
NSURL.fileURLWithPath(path)
);
controller.delegate = <UIDocumentInteractionControllerDelegate>(
new ios.UIDocumentInteractionControllerDelegateImpl()
);
return controller.presentPreviewAnimated(true);
} catch (e) {
Trace.write(
"Error in openFile",
Trace.categories.Error,
Trace.messageType.error
);
}
return false;
}
export function GC() {
__collect();
}
export function releaseNativeObject(object: NSObject) {
__releaseNativeCounterpart(object);
}
export function openUrl(location: string): boolean {
try {
const url = NSURL.URLWithString(location.trim());
if (UIApplication.sharedApplication.canOpenURL(url)) {
return UIApplication.sharedApplication.openURL(url);
}
} catch (e) {
// We Don't do anything with an error. We just output it
Trace.write(
"Error in OpenURL",
Trace.categories.Error,
Trace.messageType.error
);
}
return false;
}
export function isRealDevice(): boolean {
return ios.isRealDevice();
}