Add pro version
This commit is contained in:
parent
9da5f6c8d4
commit
1b85252f92
11 changed files with 354 additions and 12 deletions
|
|
@ -15,6 +15,7 @@ import android.widget.TextView;
|
|||
|
||||
import com.afollestad.materialdialogs.internal.ThemeSingleton;
|
||||
import com.kabouzeid.appthemehelper.ThemeStore;
|
||||
import com.kabouzeid.gramophone.App;
|
||||
import com.kabouzeid.gramophone.R;
|
||||
import com.kabouzeid.gramophone.dialogs.ChangelogDialog;
|
||||
import com.kabouzeid.gramophone.dialogs.DonationsDialog;
|
||||
|
|
@ -159,11 +160,11 @@ public class AboutActivity extends AbsBaseActivity implements View.OnClickListen
|
|||
|
||||
private static String getCurrentVersionName(@NonNull final Context context) {
|
||||
try {
|
||||
return context.getPackageManager().getPackageInfo(context.getPackageName(), 0).versionName;
|
||||
return context.getPackageManager().getPackageInfo(context.getPackageName(), 0).versionName + (App.isProVersion() ? " Pro" : "");
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return "0.0.0";
|
||||
return "Unkown";
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -22,14 +22,16 @@ import android.view.ViewGroup;
|
|||
import android.view.WindowInsets;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.kabouzeid.appthemehelper.ThemeStore;
|
||||
import com.kabouzeid.appthemehelper.util.ATHUtil;
|
||||
import com.kabouzeid.appthemehelper.util.NavigationViewUtil;
|
||||
import com.kabouzeid.gramophone.App;
|
||||
import com.kabouzeid.gramophone.R;
|
||||
import com.kabouzeid.gramophone.dialogs.BuyDialog;
|
||||
import com.kabouzeid.gramophone.dialogs.ChangelogDialog;
|
||||
import com.kabouzeid.gramophone.dialogs.DonationsDialog;
|
||||
import com.kabouzeid.gramophone.glide.SongGlideRequest;
|
||||
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
|
||||
import com.kabouzeid.gramophone.helper.SearchQueryHelper;
|
||||
|
|
@ -108,6 +110,12 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
|||
}
|
||||
|
||||
private void setMusicChooser(int key) {
|
||||
if (!App.isProVersion() && key == FOLDERS) {
|
||||
Toast.makeText(this, R.string.folder_view_is_a_pro_feature, Toast.LENGTH_LONG).show();
|
||||
BuyDialog.create().show(getSupportFragmentManager(), "BUY_DIALOG");
|
||||
key = LIBRARY;
|
||||
}
|
||||
|
||||
PreferenceUtil.getInstance(this).setLastMusicChooser(key);
|
||||
switch (key) {
|
||||
case LIBRARY:
|
||||
|
|
@ -160,6 +168,9 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
|||
NavigationViewUtil.setItemIconColors(navigationView, ATHUtil.resolveColor(this, R.attr.iconColor, ThemeStore.textColorSecondary(this)), accentColor);
|
||||
NavigationViewUtil.setItemTextColors(navigationView, ThemeStore.textColorPrimary(this), accentColor);
|
||||
|
||||
if (App.isProVersion()) {
|
||||
navigationView.getMenu().removeGroup(R.id.navigation_drawer_menu_category_buy_pro);
|
||||
}
|
||||
navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
|
||||
@Override
|
||||
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
|
||||
|
|
@ -181,11 +192,11 @@ public class MainActivity extends AbsSlidingMusicPanelActivity {
|
|||
}
|
||||
}, 200);
|
||||
break;
|
||||
case R.id.support_development:
|
||||
case R.id.buy_pro:
|
||||
new Handler().postDelayed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
DonationsDialog.create().show(getSupportFragmentManager(), "DONATION_DIALOG");
|
||||
BuyDialog.create().show(getSupportFragmentManager(), "BUY_DIALOG");
|
||||
}
|
||||
}, 200);
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -18,15 +18,19 @@ import android.support.v7.preference.TwoStatePreference;
|
|||
import android.support.v7.widget.Toolbar;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.afollestad.materialdialogs.color.ColorChooserDialog;
|
||||
import com.kabouzeid.appthemehelper.ThemeStore;
|
||||
import com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEColorPreference;
|
||||
import com.kabouzeid.appthemehelper.common.prefs.supportv7.ATEPreferenceFragmentCompat;
|
||||
import com.kabouzeid.appthemehelper.util.ColorUtil;
|
||||
import com.kabouzeid.gramophone.App;
|
||||
import com.kabouzeid.gramophone.R;
|
||||
import com.kabouzeid.gramophone.appshortcuts.DynamicShortcutManager;
|
||||
import com.kabouzeid.gramophone.dialogs.BuyDialog;
|
||||
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
|
||||
import com.kabouzeid.gramophone.misc.NonProAllowedColors;
|
||||
import com.kabouzeid.gramophone.preferences.NowPlayingScreenPreference;
|
||||
import com.kabouzeid.gramophone.preferences.NowPlayingScreenPreferenceDialog;
|
||||
import com.kabouzeid.gramophone.service.MusicService;
|
||||
|
|
@ -34,6 +38,8 @@ import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity;
|
|||
import com.kabouzeid.gramophone.util.NavigationUtil;
|
||||
import com.kabouzeid.gramophone.util.PreferenceUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
|
||||
|
|
@ -71,11 +77,29 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia
|
|||
public void onColorSelection(@NonNull ColorChooserDialog dialog, @ColorInt int selectedColor) {
|
||||
switch (dialog.getTitle()) {
|
||||
case R.string.primary_color:
|
||||
if (!App.isProVersion()) {
|
||||
Arrays.sort(NonProAllowedColors.PRIMARY_COLORS);
|
||||
if (Arrays.binarySearch(NonProAllowedColors.PRIMARY_COLORS, selectedColor) < 0) {
|
||||
// color wasn't found
|
||||
Toast.makeText(this, R.string.only_the_first_5_colors_available, Toast.LENGTH_LONG).show();
|
||||
BuyDialog.create().show(getSupportFragmentManager(), "BUY_DIALOG");
|
||||
return;
|
||||
}
|
||||
}
|
||||
ThemeStore.editTheme(this)
|
||||
.primaryColor(selectedColor)
|
||||
.commit();
|
||||
break;
|
||||
case R.string.accent_color:
|
||||
if (!App.isProVersion()) {
|
||||
Arrays.sort(NonProAllowedColors.ACCENT_COLORS);
|
||||
if (Arrays.binarySearch(NonProAllowedColors.ACCENT_COLORS, selectedColor) < 0) {
|
||||
// color wasn't found
|
||||
Toast.makeText(this, R.string.only_the_first_5_colors_available, Toast.LENGTH_LONG).show();
|
||||
BuyDialog.create().show(getSupportFragmentManager(), "BUY_DIALOG");
|
||||
return;
|
||||
}
|
||||
}
|
||||
ThemeStore.editTheme(this)
|
||||
.accentColor(selectedColor)
|
||||
.commit();
|
||||
|
|
@ -175,9 +199,17 @@ public class SettingsActivity extends AbsBaseActivity implements ColorChooserDia
|
|||
generalTheme.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, @NonNull Object o) {
|
||||
String themeName = (String) o;
|
||||
if (themeName.equals("black") && !App.isProVersion()) {
|
||||
Toast.makeText(getActivity(), R.string.black_theme_is_a_pro_feature, Toast.LENGTH_LONG).show();
|
||||
BuyDialog.create().show(getFragmentManager(), "BUY_DIALOG");
|
||||
return false;
|
||||
}
|
||||
|
||||
int theme = PreferenceUtil.getThemeResFromPrefValue(themeName);
|
||||
setSummary(generalTheme, o);
|
||||
ThemeStore.editTheme(getActivity())
|
||||
.activityTheme(PreferenceUtil.getThemeResFromPrefValue((String) o))
|
||||
.activityTheme(theme)
|
||||
.commit();
|
||||
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue