Skip to content

Commit 10cce26

Browse files
committed
- In app-purchase added
- Fixes
1 parent 9c12150 commit 10cce26

20 files changed

+548
-43
lines changed

app/build.gradle

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ android {
1010
applicationId "com.mikhailgrigorev.quickpass"
1111
minSdkVersion 23
1212
targetSdkVersion 29
13-
versionCode 2
14-
versionName "2.0"
13+
versionCode 5
14+
versionName '2.0.1'
1515

1616
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
1717
}
@@ -29,8 +29,9 @@ dependencies {
2929
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
3030
implementation 'androidx.core:core-ktx:1.3.2'
3131
implementation 'android.arch.work:work-runtime-ktx:1.0.1'
32+
implementation 'com.anjlab.android.iab.v3:library:1.0.44'
3233
implementation 'androidx.appcompat:appcompat:1.2.0'
33-
implementation 'androidx.constraintlayout:constraintlayout:2.0.2'
34+
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
3435
implementation 'androidx.biometric:biometric:1.0.1'
3536
implementation 'com.google.android.material:material:1.2.1'
3637
implementation 'androidx.legacy:legacy-support-v4:1.0.0'

app/release/app-release.aab

5.46 MB
Binary file not shown.

app/release/app-release.apk

8.88 MB
Binary file not shown.

app/release/output-metadata.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"version": 2,
3+
"artifactType": {
4+
"type": "APK",
5+
"kind": "Directory"
6+
},
7+
"applicationId": "com.mikhailgrigorev.quickpass",
8+
"variantName": "processReleaseResources",
9+
"elements": [
10+
{
11+
"type": "SINGLE",
12+
"filters": [],
13+
"versionCode": 4,
14+
"versionName": "2.0.1",
15+
"outputFile": "app-release.apk"
16+
}
17+
]
18+
}

app/src/main/AndroidManifest.xml

Lines changed: 32 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,22 @@
88
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
99
<uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
1010
<uses-permission android:name="android.permission.INTERNET" />
11+
<uses-permission android:name="com.android.vending.BILLING" />
1112

1213
<application
13-
android:hardwareAccelerated="true"
1414
android:allowBackup="true"
1515
android:fullBackupContent="true"
16+
android:hardwareAccelerated="true"
1617
android:icon="@mipmap/ic_launcher"
1718
android:label="@string/app_name"
1819
android:requestLegacyExternalStorage="true"
1920
android:roundIcon="@mipmap/ic_launcher"
2021
android:supportsRtl="true"
2122
android:theme="@style/AppTheme"
2223
tools:targetApi="q">
23-
24-
<!--service
24+
<activity android:name=".DonutActivity" />
25+
<!--
26+
service
2527
android:name=".MyAutofillService"
2628
android:label="QuickPass"
2729
android:enabled="true"
@@ -36,8 +38,8 @@
3638
<meta-data
3739
android:name="android.autofill"
3840
android:resource="@xml/service_configuration" />
39-
</service-->
40-
41+
</service
42+
-->
4143
<activity
4244
android:name=".SettingsActivity"
4345
android:screenOrientation="portrait" />
@@ -75,18 +77,15 @@
7577
android:windowSoftInputMode="adjustResize" />
7678
<activity
7779
android:name=".PassGenActivity"
78-
android:windowSoftInputMode="adjustResize"
79-
android:screenOrientation="portrait" />
80+
android:screenOrientation="portrait"
81+
android:windowSoftInputMode="adjustResize" />
8082
<activity
8183
android:name=".ReSignActivity"
8284
android:screenOrientation="portrait" />
8385
<activity
8486
android:name=".ReLoginActivity"
8587
android:screenOrientation="portrait" />
86-
87-
<activity
88-
android:name=".LoginAfterSplashActivity"/>
89-
88+
<activity android:name=".LoginAfterSplashActivity" />
9089
<activity
9190
android:name=".LoginActivity"
9291
android:screenOrientation="portrait"
@@ -97,9 +96,9 @@
9796
</activity>
9897

9998
<activity-alias
100-
android:name=".LoginActivityRed"
101-
android:enabled="false"
102-
android:icon="@mipmap/ic_launcher_red"
99+
android:name=".LoginActivity"
100+
android:enabled="true"
101+
android:icon="@mipmap/ic_launcher_violet"
103102
android:label="@string/app_name"
104103
android:targetActivity=".LoginActivity">
105104
<intent-filter>
@@ -109,9 +108,9 @@
109108
</intent-filter>
110109
</activity-alias>
111110
<activity-alias
112-
android:name=".LoginActivityPink"
111+
android:name=".LoginActivityGreen"
113112
android:enabled="false"
114-
android:icon="@mipmap/ic_launcher_pink"
113+
android:icon="@mipmap/ic_launcher_green"
115114
android:label="@string/app_name"
116115
android:targetActivity=".LoginActivity">
117116
<intent-filter>
@@ -121,9 +120,9 @@
121120
</intent-filter>
122121
</activity-alias>
123122
<activity-alias
124-
android:name=".LoginActivityPurple"
123+
android:name=".LoginActivitylGreen"
125124
android:enabled="false"
126-
android:icon="@mipmap/ic_launcher_purple"
125+
android:icon="@mipmap/ic_launcher_lgreen"
127126
android:label="@string/app_name"
128127
android:targetActivity=".LoginActivity">
129128
<intent-filter>
@@ -133,9 +132,9 @@
133132
</intent-filter>
134133
</activity-alias>
135134
<activity-alias
136-
android:name=".LoginActivitydViolet"
135+
android:name=".LoginActivityTeal"
137136
android:enabled="false"
138-
android:icon="@mipmap/ic_launcher_dviole"
137+
android:icon="@mipmap/ic_launcher_teal"
139138
android:label="@string/app_name"
140139
android:targetActivity=".LoginActivity">
141140
<intent-filter>
@@ -145,9 +144,9 @@
145144
</intent-filter>
146145
</activity-alias>
147146
<activity-alias
148-
android:name=".LoginActivityBlue"
147+
android:name=".LoginActivityCyan"
149148
android:enabled="false"
150-
android:icon="@mipmap/ic_launcher_blue"
149+
android:icon="@mipmap/ic_launcher_cyan"
151150
android:label="@string/app_name"
152151
android:targetActivity=".LoginActivity">
153152
<intent-filter>
@@ -157,9 +156,9 @@
157156
</intent-filter>
158157
</activity-alias>
159158
<activity-alias
160-
android:name=".LoginActivityCyan"
159+
android:name=".LoginActivityBlue"
161160
android:enabled="false"
162-
android:icon="@mipmap/ic_launcher_cyan"
161+
android:icon="@mipmap/ic_launcher_blue"
163162
android:label="@string/app_name"
164163
android:targetActivity=".LoginActivity">
165164
<intent-filter>
@@ -169,9 +168,9 @@
169168
</intent-filter>
170169
</activity-alias>
171170
<activity-alias
172-
android:name=".LoginActivityTeal"
171+
android:name=".LoginActivitydViolet"
173172
android:enabled="false"
174-
android:icon="@mipmap/ic_launcher_teal"
173+
android:icon="@mipmap/ic_launcher_dviole"
175174
android:label="@string/app_name"
176175
android:targetActivity=".LoginActivity">
177176
<intent-filter>
@@ -181,9 +180,9 @@
181180
</intent-filter>
182181
</activity-alias>
183182
<activity-alias
184-
android:name=".LoginActivitylGreen"
183+
android:name=".LoginActivityPurple"
185184
android:enabled="false"
186-
android:icon="@mipmap/ic_launcher_lgreen"
185+
android:icon="@mipmap/ic_launcher_purple"
187186
android:label="@string/app_name"
188187
android:targetActivity=".LoginActivity">
189188
<intent-filter>
@@ -193,9 +192,9 @@
193192
</intent-filter>
194193
</activity-alias>
195194
<activity-alias
196-
android:name=".LoginActivityGreen"
195+
android:name=".LoginActivityPink"
197196
android:enabled="false"
198-
android:icon="@mipmap/ic_launcher_green"
197+
android:icon="@mipmap/ic_launcher_pink"
199198
android:label="@string/app_name"
200199
android:targetActivity=".LoginActivity">
201200
<intent-filter>
@@ -205,9 +204,9 @@
205204
</intent-filter>
206205
</activity-alias>
207206
<activity-alias
208-
android:name=".LoginActivity"
209-
android:enabled="true"
210-
android:icon="@mipmap/ic_launcher_violet"
207+
android:name=".LoginActivityRed"
208+
android:enabled="false"
209+
android:icon="@mipmap/ic_launcher_red"
211210
android:label="@string/app_name"
212211
android:targetActivity=".LoginActivity">
213212
<intent-filter>

app/src/main/java/com/mikhailgrigorev/quickpass/AccountActivity.kt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.mikhailgrigorev.quickpass
22

3+
//import com.anjlab.android.iab.v3.BillingProcessor
4+
//import com.anjlab.android.iab.v3.TransactionDetails
35
import android.annotation.SuppressLint
46
import android.content.Context
57
import android.content.Intent
@@ -21,7 +23,6 @@ import com.mikhailgrigorev.quickpass.dbhelpers.DataBaseHelper
2123
import com.mikhailgrigorev.quickpass.dbhelpers.PasswordsDataBaseHelper
2224
import kotlinx.android.synthetic.main.activity_account.*
2325

24-
2526
class AccountActivity : AppCompatActivity() {
2627

2728
private val _keyTheme = "themePreference"
@@ -172,6 +173,11 @@ class AccountActivity : AppCompatActivity() {
172173
val intent = Intent(this, AboutActivity::class.java)
173174
startActivity(intent)
174175
}
176+
cardCup.setOnClickListener {
177+
condition=false
178+
val intent = Intent(this, DonutActivity::class.java)
179+
startActivity(intent)
180+
}
175181
cursor.close()
176182

177183
// Open passwords database
@@ -308,6 +314,9 @@ class AccountActivity : AppCompatActivity() {
308314
rotation.fillAfter = true
309315
settings.startAnimation(rotation)
310316

317+
318+
319+
311320
// Log out button
312321
logOut.setOnClickListener {
313322
val builder = AlertDialog.Builder(this, R.style.AlertDialogCustom)
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
package com.mikhailgrigorev.quickpass
2+
3+
import android.os.Bundle
4+
import android.widget.Toast
5+
import androidx.appcompat.app.AppCompatActivity
6+
import com.anjlab.android.iab.v3.BillingProcessor
7+
import com.anjlab.android.iab.v3.PurchaseInfo
8+
import com.anjlab.android.iab.v3.TransactionDetails
9+
import kotlinx.android.synthetic.main.activity_about.back
10+
import kotlinx.android.synthetic.main.activity_donut.*
11+
12+
13+
class DonutActivity : AppCompatActivity(), BillingProcessor.IBillingHandler {
14+
override fun onCreate(savedInstanceState: Bundle?) {
15+
super.onCreate(savedInstanceState)
16+
setContentView(R.layout.activity_donut)
17+
val mBillingProcessor = BillingProcessor(this, GPLAY_LICENSE, this)
18+
19+
back.setOnClickListener {
20+
finish()
21+
}
22+
23+
24+
coffeeDonut.setOnClickListener {
25+
mBillingProcessor.purchase(this, "cup_of_coffee")
26+
}
27+
appleDonut.setOnClickListener {
28+
mBillingProcessor.purchase(this, "apple_pack")
29+
}
30+
burgerDonut.setOnClickListener {
31+
mBillingProcessor.purchase(this, "burger")
32+
}
33+
foodDonut.setOnClickListener {
34+
mBillingProcessor.purchase(this, "dinner")
35+
}
36+
37+
}
38+
39+
override fun onProductPurchased(productId: String, details: TransactionDetails?) {
40+
showMsg("onProductPurchased")
41+
if (checkIfPurchaseIsValid(details!!.purchaseInfo)) {
42+
showMsg("purchase: $productId COMPLETED")
43+
//when (productId) {
44+
// //ONE_TIME_PAYMENT -> setupConsumableButtons(true)
45+
// //SUBSCRIPTION -> setupSubscription(true)
46+
//}
47+
} else {
48+
showMsg("fakePayment")
49+
}
50+
}
51+
52+
private fun checkIfPurchaseIsValid(purchaseInfo: PurchaseInfo): Boolean {
53+
return true
54+
}
55+
56+
override fun onPurchaseHistoryRestored() {
57+
}
58+
59+
override fun onBillingError(errorCode: Int, error: Throwable?) {
60+
}
61+
62+
override fun onBillingInitialized() {
63+
}
64+
65+
private fun showMsg(text: String) {
66+
Toast.makeText(this, text, Toast.LENGTH_LONG).show()
67+
}
68+
}

app/src/main/java/com/mikhailgrigorev/quickpass/LoginAfterSplashActivity.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -310,6 +310,7 @@ class LoginAfterSplashActivity : AppCompatActivity() {
310310
startActivity(intent)
311311
finish()
312312
}
313+
builder.setCancelable(false)
313314
val dialog: AlertDialog = builder.create()
314315
dialog.show()
315316
}

app/src/main/java/com/mikhailgrigorev/quickpass/PassGenActivity.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -534,7 +534,7 @@ class PassGenActivity : AppCompatActivity() {
534534
allPassword.visibility = View.GONE
535535
noPasswords.visibility = View.VISIBLE
536536
cardView.visibility = View.GONE
537-
cardView2.visibility = View.GONE
537+
cardCup.visibility = View.GONE
538538
smile.visibility = View.GONE
539539
expand.visibility = View.GONE
540540
newPass.visibility = View.GONE
@@ -1688,7 +1688,7 @@ class PassGenActivity : AppCompatActivity() {
16881688
allPassword.visibility = View.GONE
16891689
noPasswords.visibility = View.VISIBLE
16901690
cardView.visibility = View.GONE
1691-
cardView2.visibility = View.GONE
1691+
cardCup.visibility = View.GONE
16921692
smile.visibility = View.GONE
16931693
newPass.visibility = View.GONE
16941694
expand.visibility = View.GONE

app/src/main/java/com/mikhailgrigorev/quickpass/ReLoginActivity.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -306,6 +306,7 @@ class ReLoginActivity : AppCompatActivity() {
306306
setResult(2, intent)
307307
finish()
308308
}
309+
builder.setCancelable(false)
309310
val dialog: AlertDialog = builder.create()
310311
dialog.show()
311312
}

0 commit comments

Comments
 (0)