Hier, was ich versuche, ist Video URL von Fragment, wo ich youtubeFragmentActivity
anrufen, wie dies. In Tab2Frag
Fragment. Ich rufe youtubeFragmentActivity
an.So erhalten Sie die URL für youtube api aus Fragment und setzen Sie auf YoutubeFragment
public class Tab2Frag extends Fragment {
public static String PRO_ID;
public static String youtube_url1;
MainActivity mainActivity;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_tab2, container, false);
new Show_data().execute();
new Adds1().execute();
Bundle data = new Bundle();
data.putString("youtube_details", youtube_url1);
System.out.println("@@[email protected]@@"+youtube_url1);
YouTubeFragmentActivity youTubeFragmentActivity=new YouTubeFragmentActivity();
youTubeFragmentActivity.setArguments(data);
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
transaction.add(R.id.main, youTubeFragmentActivity).commit();
return rootView;
}
@Override
public void onAttach(Activity activity) {
// TODO Auto-generated method stub
super.onAttach(activity);
mainActivity=(MainActivity)activity;
}
class Show_data extends AsyncTask<String, String, String>{
JSONObject jsonobject;
JSONArray jsonarray;
ProgressDialog mDialog;
@Override
protected String doInBackground(String... params) {
// TODO Auto-generated method stub
Bundle bundle = getActivity().getIntent().getExtras();
PRO_ID = bundle.getString("PRODUCT_ID");
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("http://towncitycards.com/webservice_action.php?action=get_detail&id="+PRO_ID);
try{
HttpResponse response = httpClient.execute(httpPost);
String data = inputStreamToString(response.getEntity().getContent());
jsonobject = new JSONObject(data);
jsonarray = new JSONArray(jsonobject.getString("detail"));
for(int j=0; j<jsonarray.length();j++){
JSONObject itemobj = jsonarray.getJSONObject(j);
//SHOW SEARCH RESULT
Get_detailsBeams get_detailsBeams = new Get_detailsBeams();
get_detailsBeams.setId(itemobj.getString("ID"));
get_detailsBeams.setYoutube(itemobj.getString("youtube_detail"));
get_detailsBeams.setTerms_condition(itemobj.getString("terms_condition"));
Log.v("Details", itemobj.toString());
}
}catch(Exception e){
e.printStackTrace();
}
return null;
}
@Override
public void onPostExecute(String result) {
super.onPostExecute(result);
final String youtube_url;
try {
youtube_url = jobj.opt("youtube_detail").toString();
System.out.println("@@@@[email protected]"+youtube_url);
youtube_url1=youtube_url.replace("https://www.youtube.com/watch?v=","");
System.out.println("@@@@[email protected]"+youtube_url1);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(mDialog!=null && mDialog.isShowing()){
mDialog.dismiss();
}
}
}
}
Mein YouTubeFragmentActivity
public class YouTubeFragmentActivity extends Fragment {
private FragmentActivity myContext;
private YouTubePlayer YPlayer;
private static String YOU_TUBE;
@Override
public void onAttach(Activity activity) {
if (activity instanceof FragmentActivity) {
myContext = (FragmentActivity) activity;
}
super.onAttach(activity);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.activity_you_tube_api, container, false);
Bundle extras = getArguments();
YOU_TUBE = extras.getString("youtube_details");
System.out.println("@@@@@@@@@@@@@"+YOU_TUBE+"@@@@@@@2");
YouTubePlayerSupportFragment youTubePlayerFragment = YouTubePlayerSupportFragment.newInstance();
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
transaction.add(R.id.youtube_fragment, youTubePlayerFragment).commit();
youTubePlayerFragment.initialize("DEVELOPER_KEY", new OnInitializedListener() {
@Override
public void onInitializationSuccess(Provider provider, YouTubePlayer youTubePlayer, boolean b) {
if (!b) {
YPlayer = youTubePlayer;
YPlayer.loadVideo(YOU_TUBE);
YPlayer.play();
}
}
@Override
public void onInitializationFailure(Provider provider, YouTubeInitializationResult error) {
// YouTube error
String errorMessage = error.toString();
Toast.makeText(getActivity(), errorMessage, Toast.LENGTH_LONG).show();
Log.d("errorMessage:", errorMessage);
}
});
return rootView;
}
}
Log:
####Ashu in preExecute
@@[email protected]@@Vij0z6NS5BE
@@@@@@@@@@@@@[email protected]@@@@@@2
@@@@[email protected]://www.youtube.com/watch?v=Vij0z6NS5BE
@@@@[email protected]
[email protected]@@@50.86947