小编Ais*_*iya的帖子

无法使用Firebase应用内消息传递?

所以我正在尝试将新的Firebase应用程序内消息传递功能实现到我的Android应用程序中.但出于任何原因,应用程序崩溃的那一刻我将库添加到我的gradle中.

这是我的傻瓜:

implementation 'com.google.firebase:firebase-inappmessaging-display:17.0.0'
implementation 'com.squareup.picasso:picasso:2.71828'
Run Code Online (Sandbox Code Playgroud)

我在这里给了poicasso因为在崩溃日志中我得到了与毕加索有关的错误

这是日志文件:

08-19 18:10:08.482 26606-26606/com.kirtu.simpletexts.texts.debug E/CrashlyticsCore: Failed to execute task.
    java.util.concurrent.TimeoutException
        at java.util.concurrent.FutureTask.get(FutureTask.java:177)
        at com.crashlytics.android.core.CrashlyticsBackgroundWorker.submitAndWait(CrashlyticsBackgroundWorker.java:41)
        at com.crashlytics.android.core.CrashlyticsController.handleUncaughtException(CrashlyticsController.java:320)
        at com.crashlytics.android.core.CrashlyticsController$6.onUncaughtException(CrashlyticsController.java:300)
        at com.crashlytics.android.core.CrashlyticsUncaughtExceptionHandler.uncaughtException(CrashlyticsUncaughtExceptionHandler.java:42)
        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068)
        at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1063)
08-19 18:10:08.484 26606-26606/com.kirtu.simpletexts.texts.debug E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.kirtu.simpletexts.texts.debug, PID: 26606
    java.lang.NoClassDefFoundError: Failed resolution of: Lcom/squareup/picasso/OkHttpDownloader;
        at com.google.firebase.inappmessaging.display.internal.b.b.zzr.get(com.google.firebase:firebase-inappmessaging-display@@17.0.0:2038)
        at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
        at com.google.firebase.inappmessaging.display.internal.zzf.get(com.google.firebase:firebase-inappmessaging-display@@17.0.0:1021)
        at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
        at com.google.firebase.inappmessaging.display.zzb.get(com.google.firebase:firebase-inappmessaging-display@@17.0.0:1062)
        at dagger.internal.DoubleCheck.get(DoubleCheck.java:47)
        at com.google.firebase.inappmessaging.display.internal.b.a.zzb.zza(com.google.firebase:firebase-inappmessaging-display@@17.0.0:104)
        at com.google.firebase.inappmessaging.display.FirebaseInAppMessagingDisplayRegistrar.zza(com.google.firebase:firebase-inappmessaging-display@@17.0.0:1058)
        at com.google.firebase.inappmessaging.display.zza.create(com.google.firebase:firebase-inappmessaging-display@@17.0.0)
        at com.google.firebase.components.zzh.zza(com.google.firebase:firebase-common@@16.0.1:29)
        at com.google.firebase.components.zzi.get(com.google.firebase:firebase-common@@16.0.1)
        at com.google.firebase.components.zzh.get(com.google.firebase:firebase-common@@16.0.1:40)
        at com.google.firebase.components.ComponentContainer$$CC.get(com.google.firebase:firebase-common@@16.0.1:15)
        at com.google.firebase.components.zzd.get(com.google.firebase:firebase-common@@16.0.1)
        at com.google.firebase.components.zzd.zza(com.google.firebase:firebase-common@@16.0.1:68)
        at com.google.firebase.FirebaseApp.zze(com.google.firebase:firebase-common@@16.0.1:716)
        at …
Run Code Online (Sandbox Code Playgroud)

android firebase picasso okhttp firebase-in-app-messaging

11
推荐指数
1
解决办法
1631
查看次数

如何有选择地设置 itemTouchHelper 滑动?

所以我在 recyclerview rv 上实现了这个 itemtouchhelper.simple 回调。

现在在这个 rv 中,我根据内容类型将 2 种布局设置为一行。

所以当我在 rv 上设置这个 touchhelper 时,它正在这两种布局上实现,即使我不想这样做。我只想将这种滑动应用于这种布局的一种类型。

ItemTouchHelper.SimpleCallback ith = new ItemTouchHelper.SimpleCallback(0,ItemTouchHelper.RIGHT) {
        @Override
        public boolean onMove(@NonNull RecyclerView recyclerView, @NonNull RecyclerView.ViewHolder viewHolder, @NonNull RecyclerView.ViewHolder viewHolder1) {
            return false;
        }

        @Override
        public void onSwiped(@NonNull RecyclerView.ViewHolder viewHolder, int i) {
            if(viewHolder.itemView.findViewById(R.id.messageholder_from) != null)
            {
                Log.d("texts", "onSwiped: "+viewHolder.itemView.findViewById(R.id.messageholder_from).findViewById(R.id.crfrom));
            }
            adapter.notifyDataSetChanged();
        }
    };
    new ItemTouchHelper(ith).attachToRecyclerView(rv);
Run Code Online (Sandbox Code Playgroud)

如您所见,此代码我只想在包含此 messageholder_from 子项的行上实现滑动,否则我不想实现滑动。

有什么方法可以删除另一个子 messageholder_to 上的滑动动画和侦听器。

我的应用程序根据消息 ID 显示 to_layout 或 from_layout。

感谢您提供任何帮助。

android swipe android-recyclerview itemtouchhelper

1
推荐指数
1
解决办法
1611
查看次数