Merge branch 'lollipop'
This commit is contained in:
@@ -3,7 +3,7 @@ jobs:
|
||||
build:
|
||||
working_directory: ~/code
|
||||
docker:
|
||||
- image: cimg/android:2023.02.1
|
||||
- image: cimg/android:2023.04.1
|
||||
environment:
|
||||
GRADLE_OPTS: -Dorg.gradle.workers.max=1 -Dorg.gradle.daemon=false -Dkotlin.compiler.execution.strategy="in-process"
|
||||
steps:
|
||||
|
||||
@@ -9,12 +9,6 @@
|
||||
|
||||
Connecting things to your VPN made simple. Share your VPN connection over hotspot or repeater. (**root required**)
|
||||
|
||||
| Release channel | [GitHub](https://github.com/Mygod/VPNHotspot/releases) | [Google Play](https://play.google.com/store/apps/details?id=be.mygod.vpnhotspot) ([beta](https://play.google.com/apps/testing/be.mygod.vpnhotspot)) |
|
||||
|---------------------------------------------------------|:------------------------------------------------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------:|
|
||||
| Auto update | Email updates via watching releases | ✓ |
|
||||
| In-app update channel | GitHub | Google Play |
|
||||
| [Sponsor/Donation](https://github.com/sponsors/Mygod) | ✓ | Google Play In-App Purchases only |
|
||||
|
||||
This app is useful for:
|
||||
|
||||
* Connecting things that don't support VPN like Chromecasts behind corporate firewalls;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
plugins {
|
||||
id("com.android.application") version "8.0.0-beta04" apply false
|
||||
id("com.android.application") version "8.0.0-rc01" apply false
|
||||
id("com.github.ben-manes.versions") version "0.46.0"
|
||||
id("org.jetbrains.kotlin.android") version "1.8.10" apply false
|
||||
id("org.jetbrains.kotlin.android") version "1.8.20" apply false
|
||||
}
|
||||
|
||||
buildscript {
|
||||
|
||||
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,6 +1,6 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.1-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip
|
||||
networkTimeout=10000
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
||||
4
gradlew
vendored
4
gradlew
vendored
@@ -144,7 +144,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
||||
case $MAX_FD in #(
|
||||
max*)
|
||||
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
||||
# shellcheck disable=SC3045
|
||||
# shellcheck disable=SC3045
|
||||
MAX_FD=$( ulimit -H -n ) ||
|
||||
warn "Could not query maximum file descriptor limit"
|
||||
esac
|
||||
@@ -152,7 +152,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
||||
'' | soft) :;; #(
|
||||
*)
|
||||
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
||||
# shellcheck disable=SC3045
|
||||
# shellcheck disable=SC3045
|
||||
ulimit -n "$MAX_FD" ||
|
||||
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
||||
esac
|
||||
|
||||
@@ -33,7 +33,6 @@ android {
|
||||
put("room.incremental", "true")
|
||||
put("room.schemaLocation", "$projectDir/schemas")
|
||||
}
|
||||
buildConfigField("boolean", "DONATIONS", "true")
|
||||
}
|
||||
buildFeatures {
|
||||
buildConfig = true
|
||||
@@ -59,35 +58,34 @@ android {
|
||||
create("google") {
|
||||
dimension = "freedom"
|
||||
versionNameSuffix = "-g"
|
||||
buildConfigField("boolean", "DONATIONS", "false")
|
||||
}
|
||||
}
|
||||
sourceSets.getByName("androidTest").assets.srcDir("$projectDir/schemas")
|
||||
}
|
||||
|
||||
dependencies {
|
||||
val lifecycleVersion = "2.6.0-rc01"
|
||||
val roomVersion = "2.5.0"
|
||||
val lifecycleVersion = "2.6.1"
|
||||
val roomVersion = "2.5.1"
|
||||
|
||||
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.0.2")
|
||||
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.0.3")
|
||||
kapt("androidx.room:room-compiler:$roomVersion")
|
||||
implementation(kotlin("stdlib-jdk8"))
|
||||
implementation("androidx.browser:browser:1.5.0")
|
||||
implementation("androidx.core:core-ktx:1.9.0")
|
||||
implementation("androidx.fragment:fragment-ktx:1.5.5")
|
||||
implementation("androidx.core:core-ktx:1.10.0")
|
||||
implementation("androidx.fragment:fragment-ktx:1.5.6")
|
||||
implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycleVersion")
|
||||
implementation("androidx.lifecycle:lifecycle-runtime-ktx:$lifecycleVersion")
|
||||
implementation("androidx.preference:preference:1.2.0")
|
||||
implementation("androidx.room:room-ktx:$roomVersion")
|
||||
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
|
||||
implementation("be.mygod.librootkotlinx:librootkotlinx:1.0.1")
|
||||
implementation("com.android.billingclient:billing-ktx:5.1.0")
|
||||
implementation("be.mygod.librootkotlinx:librootkotlinx:1.0.2")
|
||||
implementation("com.android.billingclient:billing-ktx:5.2.0")
|
||||
implementation("com.github.tiann:FreeReflection:3.1.0")
|
||||
implementation("com.google.android.gms:play-services-base:18.2.0") // fix for GoogleApiActivity crash
|
||||
implementation("com.google.android.gms:play-services-base:18.2.0") // fix for GoogleApiActivity crash @ 18.1.0+
|
||||
implementation("com.google.android.gms:play-services-oss-licenses:17.0.0")
|
||||
implementation("com.google.android.material:material:1.8.0")
|
||||
implementation("com.google.firebase:firebase-analytics-ktx:21.2.0")
|
||||
implementation("com.google.firebase:firebase-crashlytics:18.3.5")
|
||||
implementation("com.google.firebase:firebase-analytics-ktx:21.2.1")
|
||||
implementation("com.google.firebase:firebase-crashlytics:18.3.6")
|
||||
implementation("com.google.zxing:core:3.5.1")
|
||||
implementation("com.jakewharton.timber:timber:5.0.1")
|
||||
implementation("com.linkedin.dexmaker:dexmaker:2.28.3")
|
||||
|
||||
@@ -5,14 +5,25 @@ import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ArrayAdapter
|
||||
import android.widget.Button
|
||||
import androidx.appcompat.app.AppCompatDialogFragment
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import be.mygod.vpnhotspot.App.Companion.app
|
||||
import be.mygod.vpnhotspot.databinding.FragmentEbegBinding
|
||||
import be.mygod.vpnhotspot.util.launchUrl
|
||||
import be.mygod.vpnhotspot.widget.SmartSnackbar
|
||||
import com.android.billingclient.api.*
|
||||
import com.android.billingclient.api.BillingClient
|
||||
import com.android.billingclient.api.BillingClientStateListener
|
||||
import com.android.billingclient.api.BillingFlowParams
|
||||
import com.android.billingclient.api.BillingResult
|
||||
import com.android.billingclient.api.ConsumeParams
|
||||
import com.android.billingclient.api.ProductDetails
|
||||
import com.android.billingclient.api.Purchase
|
||||
import com.android.billingclient.api.PurchasesUpdatedListener
|
||||
import com.android.billingclient.api.QueryProductDetailsParams
|
||||
import com.android.billingclient.api.QueryPurchasesParams
|
||||
import com.android.billingclient.api.consumePurchase
|
||||
import com.android.billingclient.api.queryProductDetails
|
||||
import com.android.billingclient.api.queryPurchasesAsync
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.GlobalScope
|
||||
import kotlinx.coroutines.launch
|
||||
@@ -94,7 +105,7 @@ class EBegFragment : AppCompatDialogFragment() {
|
||||
}.build()))
|
||||
}.build()) else SmartSnackbar.make(R.string.donations__google_android_market_not_supported).show()
|
||||
}
|
||||
if (BuildConfig.DONATIONS) (binding.donationsMoreStub.inflate() as Button).setOnClickListener {
|
||||
binding.donationsMoreDonateButton.setOnClickListener {
|
||||
requireContext().launchUrl("https://mygod.be/donate/")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -77,11 +77,11 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<ViewStub
|
||||
android:id="@+id/donations__more_stub"
|
||||
<Button
|
||||
android:id="@+id/donations__more_donate_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout="@layout/fragment_ebeg_more" />
|
||||
android:text="@string/settings_misc_donate_more"/>
|
||||
|
||||
</LinearLayout>
|
||||
</ScrollView>
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Button
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/donations__more_donate_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/settings_misc_donate_more"
|
||||
tools:viewBindingIgnore="true"/>
|
||||
@@ -120,7 +120,7 @@
|
||||
<string name="settings_misc_source_summary">Leggi il manuale, metti tra i preferiti, segnala problemi e contribuisci</string>
|
||||
<string name="settings_misc_donate">Dona</string>
|
||||
<string name="settings_misc_donate_summary">Amo i soldi</string>
|
||||
<string name="settings_misc_donate_more">PayPal, Flattr, altro…</string>
|
||||
<string name="settings_misc_donate_more">GitHub sponsors, PayPal, altro…</string>
|
||||
<string name="settings_restart_required">Riavvia l\'applicazione per applicare questa impostazione.</string>
|
||||
<string name="settings_exit_app">Esci</string>
|
||||
|
||||
|
||||
@@ -146,7 +146,7 @@
|
||||
<string name="settings_misc_source_summary">Leia o manual, marque com estrela, envie problemas e contribua (Tipo o Konny :D)</string>
|
||||
<string name="settings_misc_donate">Doe</string>
|
||||
<string name="settings_misc_donate_summary">Eu amo dinheiro!</string>
|
||||
<string name="settings_misc_donate_more">PayPal, Flattr, e mais…</string>
|
||||
<string name="settings_misc_donate_more">GitHub sponsors, PayPal, e mais…</string>
|
||||
<string name="settings_restart_required">Reinicie o aplicativo para aplicar essa função.</string>
|
||||
<string name="settings_exit_app">Sair</string>
|
||||
|
||||
|
||||
@@ -150,7 +150,7 @@
|
||||
<string name="settings_misc_source_summary">查看使用手册,star, 提交 issues, 合作</string>
|
||||
<string name="settings_misc_donate">捐款</string>
|
||||
<string name="settings_misc_donate_summary">请给我钱</string>
|
||||
<string name="settings_misc_donate_more">PayPal, Flattr 等其他方式…</string>
|
||||
<string name="settings_misc_donate_more">GitHub sponsors, PayPal 等其他方式…</string>
|
||||
<string name="settings_restart_required">重启应用以应用新的设置。</string>
|
||||
<string name="settings_exit_app">退出</string>
|
||||
|
||||
|
||||
@@ -172,7 +172,7 @@
|
||||
<string name="settings_misc_source_summary">Read manual, star, submit issues and contribute</string>
|
||||
<string name="settings_misc_donate">Donate</string>
|
||||
<string name="settings_misc_donate_summary">I love money</string>
|
||||
<string name="settings_misc_donate_more">PayPal, Flattr, more…</string>
|
||||
<string name="settings_misc_donate_more">GitHub sponsors, PayPal, more…</string>
|
||||
<string name="settings_restart_required">Restart this app to apply this setting.</string>
|
||||
<string name="settings_exit_app">Exit</string>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user