【发布时间】:2016-06-30 21:26:00
【问题描述】:
我不知道我的错误是什么。 三天前,我的 youtubePlayer 在我的 Android 应用中运行良好。 现在我得到一个初始化错误。
我没有更改任何代码。
这是堆栈跟踪:
blackstone.tvsunnahboxmenu E/YouTubeAndroidPlayerAPI:创建 YouTubePlayerView 时出错 com.google.android.youtube.player.internal.w$a:com.google.android.youtube.api.jar.client.RemoteEmbeddedPlayer 中调用的构造函数引发的异常 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.ac.a(未知来源) 在 com.google.android.youtube.player.YouTubePlayerView.a(未知来源) 在 com.google.android.youtube.player.YouTubePlayerView$1.a(未知来源) 在 com.google.android.youtube.player.internal.r.g(未知来源) 在 com.google.android.youtube.player.internal.r$c.a(未知来源) 在 com.google.android.youtube.player.internal.r$b.a(未知来源) 在 com.google.android.youtube.player.internal.r$a.handleMessage(未知来源) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:145) 在 android.app.ActivityThread.main(ActivityThread.java:6145) 在 java.lang.reflect.Method.invoke(本机方法) 在 java.lang.reflect.Method.invoke(Method.java:372) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194) 引起:java.lang.reflect.InvocationTargetException 在 java.lang.reflect.Constructor.newInstance(Native Method) 在 java.lang.reflect.Constructor.newInstance(Constructor.java:288) 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.ac.a(未知来源) 在 com.google.android.youtube.player.YouTubePlayerView.a(未知来源) 在 com.google.android.youtube.player.YouTubePlayerView$1.a(未知来源) 在 com.google.android.youtube.player.internal.r.g(未知来源) 在 com.google.android.youtube.player.internal.r$c.a(未知来源) 在 com.google.android.youtube.player.internal.r$b.a(未知来源) 在 com.google.android.youtube.player.internal.r$a.handleMessage(未知来源) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:145) 在 android.app.ActivityThread.main(ActivityThread.java:6145) 在 java.lang.reflect.Method.invoke(本机方法) 在 java.lang.reflect.Method.invoke(Method.java:372) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194) 原因:java.lang.IllegalArgumentException:实现 IObjectWrapper 的具体类必须为被包装对象准确声明 one 的私有字段。最好这是 ObjectWrapper 类的一个实例。 在 wal.a(SourceFile:76) 在 com.google.android.youtube.api.jar.client.RemoteEmbeddedPlayer.(SourceFile:145) 在 java.lang.reflect.Constructor.newInstance(Native Method) 在 java.lang.reflect.Constructor.newInstance(Constructor.java:288) 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.w.a(未知来源) 在 com.google.android.youtube.player.internal.ac.a(未知来源) 在 com.google.android.youtube.player.YouTubePlayerView.a(未知来源) 在 com.google.android.youtube.player.YouTubePlayerView$1.a(未知来源) 在 com.google.android.youtube.player.internal.r.g(未知来源) 在 com.google.android.youtube.player.internal.r$c.a(未知来源) 在 com.google.android.youtube.player.internal.r$b.a(未知来源) 在 com.google.android.youtube.player.internal.r$a.handleMessage(未知来源) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:145) 在 android.app.ActivityThread.main(ActivityThread.java:6145) 在 java.lang.reflect.Method.invoke(本机方法) 在 java.lang.reflect.Method.invoke(Method.java:372) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194) 06-30 17:07:48.867 32407-32407/software.blackstone.tvsunnahboxmenu E/SRIB_DCS:title=Toast 返回 true
blackstone.tvsunnahboxmenu E/YouTubeAndroidPlayerAPI: Error creating YouTubePlayerView com.google.android.youtube.player.internal.w$a: Exception thrown by invoked constructor in com.google.android.youtube.api.jar.client.RemoteEmbeddedPlayer
Caused by: java.lang.reflect.InvocationTargetException at java.lang.reflect.Constructor.newInstance(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
Caused by: java.lang.IllegalArgumentException: The concrete class implementing IObjectWrapper must have exactly *one* declared private field for the wrapped object. Preferably, this is an instance of the ObjectWrapper<T> class. at wal.a(SourceFile:76)
【问题讨论】:
-
如果以前有效的话,显然已经发生了一些变化:您的堆栈跟踪显示“
The concrete class implementing IObjectWrapper must have exactly one declared private field for the wrapped object. Preferably, this is an instance of the ObjectWrapper class. at wal.a(SourceFile:76)”。该文件可能已更改。 -
我没有为 YoutUbe 播放器调用更改此代码。
-
我从我的 git hub 帐户中提取了代码,该帐户自 5 月 7 日以来一直没有被触及)从那时起我一直在本地工作)。我下载它并按原样运行它 - 没有更改或编辑....并且出现相同的结果。我在 4 个不同的 android 设备上运行它,结果相同 - YT 播放器无法初始化
-
我也重建并清理了项目。
标签: android youtube-api