forked from recloudstream/cloudstream
Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
47da6efb59
16 changed files with 827 additions and 271 deletions
2
.github/workflows/issue_action.yml
vendored
2
.github/workflows/issue_action.yml
vendored
|
@ -41,7 +41,7 @@ jobs:
|
||||||
wget --output-document check_issue.py "https://raw.githubusercontent.com/recloudstream/.github/master/.github/check_issue.py"
|
wget --output-document check_issue.py "https://raw.githubusercontent.com/recloudstream/.github/master/.github/check_issue.py"
|
||||||
pip3 install httpx
|
pip3 install httpx
|
||||||
RES="$(python3 ./check_issue.py)"
|
RES="$(python3 ./check_issue.py)"
|
||||||
echo "::set-output name=name::${RES}"
|
echo "name=${RES}" >> $GITHUB_OUTPUT
|
||||||
- name: Comment if issue mentions a provider
|
- name: Comment if issue mentions a provider
|
||||||
if: steps.provider_check.outputs.name != 'none'
|
if: steps.provider_check.outputs.name != 'none'
|
||||||
uses: actions-cool/issues-helper@v3
|
uses: actions-cool/issues-helper@v3
|
||||||
|
|
4
.github/workflows/prerelease.yml
vendored
4
.github/workflows/prerelease.yml
vendored
|
@ -40,7 +40,7 @@ jobs:
|
||||||
curl -H "Authorization: token ${{ steps.generate_token.outputs.token }}" -o "keystore_password.txt" "https://raw.githubusercontent.com/recloudstream/secrets/master/keystore_password.txt"
|
curl -H "Authorization: token ${{ steps.generate_token.outputs.token }}" -o "keystore_password.txt" "https://raw.githubusercontent.com/recloudstream/secrets/master/keystore_password.txt"
|
||||||
KEY_PWD="$(cat keystore_password.txt)"
|
KEY_PWD="$(cat keystore_password.txt)"
|
||||||
echo "::add-mask::${KEY_PWD}"
|
echo "::add-mask::${KEY_PWD}"
|
||||||
echo "::set-output name=key_pwd::$KEY_PWD"
|
echo "key_pwd=$KEY_PWD" >> $GITHUB_OUTPUT
|
||||||
- name: Run Gradle
|
- name: Run Gradle
|
||||||
run: |
|
run: |
|
||||||
./gradlew assemblePrerelease makeJar androidSourcesJar
|
./gradlew assemblePrerelease makeJar androidSourcesJar
|
||||||
|
@ -56,6 +56,6 @@ jobs:
|
||||||
prerelease: true
|
prerelease: true
|
||||||
title: "Pre-release Build"
|
title: "Pre-release Build"
|
||||||
files: |
|
files: |
|
||||||
app/build/outputs/apk/prerelease/*.apk
|
app/build/outputs/apk/prerelease/release/*.apk
|
||||||
app/build/libs/app-sources.jar
|
app/build/libs/app-sources.jar
|
||||||
app/build/classes.jar
|
app/build/classes.jar
|
||||||
|
|
4
.github/workflows/pull_request.yml
vendored
4
.github/workflows/pull_request.yml
vendored
|
@ -15,9 +15,9 @@ jobs:
|
||||||
- name: Grant execute permission for gradlew
|
- name: Grant execute permission for gradlew
|
||||||
run: chmod +x gradlew
|
run: chmod +x gradlew
|
||||||
- name: Run Gradle
|
- name: Run Gradle
|
||||||
run: ./gradlew assembleDebug
|
run: ./gradlew assemblePrereleaseDebug
|
||||||
- name: Upload Artifact
|
- name: Upload Artifact
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
name: pull-request-build
|
name: pull-request-build
|
||||||
path: "app/build/outputs/apk/debug/*.apk"
|
path: "app/build/outputs/apk/prerelease/debug/*.apk"
|
||||||
|
|
|
@ -31,5 +31,10 @@
|
||||||
<option name="name" value="maven2" />
|
<option name="name" value="maven2" />
|
||||||
<option name="url" value="https://jitpack.io" />
|
<option name="url" value="https://jitpack.io" />
|
||||||
</remote-repository>
|
</remote-repository>
|
||||||
|
<remote-repository>
|
||||||
|
<option name="id" value="MavenRepo" />
|
||||||
|
<option name="name" value="MavenRepo" />
|
||||||
|
<option name="url" value="https://repo.maven.apache.org/maven2/" />
|
||||||
|
</remote-repository>
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
|
@ -19,6 +19,7 @@
|
||||||
|
|
||||||
***The list of supported languages:***
|
***The list of supported languages:***
|
||||||
* 🇱🇧 Arabic
|
* 🇱🇧 Arabic
|
||||||
|
* 🇧🇬 Bulgarian
|
||||||
* 🇭🇷 Croatian
|
* 🇭🇷 Croatian
|
||||||
* 🇨🇿 Czech
|
* 🇨🇿 Czech
|
||||||
* 🇳🇱 Dutch
|
* 🇳🇱 Dutch
|
||||||
|
|
233
app/build.gradle
233
app/build.gradle
|
@ -1,233 +0,0 @@
|
||||||
plugins {
|
|
||||||
id 'com.android.application'
|
|
||||||
id 'kotlin-android'
|
|
||||||
id 'kotlin-kapt'
|
|
||||||
id 'kotlin-android-extensions'
|
|
||||||
id 'org.jetbrains.dokka'
|
|
||||||
}
|
|
||||||
|
|
||||||
def tmpFilePath = System.getProperty("user.home") + "/work/_temp/keystore/"
|
|
||||||
def allFilesFromDir = new File(tmpFilePath).listFiles()
|
|
||||||
def prereleaseStoreFile = null
|
|
||||||
if (allFilesFromDir != null) {
|
|
||||||
prereleaseStoreFile = allFilesFromDir.first()
|
|
||||||
}
|
|
||||||
|
|
||||||
android {
|
|
||||||
testOptions {
|
|
||||||
unitTests.returnDefaultValues = true
|
|
||||||
}
|
|
||||||
signingConfigs {
|
|
||||||
prerelease {
|
|
||||||
if (prereleaseStoreFile != null) {
|
|
||||||
storeFile = file(prereleaseStoreFile)
|
|
||||||
storePassword System.getenv("SIGNING_STORE_PASSWORD")
|
|
||||||
keyAlias System.getenv("SIGNING_KEY_ALIAS")
|
|
||||||
keyPassword System.getenv("SIGNING_KEY_PASSWORD")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
compileSdkVersion 31
|
|
||||||
buildToolsVersion "30.0.3"
|
|
||||||
|
|
||||||
defaultConfig {
|
|
||||||
applicationId "com.lagradost.cloudstream3"
|
|
||||||
minSdkVersion 21
|
|
||||||
targetSdkVersion 30
|
|
||||||
|
|
||||||
versionCode 52
|
|
||||||
versionName "3.1.6"
|
|
||||||
|
|
||||||
resValue "string", "app_version",
|
|
||||||
"${defaultConfig.versionName}${versionNameSuffix ?: ""}"
|
|
||||||
|
|
||||||
resValue "string", "commit_hash",
|
|
||||||
("git rev-parse --short HEAD".execute().text.trim() ?: "")
|
|
||||||
|
|
||||||
resValue "bool", "is_prerelease", "false"
|
|
||||||
|
|
||||||
buildConfigField("String", "BUILDDATE", "new java.text.SimpleDateFormat(\"yyyy-MM-dd HH:mm\").format(new java.util.Date(" + System.currentTimeMillis() + "L));")
|
|
||||||
|
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
||||||
|
|
||||||
kapt {
|
|
||||||
includeCompileClasspath = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
buildTypes {
|
|
||||||
// release {
|
|
||||||
// debuggable false
|
|
||||||
// minifyEnabled false
|
|
||||||
// shrinkResources false
|
|
||||||
// proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
||||||
// resValue "bool", "is_prerelease", "false"
|
|
||||||
// }
|
|
||||||
prerelease {
|
|
||||||
applicationIdSuffix ".prerelease"
|
|
||||||
buildConfigField("boolean", "BETA", "true")
|
|
||||||
signingConfig signingConfigs.prerelease
|
|
||||||
versionNameSuffix '-PRE'
|
|
||||||
debuggable false
|
|
||||||
minifyEnabled false
|
|
||||||
shrinkResources false
|
|
||||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
||||||
resValue "bool", "is_prerelease", "true"
|
|
||||||
}
|
|
||||||
debug {
|
|
||||||
debuggable true
|
|
||||||
applicationIdSuffix ".debug"
|
|
||||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
||||||
resValue "bool", "is_prerelease", "true"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
compileOptions {
|
|
||||||
coreLibraryDesugaringEnabled true
|
|
||||||
|
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
|
||||||
}
|
|
||||||
kotlinOptions {
|
|
||||||
jvmTarget = '1.8'
|
|
||||||
freeCompilerArgs = ['-Xjvm-default=compatibility']
|
|
||||||
}
|
|
||||||
lintOptions {
|
|
||||||
checkReleaseBuilds false
|
|
||||||
abortOnError false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
repositories {
|
|
||||||
maven { url 'https://jitpack.io' }
|
|
||||||
}
|
|
||||||
|
|
||||||
dependencies {
|
|
||||||
implementation 'com.google.android.mediahome:video:1.0.0'
|
|
||||||
implementation 'androidx.test.ext:junit-ktx:1.1.3'
|
|
||||||
testImplementation 'org.json:json:20180813'
|
|
||||||
|
|
||||||
implementation 'androidx.core:core-ktx:1.8.0'
|
|
||||||
implementation 'androidx.appcompat:appcompat:1.4.2' // need target 32 for 1.5.0
|
|
||||||
|
|
||||||
// dont change this to 1.6.0 it looks ugly af
|
|
||||||
implementation 'com.google.android.material:material:1.5.0'
|
|
||||||
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
|
|
||||||
implementation 'androidx.navigation:navigation-fragment-ktx:2.5.1'
|
|
||||||
implementation 'androidx.navigation:navigation-ui-ktx:2.5.1'
|
|
||||||
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.5.1'
|
|
||||||
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1'
|
|
||||||
testImplementation 'junit:junit:4.13.2'
|
|
||||||
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
|
|
||||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
|
|
||||||
|
|
||||||
//implementation "io.karn:khttp-android:0.1.2" //okhttp instead
|
|
||||||
// implementation 'org.jsoup:jsoup:1.13.1'
|
|
||||||
implementation "com.fasterxml.jackson.module:jackson-module-kotlin:2.13.1"
|
|
||||||
|
|
||||||
implementation "androidx.preference:preference-ktx:1.2.0"
|
|
||||||
|
|
||||||
implementation 'com.github.bumptech.glide:glide:4.13.1'
|
|
||||||
kapt 'com.github.bumptech.glide:compiler:4.13.1'
|
|
||||||
implementation 'com.github.bumptech.glide:okhttp3-integration:4.13.0'
|
|
||||||
|
|
||||||
implementation 'jp.wasabeef:glide-transformations:4.3.0'
|
|
||||||
|
|
||||||
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
|
|
||||||
|
|
||||||
// implementation "androidx.leanback:leanback-paging:1.1.0-alpha09"
|
|
||||||
|
|
||||||
// Exoplayer
|
|
||||||
implementation 'com.google.android.exoplayer:exoplayer:2.16.1'
|
|
||||||
implementation 'com.google.android.exoplayer:extension-cast:2.16.1'
|
|
||||||
implementation "com.google.android.exoplayer:extension-mediasession:2.16.1"
|
|
||||||
implementation 'com.google.android.exoplayer:extension-okhttp:2.16.1'
|
|
||||||
|
|
||||||
//implementation "com.google.android.exoplayer:extension-leanback:2.14.0"
|
|
||||||
|
|
||||||
// Bug reports
|
|
||||||
implementation "ch.acra:acra-core:5.8.4"
|
|
||||||
implementation "ch.acra:acra-toast:5.8.4"
|
|
||||||
|
|
||||||
compileOnly "com.google.auto.service:auto-service-annotations:1.0"
|
|
||||||
//either for java sources:
|
|
||||||
annotationProcessor "com.google.auto.service:auto-service:1.0"
|
|
||||||
//or for kotlin sources (requires kapt gradle plugin):
|
|
||||||
kapt "com.google.auto.service:auto-service:1.0"
|
|
||||||
|
|
||||||
// subtitle color picker
|
|
||||||
implementation 'com.jaredrummler:colorpicker:1.1.0'
|
|
||||||
|
|
||||||
//run JS
|
|
||||||
implementation 'org.mozilla:rhino:1.7.14'
|
|
||||||
|
|
||||||
// TorrentStream
|
|
||||||
//implementation 'com.github.TorrentStream:TorrentStream-Android:2.7.0'
|
|
||||||
|
|
||||||
// Downloading
|
|
||||||
implementation "androidx.work:work-runtime:2.7.1"
|
|
||||||
implementation "androidx.work:work-runtime-ktx:2.7.1"
|
|
||||||
|
|
||||||
// Networking
|
|
||||||
// implementation "com.squareup.okhttp3:okhttp:4.9.2"
|
|
||||||
// implementation "com.squareup.okhttp3:okhttp-dnsoverhttps:4.9.1"
|
|
||||||
implementation 'com.github.Blatzar:NiceHttp:0.3.3'
|
|
||||||
|
|
||||||
// Util to skip the URI file fuckery 🙏
|
|
||||||
implementation "com.github.tachiyomiorg:unifile:17bec43"
|
|
||||||
|
|
||||||
// API because cba maintaining it myself
|
|
||||||
implementation "com.uwetrottmann.tmdb2:tmdb-java:2.6.0"
|
|
||||||
|
|
||||||
implementation 'com.github.discord:OverlappingPanels:0.1.3'
|
|
||||||
// debugImplementation because LeakCanary should only run in debug builds.
|
|
||||||
// debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'
|
|
||||||
|
|
||||||
// for shimmer when loading
|
|
||||||
implementation 'com.facebook.shimmer:shimmer:0.5.0'
|
|
||||||
|
|
||||||
implementation "androidx.tvprovider:tvprovider:1.0.0"
|
|
||||||
|
|
||||||
// used for subtitle decoding https://github.com/albfernandez/juniversalchardet
|
|
||||||
implementation 'com.github.albfernandez:juniversalchardet:2.4.0'
|
|
||||||
|
|
||||||
// slow af yt
|
|
||||||
//implementation 'com.github.HaarigerHarald:android-youtubeExtractor:master-SNAPSHOT'
|
|
||||||
|
|
||||||
// newpipe yt
|
|
||||||
implementation 'com.github.TeamNewPipe:NewPipeExtractor:dev-SNAPSHOT'
|
|
||||||
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
|
|
||||||
|
|
||||||
// Library/extensions searching with Levenshtein distance
|
|
||||||
implementation 'me.xdrop:fuzzywuzzy:1.4.0'
|
|
||||||
}
|
|
||||||
|
|
||||||
task androidSourcesJar(type: Jar) {
|
|
||||||
getArchiveClassifier().set('sources')
|
|
||||||
from android.sourceSets.main.java.srcDirs//full sources
|
|
||||||
}
|
|
||||||
|
|
||||||
// this is used by the gradlew plugin
|
|
||||||
task makeJar(type: Copy) {
|
|
||||||
from('build/intermediates/compile_app_classes_jar/debug')
|
|
||||||
into('build')
|
|
||||||
include('classes.jar')
|
|
||||||
dependsOn('build')
|
|
||||||
}
|
|
||||||
|
|
||||||
dokkaHtml {
|
|
||||||
moduleName.set("Cloudstream")
|
|
||||||
dokkaSourceSets {
|
|
||||||
main {
|
|
||||||
sourceLink {
|
|
||||||
// Unix based directory relative path to the root of the project (where you execute gradle respectively).
|
|
||||||
localDirectory.set(file("src/main/java"))
|
|
||||||
|
|
||||||
// URL showing where the source code can be accessed through the web browser
|
|
||||||
remoteUrl.set(new URL(
|
|
||||||
"https://github.com/recloudstream/cloudstream/tree/master/app/src/main/java"))
|
|
||||||
// Suffix which is used to append the line number to the URL. Use #L for GitHub
|
|
||||||
remoteLineSuffix.set("#L")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
250
app/build.gradle.kts
Normal file
250
app/build.gradle.kts
Normal file
|
@ -0,0 +1,250 @@
|
||||||
|
import com.android.build.gradle.api.BaseVariantOutput
|
||||||
|
import org.jetbrains.dokka.gradle.DokkaTask
|
||||||
|
import java.io.ByteArrayOutputStream
|
||||||
|
import java.net.URL
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id("com.android.application")
|
||||||
|
id("kotlin-android")
|
||||||
|
id("kotlin-kapt")
|
||||||
|
id("kotlin-android-extensions")
|
||||||
|
id("org.jetbrains.dokka")
|
||||||
|
}
|
||||||
|
|
||||||
|
val tmpFilePath = System.getProperty("user.home") + "/work/_temp/keystore/"
|
||||||
|
val prereleaseStoreFile: File? = File(tmpFilePath).listFiles()?.first()
|
||||||
|
|
||||||
|
fun String.execute() = ByteArrayOutputStream().use { baot ->
|
||||||
|
if (project.exec {
|
||||||
|
workingDir = projectDir
|
||||||
|
commandLine = this@execute.split(Regex("\\s"))
|
||||||
|
standardOutput = baot
|
||||||
|
}.exitValue == 0)
|
||||||
|
String(baot.toByteArray()).trim()
|
||||||
|
else null
|
||||||
|
}
|
||||||
|
|
||||||
|
android {
|
||||||
|
testOptions {
|
||||||
|
unitTests.isReturnDefaultValues = true
|
||||||
|
}
|
||||||
|
signingConfigs {
|
||||||
|
create("prerelease") {
|
||||||
|
if (prereleaseStoreFile != null) {
|
||||||
|
storeFile = file(prereleaseStoreFile)
|
||||||
|
storePassword = System.getenv("SIGNING_STORE_PASSWORD")
|
||||||
|
keyAlias = System.getenv("SIGNING_KEY_ALIAS")
|
||||||
|
keyPassword = System.getenv("SIGNING_KEY_PASSWORD")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
compileSdk = 31
|
||||||
|
buildToolsVersion = "30.0.3"
|
||||||
|
|
||||||
|
defaultConfig {
|
||||||
|
applicationId = "com.lagradost.cloudstream3"
|
||||||
|
minSdk = 21
|
||||||
|
targetSdk = 30
|
||||||
|
|
||||||
|
versionCode = 52
|
||||||
|
versionName = "3.1.6"
|
||||||
|
|
||||||
|
resValue("string", "app_version", "${defaultConfig.versionName}${versionNameSuffix ?: ""}")
|
||||||
|
|
||||||
|
resValue("string", "commit_hash", "git rev-parse --short HEAD".execute() ?: "")
|
||||||
|
|
||||||
|
resValue("bool", "is_prerelease", "false")
|
||||||
|
|
||||||
|
buildConfigField(
|
||||||
|
"String",
|
||||||
|
"BUILDDATE",
|
||||||
|
"new java.text.SimpleDateFormat(\"yyyy-MM-dd HH:mm\").format(new java.util.Date(" + System.currentTimeMillis() + "L));"
|
||||||
|
)
|
||||||
|
|
||||||
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
||||||
|
|
||||||
|
kapt {
|
||||||
|
includeCompileClasspath = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
buildTypes {
|
||||||
|
release {
|
||||||
|
isDebuggable = false
|
||||||
|
isMinifyEnabled = false
|
||||||
|
isShrinkResources = false
|
||||||
|
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
|
||||||
|
}
|
||||||
|
debug {
|
||||||
|
isDebuggable = true
|
||||||
|
applicationIdSuffix = ".debug"
|
||||||
|
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
flavorDimensions.add("state")
|
||||||
|
productFlavors {
|
||||||
|
create("stable") {
|
||||||
|
dimension = "state"
|
||||||
|
resValue("bool", "is_prerelease", "false")
|
||||||
|
}
|
||||||
|
create("prerelease") {
|
||||||
|
dimension = "state"
|
||||||
|
resValue("bool", "is_prerelease", "true")
|
||||||
|
buildConfigField("boolean", "BETA", "true")
|
||||||
|
applicationIdSuffix = ".prerelease"
|
||||||
|
signingConfig = signingConfigs.getByName("prerelease")
|
||||||
|
versionNameSuffix = "-PRE"
|
||||||
|
versionCode = (System.currentTimeMillis() / 60000).toInt()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
compileOptions {
|
||||||
|
isCoreLibraryDesugaringEnabled = true
|
||||||
|
|
||||||
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||||
|
targetCompatibility = JavaVersion.VERSION_1_8
|
||||||
|
}
|
||||||
|
kotlinOptions {
|
||||||
|
jvmTarget = "1.8"
|
||||||
|
freeCompilerArgs = listOf("-Xjvm-default=compatibility")
|
||||||
|
}
|
||||||
|
lint {
|
||||||
|
abortOnError = false
|
||||||
|
checkReleaseBuilds = false
|
||||||
|
}
|
||||||
|
namespace = "com.lagradost.cloudstream3"
|
||||||
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
maven("https://jitpack.io")
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation("com.google.android.mediahome:video:1.0.0")
|
||||||
|
implementation("androidx.test.ext:junit-ktx:1.1.3")
|
||||||
|
testImplementation("org.json:json:20180813")
|
||||||
|
|
||||||
|
implementation("androidx.core:core-ktx:1.8.0")
|
||||||
|
implementation("androidx.appcompat:appcompat:1.4.2") // need target 32 for 1.5.0
|
||||||
|
|
||||||
|
// dont change this to 1.6.0 it looks ugly af
|
||||||
|
implementation("com.google.android.material:material:1.5.0")
|
||||||
|
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
|
||||||
|
implementation("androidx.navigation:navigation-fragment-ktx:2.5.1")
|
||||||
|
implementation("androidx.navigation:navigation-ui-ktx:2.5.1")
|
||||||
|
implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.5.1")
|
||||||
|
implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1")
|
||||||
|
testImplementation("junit:junit:4.13.2")
|
||||||
|
androidTestImplementation("androidx.test.ext:junit:1.1.3")
|
||||||
|
androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0")
|
||||||
|
|
||||||
|
//implementation("io.karn:khttp-android:0.1.2") //okhttp instead
|
||||||
|
// implementation("org.jsoup:jsoup:1.13.1")
|
||||||
|
implementation("com.fasterxml.jackson.module:jackson-module-kotlin:2.13.1")
|
||||||
|
|
||||||
|
implementation("androidx.preference:preference-ktx:1.2.0")
|
||||||
|
|
||||||
|
implementation("com.github.bumptech.glide:glide:4.13.1")
|
||||||
|
kapt("com.github.bumptech.glide:compiler:4.13.1")
|
||||||
|
implementation("com.github.bumptech.glide:okhttp3-integration:4.13.0")
|
||||||
|
|
||||||
|
implementation("jp.wasabeef:glide-transformations:4.3.0")
|
||||||
|
|
||||||
|
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
|
||||||
|
|
||||||
|
// implementation("androidx.leanback:leanback-paging:1.1.0-alpha09")
|
||||||
|
|
||||||
|
// Exoplayer
|
||||||
|
implementation("com.google.android.exoplayer:exoplayer:2.16.1")
|
||||||
|
implementation("com.google.android.exoplayer:extension-cast:2.16.1")
|
||||||
|
implementation("com.google.android.exoplayer:extension-mediasession:2.16.1")
|
||||||
|
implementation("com.google.android.exoplayer:extension-okhttp:2.16.1")
|
||||||
|
|
||||||
|
//implementation("com.google.android.exoplayer:extension-leanback:2.14.0")
|
||||||
|
|
||||||
|
// Bug reports
|
||||||
|
implementation("ch.acra:acra-core:5.8.4")
|
||||||
|
implementation("ch.acra:acra-toast:5.8.4")
|
||||||
|
|
||||||
|
compileOnly("com.google.auto.service:auto-service-annotations:1.0")
|
||||||
|
//either for java sources:
|
||||||
|
annotationProcessor("com.google.auto.service:auto-service:1.0")
|
||||||
|
//or for kotlin sources (requires kapt gradle plugin):
|
||||||
|
kapt("com.google.auto.service:auto-service:1.0")
|
||||||
|
|
||||||
|
// subtitle color picker
|
||||||
|
implementation("com.jaredrummler:colorpicker:1.1.0")
|
||||||
|
|
||||||
|
//run JS
|
||||||
|
implementation("org.mozilla:rhino:1.7.14")
|
||||||
|
|
||||||
|
// TorrentStream
|
||||||
|
//implementation("com.github.TorrentStream:TorrentStream-Android:2.7.0")
|
||||||
|
|
||||||
|
// Downloading
|
||||||
|
implementation("androidx.work:work-runtime:2.7.1")
|
||||||
|
implementation("androidx.work:work-runtime-ktx:2.7.1")
|
||||||
|
|
||||||
|
// Networking
|
||||||
|
// implementation("com.squareup.okhttp3:okhttp:4.9.2")
|
||||||
|
// implementation("com.squareup.okhttp3:okhttp-dnsoverhttps:4.9.1")
|
||||||
|
implementation("com.github.Blatzar:NiceHttp:0.3.3")
|
||||||
|
|
||||||
|
// Util to skip the URI file fuckery 🙏
|
||||||
|
implementation("com.github.tachiyomiorg:unifile:17bec43")
|
||||||
|
|
||||||
|
// API because cba maintaining it myself
|
||||||
|
implementation("com.uwetrottmann.tmdb2:tmdb-java:2.6.0")
|
||||||
|
|
||||||
|
implementation("com.github.discord:OverlappingPanels:0.1.3")
|
||||||
|
// debugImplementation because LeakCanary should only run in debug builds.
|
||||||
|
// debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'
|
||||||
|
|
||||||
|
// for shimmer when loading
|
||||||
|
implementation("com.facebook.shimmer:shimmer:0.5.0")
|
||||||
|
|
||||||
|
implementation("androidx.tvprovider:tvprovider:1.0.0")
|
||||||
|
|
||||||
|
// used for subtitle decoding https://github.com/albfernandez/juniversalchardet
|
||||||
|
implementation("com.github.albfernandez:juniversalchardet:2.4.0")
|
||||||
|
|
||||||
|
// slow af yt
|
||||||
|
//implementation("com.github.HaarigerHarald:android-youtubeExtractor:master-SNAPSHOT")
|
||||||
|
|
||||||
|
// newpipe yt
|
||||||
|
implementation("com.github.TeamNewPipe:NewPipeExtractor:dev-SNAPSHOT")
|
||||||
|
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:1.1.5")
|
||||||
|
|
||||||
|
// Library/extensions searching with Levenshtein distance
|
||||||
|
implementation("me.xdrop:fuzzywuzzy:1.4.0")
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.register("androidSourcesJar", Jar::class) {
|
||||||
|
archiveClassifier.set("sources")
|
||||||
|
from(android.sourceSets.getByName("main").java.srcDirs) //full sources
|
||||||
|
}
|
||||||
|
|
||||||
|
// this is used by the gradlew plugin
|
||||||
|
tasks.register("makeJar", Copy::class) {
|
||||||
|
from("build/intermediates/compile_app_classes_jar/prereleaseDebug")
|
||||||
|
into("build")
|
||||||
|
include("classes.jar")
|
||||||
|
dependsOn("build")
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.withType<DokkaTask>().configureEach {
|
||||||
|
moduleName.set("Cloudstream")
|
||||||
|
dokkaSourceSets {
|
||||||
|
named("main") {
|
||||||
|
sourceLink {
|
||||||
|
// Unix based directory relative path to the root of the project (where you execute gradle respectively).
|
||||||
|
localDirectory.set(file("src/main/java"))
|
||||||
|
|
||||||
|
// URL showing where the source code can be accessed through the web browser
|
||||||
|
remoteUrl.set(URL("https://github.com/recloudstream/cloudstream/tree/master/app/src/main/java"))
|
||||||
|
// Suffix which is used to append the line number to the URL. Use #L for GitHub
|
||||||
|
remoteLineSuffix.set("#L")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
2
app/proguard-rules.pro
vendored
2
app/proguard-rules.pro
vendored
|
@ -1,6 +1,6 @@
|
||||||
# Add project specific ProGuard rules here.
|
# Add project specific ProGuard rules here.
|
||||||
# You can control the set of applied configuration files using the
|
# You can control the set of applied configuration files using the
|
||||||
# proguardFiles setting in build.gradle.
|
# proguardFiles setting in build.gradle.kts.
|
||||||
#
|
#
|
||||||
# For more details, see
|
# For more details, see
|
||||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools">
|
||||||
package="com.lagradost.cloudstream3">
|
|
||||||
|
|
||||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- I dont remember, probs has to do with downloads -->
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- I dont remember, probs has to do with downloads -->
|
||||||
<uses-permission android:name="android.permission.INTERNET" /> <!-- unless you only use cs3 as a player for downloaded stuff, you need this -->
|
<uses-permission android:name="android.permission.INTERNET" /> <!-- unless you only use cs3 as a player for downloaded stuff, you need this -->
|
||||||
|
|
|
@ -79,6 +79,7 @@ val appLanguages = arrayListOf(
|
||||||
Triple("\uD83C\uDDEE\uD83C\uDDE9", "Indonesian", "in"),
|
Triple("\uD83C\uDDEE\uD83C\uDDE9", "Indonesian", "in"),
|
||||||
Triple("", "Czech", "cs"),
|
Triple("", "Czech", "cs"),
|
||||||
Triple("", "Croatian", "hr"),
|
Triple("", "Croatian", "hr"),
|
||||||
|
Triple("", "Bulgarian", "bg"),
|
||||||
).sortedBy { it.second } //ye, we go alphabetical, so ppl don't put their lang on top
|
).sortedBy { it.second } //ye, we go alphabetical, so ppl don't put their lang on top
|
||||||
|
|
||||||
class SettingsGeneral : PreferenceFragmentCompat() {
|
class SettingsGeneral : PreferenceFragmentCompat() {
|
||||||
|
|
533
app/src/main/res/values-bg/strings.xml
Normal file
533
app/src/main/res/values-bg/strings.xml
Normal file
|
@ -0,0 +1,533 @@
|
||||||
|
<!--https://newbedev.com/concatenate-multiple-strings-in-xml-->
|
||||||
|
<resources>
|
||||||
|
|
||||||
|
<!-- FORMAT MIGHT TRANSLATE, WILL CAUSE CRASH IF APPLIED WRONG -->
|
||||||
|
<string formatted="true" name="app_dub_sub_episode_text_format">%s еп. %d</string>
|
||||||
|
<string formatted="true" name="cast_format">Актьори: %s</string>
|
||||||
|
<string formatted="true" name="next_episode_format">Епизод %d ще бъде пуснат след</string>
|
||||||
|
<string formatted="true" name="next_episode_time_day_format">%DD %dh %dm</string>
|
||||||
|
<string formatted="true" name="next_episode_time_hour_format">%dh %dm</string>
|
||||||
|
<string formatted="true" name="next_episode_time_min_format">%dm</string>
|
||||||
|
|
||||||
|
|
||||||
|
<string name="result_poster_img_des">Плакат</string>
|
||||||
|
<string name="search_poster_img_des">@string/result_poster_img_des</string>
|
||||||
|
<string name="episode_poster_img_des">Плакат на епизод</string>
|
||||||
|
<string name="home_main_poster_img_des">Основен плакат</string>
|
||||||
|
<string name="home_next_random_img_des">Следващ произволен</string>
|
||||||
|
<string name="go_back_img_des">Върни се</string>
|
||||||
|
<string name="home_change_provider_img_des">Смяна на доставчика</string>
|
||||||
|
<string name="preview_background_img_des">Визуализация на фона</string>
|
||||||
|
|
||||||
|
|
||||||
|
<string formatted="true" name="player_speed_text_format">Скорост (%.2fx)</string>
|
||||||
|
<string formatted="true" name="rated_format">Оценка: %.1f</string>
|
||||||
|
<string formatted="true" name="new_update_format">Намерена е нова актуализация!\n%s -> %s</string>
|
||||||
|
<string formatted="true" name="filler">Шаблон</string>
|
||||||
|
<string formatted="true" name="duration_format">%d мин</string>
|
||||||
|
|
||||||
|
<string name="app_name">CloudStream</string>
|
||||||
|
<string name="play_with_app_name">Пусни с CloudStream</string>
|
||||||
|
<string name="title_home">Начало</string>
|
||||||
|
<string name="title_search">Търсене</string>
|
||||||
|
<string name="title_downloads">Изтегляния</string>
|
||||||
|
<string name="title_settings">Настройки</string>
|
||||||
|
|
||||||
|
<string name="search_hint">Търсене…</string>
|
||||||
|
<string formatted="true" name="search_hint_site">Търсете %s...</string>
|
||||||
|
|
||||||
|
<string name="no_data">Няма данни</string>
|
||||||
|
<string name="episode_more_options_des">Още опций</string>
|
||||||
|
<string name="next_episode">Следващ епизод</string>
|
||||||
|
<string name="result_tags">Жанрове</string>
|
||||||
|
<string name="result_share">Сподели</string>
|
||||||
|
<string name="result_open_in_browser">Отвори в браузъра</string>
|
||||||
|
<string name="skip_loading">Пропусни зареждането</string>
|
||||||
|
<string name="loading">Зареждане…</string>
|
||||||
|
|
||||||
|
<string name="type_watching">Гледане</string>
|
||||||
|
<string name="type_on_hold">На изчакване</string>
|
||||||
|
<string name="type_completed">Завършено</string>
|
||||||
|
<string name="type_dropped">Изпуснат</string>
|
||||||
|
<string name="type_plan_to_watch">План за гледане</string>
|
||||||
|
<string name="type_none">Нито един</string>
|
||||||
|
<string name="type_re_watching">Повторно гледане</string>
|
||||||
|
|
||||||
|
<string name="play_movie_button">Пускане на филм</string>
|
||||||
|
<string name="play_livestream_button">Възпроизвеждане на живо</string>
|
||||||
|
<string name="play_torrent_button">Поточно предаване на торент</string>
|
||||||
|
<string name="pick_source">Източници</string>
|
||||||
|
<string name="pick_subtitle">субтитри</string>
|
||||||
|
<string name="reload_error">Повторен опит за свързване...</string>
|
||||||
|
<string name="go_back">Върни се</string>
|
||||||
|
<string name="play_episode">Пусни епизод</string>
|
||||||
|
|
||||||
|
|
||||||
|
<string name="download">Изтегли</string>
|
||||||
|
<string name="downloaded">Изтеглено</string>
|
||||||
|
<string name="downloading">Изтегля се</string>
|
||||||
|
<string name="download_paused">Изтеглянето е на пауза</string>
|
||||||
|
<string name="download_started">Изтеглянето започна</string>
|
||||||
|
<string name="download_failed">Изтеглянето се провали</string>
|
||||||
|
<string name="download_canceled">Изтеглянето е отменено</string>
|
||||||
|
<string name="download_done">Изтеглянето е завършено</string>
|
||||||
|
<string name="stream">Поток</string>
|
||||||
|
|
||||||
|
<string name="error_loading_links_toast">Грешка при зареждане на връзки</string>
|
||||||
|
<string name="download_storage_text">Вътрешна памет</string>
|
||||||
|
|
||||||
|
<string name="app_dubbed_text">Дублаж</string>
|
||||||
|
<string name="app_subbed_text">Субтитри</string>
|
||||||
|
|
||||||
|
<string name="popup_delete_file">Изтрий файла</string>
|
||||||
|
<string name="popup_play_file">Възпроизвеждане на файл</string>
|
||||||
|
<string name="popup_resume_download">Възобновете изтеглянето</string>
|
||||||
|
<string name="popup_pause_download">Пауза на изтеглянето</string>
|
||||||
|
|
||||||
|
<string name="pref_disable_acra">Деактивирайте автоматичното докладване на грешки</string>
|
||||||
|
<string name="home_more_info">Повече информация</string>
|
||||||
|
<string name="home_expanded_hide">Скрий</string>
|
||||||
|
<string name="home_play">Пусни</string>
|
||||||
|
<string name="home_info">Информация</string>
|
||||||
|
<string name="filter_bookmarks">Филтриране на отметки</string>
|
||||||
|
<string name="error_bookmarks_text">Отметки</string>
|
||||||
|
<string name="action_remove_from_bookmarks">Премахване</string>
|
||||||
|
<string name="action_add_to_bookmarks">Задайте статус на гледане</string>
|
||||||
|
<string name="sort_apply">Приложи</string>
|
||||||
|
<string name="sort_cancel">Отказ</string>
|
||||||
|
<string name="sort_copy">Копирай</string>
|
||||||
|
<string name="sort_close">Затвори</string>
|
||||||
|
<string name="sort_clear">Изчисти</string>
|
||||||
|
<string name="sort_save">Запазване</string>
|
||||||
|
|
||||||
|
<string name="player_speed">Скорост на възпроизвеждане</string>
|
||||||
|
|
||||||
|
<string name="subtitles_settings">Настройки на субтитрите</string>
|
||||||
|
<string name="subs_text_color">Цвят на текста</string>
|
||||||
|
<string name="subs_outline_color">Цвят на контура</string>
|
||||||
|
<string name="subs_background_color">Цвят на фона</string>
|
||||||
|
<string name="subs_window_color">Цвят на прозореца</string>
|
||||||
|
<string name="subs_edge_type">Тип ръб</string>
|
||||||
|
<string name="subs_subtitle_elevation">Височина на субтитрите</string>
|
||||||
|
<string name="subs_font">Шрифт</string>
|
||||||
|
<string name="subs_font_size">Размер на шрифта</string>
|
||||||
|
|
||||||
|
<string name="search_provider_text_providers">Търсене чрез доставчици</string>
|
||||||
|
<string name="search_provider_text_types">Търсене с помощта на типове</string>
|
||||||
|
|
||||||
|
<string name="benene_count_text">%d Банан/а даден/и на разработчиците</string>
|
||||||
|
<string name="benene_count_text_none">Не е/са даден/и Банан/и</string>
|
||||||
|
|
||||||
|
<string name="subs_auto_select_language">Автоматичен избор на език</string>
|
||||||
|
<string name="subs_download_languages">Изтегляне на езици</string>
|
||||||
|
<string name="subs_subtitle_languages">Език на субтитрите</string>
|
||||||
|
<string name="subs_hold_to_reset_to_default">Задръжте, за да нулирате по подразбиране</string>
|
||||||
|
<string formatted="true" name="subs_import_text">Импортирайте шрифтове, като ги поставите в %s</string>
|
||||||
|
<string name="continue_watching">Продължете да гледате</string>
|
||||||
|
|
||||||
|
<string name="action_remove_watching">Премахване</string>
|
||||||
|
<string name="action_open_watching">Повече информация</string>
|
||||||
|
<string name="action_open_play">@string/home_play</string>
|
||||||
|
|
||||||
|
<string name="vpn_might_be_needed">Може да е необходим VPN, за да работи правилно този доставчик</string>
|
||||||
|
<string name="vpn_torrent">Този доставчик е торент, препоръчва се VPN</string>
|
||||||
|
|
||||||
|
<string name="provider_info_meta">Метаданните не се предоставят от сайта, зареждането на видео ще бъде неуспешно, ако не съществува на сайта.</string>
|
||||||
|
|
||||||
|
<string name="torrent_plot">Описание</string>
|
||||||
|
<string name="normal_no_plot">Няма намерен съдържание</string>
|
||||||
|
<string name="torrent_no_plot">Няма намерено описание</string>
|
||||||
|
|
||||||
|
<string name="show_log_cat">Покажи logcat 🐈</string>
|
||||||
|
|
||||||
|
<string name="picture_in_picture">Картина в картина</string>
|
||||||
|
<string name="picture_in_picture_des">Продължава възпроизвеждането в миниатюрен плейър върху други приложения</string>
|
||||||
|
<string name="player_size_settings">Бутон за преоразмеряване на плейъра</string>
|
||||||
|
<string name="player_size_settings_des">Премахнете черните граници</string>
|
||||||
|
<string name="player_subtitles_settings">Субтитри</string>
|
||||||
|
<string name="player_subtitles_settings_des">Настройки на субтитрите на плейъра</string>
|
||||||
|
<string name="chromecast_subtitles_settings">Chromecast субтитри</string>
|
||||||
|
<string name="chromecast_subtitles_settings_des">Настройки за субтитри на Chromecast</string>
|
||||||
|
|
||||||
|
<string name="eigengraumode_settings">Режим Eigengravy (промяна скорост на възпроизвеждане)</string>
|
||||||
|
<string name="eigengraumode_settings_des">Добавя опция за скорост в плейъра</string>
|
||||||
|
<string name="swipe_to_seek_settings">Плъзнете за преместване</string>
|
||||||
|
<string name="swipe_to_seek_settings_des">Плъзнете наляво или надясно, за да контролирате времето във видеоплейъра</string>
|
||||||
|
<string name="swipe_to_change_settings">Плъзнете, за да промените настройките</string>
|
||||||
|
<string name="swipe_to_change_settings_des">Плъзнете наляво или надясно, за да промените яркостта или силата на звука</string>
|
||||||
|
|
||||||
|
<string name="autoplay_next_settings">Автоматично пускане на следващ епизод</string>
|
||||||
|
<string name="autoplay_next_settings_des">Започнете следващия епизод, когато текущият приключи</string>
|
||||||
|
|
||||||
|
<string name="double_tap_to_seek_settings">Докоснете двукратно за превъртане</string>
|
||||||
|
<string name="double_tap_to_pause_settings">Докоснете два пъти за пауза</string>
|
||||||
|
<string name="double_tap_to_seek_amount_settings">Размер на превъртане</string>
|
||||||
|
<string name="double_tap_to_seek_settings_des">Докоснете два пъти от дясната или лявата страна, за да превъртите напред или назад</string>
|
||||||
|
<string name="double_tap_to_pause_settings_des">Докоснете в средата, за да направите пауза</string>
|
||||||
|
<string name="use_system_brightness_settings">Използвайте яркостта на системата</string>
|
||||||
|
<string name="use_system_brightness_settings_des">Използвайте системна яркост в плейъра на приложението вместо тъмно
|
||||||
|
наслагване</string>
|
||||||
|
|
||||||
|
<string name="episode_sync_settings">Актуализирайте прогреса на гледане</string>
|
||||||
|
<string name="episode_sync_settings_des">Автоматично синхронизирайте прогреса на текущия си епизод</string>
|
||||||
|
|
||||||
|
<string name="restore_settings">Възстановете данните от архив</string>
|
||||||
|
|
||||||
|
<string name="backup_settings">Архивиране на данни</string>
|
||||||
|
<string name="restore_success">Зареден архивен файл</string>
|
||||||
|
<string formatted="true" name="restore_failed_format">Неуспешно възстановяване на данни от файл %s</string>
|
||||||
|
<string name="backup_success">Успешно съхранени данни</string>
|
||||||
|
<string name="backup_failed">Липсват разрешения за съхранение, моля, опитайте отново</string>
|
||||||
|
<string name="backup_failed_error_format">Грешка при архивирането на %s</string>
|
||||||
|
|
||||||
|
<string name="search">Търсене</string>
|
||||||
|
<string name="category_account">Акаунти</string>
|
||||||
|
<string name="category_updates">Актуализации и архивиране</string>
|
||||||
|
|
||||||
|
<string name="settings_info">Информация</string>
|
||||||
|
<string name="advanced_search">Подробно търсене</string>
|
||||||
|
<string name="advanced_search_des">Дава ви резултатите от търсенето, разделени по доставчик</string>
|
||||||
|
<string name="bug_report_settings_off">Изпраща данни само за сривове</string>
|
||||||
|
<string name="bug_report_settings_on">Не изпраща данни</string>
|
||||||
|
<string name="show_fillers_settings">Показване заместващ епизод за аниме</string>
|
||||||
|
<string name="show_trailers_settings">Показване на трейлъри</string>
|
||||||
|
<string name="kitsu_settings">Покажете плакати от kitsu</string>
|
||||||
|
<string name="pref_filter_search_quality">Скриване на избраното видео качество в резултатите от търсенето</string>
|
||||||
|
|
||||||
|
<string name="automatic_plugin_updates">Автоматични актуализации на плъгини</string>
|
||||||
|
<string name="updates_settings">Показвай актуализации на приложението</string>
|
||||||
|
<string name="updates_settings_des">Автоматично търси нови актуализации при стартиране</string>
|
||||||
|
<string name="uprereleases_settings">Актуализация до експериментални версии</string>
|
||||||
|
<string name="uprereleases_settings_des">Търсете експериментални актуализации вместо само пълни версии</string>
|
||||||
|
<string name="github">Github</string>
|
||||||
|
<string name="lightnovel">Light novel - приложение от същите разработчици</string>
|
||||||
|
<string name="anim">Приложение за аниме от същите разработчици</string>
|
||||||
|
<string name="discord">Присъединете се към Discord</string>
|
||||||
|
<string name="benene">Дайте банан/и разработчиците</string>
|
||||||
|
<string name="benene_des">Даден/и банан/и</string>
|
||||||
|
|
||||||
|
<string name="app_language">Език на приложението</string>
|
||||||
|
|
||||||
|
<string name="no_chromecast_support_toast">Този доставчик няма поддръжка за Chromecast</string>
|
||||||
|
<string name="no_links_found_toast">Няма намерени връзки</string>
|
||||||
|
<string name="copy_link_toast">Връзката е копирана в клипборда</string>
|
||||||
|
<string name="play_episode_toast">Пусни епизода</string>
|
||||||
|
<string name="subs_default_reset_toast">Възстановяване на стойността по подразбиране</string>
|
||||||
|
<string name="acra_report_toast">За съжаление приложението се срина. Анонимен доклад за грешка ще бъде изпратен до
|
||||||
|
разработчиците</string>
|
||||||
|
|
||||||
|
<string name="season">Сезон</string>
|
||||||
|
<string name="season_format">%s %d%s</string>
|
||||||
|
<string name="no_season">Без сезон</string>
|
||||||
|
<string name="episode">Епизод</string>
|
||||||
|
<string name="episodes">Епизоди</string>
|
||||||
|
<string name="episodes_range">%d-%d</string>
|
||||||
|
<string formatted="true" name="episode_format">%d %s</string>
|
||||||
|
<string name="season_short">С</string>
|
||||||
|
<string name="episode_short">Е</string>
|
||||||
|
<string name="no_episodes_found">Няма намерени епизоди</string>
|
||||||
|
|
||||||
|
<string name="delete_file">Изтрий файла</string>
|
||||||
|
<string name="delete">Изтрий</string>
|
||||||
|
<string name="pause">Пауза</string>
|
||||||
|
<string name="resume">Продължи</string>
|
||||||
|
<string name="go_back_30">-30</string>
|
||||||
|
<string name="go_forward_30">30</string>
|
||||||
|
<string formatted="true" name="delete_message">Това ще изтрие за постоянно %s\nСигурни ли сте?</string>
|
||||||
|
<string formatted="true" name="resume_time_left">%dm\nостава</string>
|
||||||
|
|
||||||
|
|
||||||
|
<string name="status_ongoing">Продължава</string>
|
||||||
|
<string name="status_completed">Завършен</string>
|
||||||
|
<string name="status">Статус</string>
|
||||||
|
<string name="year">Година</string>
|
||||||
|
<string name="rating">Рейтинг</string>
|
||||||
|
<string name="duration">Продължителност</string>
|
||||||
|
<string name="site">Уебсайт</string>
|
||||||
|
<string name="synopsis">Синопсис</string>
|
||||||
|
|
||||||
|
<string name="queued">На опашката</string>
|
||||||
|
<string name="no_subtitles">Без субтитри</string>
|
||||||
|
<string name="default_subtitles">По подразбиране</string>
|
||||||
|
|
||||||
|
<string name="free_storage">Безплатно</string>
|
||||||
|
<string name="used_storage">Използвано</string>
|
||||||
|
<string name="app_storage">Приложения</string>
|
||||||
|
|
||||||
|
|
||||||
|
<string name="movies">Филми</string>
|
||||||
|
<string name="tv_series">Телевизионен сериал</string>
|
||||||
|
<string name="cartoons">Анимационни филми</string>
|
||||||
|
<string name="anime">Аниме</string>
|
||||||
|
<string name="torrent">Торенти</string>
|
||||||
|
<string name="documentaries">Документални</string>
|
||||||
|
<string name="ova">OVA</string>
|
||||||
|
<string name="asian_drama">Азиатски драми</string>
|
||||||
|
<string name="livestreams">На живо</string>
|
||||||
|
<string name="nsfw">Разпоретини</string>
|
||||||
|
<string name="others">други</string>
|
||||||
|
|
||||||
|
|
||||||
|
<string name="movies_singular">Филм</string>
|
||||||
|
<string name="tv_series_singular">Серия</string>
|
||||||
|
<string name="cartoons_singular">Анимационен филм</string>
|
||||||
|
<string name="anime_singular">@string/anime</string>
|
||||||
|
<string name="ova_singular">@string/ova</string>
|
||||||
|
<string name="torrent_singular">Торент</string>
|
||||||
|
<string name="documentaries_singular">Документален филм</string>
|
||||||
|
<string name="asian_drama_singular">Азиатска драма</string>
|
||||||
|
<string name="live_singular">Поток на живо</string>
|
||||||
|
<string name="nsfw_singular">Разпоретинa</string>
|
||||||
|
<string name="other_singular">Видео</string>
|
||||||
|
|
||||||
|
<string name="source_error">Грешка в източника</string>
|
||||||
|
<string name="remote_error">Дистанционна грешка</string>
|
||||||
|
<string name="render_error">Грешка в рендъра</string>
|
||||||
|
<string name="unexpected_error">Неочаквана грешка на плеъра</string>
|
||||||
|
<string name="storage_error">Грешка при изтегляне, проверете разрешенията за съхранение</string>
|
||||||
|
|
||||||
|
<string name="episode_action_chromecast_episode">Епизод за Chromecast</string>
|
||||||
|
<string name="episode_action_chromecast_mirror">Chromecast огледало</string>
|
||||||
|
<string name="episode_action_play_in_app">Пусни в приложението</string>
|
||||||
|
<string name="episode_action_play_in_format">Пусни в %s</string>
|
||||||
|
<string name="episode_action_play_in_browser">Пусни в браузър</string>
|
||||||
|
<string name="episode_action_copy_link">Копирай връзка</string>
|
||||||
|
<string name="episode_action_auto_download">Автоматично изтегляне</string>
|
||||||
|
<string name="episode_action_download_mirror">Изтегляне на огледало</string>
|
||||||
|
<string name="episode_action_reload_links">Презареждане на връзки</string>
|
||||||
|
<string name="episode_action_download_subtitle">Изтегляне на субтитри</string>
|
||||||
|
|
||||||
|
<string name="show_hd">покажи качество</string>
|
||||||
|
<string name="show_dub">Покажи дублаж</string>
|
||||||
|
<string name="show_sub">Покажи субтитри</string>
|
||||||
|
<string name="show_title">Заглавие</string>
|
||||||
|
<string name="poster_ui_settings">Превключване на елементите на потребителския интерфейс на плаката</string>
|
||||||
|
|
||||||
|
<string name="no_update_found">Няма намерена актуализация</string>
|
||||||
|
<string name="check_for_update">Проверка за актуализация</string>
|
||||||
|
|
||||||
|
<string name="video_lock">Заключен</string>
|
||||||
|
<string name="video_aspect_ratio_resize">Преоразмеряване</string>
|
||||||
|
<string name="video_source">Източник</string>
|
||||||
|
<string name="video_skip_op">Пропусни</string>
|
||||||
|
|
||||||
|
<string name="dont_show_again">Не показвай отново</string>
|
||||||
|
<string name="skip_update">Пропуснете тази актуализация</string>
|
||||||
|
<string name="update">Актуализация</string>
|
||||||
|
<string name="watch_quality_pref">Предпочитано качество за гледане</string>
|
||||||
|
<string name="limit_title">Максимален брой знаци за заглавие във видеоплейъра</string>
|
||||||
|
<string name="limit_title_rez">Разделителна способност на видео плейъра</string>
|
||||||
|
|
||||||
|
<string name="video_buffer_size_settings">Размер на видео буфера</string>
|
||||||
|
<string name="video_buffer_length_settings">Дължина на видео буфера</string>
|
||||||
|
<string name="video_buffer_disk_settings">Видео кеш на диск</string>
|
||||||
|
<string name="video_buffer_clear_settings">Изчистете кеша за видео и изображения</string>
|
||||||
|
|
||||||
|
<string name="video_ram_description">Ще предизвика случайни сривове, ако е зададено твърде високо. Не променяйте, ако имате малко количество RAM, като Android TV или стар телефон</string>
|
||||||
|
<string name="video_disk_description">Може да причини проблеми на системи с малко място за съхранение, като устройства с Android TV, ако го зададете твърде високо</string>
|
||||||
|
|
||||||
|
<string name="dns_pref">DNS през HTTPS</string>
|
||||||
|
<string name="dns_pref_summary">Полезно за заобикаляне на блокирания от ISP доставчик</string>
|
||||||
|
|
||||||
|
<string name="add_site_pref">Сайт за клониране</string>
|
||||||
|
<string name="remove_site_pref">Премахване на сайта</string>
|
||||||
|
<string name="add_site_summary">Добавяне на клонинг на съществуващ сайт с различен URL адрес</string>
|
||||||
|
|
||||||
|
<string name="download_path_pref">Път за изтегляне</string>
|
||||||
|
|
||||||
|
<string name="nginx_url_pref">URL адрес на сървъра на Nginx</string>
|
||||||
|
|
||||||
|
<string name="display_subbed_dubbed_settings">Показване на дублирани/субирани аниме</string>
|
||||||
|
|
||||||
|
<string name="resize_fit">Побиране в екрана</string>
|
||||||
|
<string name="resize_fill">Разтягане</string>
|
||||||
|
<string name="resize_zoom">Мащабиране</string>
|
||||||
|
|
||||||
|
<string name="legal_notice">Опровержение</string>
|
||||||
|
|
||||||
|
<string name="category_general">Общ</string>
|
||||||
|
<string name="random_button_settings">Случаен бутон</string>
|
||||||
|
<string name="random_button_settings_desc">Показване на произволен бутон на началната страница</string>
|
||||||
|
<string name="provider_lang_settings">Езици на доставчика</string>
|
||||||
|
<string name="app_layout">Оформление на приложението</string>
|
||||||
|
<string name="preferred_media_settings">Предпочитана медия</string>
|
||||||
|
<string name="enable_nsfw_on_providers">Активирайте разпоретините на поддържани доставчици</string>
|
||||||
|
<string name="subtitles_encoding">Кодиране на субтитрите</string>
|
||||||
|
<string name="category_providers">Доставчици</string>
|
||||||
|
<string name="category_ui">Оформление</string>
|
||||||
|
|
||||||
|
<string name="automatic">Автоматично</string>
|
||||||
|
<string name="tv_layout">ТВ оформление</string>
|
||||||
|
<string name="phone_layout">Оформление като телефон</string>
|
||||||
|
<string name="emulator_layout">Оформление като емулатор</string>
|
||||||
|
|
||||||
|
<string name="primary_color_settings">Основен цвят</string>
|
||||||
|
<string name="app_theme_settings">Тема на приложението</string>
|
||||||
|
<string name="bottom_title_settings">Местоположение на заглавието на плаката</string>
|
||||||
|
<string name="bottom_title_settings_des">Поставете заглавието под плаката</string>
|
||||||
|
|
||||||
|
<string name="example_password">парола123</string>
|
||||||
|
<string name="example_username">MyCoolUsername</string>
|
||||||
|
<string name="example_email">hello@world.com</string>
|
||||||
|
<string name="example_ip">127.0.0.1</string>
|
||||||
|
<string name="example_site_name">MyCoolSite</string>
|
||||||
|
<string name="example_site_url">example.com</string>
|
||||||
|
<string name="example_lang_name">Езиков код (en)</string>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
-->
|
||||||
|
<string name="login_format" formatted="true">%s %s</string>
|
||||||
|
<string name="account">Акаунт</string>
|
||||||
|
<string name="logout">Излизане</string>
|
||||||
|
<string name="login">Влизане</string>
|
||||||
|
<string name="switch_account">Превключване на акаунт</string>
|
||||||
|
<string name="add_account">Добавяне на акаунт</string>
|
||||||
|
<string name="create_account">Създай акаунт</string>
|
||||||
|
<string name="add_sync">Добавете проследяване</string>
|
||||||
|
<string formatted="true" name="added_sync_format">Добавен %s</string>
|
||||||
|
<string name="upload_sync">Синхронизиране</string>
|
||||||
|
<string name="sync_score">Оценен</string>
|
||||||
|
<string name="sync_score_format" formatted="true">%d / 10</string>
|
||||||
|
<string name="sync_total_episodes_none">/??</string>
|
||||||
|
<string name="sync_total_episodes_some" formatted="true">/%d</string>
|
||||||
|
<string formatted="true" name="authenticated_user">Удостоверен %s</string>
|
||||||
|
<string formatted="true" name="authenticated_user_fail">Неуспешно удостоверяване на %s</string>
|
||||||
|
|
||||||
|
|
||||||
|
<string name="none">Нито един</string>
|
||||||
|
<string name="normal">Нормално</string>
|
||||||
|
<string name="all">Всичко</string>
|
||||||
|
<string name="max">Макс</string>
|
||||||
|
<string name="min">Мин</string>
|
||||||
|
<string name="subtitles_outline">Контур</string>
|
||||||
|
<string name="subtitles_depressed">Удвоени</string>
|
||||||
|
<string name="subtitles_shadow">Сянка</string>
|
||||||
|
<string name="subtitles_raised">Повдигнати</string>
|
||||||
|
<string name="subtitle_offset">Синхронизиране на суб</string>
|
||||||
|
<string name="subtitle_offset_hint">1000ms</string>
|
||||||
|
<string name="subtitle_offset_title">Забавяне на субтитрите</string>
|
||||||
|
<string name="subtitle_offset_extra_hint_later_format">Използвайте това, ако субтитрите се показват %dms твърде рано</string>
|
||||||
|
<string name="subtitle_offset_extra_hint_before_format">Използвайте това, ако субтитрите се показват %dms твърде късно</string>
|
||||||
|
<string name="subtitle_offset_extra_hint_none_format">Без забавяне на субтитрите</string>
|
||||||
|
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Example text (pangram) can optionally be translated; if you do, include all the letters in the alphabet,
|
||||||
|
see:
|
||||||
|
https://en.wikipedia.org/w/index.php?title=Pangram&oldid=225849300
|
||||||
|
https://en.wikipedia.org/wiki/The_quick_brown_fox_jumps_over_the_lazy_dog
|
||||||
|
-->
|
||||||
|
<string name="subtitles_example_text">Бързата кафява лисица прескача мързеливото куче</string>
|
||||||
|
|
||||||
|
<string name="recommended">Препоръчва се</string>
|
||||||
|
<string formatted="true" name="player_loaded_subtitles">Заредено %s</string>
|
||||||
|
<string name="player_load_subtitles">Зареди от файл</string>
|
||||||
|
<string name="player_load_subtitles_online">Зареди от Интернет</string>
|
||||||
|
<string name="downloaded_file">Изтеглен файл</string>
|
||||||
|
<string name="actor_main">Главен</string>
|
||||||
|
<string name="actor_supporting">Поддържащ</string>
|
||||||
|
<string name="actor_background">Заден план</string>
|
||||||
|
|
||||||
|
<string name="home_source">Източник</string>
|
||||||
|
<string name="home_random">Случаен</string>
|
||||||
|
|
||||||
|
<string name="coming_soon">Очаквайте скоро…</string>
|
||||||
|
|
||||||
|
<string name="quality_cam">Cam</string>
|
||||||
|
<string name="quality_cam_rip">Cam</string>
|
||||||
|
<string name="quality_cam_hd">Cam</string>
|
||||||
|
<string name="quality_hq">HQ</string>
|
||||||
|
<string name="quality_hd">HD</string>
|
||||||
|
<string name="quality_ts">TS</string>
|
||||||
|
<string name="quality_tc">TC</string>
|
||||||
|
<string name="quality_blueray">BlueRay</string>
|
||||||
|
<string name="quality_workprint">WP</string>
|
||||||
|
<string name="quality_dvd">DVD</string>
|
||||||
|
<string name="quality_4k">4K</string>
|
||||||
|
<string name="quality_sd">SD</string>
|
||||||
|
<string name="quality_uhd">UHD</string>
|
||||||
|
<string name="quality_hdr">HDR</string>
|
||||||
|
<string name="quality_sdr">SDR</string>
|
||||||
|
<string name="quality_webrip">Web</string>
|
||||||
|
|
||||||
|
<string name="poster_image">Снимка на плакат</string>
|
||||||
|
<string name="category_player">Плеър</string>
|
||||||
|
<string name="resolution_and_title">Резолюция и заглавие</string>
|
||||||
|
<string name="title">Заглавие</string>
|
||||||
|
<string name="resolution">Резолюция</string>
|
||||||
|
<string name="error_invalid_id">Невалиден идентификатор</string>
|
||||||
|
<string name="error_invalid_data">Невалидни данни</string>
|
||||||
|
<string name="error_invalid_url">Невалиден адрес</string>
|
||||||
|
<string name="error">Грешка</string>
|
||||||
|
<string name="subtitles_remove_captions">Премахнете затворените надписи от субтитрите</string>
|
||||||
|
<string name="subtitles_remove_bloat">Премахнете рекламирането в субтитрите</string>
|
||||||
|
<string name="subtitles_filter_lang">Филтриране по предпочитан медиен език</string>
|
||||||
|
<string name="extras">Екстри</string>
|
||||||
|
<string name="trailer">Трейлър</string>
|
||||||
|
<string name="network_adress_example">Връзка към потока</string>
|
||||||
|
<string name="referer">Обратно към</string>
|
||||||
|
<string name="next">Следващ</string>
|
||||||
|
<string name="provider_languages_tip">Гледайте видеоклипове на тези езици</string>
|
||||||
|
<string name="previous">Предишен</string>
|
||||||
|
<string name="skip_setup">Пропуснете настройката</string>
|
||||||
|
<string name="app_layout_subtext">Променете външния вид на приложението, за да отговаря на вашето устройство</string>
|
||||||
|
<string name="crash_reporting_title">Докладване за сривове</string>
|
||||||
|
<string name="preferred_media_subtext">Какво искате да видите</string>
|
||||||
|
<string name="setup_done">Край</string>
|
||||||
|
<string name="extensions">Разширения</string>
|
||||||
|
<string name="add_repository">Добавяне на хранилище</string>
|
||||||
|
<string name="repository_name_hint">Име на хранилище</string>
|
||||||
|
<string name="repository_url_hint">URL адрес на хранилището</string>
|
||||||
|
<string name="plugin_loaded">Приставката е заредена</string>
|
||||||
|
<string name="plugin_deleted">Приставката е изтрита</string>
|
||||||
|
<string name="plugin_load_fail" formatted="true">Неуспешно зареждане %s</string>
|
||||||
|
<string name="is_adult">18+</string>
|
||||||
|
<string name="batch_download_start_format" formatted="true">Започна да изтегля %d %s</string>
|
||||||
|
<string name="batch_download_finish_format" formatted="true">Изтеглено %d %s успешно</string>
|
||||||
|
<string name="batch_download_nothing_to_download_format" formatted="true">Всички %s вече са изтеглени</string>
|
||||||
|
<string name="batch_download">Пакетно изтегляне</string>
|
||||||
|
<string name="plugin_singular">Плъгин</string>
|
||||||
|
<string name="plugin">Плъгини</string>
|
||||||
|
<string name="delete_repository_plugins">Това също ще изтрие всички хранилища за плъгини</string>
|
||||||
|
<string name="delete_repository">Изтриване на хранилище</string>
|
||||||
|
<string name="setup_extensions_subtext">Изтеглете списъка със сайтове, които искате да използвате</string>
|
||||||
|
<string formatted="true" name="plugins_downloaded">Изтеглено: %d</string>
|
||||||
|
<string formatted="true" name="plugins_disabled">Деактивирано: %d</string>
|
||||||
|
<string formatted="true" name="plugins_not_downloaded">Не е изтеглено: %d</string>
|
||||||
|
<string formatted="true" name="plugins_updated">Актуализирани %d плъгини</string>
|
||||||
|
<string name="blank_repo_message">CloudStream няма инсталирани сайтове по подразбиране. Трябва да инсталирате сайтовете от хранилища.\n\nПоради безмозъчно премахване на DMCA от Sky Uk Limited 🤮 не можем да свържем сайтовете на хранилищата в приложението.\n\nПрисъединете се към нашия дискорд за връзки или търсете онлайн.</string>
|
||||||
|
<string name="view_public_repositories_button">Вижте хранилищата на общността</string>
|
||||||
|
<string name="view_public_repositories_button_short">Публичен списък</string>
|
||||||
|
<string name="uppercase_all_subtitles">Всички субтитри с главни букви</string>
|
||||||
|
|
||||||
|
<string name="download_all_plugins_from_repo">Изтегляне на всички добавки от това хранилище?</string>
|
||||||
|
<string name="single_plugin_disabled" formatted="true">%s (Disabled)</string>
|
||||||
|
<string name="tracks">Потоци</string>
|
||||||
|
<string name="audio_tracks">Аудио потоци</string>
|
||||||
|
<string name="video_tracks">Видео потоци</string>
|
||||||
|
<string name="apply_on_restart">Приложете при рестартиране</string>
|
||||||
|
|
||||||
|
<string name="safe_mode_title">Безопасният режим е активиран</string>
|
||||||
|
<string name="safe_mode_description">Възникна непоправим срив и ние автоматично деактивирахме всички разширения, така че можете да намерите и премахнете разширението, което причинява проблеми.</string>
|
||||||
|
<string name="safe_mode_crash_info">Вижте информация за срива</string>
|
||||||
|
|
||||||
|
<string formatted="true" name="extension_rating">Оценка: %s</string>
|
||||||
|
<string name="extension_description">Описание</string>
|
||||||
|
<string name="extension_version">Версия</string>
|
||||||
|
<string name="extension_status">Статус</string>
|
||||||
|
<string name="extension_size">Размер</string>
|
||||||
|
<string name="extension_authors">Автори</string>
|
||||||
|
<string name="extension_types">Поддържани</string>
|
||||||
|
<string name="extension_language">език</string>
|
||||||
|
<string name="extension_install_first">Първо инсталирайте разширението</string>
|
||||||
|
|
||||||
|
<string name="hls_playlist">HLS плейлист</string>
|
||||||
|
|
||||||
|
<string name="player_pref">Предпочитан видео плеър</string>
|
||||||
|
<string name="player_settings_play_in_app">Вътрешен плеър</string>
|
||||||
|
<string name="player_settings_play_in_vlc">VLC</string>
|
||||||
|
<string name="player_settings_play_in_mpv">MPV</string>
|
||||||
|
<string name="player_settings_play_in_web">Уеб видео предаване</string>
|
||||||
|
<string name="player_settings_play_in_browser">Браузър</string>
|
||||||
|
<string name="app_not_found_error">Приложението не е намерено</string>
|
||||||
|
</resources>
|
27
build.gradle
27
build.gradle
|
@ -1,27 +0,0 @@
|
||||||
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
|
||||||
buildscript {
|
|
||||||
ext.kotlin_version = "1.7.10"
|
|
||||||
repositories {
|
|
||||||
google()
|
|
||||||
jcenter()
|
|
||||||
}
|
|
||||||
dependencies {
|
|
||||||
classpath 'com.android.tools.build:gradle:7.2.1'
|
|
||||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
|
||||||
classpath "org.jetbrains.dokka:dokka-gradle-plugin:1.5.0"
|
|
||||||
|
|
||||||
// NOTE: Do not place your application dependencies here; they belong
|
|
||||||
// in the individual module build.gradle files
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
allprojects {
|
|
||||||
repositories {
|
|
||||||
google()
|
|
||||||
jcenter()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
task clean(type: Delete) {
|
|
||||||
delete rootProject.buildDir
|
|
||||||
}
|
|
26
build.gradle.kts
Normal file
26
build.gradle.kts
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||||
|
buildscript {
|
||||||
|
repositories {
|
||||||
|
google()
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
dependencies {
|
||||||
|
classpath("com.android.tools.build:gradle:7.3.1")
|
||||||
|
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.20")
|
||||||
|
classpath("org.jetbrains.dokka:dokka-gradle-plugin:1.5.0")
|
||||||
|
|
||||||
|
// NOTE: Do not place your application dependencies here; they belong
|
||||||
|
// in the individual module build.gradle.kts files
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
allprojects {
|
||||||
|
repositories {
|
||||||
|
google()
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.register("clean", Delete::class) {
|
||||||
|
delete(rootProject.buildDir)
|
||||||
|
}
|
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,6 +1,6 @@
|
||||||
#Fri Apr 30 17:11:15 CEST 2021
|
#Fri Apr 30 17:11:15 CEST 2021
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
include ':app'
|
|
||||||
rootProject.name = "CloudStream"
|
|
3
settings.gradle.kts
Normal file
3
settings.gradle.kts
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
rootProject.name = "CloudStream"
|
||||||
|
|
||||||
|
include(":app")
|
Loading…
Reference in a new issue