Я получил сообщение из магазина Google Play, в котором говорится ниже.
Чтобы уточнить, мы определили, что ваше приложение позволяет фоновое воспроизведение видео YouTube (видео YouTube продолжает воспроизводиться после нажатия кнопки питания и экранаотключено), что является нарушением Условий использования API YouTube:
Мое приложение использует YouTubePlayerSupportFragment для воспроизведения данного видео.Глядя на код, я не вижу, где я нарушаю, как упомянуто выше.
Когда я пытался в выключенном режиме экрана телефона, я фактически не слушал воспроизведение видео.
IЯ не уверен, что является причиной нарушения.Из-за этого приложение было закрыто.
Пожалуйста, предложите, если нужно, позаботиться о том, чтобы придерживаться всех правил Youtube и принять обратно в магазине воспроизведения.Вот фрагмент кода реализации:
public class FragmentVideo extends Fragment implements YouTubePlayer.OnInitializedListener {
public static final String ARG_SECTION_NUMBER = "section_number";
public static final String DEFAULT_VIDEO_LINK = "https://www.youtube.com/watch?v=dVzxrPKA8MM";
public static final String DEFAULT_VIDEO_ID = "dVzxrPKA8MM";
public static final String YOUTUBE_BASE_LINK ="www.youtube.com/watch?v=";
private static final int RECOVERY_DIALOG_REQUEST = 1;
public View rootView;
public FragmentTransaction ft;
public String videolink;
public int loc;
public YouTubePlayerSupportFragment youTubePlayerFragment;
public static final String API_KEY = "XXXX-9Ku5SQ476uS9OtZYsWA";
public static String VIDEO_ID = null;
private Statelistener Statelistener;
private eventlistener Events;
public static FragmentVideo newInstance(String param1, String param2) {
FragmentVideo fragment = new FragmentVideo();
Bundle args = new Bundle();
fragment.setArguments(args);
return fragment;
}
public FragmentVideo() {
// Required empty public constructor
}
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
Statelistener = new Statelistener();
Events = new eventlistener();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
rootView = inflater.inflate(R.layout.fragment_video, container, false);
TextView tv = (TextView) rootView.findViewById(R.id.videoDetails);
videolink = getArguments().getString("VIDEOLINK");
tv.setText("Playing Default video: " + videolink);
youTubePlayerFragment = new YouTubePlayerSupportFragment();
youTubePlayerFragment.initialize(DeveloperKey.DEVELOPER_KEY, this);
ft = getFragmentManager().beginTransaction();
ft.replace(R.id.fragment_youtube_player, youTubePlayerFragment);
ft.commit();
return rootView;
}
@Override
public void onSaveInstanceState(Bundle outState) {
// TODO Auto-generated method stub
super.onSaveInstanceState(outState);
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider,
YouTubeInitializationResult errorReason) {
if (errorReason.isUserRecoverableError()) {
errorReason.getErrorDialog(super.getActivity(), RECOVERY_DIALOG_REQUEST).show();
} else {
//String errorMessage = String.format(getString(R.string.error_player), errorReason.toString());
Toast.makeText(super.getActivity().getApplicationContext(), "error on initialization", Toast.LENGTH_LONG).show();
}
}
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer player,
boolean wasRestored) {
player.setPlayerStateChangeListener(Statelistener);
player.setPlaybackEventListener(Events);
if (!wasRestored) {
player.cueVideo(VIDEO_ID);
}
}
@Override
public void onStop() {
// TODO Auto-generated method stub
super.onStop();
}
@Override
public void onResume() {
// TODO Auto-generated method stub
super.onResume();
}
@Override
public void onStart() {
// TODO Auto-generated method stub
super.onStart();
}
}