NativeScript + Angular 2 +第三方Java库

时间:2016-07-22 16:38:29

标签: typescript angular nativescript

今天我开始学习nativescript。我正在尝试构建简单的ng2应用程序,它将使用第三方java库。我正在努力实现类似的目标

http://developer.telerik.com/featured/using-native-libraries-in-nativescript/

但我一直收到未定义的错误。

我在ts代码中访问java没有问题:

import app = require("application");
import platform = require("platform");
declare var java;
.......
public get message(): string {
        var str = new java.lang.String('Hello world!');
        var result = str.endsWith('world!');
        console.log(result); // true

但我无法访问第三方java库

import {Component} from "@angular/core";
import app = require("application");
declare var KontaktSDK;

@Component({
    selector: "my-app",
    templateUrl: "app.component.html",
})
export class AppComponent {
    public counter: number = 16;

    public onTap(args) {
        KontaktSDK.initialize("API_KEY");
        this.counter--;
    }
}

它抛出引用错误" KontaktSDK未定义"

感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

当访问nativescript中的android本机方法时,你需要使用完整的包名和类,例如com.kontakt.sdk.android.common.KontaktSDK.initialize("API_KEY")我在开发nativescript插件时选择了一个小技巧,你可以在类上使用console.dump(com.kontakt.sdk.android.common.KontaktSDK)它将显示该类中包含的所有方法。如有疑问,请将其注销