gpt4 book ai didi

java - 我的应用程序运行完美,但现在总是崩溃

转载 作者:行者123 更新时间:2023-12-01 22:00:01 24 4
gpt4 key购买 nike

我正在使用 YouTube Data API v3 在我的应用上搜索 YouTube 视频。昨晚工作得很好,但现在当我点击搜索按钮时它总是崩溃。有人可以帮助我吗?

我尝试重新生成 API key ,但出现同样的错误

当我更改为: return mVideoList.size();

Error is: E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.youtubeexampleproject, PID: 7031

java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference at

YoutubeAdapter.getItemCount(YoutubeAdapter.java:108) the pointer goes to : return mVideolist.size();

下面的代码错误是:

{
"code" : 400,
"errors" : [ {
"domain" : "global",
"location" : "fields",
"locationType" : "parameter",
"message" : "Invalid field selection activity",
"reason" : "invalidParameter"
} ],
"message" : "Invalid field selection activity"
}

'

query = youtube.search().list("id,snippet");

        query.setKey(KEY);



query.setType("video");


query.setFields("items(id/kind,id/videoId,snippet/title,snippet/description,snippet/thumbnails/high/url/activity)");

} catch (IOException e) {


Log.d("YC", "Could not initialize: " + e);
}
}

public List<VideoItem> search(String keywords) {


query.setQ(keywords);


query.setMaxResults(MAXRESULTS);

try {


SearchListResponse response = query.execute();


List<SearchResult> results = response.getItems();


List<VideoItem> items = new ArrayList<VideoItem>();


if (results != null) {


items = setItemsList(results.iterator());
}

return items;

公共(public)类 YoutubeAdapter 扩展了 RecyclerView.Adapter {

private Context mContext;
private List<VideoItem> mVideoList;


public class MyViewHolder extends RecyclerView.ViewHolder{

public ImageView thumbnail;
public TextView video_title, video_id, video_description;
public RelativeLayout video_view;

public MyViewHolder(View view) {

super(view);


thumbnail = view.findViewById(R.id.video_thumbnail);
video_title = view.findViewById(R.id.video_title);
video_id = view.findViewById(R.id.video_id);
video_description = view.findViewById(R.id.video_description);
video_view = view.findViewById(R.id.video_view);
}
}


public YoutubeAdapter(Context mContext, List<VideoItem> mVideoList) {
this.mContext = mContext;
this.mVideoList = mVideoList;
}


@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {


View itemView = LayoutInflater.from(parent.getContext())
.inflate(R.layout.video_item, parent, false);

return new MyViewHolder(itemView);
}


@Override
public void onBindViewHolder(MyViewHolder holder, int position) {


final VideoItem singleVideo = mVideoList.get(position);


holder.video_id.setText("Video ID : "+singleVideo.getId()+" ");
holder.video_title.setText(singleVideo.getTitle());
holder.video_description.setText(singleVideo.getDescription());


Picasso.get()
.load(singleVideo.getThumbnailURL()).resize(480,270)
.centerCrop()
.into(holder.thumbnail);


holder.video_view.setOnClickListener(new View.OnClickListener() {


@Override
public void onClick(View view) {


Intent intent = new Intent();
intent.setClass(mContext, PlayerActivity.class);


intent.putExtra("VIDEO_ID", singleVideo.getId());
intent.putExtra("VIDEO_TITLE",singleVideo.getTitle());
intent.putExtra("VIDEO_DESC",singleVideo.getDescription());

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);


mContext.startActivity(intent);


}
});
}

@覆盖

  public int getItemCount() {    



return mVideoList == null ? 0 : mVideoList.size();


}
}'

最佳答案

从字段中删除 snippet/thumbnails/high/url/activity 并尝试

query.setFields("items(id/kind,id/videoId,snippet/title,snippet/description)");

关于java - 我的应用程序运行完美,但现在总是崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58711782/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com