Guest User

Untitled

a guest
Jan 22nd, 2019
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.92 KB | None | 0 0
  1. public class PunjabiSingleTracks extends Fragment {
  2. RecyclerView rvImageList;
  3. DatabaseReference databaseList, databaseDownload;
  4. DownloadManager downloadManager;
  5. private AnimationDrawable animationDrawable;
  6. private ImageView mProgressBar;
  7. FloatingActionButton fab;
  8. NotificationManager notificationManager;
  9. private int STORAGE_PERMISSION_CODE = 1;
  10.  
  11. @Override
  12. public View onCreateView(LayoutInflater inflater, ViewGroup container,
  13. Bundle savedInstanceState) {
  14. View rootView = inflater.inflate(R.layout.punjabisingletracks, container, false);
  15. rvImageList = (RecyclerView) rootView.findViewById(R.id.rvImagelist);
  16. rvImageList.setHasFixedSize(true);
  17. mProgressBar = (ImageView) rootView.findViewById(R.id.main_progress);
  18. fab = (FloatingActionButton) rootView.findViewById(R.id.fabpunjabisingletracks);
  19. fab.setOnClickListener(new View.OnClickListener() {
  20. @Override
  21. public void onClick(View view) {
  22. Intent intent = new Intent(getActivity(), Search_PunjabiSingleTracks.class);
  23. startActivity(intent);
  24. }
  25. });
  26. LinearLayoutManager layoutManager = new LinearLayoutManager(getActivity());
  27. rvImageList.setLayoutManager(new LinearLayoutManager(getActivity()));
  28. layoutManager.setReverseLayout(true);
  29. layoutManager.setStackFromEnd(true);
  30. rvImageList.setLayoutManager(layoutManager);
  31. rvImageList.addOnScrollListener(new RecyclerView.OnScrollListener() {
  32.  
  33. @Override
  34. public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
  35.  
  36. if (dy > 0) {
  37. if (recyclerView.canScrollVertically(RecyclerView.FOCUS_DOWN) == false) {
  38. Toast.makeText(getActivity(), "No More", Toast.LENGTH_SHORT).show();
  39. }
  40.  
  41. }
  42. }
  43. });
  44. databaseList = FirebaseDatabase.getInstance().getReference().child("punjabisingletracks");
  45. databaseList.keepSynced(true);
  46. databaseDownload = FirebaseDatabase.getInstance().getReference().child("punjabisingletracks");
  47. databaseDownload.keepSynced(true);
  48. mProgressBar.setBackgroundResource(R.drawable.spinner);
  49. animationDrawable = (AnimationDrawable) mProgressBar.getBackground();
  50. mProgressBar.setVisibility(View.VISIBLE);
  51. animationDrawable.start();
  52. return rootView;
  53. }
  54. public void onStart(){
  55. super.onStart();
  56.  
  57. FirebaseRecyclerAdapter<PunjabiSingleTracks_List, UploadImageHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<PunjabiSingleTracks_List, UploadImageHolder>(
  58. PunjabiSingleTracks_List.class,
  59. R.layout.punjabisonglist,
  60. UploadImageHolder.class,
  61. databaseList
  62. ) {
  63. @Override
  64. protected void populateViewHolder(UploadImageHolder viewHolder,
  65. PunjabiSingleTracks_List model, int position) {
  66. final String Image_Key=getRef(position).getKey();
  67. viewHolder.setDetails(getActivity(), model.getTitle(),
  68. model.getDesc(), model.getImage());
  69. mProgressBar.setVisibility(View.GONE);
  70. animationDrawable.stop();
  71. viewHolder.txttwo.setOnClickListener(new View.OnClickListener() {
  72.  
  73. @Override
  74. public void onClick(View view) {
  75.  
  76. databaseDownload.addListenerForSingleValueEvent(new ValueEventListener() {
  77.  
  78. @Override
  79. public void onDataChange(DataSnapshot dataSnapshot) {
  80. String ImageUrl = dataSnapshot.child(Image_Key).child("two").getValue(String.class);
  81.  
  82. downloadManager = (DownloadManager)getActivity().getSystemService(Context.DOWNLOAD_SERVICE);
  83. Uri uri = Uri.parse(ImageUrl);
  84. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
  85.  
  86. try {ConnectivityManager connMgr = (ConnectivityManager) getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
  87. NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
  88. if (networkInfo != null && networkInfo.isConnected()) {
  89. DownloadManager.Request request = new DownloadManager.Request(uri);
  90. String fileName = ImageUrl.substring(ImageUrl.lastIndexOf('/') + 1);
  91. request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, fileName);
  92. request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
  93. Toast.makeText(getActivity(), "Downloading File", Toast.LENGTH_SHORT).show();
  94. downloadManager.enqueue(request);
  95.  
  96. }else {
  97. AlertDialog alertDialog;
  98. AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
  99. builder.setMessage("You need a network connection to download the song. Please turn on mobile network or Wi-Fi in Settings.")
  100. .setNegativeButton("OK", new DialogInterface.OnClickListener() {
  101. @Override
  102. public void onClick(DialogInterface dialog, int which) {
  103. dialog.cancel();
  104. }
  105. }
  106. )
  107. .setCancelable(false);
  108. /* .setCancelable(false)
  109. /.setPositiveButton("WIFI", new DialogInterface.OnClickListener() {
  110. @Override
  111. public void onClick(DialogInterface dialog, int which) {
  112. startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));
  113.  
  114. }
  115. });*/
  116. alertDialog = builder.create();
  117. alertDialog.show();
  118. //Toast.makeText(getActivity(),"Pleae check your internet connection",Toast.LENGTH_SHORT).show();
  119. }
  120. }catch (Exception e){
  121. requestStoragePermission();
  122. }
  123.  
  124. } else {
  125. Intent i = new Intent(Intent.ACTION_VIEW);
  126. i.setData(Uri.parse(ImageUrl));
  127. startActivity(i);
  128. }
  129. }
  130.  
  131. @Override
  132. public void onCancelled(DatabaseError databaseError) {
  133.  
  134. }
  135. });
  136. rvImageList.setAdapter(firebaseRecyclerAdapter);
  137.  
  138. }
  139.  
  140. public static class UploadImageHolder extends RecyclerView.ViewHolder{
  141.  
  142. View view;
  143. TextView txttwo;
  144. public UploadImageHolder(View itemView) {
  145. super(itemView);
  146. view = itemView;
  147. txttwo = (TextView)view.findViewById(R.id.twokbps);
  148. }
  149. public void setDetails(Context ctx, String title, String desc, String image){
  150.  
  151. TextView imagetitle = (TextView) view.findViewById(R.id.tvuserimagetitle);
  152. TextView imagedesc = (TextView) view.findViewById(R.id.tvuserimagedesc);
  153. ImageView imageView = (ImageView) view.findViewById(R.id.UserImage);
  154.  
  155.  
  156. imagetitle.setText(title);
  157. imagedesc.setText(desc);
  158.  
  159. Picasso.with(ctx).load(image).into(imageView);
  160. }
Add Comment
Please, Sign In to add comment