java - 按意图传递 firebase 数据会导致 java.lang.IllegalArgumentException
问题描述
我的数据来自 Firebase 云 Firestore,它不包含斜杠“/”,因为这个问题的每个解决方案总是告诉我使用.replace("/","-")
. 该 ID 是来自 Firebase“cHkncpz6RVHv4ITFlICr”的通用 ID
HomePageAdapter.java
Intent passID = new Intent(itemView.getContext(),Destination.class);
passID.putExtra("ID", destinationID);
itemView.getContext().startActivity(passID);
目的地.java
ID = getIntent().getStringExtra("ID");
firebaseFirestore.collection("DESTINATION").document(ID) <----- this line throws java.lang.IllegalArgumentException: Invalid document reference. Document references must have an even number of segments, but DESTINATIONS has 1
到目前为止我尝试的是:
- 将字符串 ID 替换为
ID = "cHkncpz6RVHv4ITFlICr";
应用程序当然可以工作。 - 如果 ID 为空,则进行跟踪,这不是因为 LOG 显示 ID 为“cHkncpz6RVHv4ITFlICr”。
Log.d("ID", destinationID);
返回
D/ID: cHkncpz6RVHv4ITFlICr
- 替换了 Intent 中的额外内容,
passID.putExtra("ID", "cHkncpz6RVHv4ITFlICr");
该应用程序不起作用。
所以我的结论是意图导致这个异常。任何帮助深表感谢。
解决方案
推荐阅读
- javascript - 可以通过控制台为 div 设置动画,但不能通过 JS 文件设置
- javascript - 从对象数组中删除当前索引
- docker - 无法使用 docker 工具箱登录到 docker
- javascript - 如何保持 div 位置固定但仍应可滚动?
- node.js - 解析服务器上的 SSL
- python - 基类方法的动态更新
- python - 我应该如何解决这个问题 - 'int' 对象不可迭代?
- html - 如何通过vba将HTML span属性复制到excel
- java - jdbi版本3,stringtemplate何时转义<,>字符?
- excel - 为什么 SUMPRODUCT 中需要 Ctrl-Shift-Enter?