我有使用Angularjs指令的html,这个html文件在Android WebView中使用,我想从这个指令调用Android方法(How to call Android method from JS)
这是我的指示,
return {
restrict: 'A',
link: function (scope, element, attrs) {
scope.$watch('controller.isReady', function (value) {
if (value === true) {
try {
Android.isReady();
} catch (e) {}
}
});
}
}
当我使用Typescript时,显然我收到一条错误,指出Android
未定义。即使会有纯粹的AngularJS,Android
对象仍然是未定义的。
有没有办法使这个工作,所以我将能够从AngularJs调用Android方法?
答案 0 :(得分:1)
您需要declare Android
个对象。
interface AndroidApi {
isReady(): void;
}
declare var Android: AndroidApi;
然后Android.isReady()
对编译器有意义。
这是ambient declarations的更好资源。