fixed folder structure
This commit is contained in:
parent
e3f9e4bfb4
commit
a061c78ae0
12 changed files with 58 additions and 53 deletions
|
|
@ -17,6 +17,8 @@ import io.reactivex.observers.DisposableCompletableObserver;
|
|||
import io.reactivex.plugins.RxJavaPlugins;
|
||||
import io.reactivex.schedulers.Schedulers;
|
||||
|
||||
import com.deniscerri.ytdl.util.NotificationUtil;
|
||||
|
||||
public class App extends Application {
|
||||
|
||||
private static final String TAG = "App";
|
||||
|
|
|
|||
|
|
@ -12,7 +12,10 @@ import androidx.appcompat.app.AppCompatActivity;
|
|||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentManager;
|
||||
import com.deniscerri.ytdl.databinding.ActivityMainBinding;
|
||||
|
||||
import com.deniscerri.ytdl.page.HistoryFragment;
|
||||
import com.deniscerri.ytdl.page.HomeFragment;
|
||||
import com.deniscerri.ytdl.page.SettingsFragment;
|
||||
import com.deniscerri.ytdl.service.DownloaderService;
|
||||
|
||||
|
||||
public class MainActivity extends AppCompatActivity{
|
||||
|
|
|
|||
|
|
@ -1,16 +1,12 @@
|
|||
package com.deniscerri.ytdl;
|
||||
package com.deniscerri.ytdl.page;
|
||||
|
||||
import android.content.ClipData;
|
||||
import android.content.ClipboardManager;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
|
||||
import androidx.appcompat.widget.SearchView;
|
||||
import androidx.cardview.widget.CardView;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
|
|
@ -30,6 +26,7 @@ import android.widget.RelativeLayout;
|
|||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.deniscerri.ytdl.R;
|
||||
import com.deniscerri.ytdl.adapter.HistoryRecyclerViewAdapter;
|
||||
import com.deniscerri.ytdl.database.DBManager;
|
||||
import com.deniscerri.ytdl.database.Video;
|
||||
|
|
@ -1,14 +1,11 @@
|
|||
package com.deniscerri.ytdl;
|
||||
package com.deniscerri.ytdl.page;
|
||||
|
||||
import android.Manifest;
|
||||
import android.app.Activity;
|
||||
import android.app.Notification;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.graphics.BitmapFactory;
|
||||
import android.media.MediaScannerConnection;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
|
|
@ -16,32 +13,33 @@ import android.os.Looper;
|
|||
import android.text.InputType;
|
||||
import android.util.Log;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.Button;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.appcompat.view.menu.MenuBuilder;
|
||||
import androidx.appcompat.widget.SearchView;
|
||||
import androidx.cardview.widget.CardView;
|
||||
import androidx.core.app.ActivityCompat;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
import androidx.core.app.NotificationManagerCompat;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.core.widget.NestedScrollView;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.deniscerri.ytdl.App;
|
||||
import com.deniscerri.ytdl.BuildConfig;
|
||||
import com.deniscerri.ytdl.MainActivity;
|
||||
import com.deniscerri.ytdl.R;
|
||||
import com.deniscerri.ytdl.adapter.HomeRecyclerViewAdapter;
|
||||
import com.deniscerri.ytdl.api.YoutubeAPIManager;
|
||||
import com.deniscerri.ytdl.database.DBManager;
|
||||
import com.deniscerri.ytdl.database.Video;
|
||||
import com.deniscerri.ytdl.util.NotificationUtil;
|
||||
import com.facebook.shimmer.ShimmerFrameLayout;
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.appbar.MaterialToolbar;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.deniscerri.ytdl;
|
||||
package com.deniscerri.ytdl.page;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Intent;
|
||||
|
|
@ -13,6 +13,9 @@ import androidx.activity.result.ActivityResultLauncher;
|
|||
import androidx.activity.result.contract.ActivityResultContracts;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceFragmentCompat;
|
||||
|
||||
import com.deniscerri.ytdl.BuildConfig;
|
||||
import com.deniscerri.ytdl.R;
|
||||
import com.yausername.youtubedl_android.YoutubeDL;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import io.reactivex.Observable;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.deniscerri.ytdl;
|
||||
package com.deniscerri.ytdl.service;
|
||||
|
||||
import android.app.Notification;
|
||||
import android.app.PendingIntent;
|
||||
|
|
@ -9,6 +9,10 @@ import android.os.IBinder;
|
|||
import androidx.annotation.Nullable;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
|
||||
import com.deniscerri.ytdl.App;
|
||||
import com.deniscerri.ytdl.MainActivity;
|
||||
import com.deniscerri.ytdl.util.NotificationUtil;
|
||||
|
||||
public class DownloaderService extends Service {
|
||||
|
||||
private LocalBinder binder = new LocalBinder();
|
||||
|
|
@ -37,7 +41,7 @@ public class DownloaderService extends Service {
|
|||
|
||||
public class LocalBinder extends Binder {
|
||||
|
||||
DownloaderService getService() {
|
||||
public DownloaderService getService() {
|
||||
return DownloaderService.this;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.deniscerri.ytdl;
|
||||
package com.deniscerri.ytdl.util;
|
||||
|
||||
import android.app.Notification;
|
||||
import android.app.NotificationChannel;
|
||||
|
|
@ -11,6 +11,8 @@ import android.os.Build;
|
|||
|
||||
import androidx.core.app.NotificationCompat;
|
||||
|
||||
import com.deniscerri.ytdl.R;
|
||||
|
||||
public class NotificationUtil {
|
||||
Context context;
|
||||
public static final String DOWNLOAD_SERVICE_CHANNEL_ID = "1";
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
<vector android:height="24dp"
|
||||
android:viewportHeight="24" android:viewportWidth="24"
|
||||
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="?android:textColorPrimary" android:pathData="M9.4,16.6L4.8,12l4.6,-4.6L8,6l-6,6 6,6 1.4,-1.4zM14.6,16.6l4.6,-4.6 -4.6,-4.6L16,6l6,6 -6,6 -1.4,-1.4z"/>
|
||||
<path android:fillColor="?android:colorAccent" android:pathData="M9.4,16.6L4.8,12l4.6,-4.6L8,6l-6,6 6,6 1.4,-1.4zM14.6,16.6l4.6,-4.6 -4.6,-4.6L16,6l6,6 -6,6 -1.4,-1.4z"/>
|
||||
</vector>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<vector android:height="24dp"
|
||||
android:viewportHeight="24" android:viewportWidth="24"
|
||||
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="?android:textColorPrimary" android:pathData="M20,2L8,2c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L22,4c0,-1.1 -0.9,-2 -2,-2zM18,7h-3v5.5c0,1.38 -1.12,2.5 -2.5,2.5S10,13.88 10,12.5s1.12,-2.5 2.5,-2.5c0.57,0 1.08,0.19 1.5,0.51L14,5h4v2zM4,6L2,6v14c0,1.1 0.9,2 2,2h14v-2L4,20L4,6z"/>
|
||||
<path android:fillColor="?android:colorAccent" android:pathData="M20,2L8,2c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L22,4c0,-1.1 -0.9,-2 -2,-2zM18,7h-3v5.5c0,1.38 -1.12,2.5 -2.5,2.5S10,13.88 10,12.5s1.12,-2.5 2.5,-2.5c0.57,0 1.08,0.19 1.5,0.51L14,5h4v2zM4,6L2,6v14c0,1.1 0.9,2 2,2h14v-2L4,20L4,6z"/>
|
||||
</vector>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<vector android:height="24dp"
|
||||
android:viewportHeight="24" android:viewportWidth="24"
|
||||
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="?android:textColorPrimary" android:pathData="M21,10.12h-6.78l2.74,-2.82c-2.73,-2.7 -7.15,-2.8 -9.88,-0.1c-2.73,2.71 -2.73,7.08 0,9.79s7.15,2.71 9.88,0C18.32,15.65 19,14.08 19,12.1h2c0,1.98 -0.88,4.55 -2.64,6.29c-3.51,3.48 -9.21,3.48 -12.72,0c-3.5,-3.47 -3.53,-9.11 -0.02,-12.58s9.14,-3.47 12.65,0L21,3V10.12zM12.5,8v4.25l3.5,2.08l-0.72,1.21L11,13V8H12.5z"/>
|
||||
<path android:fillColor="?android:colorAccent" android:pathData="M21,10.12h-6.78l2.74,-2.82c-2.73,-2.7 -7.15,-2.8 -9.88,-0.1c-2.73,2.71 -2.73,7.08 0,9.79s7.15,2.71 9.88,0C18.32,15.65 19,14.08 19,12.1h2c0,1.98 -0.88,4.55 -2.64,6.29c-3.51,3.48 -9.21,3.48 -12.72,0c-3.5,-3.47 -3.53,-9.11 -0.02,-12.58s9.14,-3.47 12.65,0L21,3V10.12zM12.5,8v4.25l3.5,2.08l-0.72,1.21L11,13V8H12.5z"/>
|
||||
</vector>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<vector android:height="24dp"
|
||||
android:viewportHeight="24" android:viewportWidth="24"
|
||||
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="?android:textColorPrimary" android:pathData="M4,6L2,6v14c0,1.1 0.9,2 2,2h14v-2L4,20L4,6zM20,2L8,2c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L22,4c0,-1.1 -0.9,-2 -2,-2zM12,14.5v-9l6,4.5 -6,4.5z"/>
|
||||
<path android:fillColor="?android:colorAccent" android:pathData="M4,6L2,6v14c0,1.1 0.9,2 2,2h14v-2L4,20L4,6zM20,2L8,2c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L22,4c0,-1.1 -0.9,-2 -2,-2zM12,14.5v-9l6,4.5 -6,4.5z"/>
|
||||
</vector>
|
||||
|
|
|
|||
|
|
@ -6,40 +6,36 @@
|
|||
<Preference
|
||||
android:layout="@layout/fragment_settings"/>
|
||||
|
||||
<PreferenceCategory app:title="@string/directories">
|
||||
<Preference
|
||||
app:key="music_path"
|
||||
app:icon="@drawable/ic_music_downloaded"
|
||||
app:title="@string/music_directory" />
|
||||
<Preference
|
||||
app:key="video_path"
|
||||
app:icon="@drawable/ic_video_downloaded"
|
||||
app:title="@string/video_directory" />
|
||||
</PreferenceCategory>
|
||||
<Preference />
|
||||
|
||||
<PreferenceCategory app:title="@string/updating">
|
||||
<Preference
|
||||
app:key="update"
|
||||
app:icon="@drawable/ic_update"
|
||||
app:summary="@string/ytdl_update_hint"
|
||||
app:title="@string/update_ytdl" />
|
||||
</PreferenceCategory>
|
||||
<Preference
|
||||
app:key="music_path"
|
||||
app:allowDividerAbove="true"
|
||||
app:icon="@drawable/ic_music_downloaded"
|
||||
app:title="@string/music_directory" />
|
||||
|
||||
<Preference
|
||||
app:key="video_path"
|
||||
app:icon="@drawable/ic_video_downloaded"
|
||||
app:title="@string/video_directory" />
|
||||
|
||||
<PreferenceCategory app:title="@string/about">
|
||||
<Preference
|
||||
app:key="update"
|
||||
app:allowDividerAbove="true"
|
||||
app:icon="@drawable/ic_update"
|
||||
app:summary="@string/ytdl_update_hint"
|
||||
app:title="@string/update_ytdl" />
|
||||
|
||||
<Preference
|
||||
app:key="rreth"
|
||||
app:icon="@drawable/ic_code"
|
||||
app:summary="https://github.com/deniscerri/ytdlnis"
|
||||
app:title="@string/source_code">
|
||||
<intent
|
||||
android:action="android.intent.action.VIEW"
|
||||
android:data="https://github.com/deniscerri/ytdlnis"
|
||||
<Preference
|
||||
app:key="rreth"
|
||||
app:allowDividerAbove="true"
|
||||
app:icon="@drawable/ic_code"
|
||||
app:summary="https://github.com/deniscerri/ytdlnis"
|
||||
app:title="@string/source_code">
|
||||
<intent
|
||||
android:action="android.intent.action.VIEW"
|
||||
android:data="https://github.com/deniscerri/ytdlnis"
|
||||
/>
|
||||
</Preference>
|
||||
|
||||
|
||||
</PreferenceCategory>
|
||||
</Preference>
|
||||
|
||||
</PreferenceScreen>
|
||||
Loading…
Reference in a new issue