首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android:空对象引用上的FirebaseMessaging.getToken()

Android:空对象引用上的FirebaseMessaging.getToken()
EN

Stack Overflow用户
提问于 2021-08-07 13:32:48
回答 1查看 159关注 0票数 0

我在用一个信号有问题。我试图在另一个项目中使用一个信号,但在这个项目上,我遇到了错误。我想有些图书馆造成了这个问题。

应用程序分级

代码语言:javascript
运行
复制
plugins {
id 'com.android.application'
id 'kotlin-android'
id 'androidx.navigation.safeargs'
id 'kotlin-kapt'
id 'com.google.gms.google-services'
id 'com.onesignal.androidsdk.onesignal-gradle-plugin'}

android {
compileSdkVersion 30
buildToolsVersion "30.0.3"

buildFeatures {
    viewBinding true
}

defaultConfig {
    applicationId "com.ersincoskun.focusapp"
    minSdkVersion 21
    targetSdkVersion 30
    versionCode 1
    versionName "1.0"

    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}
compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
    jvmTarget = '1.8' }
}       
dependencies {
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation files('libs\\YouTubeAndroidPlayerApi.jar')
def nav_version = "2.3.4"

implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation 'androidx.core:core-ktx:1.3.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.4.0-alpha02'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'

implementation 'com.github.PhilJay:MPAndroidChart:v3.1.0'
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"
implementation "androidx.navigation:navigation-ui-ktx:$nav_version"

implementation 'de.hdodenhof:circleimageview:3.1.0'

implementation 'com.github.AppIntro:AppIntro:6.1.0'

implementation 'com.akexorcist:round-corner-progress-bar:2.1.1'

implementation 'it.xabaras.android:recyclerview-swipedecorator:1.2.3'

def room_version = "2.3.0"

implementation "androidx.room:room-ktx:$room_version"
implementation "androidx.room:room-runtime:$room_version"
kapt "androidx.room:room-compiler:$room_version"

implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.2'

def lifecycle_version = "2.3.1"

// ViewModel
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
implementation 'androidx.activity:activity-ktx:1.3.1'
// LiveData
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1"
//retrofit
def retrofitVersion = '2.9.0'
implementation "com.squareup.retrofit2:retrofit:$retrofitVersion"
implementation "com.squareup.retrofit2:converter-gson:$retrofitVersion"

implementation 'me.tankery.lib:circularSeekBar:1.3.0'
implementation 'com.mikhaellopez:circularprogressbar:3.0.3'

implementation "androidx.lifecycle:lifecycle-reactivestreams-ktx:2.4.0-alpha01"
implementation "io.reactivex.rxjava2:rxandroid:2.1.1"

implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.22'

implementation 'com.eightbitlab:blurview:1.6.6'

implementation 'com.theartofdev.edmodo:android-image-cropper:2.8.+'

implementation 'com.github.bumptech.glide:glide:4.12.0'

implementation 'com.github.MdFarhanRaja:SearchableSpinner:2.0'

implementation platform('com.google.firebase:firebase-bom:28.3.0')
implementation 'com.google.firebase:firebase-analytics-ktx'

implementation 'com.onesignal:OneSignal:[4.0.0, 4.99.99]'
implementation "com.google.firebase:firebase-iid"}

顶级分级

代码语言:javascript
运行
复制
buildscript {
ext.kotlin_version = "1.5.10"
repositories {
    google()
    jcenter()
    gradlePluginPortal()
    mavenCentral()
}
dependencies {
    classpath 'com.android.tools.build:gradle:7.0.0'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath 'com.google.gms:google-services:4.3.9'
    classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.10, 0.99.99]'

    def nav_version = "2.3.4"
    classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version"

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files}
}
allprojects {
repositories {
    google()
    jcenter()
    mavenCentral()

    maven { url 'https://jitpack.io' } 
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}

流形

代码语言:javascript
运行
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.ersincoskun.focusapp">

<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission
    android:name="android.permission.PACKAGE_USAGE_STATS"
    tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission
    android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
    tools:ignore="ProtectedPermissions" />

<application
    android:name=".MyApplicationClass"
    android:allowBackup="false"
    android:icon="@mipmap/ic_launcher"
    android:label="Focused Pupa"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/Theme.FocusApp"
    android:usesCleartextTraffic="true"
    tools:node="replace">
    <activity
        android:name="com.ersincoskun.focusapp.view.fragments.watchvideo.FullScreenVideoActivity"
        android:screenOrientation="sensorLandscape">

    </activity>

    <service android:name="com.ersincoskun.focusapp.service.SessionService" />

    <activity android:name="com.ersincoskun.focusapp.view.activities.NotificationActivity" />
    <activity
        android:name="com.theartofdev.edmodo.cropper.CropImageActivity"
        android:theme="@style/Base.Theme.AppCompat" />
    <activity
        android:name="com.ersincoskun.focusapp.view.activities.MainActivity"
        android:screenOrientation="portrait"
        android:windowSoftInputMode="adjustResize" />
    <activity
        android:name="com.ersincoskun.focusapp.view.activities.RegisterActivity"
        android:screenOrientation="portrait"
        android:windowSoftInputMode="adjustPan" />

    <activity android:name="com.ersincoskun.focusapp.view.activities.IntroActivity" />

    <activity
        android:name="com.ersincoskun.focusapp.view.activities.SplashScreen"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <provider
        android:name="androidx.core.content.FileProvider"
        android:authorities="${applicationId}.provider"
        android:exported="false"
        android:grantUriPermissions="true">
        <meta-data
            android:name="android.support.FILE_PROVIDER_PATHS"
            android:resource="@xml/provider_path" />
    </provider>

</application>

应用类

代码语言:javascript
运行
复制
import android.app.Application
import com.onesignal.OneSignal
import androidx.work.Configuration

class MyApplicationClass : Application(),Configuration.Provider {
private val ONESIGNAL_APP_ID = "xxxxxxxxxxxxxxxxxxxxxxx"

override fun onCreate() {
    super.onCreate()

    // Enable verbose OneSignal logging to debug issues if needed.
    OneSignal.setLogLevel(OneSignal.LOG_LEVEL.VERBOSE, OneSignal.LOG_LEVEL.NONE)

    // OneSignal Initialization
    OneSignal.initWithContext(this)
    OneSignal.setAppId(ONESIGNAL_APP_ID)
}

override fun getWorkManagerConfiguration() =
    Configuration.Builder()
        .setMinimumLoggingLevel(android.util.Log.INFO)
        .build()
}

Stacktrace

我有这些错误,我该怎么做才能解决,请帮助我

我的书签

EN

回答 1

Stack Overflow用户

发布于 2021-08-07 21:58:32

尝试在应用程序类中初始化FirebaseApp以解决此问题。

应用类

代码语言:javascript
运行
复制
import android.app.Application
import com.onesignal.OneSignal
import androidx.work.Configuration

class MyApplicationClass : Application(),Configuration.Provider {
private val ONESIGNAL_APP_ID = "xxxxxxxxxxxxxxxxxxxxxxx"

override fun onCreate() {
    super.onCreate()

    // Add this line
    FirebaseApp.initializeApp(this)

    // Enable verbose OneSignal logging to debug issues if needed.
    OneSignal.setLogLevel(OneSignal.LOG_LEVEL.VERBOSE, OneSignal.LOG_LEVEL.NONE)

    // OneSignal Initialization
    OneSignal.initWithContext(this)
    OneSignal.setAppId(ONESIGNAL_APP_ID)
}

override fun getWorkManagerConfiguration() =
    Configuration.Builder()
        .setMinimumLoggingLevel(android.util.Log.INFO)
        .build()
}

希望这能帮到你。快乐编码!:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68692837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档