导航菜单

页面标题

页面副标题

Mantra Counter v25.01 - GetMusic.java 源代码

正在查看: Mantra Counter v25.01 应用的 GetMusic.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.sweetedge.mantracounter;

import android.database.Cursor;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.widget.RelativeLayout;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import org.json.JSONArray;
import org.json.JSONObject;
import save_data.Const;
import sweetedge.extra.PLog;
import sweetedge.popup.PToast;
import sweetedge.preference.PSharedPreference;

public class GetMusic extends AppCompatActivity {
    static GetMusicAdapter adapter_music;
    RecyclerView Music_list;
    RelativeLayout layout_direct;
    static ArrayList<String> LinkListMusic = new ArrayList<>();
    static ArrayList<Boolean> LinkListMusicFAV = new ArrayList<>();
    public static boolean isSelectforReminder = false;
    public static boolean isSelectforNewList = false;

    public boolean isNetwork() {
        NetworkInfo activeNetworkInfo = ((ConnectivityManager) getSystemService("connectivity")).getActiveNetworkInfo();
        return activeNetworkInfo != null && activeNetworkInfo.isConnectedOrConnecting();
    }

    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(R.layout.activity_music);
        this.Music_list = findViewById(R.id.music_list);
        this.layout_direct = (RelativeLayout) findViewById(R.id.layout_direct);
        if (!isSelectforReminder && !isSelectforNewList) {
            LinkListMusic.clear();
            LinkListMusicFAV.clear();
        }
        this.layout_direct.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                MainActivity.isMusicGalleryClicked = true;
                PSharedPreference.setString(GetMusic.this, "MUSIC_FILE", "null");
                GetMusic.this.finish();
            }
        });
        MusicDatabase musicDatabase = new MusicDatabase(this);
        musicDatabase.open();
        Cursor allS = musicDatabase.getAllS();
        if (allS != null && allS.getCount() > 0 && allS.moveToFirst()) {
            do {
                PLog.print("Local Music = " + allS.getString(0));
                if (allS.getString(0) != null) {
                    LinkListMusic.add(allS.getString(0).trim());
                    LinkListMusicFAV.add(Boolean.valueOf(PSharedPreference.getBoolean(this, allS.getString(0).trim().substring(allS.getString(0).trim().lastIndexOf("/") + 1), false)));
                }
            } while (allS.moveToNext());
        }
        musicDatabase.close();
        if (isNetwork()) {
            fetchMusic();
            this.Music_list.addOnItemTouchListener(new RecyclerView.OnItemTouchListener() {
                public boolean onInterceptTouchEvent(RecyclerView recyclerView, MotionEvent motionEvent) {
                    return false;
                }

                public void onRequestDisallowInterceptTouchEvent(boolean z) {
                }

                public void onTouchEvent(RecyclerView recyclerView, MotionEvent motionEvent) {
                }
            });
            return;
        }
        if (LinkListMusic.size() > 0) {
            this.Music_list.setLayoutManager(new GridLayoutManager(this, 1));
            sortNamesByBoolean(LinkListMusic, LinkListMusicFAV);
            Iterator<String> it = LinkListMusic.iterator();
            while (it.hasNext()) {
                Log.d("Sorted Names", it.next());
            }
            GetMusicAdapter getMusicAdapter = new GetMusicAdapter(LinkListMusic, this);
            adapter_music = getMusicAdapter;
            this.Music_list.setAdapter(getMusicAdapter);
        }
        PToast.showT(this, "No Connection");
    }

    public void fetchMusic() {
        Volley.newRequestQueue(this).add(new StringRequest(1, Const.fetchMusic, new Response.Listener<String>() {
            public void onResponse(String str) {
                Log.e("Response", str);
                GetMusic.this.FilterValue(str);
            }
        }, new Response.ErrorListener() {
            public void onErrorResponse(VolleyError volleyError) {
            }
        }) {
            protected Map<String, String> getParams() {
                HashMap hashMap = new HashMap();
                hashMap.put("p", GetMusic.this.getPackageName());
                return hashMap;
            }
        });
    }

    public void FilterValue(String str) {
        try {
            JSONArray jSONArray = new JSONObject(str).getJSONArray("json");
            for (int i = 0; i < jSONArray.length(); i++) {
                String obj = jSONArray.get(i).toString();
                LinkListMusic.add(obj);
                LinkListMusicFAV.add(Boolean.valueOf(PSharedPreference.getBoolean(this, obj.substring(obj.lastIndexOf("/") + 1), false)));
                PLog.print("Music  = " + obj + " = " + LinkListMusicFAV.get(i).toString());
            }
            sortNamesByBoolean(LinkListMusic, LinkListMusicFAV);
            Iterator<String> it = LinkListMusic.iterator();
            while (it.hasNext()) {
                PLog.print("Sorted Names " + it.next());
            }
            this.Music_list.setLayoutManager(new GridLayoutManager(this, 1));
            GetMusicAdapter getMusicAdapter = new GetMusicAdapter(LinkListMusic, this);
            adapter_music = getMusicAdapter;
            this.Music_list.setAdapter(getMusicAdapter);
        } catch (Exception e) {
            PLog.print("Exce =" + e.getMessage());
        }
    }

    public void sortNamesByBoolean(ArrayList<String> arrayList, ArrayList<Boolean> arrayList2) {
        ArrayList arrayList3 = new ArrayList();
        ArrayList arrayList4 = new ArrayList();
        for (int i = 0; i < arrayList2.size(); i++) {
            if (arrayList2.get(i).booleanValue()) {
                arrayList3.add(arrayList.get(i));
                arrayList4.add(arrayList2.get(i));
            }
        }
        for (int i2 = 0; i2 < arrayList2.size(); i2++) {
            if (!arrayList2.get(i2).booleanValue()) {
                arrayList3.add(arrayList.get(i2));
                arrayList4.add(arrayList2.get(i2));
            }
        }
        LinkListMusic.clear();
        LinkListMusicFAV.clear();
        LinkListMusic.addAll(arrayList3);
        LinkListMusicFAV.addAll(arrayList4);
    }
}