2017-04-08 84 views
2

我试图使用附近的连接,但我不断收到对话“谷歌播放服务”崩溃。 logcat显示如下的堆栈跟踪:附近的连接空指针异常

04-08 20:01:32.309 8904-11589/? E/AndroidRuntime: FATAL EXCEPTION: highpool[3] 
                Process: com.google.android.gms.nearby.connection, PID: 8904 
                java.lang.NullPointerException: Attempt to read from field 'java.lang.Object pu.a' on a null object reference 
                 at vsb.e(:com.google.android.gms:244) 
                 at vsr.run(:com.google.android.gms:344) 
                 at lmq.run(:com.google.android.gms:450) 
                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
                 at lra.run(:com.google.android.gms:17) 
                 at java.lang.Thread.run(Thread.java:818) 

其中特定的随机字母可以更改。

经过进一步调查后,似乎在设备尝试发现广告设备并且其指定的超时结束时发生。

我去回报问题,并发现有人已经有了:

https://code.google.com/p/android/issues/detail?can=1&start=0&num=100&q=nearby%20connections%20nullpointerexception&colspec=ID%20Status%20Priority%20Owner%20Summary%20Stars%20Reporter%20Opened&groupby=&sort=&id=316748

极少数应用程序似乎使用的附近连接;我知道没有。官方文件不是很好。哎呀,Nearby.Connections.startAdvertising()仍然需要一个AppMetadata参数,谷歌已弃用。

官方代码示例https://github.com/googlesamples/android-nearby已过时且无法使用。

所以我的问题是:我该如何解决这些问题?有没有现代的,工作附近的连接的例子?或者是Nearby Connections API本身没有被使用并且完全被破坏?

+0

“一个空对象引用”说,你应该在你的代码中找到问题,可能你正在尝试使用未创建的类。编辑您的文章并添加您的代码 –

+1

我已经检查了每个传递给附近API的参数,以确保没有任何参数为空。 NullPointerException是从Google的代码中抛出的,而不是我的。正如我所提到的,并且链接的错误报告提到,谷歌的官方示例不再有效,并且本身会引发错误。 –

+0

@ChadSchultz你可以提供一个赏金来解决这个问题吗? – trinity420

回答

1

我们在11版Google Play服务中大幅改进了Nearby Connections。在开发站点有一堆新的功能性,重新编写的文档和新样本。