Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 11 additions & 5 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ android {
applicationId "app.solocoin.solocoin"
minSdkVersion 21
targetSdkVersion 29
versionCode 2
versionName '1.0.1'
versionCode 11
versionName '1.1.2'
renderscriptTargetApi 29
renderscriptSupportModeEnabled true
}
Expand All @@ -22,8 +22,7 @@ android {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
debuggable = true
signingConfig signingConfigs.debug
debuggable = false
}
}

Expand All @@ -38,6 +37,7 @@ android {
}

dependencies {
implementation 'com.google.firebase:firebase-invites:17.0.0'
def coroutines_version = '1.3.5'
def appcompat_version = '1.1.0'
def legacy_support = '1.0.0'
Expand Down Expand Up @@ -105,14 +105,15 @@ dependencies {
implementation 'com.github.adityasonel:InkPageIndicator:1.0'
implementation 'com.bigbangbutton:editcodeview:1.0.6'
implementation 'de.hdodenhof:circleimageview:3.1.0'
implementation 'com.github.joielechong:countrycodepicker:2.4.1'
implementation 'com.github.joielechong:countrycodepicker:2.4.2'
implementation 'com.karumi:dexter:6.1.2'
implementation 'com.github.instacart.truetime-android:library:3.4'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation "com.squareup.picasso:picasso:$picasso_version"
implementation 'com.eightbitlab:blurview:1.6.3'
implementation 'com.github.mreram:showcaseview:1.1'

//Work Manager
implementation "android.arch.work:work-runtime-ktx:$work_version"
Expand All @@ -121,8 +122,13 @@ dependencies {
implementation 'com.scottyab:rootbeer-lib:0.0.8'
implementation 'androidx.fragment:fragment-ktx:1.2.4'

//Scratch Card
implementation 'com.github.AnupKumarPanwar:ScratchView:1.2'

implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0'
implementation 'io.reactivex.rxjava2:rxkotlin:2.4.0'
implementation "org.jetbrains.kotlin:kotlin-script-runtime:1.3.72"
}


74 changes: 46 additions & 28 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,6 @@
xmlns:tools="http://schemas.android.com/tools"
package="app.solocoin.solocoin">

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />

<application
android:name=".app.SolocoinApp"
android:allowBackup="false"
Expand All @@ -18,23 +12,22 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">

<receiver
android:name=".NotificationAlarmReceiver"
android:enabled="true"
android:exported="true" />

<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="@string/google_maps_key" /> <!-- auth-stack -->
<activity android:name=".ui.home.MyProfileActivity"></activity>
<activity android:name=".ui.home.GetFreeCoinsActivity" />
<activity
android:name=".ui.home.AllScratchCardsActivity"
android:parentActivityName=".ui.home.HomeActivity"
android:screenOrientation="portrait"
tools:ignore="LockedOrientationActivity" />
<activity android:name=".ui.home.AppGuideActivity" />
<activity
android:name=".ui.home.RewardRedeemActivity"
android:screenOrientation="portrait"
tools:ignore="LockedOrientationActivity" />
<activity
android:name=".ui.auth.OnboardActivity"
android:screenOrientation="portrait"
tools:ignore="LockedOrientationActivity" />
tools:ignore="LockedOrientationActivity" /> <!-- auth-stack -->
<activity
android:name=".ui.auth.LoginSignupActivity"
android:parentActivityName=".ui.auth.OnboardActivity"
Expand All @@ -53,14 +46,6 @@
android:name=".ui.home.ShareBadgeActivity"
android:screenOrientation="portrait"
tools:ignore="LockedOrientationActivity" />

<service android:name=".services.FusedLocationService" />
<service android:name=".services.FirebaseMessagingService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>

<activity
android:name=".ui.SplashActivity"
android:screenOrientation="portrait"
Expand All @@ -71,12 +56,45 @@

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity> <!-- auth-stack -->
<!-- home-stack -->
</activity>
<activity
android:name=".ui.home.HomeActivity"
android:screenOrientation="portrait"
tools:ignore="LockedOrientationActivity" />
tools:ignore="LockedOrientationActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW" />

<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />

<data
android:host="karandeep.page.link"
android:scheme="https" />
</intent-filter>
</activity>

<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="@string/google_maps_key" />

<receiver
android:name=".NotificationAlarmReceiver"
android:enabled="true"
android:exported="true" />

<service android:name=".services.FusedLocationService" /> <!-- auth-stack -->
<!-- home-stack -->
<service android:name=".services.FirebaseMessagingService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
</application>
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

</manifest>
</manifest>
Binary file modified app/src/main/ic_launcher-playstore.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 14 additions & 5 deletions app/src/main/java/app/solocoin/solocoin/app/SharedPrefs.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import app.solocoin.solocoin.model.Milestones
import app.solocoin.solocoin.model.Reward
import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
import java.util.*

/**
* Created by Aditya Sonel on 22/04/20.
Expand Down Expand Up @@ -35,6 +36,11 @@ class SharedPrefs(context: Context) {
get() = instance.getString(mobile_number, null)
set(value) = instance.edit().putString(mobile_number, value).apply()

private val my_avatar = "bluedude"
var avatar:String?
get() =instance.getString(my_avatar,"bluedude")
set(value) = instance.edit().putString(my_avatar,value).apply()

private val _name = "name"
var name: String?
get() = instance.getString(_name, null)
Expand Down Expand Up @@ -115,7 +121,7 @@ class SharedPrefs(context: Context) {

private val _recent_notif_time = "recent_notif_time"
var recentNotifTime: Long
get() = instance.getLong(_recent_notif_time, 0)
get() = instance.getLong(_recent_notif_time, Calendar.getInstance().timeInMillis)
set(value) = instance.edit().putLong(_recent_notif_time, value).apply()

private val _recent_check_time = "recent_check_time"
Expand All @@ -128,10 +134,13 @@ class SharedPrefs(context: Context) {
get() = instance.getBoolean(_period_valid, false)
set(value) = instance.edit().putBoolean(_period_valid, value).apply()

private val new_user = "new_user"
var isNewUser: Boolean
get() = instance.getBoolean(new_user, false)
set(value) = instance.edit().putBoolean(new_user, value).apply()
private val _visited = "visited"
var visited: ArrayList<Boolean>?
get() = Gson().fromJson<ArrayList<Boolean>?>(
instance.getString(_visited, null),
object : TypeToken<ArrayList<Boolean>>() {}.type
)
set(value) = instance.edit().putString(_visited, Gson().toJson(value)).apply()

fun clearSession() {
instance.edit()
Expand Down
6 changes: 6 additions & 0 deletions app/src/main/java/app/solocoin/solocoin/di/ViewModelModule.kt
Original file line number Diff line number Diff line change
Expand Up @@ -36,4 +36,10 @@ val viewModelModule = module {
viewModel {
RewardRedeemViewModel(repository = get())
}
viewModel {
AllScratchCardsViewModel(repository = get())
}
viewModel {
ProfileViewModel(repository = get())
}
}
13 changes: 13 additions & 0 deletions app/src/main/java/app/solocoin/solocoin/model/Category.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package app.solocoin.solocoin.model

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize
/**
* Created by Karandeep Singh on 04/07/2020
*/
@Parcelize
data class Category (
@SerializedName("name")
var name:String
):Parcelable
12 changes: 12 additions & 0 deletions app/src/main/java/app/solocoin/solocoin/model/LeaderBoard.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package app.solocoin.solocoin.model

import com.google.gson.annotations.SerializedName
/**
* Created by Karandeep Singh on 07/07/2020
*/

data class LeaderBoard (
@SerializedName("top_users")
var topUsers: ArrayList<User>,
val user: User
)
25 changes: 25 additions & 0 deletions app/src/main/java/app/solocoin/solocoin/model/Profile.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package app.solocoin.solocoin.model

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize
/**
* Created by Karandeep Singh on 15/07/2020
*/
@Parcelize
data class Profile(
@SerializedName("id")
var id:String,
@SerializedName("name")
var name:String,
@SerializedName("mobile")
var mobile:String,
@SerializedName("wallet_balance")
var wallet_balance:String,
@SerializedName("home_duration_in_seconds")
var home_duration_in_seconds:String,
@SerializedName("redeemed_rewards")
var redeemed_rewards: ArrayList<RedeemedRewards>,
@SerializedName("referral")
var referral: Referral
):Parcelable
17 changes: 17 additions & 0 deletions app/src/main/java/app/solocoin/solocoin/model/RedeemedRewards.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package app.solocoin.solocoin.model

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize
/**
* Created by Karandeep Singh on 15/07/2020
*/
@Parcelize
data class RedeemedRewards (
@SerializedName("rewards_sponsor_id")
var rewards_sponsor_id:Int,
@SerializedName("coupon_code")
var coupon_code:String,
@SerializedName("offer_name")
var offer_name:String
):Parcelable
15 changes: 15 additions & 0 deletions app/src/main/java/app/solocoin/solocoin/model/Referral.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package app.solocoin.solocoin.model

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize
/**
* Created by Karandeep Singh on 04/07/2020
*/
@Parcelize
data class Referral (
@SerializedName("code")
var refercode:String,
@SerializedName("amount")
var amount:String
): Parcelable
14 changes: 11 additions & 3 deletions app/src/main/java/app/solocoin/solocoin/model/Reward.kt
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,10 @@ import kotlinx.android.parcel.Parcelize
*/
@Parcelize
data class Reward(
@SerializedName("category")
var category:Category,
@SerializedName("id")
var rewardId: String,
var rewardId: Int,
@SerializedName("offer_name")
var rewardName: String,
@SerializedName("company_name")
Expand All @@ -23,9 +25,15 @@ data class Reward(
var costRupees: String,
@SerializedName("coupon_code")
var couponCode: String,
var companyLogoUrl: String? = null,
var rewardImageUrl: String? = null,
@SerializedName("currency_type")
var currency:String,
@SerializedName("brand_logo_url")
var logo_url:String,
// var companyLogoUr String? = null,
//// var rewardImageUrl: l:String? = null,
var isClaimed: Boolean = false


) : Parcelable

//"id": 2,
Expand Down
30 changes: 30 additions & 0 deletions app/src/main/java/app/solocoin/solocoin/model/User.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package app.solocoin.solocoin.model

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize

/**
* Created by Karandeep Singh on 04/07/2020
*/
@Parcelize
data class User (
@SerializedName("id")
var id:String?,
@SerializedName("name")
var name: String?,
@SerializedName("country_code")
var countryCode:String?,
@SerializedName("wallet_balance")
var wallet_balance:String?,
@SerializedName("wb_rank")
var rank:String?
): Parcelable

//{
// "id": 11,
// "name": "Mishaal Testing",
// "country_code": null,
// "wallet_balance": "14682.0",
// "wb_rank": 2
//}
Loading