0
我正在使用YouTube數據API從我的頻道獲取數據的應用程序。我已經完成了所有的設置,如在谷歌控制檯上的鍵和API,YouTube和應用程序在調試階段工作正常。但是,當我生成我的apk發佈階段我的應用程序沒有按預期工作。對於針對數據的YouTube數據API的調用,它會產生以下錯誤。400發佈版本apk上的錯誤請求
com.google.a.a.b.a.b: 400 Bad Request
W/System.err: {
"errors": [
{
"domain": "global",
"reason": "required",
"message": "Required parameter: part",
"locationType": "parameter",
"location": "part"
}
],
"code": 400,
"message": "Required parameter: part"
}
W/System.err: at com.google.a.a.b.c.a.b.b(Unknown Source)
W/System.err: at com.google.a.a.b.c.a.b.a(Unknown Source)
W/System.err: at com.google.a.a.b.c.b$1.a(Unknown Source)
W/System.err: at com.google.a.a.c.o.o(Unknown Source)
W/System.err: at com.google.a.a.b.c.b.b(Unknown Source)
W/System.err: at com.beebom.app.beebom.videos.l$c.a(Unknown Source)
W/System.err: at
com.beebom.app.beebom.videos.l$c.doInBackground(Unknown Source)
W/System.err: at android.os.AsyncTask$2.call(AsyncTask.java:305)
W/System.err: at jav a.util.concurrent.FutureTask.run(FutureTask.java:237)
W/System.err: at
android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
W/System.err: at java.lang.Thread.run(Thread.java:761)
我提取數據的代碼是在這裏:
mYouTubeDataApi = new YouTube.Builder(AndroidHttp.newCompatibleTransport(),new GsonFactory(),null)
.setApplicationName("app").build();
searchlistResponse = mYouTubeDataApi.search().list("snippet")
.setChannelId(Constants.CHANNELID).setFields("items(id/videoId),nextPageToken")
.setMaxResults((long) results)
.setKey(Constants.YOUTUBEDEVELOPERKEY)
.setType("video").setOrder("date").execute();
錯誤消息說,某些部分參數丟失,但這個在調試階段,甚至在瀏覽器 而不是在發佈階段工作完美。我錯過什麼或做錯了什麼。或者它是由於Gradle造成的,同時收縮資源或 ,同時產生relase apk。請幫我找到錯誤。
您是否更新了憑據?嘗試按照文檔 - [註冊您的應用程序](https://developers.google.com/youtube/android/player/register)更新您的發行版APK的憑據。希望這可以幫助。 –