Nativescript-auth0 | java.lang.NullPointerException

Nativescript-auth0 | java.lang.NullPointerException

首先,我对此很陌生,所以如果我忘记了一些信息,请原谅,谢谢你的帮助。

我正在尝试使用 nativescript-auth0 登录我的 nativescript android 应用程序。

首先,我的tns版本是4.1.2。 tns-android 的版本是 4.1.3。 nativescript-auth0的版本是2.0.0.

我关注了这个 link : https://github.com/sitefinitysteve/nativescript-auth0

正如他们所说,我添加到 Android 清单中:

<activity
            android:name="com.auth0.android.provider.RedirectActivity"
            tools:node="replace">
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />

                <data
                    android:host="jarggon.eu.auth0.com"
                    android:pathPrefix="/android/org.nativescript.JarggonTranslatorApp/callback"
                    android:scheme="https" />
            </intent-filter>
        </activity>

在我的组件中我有:

 lock.show().then((res) => {
  console.log('success');
}, function (error) {
  console.log(error);
}); 

使用我的 lock 实例,一切都很好。

但是当我运行通过“tns 运行 android”安装应用程序时,我得到了这个:

JS: Error: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Context android.content.Context.getApplicationContext()' on a null object reference JS: android.support.v4.content.LocalBroadcastManager.getInstance(LocalBroadcastManager.java:102) JS: com.auth0.android.lock.Lock.initialize(Lock.java:144) JS: com.auth0.android.lock.Lock.access0(Lock.java:56) JS: com.auth0.android.lock.Lock$Builder.build(Lock.java:236) JS: com.tns.Runtime.callJSMethodNative(Native Method) JS: com.tns.Runtime.dispatchCallJSMethodNative(Runtime.java:1101) JS: com.tns.Runtime.callJSMethodImpl(Runtime.java:983) JS: com.tns.Runtime.callJSMethod(Runtime.java:970) JS: com.tns.Runtime.callJSMethod(Runtime.java:954) JS: com.tns.Runtime.callJSMethod(Runtime.java:946) JS: com.tns.NativeScriptActivity.onCreate(NativeScriptActivity.java:18) JS: android.app.Activity.performCreate(Activity.java:7041) JS: android.app.Activity.performCreate(Activity.java:7032) JS: android.app.Instrumentation.callActivityOnCre...

我知道这是来自 lock.show() 函数错误的 console.log,但我不明白为什么..

我也尝试在根目录下添加一个reference.d.ts文件并放入其中:

/// <reference path="./node_modules/nativescript-auth0/typings/Auth0.ios.d.ts" />
/// <reference path="./node_modules/nativescript-auth0/typings/Lock.ios.d.ts" />

但我在 运行 时遇到了大约 30 个错误,例如:

node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(2,43): error TS2552: Cannot find name 'NSObject'. Did you mean 'Object'? node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(8,42): error TS2304: Cannot find name 'NSURL'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(10,42): error TS2304: Cannot find name 'NSURL'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(10,58): error TS2304: Cannot find name 'NSURLSession'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(12,153): error TS2304: Cannot find name 'NSDictionary'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(12,195): error TS2304: Cannot find name 'NSError'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(12,208): error TS2304: Cannot find name 'NSDictionary'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(14,45): error TS2304: Cannot find name 'NSURL'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(16,52): error TS2304: Cannot find name 'NSURL'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(16,68): error TS2304: Cannot find name 'NSURLSession'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(18,118): error TS2304: Cannot find name 'NSDictionary'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(18,160): error TS2304: Cannot find name 'NSError'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(20,151): error TS2304: Cannot find name 'NSDictionary'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(20,193): error TS2304: Cannot find name 'NSError'. node_modules/nativescript-auth0/typings/Auth0.ios.d.ts(22,93): error TS2304: Cannot find name 'NSError'.

我不知道我还能做什么..谢谢你的帮助,如果你需要任何信息,请告诉我..

已解决。如果有人需要知道我必须使用 GridLayout 的加载事件。因为在我执行锁定实例之前视图还没有准备好,即使我使用了 ngAfterViewInit 。