当我找到答案时,我会自责的,但我很困惑,所以:
我在尝试访问 OneDrive 时收到(某些)用户报告的 NullPointerException
。当然,我自己无法重现。我正在使用 Microsoft 的 OneDrive SDK。 FileListItem
是我尝试在 SDK 回调的 success()
方法中填充的类。错误位置来自 Google Play 开发者控制台错误详细信息中的堆栈跟踪。
final ICallback<IItemCollectionPage> callback = new ICallback<IItemCollectionPage>() {
@Override
public void success(final IItemCollectionPage result) {
for (Item child : result.getCurrentPage()) {
FileListItem item = new FileListItem();
item.name = child.name;
if (child.parentReference != null) {
item.sourcePath = child.parentReference.path; // java.lang.NullPointerException
}
...
所以 child
来自 for
循环,通过传递给 success()
的(大概是有效的)列表,它不会在 child.name
上崩溃,并且 {{1} }.
我的问题是,如果 child.parentReference != null
是我刚刚创建的有效对象,以及 item
,这些用户如何获得 child.parentReference != null
?
编辑以添加完整的堆栈跟踪:
NullPointerException