Bump version, add purchase logging

This commit is contained in:
Karim Abou Zeid 2017-10-02 13:45:46 +02:00
commit d4624ecc8f
No known key found for this signature in database
GPG key ID: 948B11DC67FD9BAF
4 changed files with 62 additions and 57 deletions

View file

@ -42,8 +42,8 @@ android {
vectorDrawables.useSupportLibrary = true
applicationId 'com.kabouzeid.gramophone'
versionCode 139
versionName '0.16.0 BETA 7'
versionCode 140
versionName '0.16.0'
}
buildTypes {
release {
@ -96,7 +96,6 @@ dependencies {
// compile 'com.h6ah4i.android.widget.advrecyclerview:advrecyclerview:0.10.6'
// TODO: go back to master branch as soon as possible
compile 'com.crashlytics.sdk.android:crashlytics:2.6.7'
compile 'com.github.kabouzeid:app-theme-helper:1.3.7'
compile 'com.github.kabouzeid:RecyclerView-FastScroll:1.0.16-kmod'
compile 'com.github.kabouzeid:SeekArc:1.2-kmod'
@ -118,4 +117,9 @@ dependencies {
compile 'com.jakewharton:butterknife:8.6.0'
testCompile 'junit:junit:4.12'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.6.0'
compile 'com.crashlytics.sdk.android:crashlytics:2.6.8'
compile('com.crashlytics.sdk.android:answers:1.3.13@aar') {
transitive = true;
}
}

View file

@ -19,73 +19,41 @@
li {
padding-top: 8px;
}
</style>
</head>
<body>
<p>You can view the changelog dialog again at any time from the <i>about</i> section.</p>
<h3>Version 0.16.0 BETA 7</h3>
<h3>Version 0.16.0</h3>
<ol>
<li><b>FIX:</b> Android Oreo related crashes</li>
<li><b>IMPROVEMENT:</b> Synced translations</li>
</ol>
<h3>Version 0.16.0 BETA 6</h3>
<ol>
<li><b>NEW:</b> Manually set custom artist images</li>
</ol>
<h3>Version 0.16.0 BETA 5</h3>
<ol>
<li><b>NEW:</b> Tap to hide toolbar in now playing screen</li>
<li><b>IMPROVEMENT:</b> Proper text protection in now playing screen</li>
<li><b>IMPROVEMENT:</b> Rearrange playlist items by dragging the album cover</li>
<li><b>IMPROVEMENT:</b> Cleaned up playlist menus</li>
<li><b>IMPROVEMENT:</b> Shuffle all menu item is back</li>
</ol>
<h3>Version 0.16.0 BETA 4</h3>
<ol>
<li><b>NEW:</b> Folder blacklist!</li>
<li><b>FIX:</b> Bottom bar lag on cold start</li>
<li><b>IMPROVEMENT:</b> Synced translations</li>
<li><b>IMPROVEMENT:</b> Various other improvements</li>
<li><b>OTHER:</b> Added user @arkon to the about section to honor his contributions</li>
</ol>
<h3>Version 0.16.0 BETA 3</h3>
<ol>
<li><b>FIX:</b> New purchase interface</li>
<li><b>FIX:</b> White space when expanding the classic notification</li>
</ol>
<h3>Version 0.16.0 BETA 2</h3>
<ol>
<li><b>FIX:</b> Phonograph Pro license error</li>
</ol>
<h3>Version 0.16.0 BETA 1</h3>
<ol>
From this version on, some features are deactivated and require a one time purchase of Phonograph Pro.
The source code of Phonograph is available on GitHub. You are welcome to compile the pro version yourself for free.
However, if you want to support the development and receive updates through the Play Store, consider buying Phonograph Pro. Thank you!
<li><b>NEW:</b> Phonograph Pro</li>
Phonograph is alive again.
From this version on, some features are deactivated and require a one time purchase of
Phonograph Pro.
The source code of Phonograph is available on GitHub. You are welcome to compile the pro version
yourself for free.
However, if you want to support the development and receive updates through the Play Store,
consider buying Phonograph Pro. Thank you!
<li><b>NEW:</b> Full Android Oreo support</li>
<li><b>NEW:</b> Folder blacklist</li>
<li><b>NEW:</b> Manually set custom artist images</li>
<li><b>NEW:</b> Tap to hide toolbar in now playing screen</li>
<li><b>NEW:</b> Option to select the old notification style</li>
<li><b>NEW:</b> Show remaining playing queue time</li>
<li><b>NEW:</b> Scrollbar in playlists</li>
<li><b>NEW:</b> Album wikis</li>
<li><b>NEW:</b> Synchronized lyrics support</li>
<li><b>NEW:</b> New widgets</li>
<li><b>NEW:</b> Scrollbar in playlists</li>
<li><b>IMPROVEMENT:</b> Proper text protection in now playing screen</li>
<li><b>IMPROVEMENT:</b> Rearrange playlist items by dragging the album cover</li>
<li><b>IMPROVEMENT:</b> Cleaned up playlist menus</li>
<li><b>IMPROVEMENT:</b> Synced translations</li>
<li><b>FIX:</b> Bottom bar lag on cold start</li>
<li><b>FIX:</b> White space when expanding the classic notification</li>
<li><b>FIX:</b> Many bug fixes</li>
<li><b>OTHER:</b> Added Eugene Cheung to the about section for his contributions to the source code</li>
</ol>
<h3>Version 0.15.0</h3>

View file

@ -6,6 +6,7 @@ import android.os.Build;
import com.anjlab.android.iab.v3.BillingProcessor;
import com.anjlab.android.iab.v3.TransactionDetails;
import com.crashlytics.android.Crashlytics;
import com.crashlytics.android.answers.Answers;
import com.crashlytics.android.core.CrashlyticsCore;
import com.kabouzeid.gramophone.appshortcuts.DynamicShortcutManager;
@ -33,7 +34,11 @@ public class App extends Application {
Crashlytics crashlyticsKit = new Crashlytics.Builder()
.core(new CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build())
.build();
Fabric.with(this, crashlyticsKit);
if (!BuildConfig.DEBUG) {
Fabric.with(this, crashlyticsKit, new Answers());
} else {
Fabric.with(this, crashlyticsKit); // crashlytics kit is disabled here
}
// Set up dynamic shortcuts
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) {

View file

@ -14,12 +14,19 @@ import android.widget.Toast;
import com.anjlab.android.iab.v3.BillingProcessor;
import com.anjlab.android.iab.v3.TransactionDetails;
import com.crashlytics.android.answers.AddToCartEvent;
import com.crashlytics.android.answers.Answers;
import com.crashlytics.android.answers.ContentViewEvent;
import com.crashlytics.android.answers.PurchaseEvent;
import com.kabouzeid.appthemehelper.color.MaterialColor;
import com.kabouzeid.gramophone.App;
import com.kabouzeid.gramophone.BuildConfig;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.ui.activities.base.AbsBaseActivity;
import java.lang.ref.WeakReference;
import java.math.BigDecimal;
import java.util.Currency;
import butterknife.BindView;
import butterknife.ButterKnife;
@ -72,12 +79,24 @@ public class PurchaseActivity extends AbsBaseActivity implements BillingProcesso
@Override
public void onClick(View v) {
billingProcessor.purchase(PurchaseActivity.this, App.PRO_VERSION_PRODUCT_ID);
if (!BuildConfig.DEBUG) {
Answers.getInstance().logAddToCart(new AddToCartEvent()
.putCurrency(Currency.getInstance("EUR"))
.putItemId("pro_version")
.putItemName("Phonograph Pro")
.putItemPrice(BigDecimal.valueOf(3)));
}
}
});
billingProcessor = new BillingProcessor(this, App.GOOGLE_PLAY_LICENSE_KEY, this);
if (!BuildConfig.DEBUG) {
Answers.getInstance().logContentView(new ContentViewEvent()
.putContentName("Purchase Activity")
.putContentId("1"));
}
}
private void restorePurchase() {
@ -91,6 +110,15 @@ public class PurchaseActivity extends AbsBaseActivity implements BillingProcesso
public void onProductPurchased(@NonNull String productId, @Nullable TransactionDetails details) {
Toast.makeText(this, R.string.thank_you, Toast.LENGTH_SHORT).show();
setResult(RESULT_OK);
if (!BuildConfig.DEBUG) {
Answers.getInstance().logPurchase(new PurchaseEvent()
.putCurrency(Currency.getInstance("EUR"))
.putItemPrice(BigDecimal.valueOf(3))
.putItemId("pro_version")
.putSuccess(true)
.putItemName("Phonograph Pro"));
}
}
@Override