()
56 |
57 | suspend fun requireUpdate() {
58 | var id = R.string.version_update
59 | var log = String()
60 | var url = ArkMaid.URL_RELEASE_LATEST
61 | runCatching {
62 | val entry = requestOnlineEntry()
63 | if (latestApp(entry)) {
64 | id = if (updateData(entry)) R.string.data_updated else R.string.version_latest
65 | } else {
66 | val json = JSONObject(ArkIO.fromWeb(ArkMaid.URL_RELEASE_LATEST_API))
67 | log = getChangelog(json)
68 | url = getDownloadUrl(json)
69 | }
70 | ArkPref.setCheckLastTime(true)
71 | }.onFailure {
72 | id = R.string.version_checking_failed
73 | log = it.toString()
74 | }
75 | updateResult.postValue(JSONArray().put(id).put(log).put(url))
76 | }
77 |
78 | @Throws(IOException::class, JSONException::class)
79 | suspend fun updateData(onlineEntry: JSONArray): Boolean {
80 | val entry = getOfflineData(DATA_ENTRY)
81 | var updated = false
82 | for (i in 0 until onlineEntry.length()) {
83 | val data = onlineEntry.getJSONObject(i)
84 | if (data.getString(KEY_NAME) == DATA_ENTRY) {
85 | if (!compatible(data)) return updated
86 | if (updatable(data, entry)) updated = true
87 | } else if (compatible(data) && (updatable(data, entry))) {
88 | updateOfflineData(data.getString(KEY_NAME), onlineEntry)
89 | updated = true
90 | }
91 | }
92 | if (updated) updateOfflineData(DATA_ENTRY, onlineEntry)
93 | return updated
94 | }
95 |
96 | @Throws(IOException::class, JSONException::class)
97 | fun resetData() = ArkIO.clearDirectory(app.filesDir.path)
98 |
99 | @Throws(IOException::class)
100 | private suspend fun updateOfflineData(data: String, onlineEntry: JSONArray) {
101 | ArkIO.writeText(app.filesDir.path + File.separatorChar + data, when (data) {
102 | DATA_ENTRY -> onlineEntry.toString()
103 | else -> ArkIO.fromWeb(URL_WEB_DATA + data)
104 | })
105 | }
106 |
107 | val hasGestureData get() = ArkIO.exists(app.filesDir.path + File.separatorChar + DATA_GESTURE)
108 |
109 | @Throws(IOException::class)
110 | fun resetGestureData() = ArkIO.delete(app.filesDir.path + File.separatorChar + DATA_GESTURE)
111 |
112 | fun setGestureData(string: String? = null): Boolean {
113 | string ?: return false
114 | runCatching {
115 | val array = JSONArray(string)
116 | if (array.length() == 0) return false
117 | for (i in 0 until array.length()) {
118 | val obj = array.getJSONObject(i)
119 | if (obj.optString(KEY_NAME) != KEY_TAP || obj.optInt(KEY_X) <= 0 || obj.optInt(KEY_Y) <= 0)
120 | return false
121 | }
122 | ArkIO.writeText(app.filesDir.path + File.separatorChar + DATA_GESTURE, string)
123 | return true
124 | }
125 | return false
126 | }
127 |
128 | @Throws(IOException::class, JSONException::class)
129 | private fun getOfflineData(data: String): JSONArray {
130 | val path = app.filesDir.path + File.separatorChar + data
131 | return JSONArray(if (ArkIO.exists(path)) ArkIO.fromFile(path) else getAssetsData(data))
132 | }
133 |
134 | private fun getAssetsData(data: String) = ArkIO.fromAssets(TYPE_DATA + File.separatorChar + data)
135 |
136 | @Throws(IOException::class, JSONException::class)
137 | fun getMaterialData(): JSONArray = getOfflineData(DATA_MATERIAL)
138 |
139 | @Throws(IOException::class, JSONException::class)
140 | fun getRecruitData(): JSONArray = getOfflineData(DATA_RECRUIT)
141 |
142 | @Throws(IOException::class, JSONException::class)
143 | fun getResolutionData(): JSONArray = getOfflineData(DATA_RESOLUTION)
144 |
145 | @Throws(IOException::class, JSONException::class)
146 | fun getSloganData(): JSONArray = getOfflineData(DATA_SLOGAN)
147 |
148 | @Throws(IOException::class, JSONException::class)
149 | fun getGestureData(): JSONArray = getOfflineData(DATA_GESTURE)
150 |
151 | @Throws(IOException::class, JSONException::class)
152 | private suspend fun requestOnlineEntry(): JSONArray = JSONArray(ArkIO.fromWeb(URL_WEB_DATA + DATA_ENTRY))
153 |
154 | @Throws(JSONException::class)
155 | private fun updatable(data: JSONObject, entry: JSONArray): Boolean {
156 | for (i in 0 until entry.length()) if (entry.getJSONObject(i).getString(KEY_NAME) == data.getString(KEY_NAME)) return data.getInt(KEY_VERSION) > entry.getJSONObject(i).getInt(KEY_VERSION)
157 | return false
158 | }
159 |
160 | @Throws(JSONException::class)
161 | private fun compatible(data: JSONObject): Boolean = BuildConfig.VERSION_CODE >= data.getInt(KEY_COMPAT)
162 |
163 | @Throws(JSONException::class)
164 | private fun latestApp(onlineEntry: JSONArray): Boolean = BuildConfig.VERSION_CODE >= onlineEntry.getJSONObject(0).getInt(KEY_VERSION)
165 |
166 | @Throws(JSONException::class)
167 | private fun getChangelog(json: JSONObject): String = buildString {
168 | appendLine(json.getString("name"))
169 | append(json.getString("body"))
170 | }
171 |
172 | @Throws(JSONException::class)
173 | private fun getDownloadUrl(json: JSONObject): String = json.getJSONArray("assets").getJSONObject(0).getString("browser_download_url")
174 | }
175 |
--------------------------------------------------------------------------------
/app/src/main/kotlin/com/icebem/akt/util/ArkIO.kt:
--------------------------------------------------------------------------------
1 | package com.icebem.akt.util
2 |
3 | import android.os.Build
4 | import com.icebem.akt.ArkApp.Companion.app
5 | import kotlinx.coroutines.Dispatchers
6 | import kotlinx.coroutines.withContext
7 | import java.io.*
8 | import java.net.HttpURLConnection
9 | import java.net.URL
10 | import java.nio.file.Files
11 | import java.nio.file.Paths
12 | import java.nio.file.StandardCopyOption
13 | import kotlin.io.path.*
14 |
15 | object ArkIO {
16 | @Throws(IOException::class)
17 | private fun stream2String(stream: InputStream): String = stream.bufferedReader().use { it.readText() }
18 |
19 | @Throws(IOException::class)
20 | fun fromAssets(path: String): String = stream2String(app.assets.open(path))
21 |
22 | /**
23 | * This method is not recommended on huge files. It has an internal limitation of 2 GB file size.
24 | */
25 | @Throws(IOException::class)
26 | fun fromFile(path: String): String = File(path).readText()
27 |
28 | @Throws(IOException::class)
29 | suspend fun fromWeb(url: String): String = withContext(Dispatchers.IO) {
30 | (URL(url).openConnection() as HttpURLConnection).run {
31 | if (url.startsWith("https://gitee.com")) addRequestProperty("User-Agent", "Mozilla/5.0")
32 | stream2String(inputStream)
33 | }
34 | }
35 |
36 | @Throws(IOException::class)
37 | fun exists(path: String): Boolean = when {
38 | Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -> Files.exists(Paths.get(path))
39 | else -> File(path).exists()
40 | }
41 |
42 | @Throws(IOException::class)
43 | private fun createDirectories(dir: String): Boolean = when {
44 | Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -> Files.createDirectories(Paths.get(dir)).exists()
45 | else -> File(dir).mkdirs()
46 | }
47 |
48 | @Throws(IOException::class)
49 | fun clearDirectory(path: String) {
50 | when {
51 | Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -> Files.list(Paths.get(path)).forEach {
52 | if (it.isDirectory()) clearDirectory(it.pathString)
53 | it.deleteExisting()
54 | }
55 | else -> File(path).listFiles()?.forEach {
56 | if (it.isDirectory) clearDirectory(it.path)
57 | it.delete()
58 | }
59 | }
60 | }
61 |
62 | @Throws(IOException::class)
63 | fun delete(path: String): Boolean = when {
64 | Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -> Files.deleteIfExists(Paths.get(path))
65 | else -> File(path).delete()
66 | }
67 |
68 | @Throws(IOException::class)
69 | fun copy(source: String, target: String): File {
70 | val file = File(target)
71 | file.parent?.let { createDirectories(it) }
72 | when {
73 | Build.VERSION.SDK_INT >= Build.VERSION_CODES.O -> Files.copy(Paths.get(source), Paths.get(target), StandardCopyOption.REPLACE_EXISTING)
74 | else -> FileInputStream(source).channel.use {
75 | FileOutputStream(target).channel.use { out ->
76 | out.transferFrom(it, 0, it.size())
77 | }
78 | }
79 | }
80 | return file
81 | }
82 |
83 | @Throws(IOException::class)
84 | fun writeText(path: String, text: String) {
85 | val file = File(path)
86 | file.parent?.let { createDirectories(it) }
87 | file.writeText(text)
88 | }
89 | }
--------------------------------------------------------------------------------
/app/src/main/kotlin/com/icebem/akt/util/Random.kt:
--------------------------------------------------------------------------------
1 | package com.icebem.akt.util
2 |
3 | object Random {
4 | const val DELTA_POINT = 5
5 | private const val DELTA_TIME = 150
6 |
7 | private fun random(i: Int, delta: Int): Int = if (i > delta) i + (Math.random() * delta * 2).toInt() - delta else i
8 |
9 | fun randomIndex(length: Int): Int = (Math.random() * length).toInt()
10 |
11 | fun randomPoint(point: Int): Int = random(point, DELTA_POINT)
12 |
13 | fun randomTime(time: Int): Long = random(time, DELTA_TIME).toLong()
14 | }
--------------------------------------------------------------------------------
/app/src/main/kotlin/com/icebem/akt/util/Resolution.kt:
--------------------------------------------------------------------------------
1 | package com.icebem.akt.util
2 |
3 | import android.os.Build
4 | import android.util.DisplayMetrics
5 | import android.view.WindowManager
6 | import androidx.core.content.ContextCompat
7 | import com.icebem.akt.ArkApp.Companion.app
8 |
9 | object Resolution {
10 | val physicalResolution: IntArray
11 | get() = ContextCompat.getSystemService(app, WindowManager::class.java)!!.run {
12 | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) currentWindowMetrics.bounds.run {
13 | intArrayOf(width(), height())
14 | } else DisplayMetrics().also { defaultDisplay.getRealMetrics(it) }.run {
15 | intArrayOf(widthPixels, heightPixels)
16 | }
17 | }.sortedArrayDescending()
18 | val physicalHeight: Int get() = physicalResolution[1]
19 | }
--------------------------------------------------------------------------------
/app/src/main/res/animator/anim_core_alpha.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/animator/anim_core_scale_x.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/animator/anim_core_scale_y.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/animator/anim_default.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/src/main/res/animator/anim_error_scale.xml:
--------------------------------------------------------------------------------
1 |
2 |
11 |
20 |
--------------------------------------------------------------------------------
/app/src/main/res/color/color_checkbox_text.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_checkbox.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_checkbox_star_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_checkbox_star_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_checkbox_star_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_checkbox_star_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_checkbox_star_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_checkbox_star_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_floating.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_oval.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_overlay.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_tag.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_tag_star_1.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_tag_star_2.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_tag_star_3.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_tag_star_4.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_tag_star_5.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_tag_star_6.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_tag_unchecked.xml:
--------------------------------------------------------------------------------
1 |
2 | -
3 |
4 |
5 |
6 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bg_toast.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_add.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_akt.xml:
--------------------------------------------------------------------------------
1 |
7 |
12 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_collapse.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_counter.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_error.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_exit.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_headhunt_toggle.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_info.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_language.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_launch.xml:
--------------------------------------------------------------------------------
1 |
8 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_launcher_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_launcher_foreground.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_launcher_monochrome.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_layers.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_lightbulb.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_menu.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_night.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_place.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_recruit.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_remove.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_settings.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_sort.xml:
--------------------------------------------------------------------------------
1 |
8 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_state_error.xml:
--------------------------------------------------------------------------------
1 |
6 |
10 |
15 |
16 |
20 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_state_error_anim.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_state_ready.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_state_ready_anim.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_state_running.xml:
--------------------------------------------------------------------------------
1 |
6 |
10 |
14 |
15 |
21 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_state_running_anim.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
9 |
12 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_storage.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_timer.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_update.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ripple_tag.xml:
--------------------------------------------------------------------------------
1 |
3 | -
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
12 |
18 |
19 |
20 |
21 |
22 |
23 |
33 |
34 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/content_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
21 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/dialog_input.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/overlay_counter.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
14 |
15 |
23 |
24 |
31 |
32 |
40 |
41 |
42 |
50 |
51 |
55 |
56 |
65 |
66 |
75 |
76 |
85 |
86 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/overlay_material.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
13 |
14 |
22 |
23 |
30 |
31 |
39 |
40 |
41 |
48 |
49 |
56 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/overlay_recruit.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
13 |
14 |
22 |
23 |
31 |
32 |
41 |
42 |
50 |
51 |
52 |
55 |
56 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/qr_alipay.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/qr_wechat.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/tag_overlay.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/menu_home.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/menu_tools.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/qr_alipay.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap-hdpi/qr_alipay.webp
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/qr_wechat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap-xhdpi/qr_wechat.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30011.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30011.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30012.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30012.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30013.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30013.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30014.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30014.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30021.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30021.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30022.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30022.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30023.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30023.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30024.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30031.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30031.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30032.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30032.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30033.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30033.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30034.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30034.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30041.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30041.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30042.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30042.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30043.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30043.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30044.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30044.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30051.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30051.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30052.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30052.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30053.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30053.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30054.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30054.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30061.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30061.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30062.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30062.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30063.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30063.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30064.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30064.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30073.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30073.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30074.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30074.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30083.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30083.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30084.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30084.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30093.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30093.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30094.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30094.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30103.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30103.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_30104.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_30104.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31013.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31013.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31014.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31014.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31023.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31023.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31024.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31033.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31033.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31034.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31034.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31043.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31043.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31044.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31044.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31053.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31053.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31054.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31054.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31063.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31063.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap/mtl_31064.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/app/src/main/res/mipmap/mtl_31064.png
--------------------------------------------------------------------------------
/app/src/main/res/navigation/mobile_navigation.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
12 |
13 |
18 |
19 |
23 |
24 |
29 |
--------------------------------------------------------------------------------
/app/src/main/res/values-en/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ArkTap
3 | ARGS™
4 | ARGS™ can tap the mission start button automatically.\n\nChoose a mission before start, and don\'t forget to allow Auto Deploy.\n\nUSING ARGS™ MAY LEAD TO ACCOUNT BANS, and we are NOT responsible for this. YOU are choosing to use ARGS™, and if you point the finger at us, we will laugh at you.\n\nThe permissions required by ARGS™ are ONLY used to tap the screen, and it do NOT collect any personal information.\n\nIf you have any questions, please feel free to contact us on GitHub.
5 | ARSS™
6 | Settings
7 | App needs permissions
8 | Resolution not supported
9 | Service loading…
10 | Ready to connect
11 | - Display over other apps\nShow a floating window in game to help
12 | ARSS™ connected
13 | ARSS™ disconnected
14 | Fin
15 | Min
16 | Recruit Guide
17 | Reset
18 | No operators
19 | Possible operators
20 | Support Machine and 3:50 guarantees a 1★ operator
21 | 4★ or higher operators guarantees
22 | 5★ or higher operators guarantees!
23 | Advanced Senior and 9 hour, guarantees a 6★ operator! Congratulations!
24 | ARGS™ Running time
25 | %d min
26 | ∞
27 | Set time for %s
28 | Night mode
29 | Please start ARGS™
30 | ARGS™ start taping
31 | ARGS™ finished
32 | ARGS™ is running, %d min left
33 | Your device (%1$d×%2$d resolution) does not support ARGS™ yet, please contact us on GitHub. \nARSS™ is available without being affected.
34 | About
35 | Donate
36 | You can show your gratitude to the developer by making a donation.
37 | Thanks for your trust, Doctor
38 | Rate this app
39 | Rate the app on the store
40 | Join the conversation
41 | You can follow us on GitHub for updates
42 | Contributing to ArkTap
43 | Submit issues or pull requests on GitHub
44 | Current version
45 | Checking for updates…
46 | Check for updates failed
47 | This is the latest version
48 | New version available
49 | Version type
50 | Version type changed, please reinstall app
51 | Update
52 | Got it
53 | Allow
54 | No thanks
55 | Not now
56 | Error occurred
57 | Coming soon
58 | Auto check
59 | Check for updates according to the schedule
60 | You can check for updates by going to About
61 | Launch game
62 | Launch the game if necessary
63 | Game server
64 | Asc sorted
65 | Sort operators by ★ in ascending order
66 | Show unreleased
67 | Show unreleased operators in current server
68 | Quick nav
69 | Scroll to the result area after choosing 5 tags
70 | Special thanks
71 | Headhunt Counter
72 | Rolls: %1$d\nPossibility of 6★ in the next roll: %2$d%%\nLong press + to x10, - to clear
73 | Reset downloaded data?
74 | Reset successfully
75 | Latest data updated
76 | Material Guide
77 | Double speed
78 | Operate at 2x speed
79 | Data from Penguin Statistics, for reference only
80 | %s > Workshop
81 | %1$s | %2$.1f%% | %3$.1f Sanity
82 | Standard headhunt
83 | Limited headhunt
84 | Translucent sprite
85 | 减少内存占用
86 | 打开无障碍后开始,结束后关闭无障碍
87 | Root is required.
88 | Details
89 | Accessibility was killed, please reinstall app
90 | ARGS™ not found in Accessibility? Click here
91 | Reinstall
92 | Share
93 | Support
94 | Volume down to stop
95 | Customize points
96 | Wrong format
97 | 额外点击坐标
98 | 防止嗑药碎石和结算循环
99 | Penguin Statistics
100 | PRTS Wiki
101 | Alipay
102 | WeChat Pay
103 | PayPal
104 | Contributor
105 | Translator
106 |
107 |
--------------------------------------------------------------------------------
/app/src/main/res/values-in/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ArkTap
3 | ARGS™
4 | ARGS™ dapat menekan tombol Mulai Misi secara otomatis.\n\nPilih Misi sebelum memulai, dan jangan lupa mengaktifkan Auto Deploy.\n\nMenggunakan ARGS™ dapat menyebabkan akun anda diBAN, dan kami TIDAK bertanggung jawab untuk ini. Anda memilih untuk menggunakan ARGS™, dan jika anda menyalahkan kami, kami hanya akan menertawakan anda\n\nIzin Yang Diperlukan Oleh ARGS™ Hanya Digunakan Untuk Menekan layar, dan ini tidak merekam informasi pribadi anda\n\nJika anda punya pertanyaan, silahkan hubungi kami di GitHub.
5 | ARSS™
6 | Pengaturan
7 | Aplikasi ini membutuhkan perizinan
8 | Resolusi perangkatmu tidak didukung
9 | Layanan sedang dimuat…
10 | Siap digunakan
11 | - Tampilkan di aplikasi lain\nBerguna agar aplikasi bisa dijalankan secara floating
12 | Terhubung ke ARSS™
13 | Terputus dari ARSS™
14 | Keluar
15 | Min
16 | Petunjuk untuk Recruitment
17 | Setel ulang
18 | Tidak ada Operator yang cocok
19 | Kemungkinan Operator yang didapat
20 | Atur waktu 3:50 untuk tag Robot dan dapatkan operator ★1
21 | Kemungkinan dapat ★4 atau yang lebih tinggi nih!
22 | Kemungkinan dapat ★5 atau yang lebih tinggi nih!
23 | Set Top Operator dengan waktu 9 Jam dan selamat! anda mendapatkan ★6 Baru!
24 | Waktu berjalan ARGS™
25 | %d min
26 | ∞
27 | Atur waktu untuk %s
28 | Mode malam
29 | Mohon mulai ARGS™
30 | ARGS™ mulai menekan
31 | ARGS™ selesai
32 | ARGS™ sedang berjalan, %d min keluar
33 | Perangkatmu (%1$d×%2$d resolusi) belum mendukung ARGS™, tolong hubungi kami di GitHub. \nARSS™ tersedia tanpa terpengaruh.
34 | Tentang
35 | Donasi
36 | Anda dapat menunjukkan rasa terima kasih ke developer dengan cara donasi loh!
37 | Terima kasih atas donasimu, Doctor
38 | Beri rating aplikasi ini
39 | Beri rating aplikasi ini di Store anda
40 | Bergabung dalam diskusi kami
41 | Kamu bisa periksa di GitHub kami
42 | Berkontribusi ke ArkTap
43 | Masukkan Issues dan Pull Request ke GitHub kami
44 | Versi terinstal
45 | Memeriksa pembaruan…
46 | Memeriksa pembaruan gagal!
47 | Versi yang terinstal adalah versi terbaru
48 | Versi terbaru telah tersedia!
49 | Tipe versi
50 | Tipe versi telah berubah, mohon install ulang aplikasi
51 | Pembaruan
52 | Mengerti
53 | Oke
54 | Tidak, terima kasih
55 | Jangan sekarang
56 | Terjadi ERROR
57 | Coming soon
58 | Pemeriksaan otomatis
59 | Memeriksa pembaruan sesuai dengan jadwal
60 | Anda dapat memeriksa pembaruan di menu "Tentang"
61 | Menjalankan game
62 | Menjalankan game jika perlu
63 | Server Game
64 | Diurutkan menaik
65 | Urutkan operator berdasarkan ★ dalam urutan menaik
66 | Tampilkan yang belum dirilis
67 | Tampilkan operator yang belum dirilis di server saat ini
68 | Navigasi cepat
69 | Gulir ke area hasil setelah memilih 5 tag
70 | Terima kasih khusus
71 | Penghitung Headhunt
72 | Roll: %1$d\nKemungkinan 6 ★ diroll berikutnya: %2$d%%\nTekan lama + untuk x10, - untuk membersihkan
73 | Reset data yang diunduh?
74 | Reset berhasil
75 | Data terbaru diperbarui
76 | Petunjuk Material
77 | Double Speed
78 | Beroperasi dengan Double Speed
79 | Data dari Penguin Statistics, hanya untuk referensi
80 | %s > Workshop
81 | %1$s | %2$.1f%% | %3$.1f Sanity
82 | Standard headhunt
83 | Limited headhunt
84 | Translucent sprite
85 | Mengurangi penggunaan memori
86 | Dimulai ketika membuka Aksesibilitas, dan menghentikan fitur aksesibilitas setelah selesai.
87 | Akses root diperlukan
88 | Detail
89 | ARGS™ tidak dapat dimulai karena akses Aksesibilitas telah di matikan, mohon install ulang aplikasi.
90 | Tidak dapat menemukan ARGS™ di menu aksesibilitas? tekan disini
91 | Install ulang
92 | Bagikan
93 | Support
94 | Tekan Volume bawah untuk menghentikan
95 | Kustomisasi Points
96 | Format Salah
97 | 额外点击坐标
98 | 防止嗑药碎石和结算循环
99 | Penguin Statistics
100 | PRTS Wiki
101 | Alipay
102 | WeChat Pay
103 | PayPal
104 | Penyumbang
105 | Penerjemah
106 |
107 |
--------------------------------------------------------------------------------
/app/src/main/res/values-ja/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ArkTap
3 | ARGS™
4 | ARGS™を使って、ステージの周回を自動化にすることができます。\n\n開始する前にステージを選び、代理指揮にチェックを入れてから始めてください。\n\n本サービスの使用によるユーザーのアカウントが異常と判別されることがあります。これによって発生した如何なる損害に本アプリ及び開発者は責任を負いかねます。\n\nARGS™を使用する際に請求するアクセス権限はあくまでも機能実現のためであり、これを通してユーザーの個人情報収集は一切ございません。\n\nトラブルやコメントがあれば、ぜひレポートをお願いします。
5 | ARSS™
6 | 設定
7 | アクセス権限の請求
8 | デバイスはサポートされていません
9 | 起動中…
10 | 起動完了、始めましょう
11 | - 他のアプリの上に重ねて表示する権限\n操作ボタンに必要です
12 | ARSS™接続込み
13 | ARSS™接続解除
14 | 解除
15 | 最小化
16 | 公開求人シミュレータ
17 | リセット
18 | タグを満たすキャラは存在しません
19 | 獲得可能なキャラ
20 | レア! 短時間の募集で★1のロボットを獲得可能
21 | ★4以上のキャラを獲得可能
22 | レア! ★5のキャラを獲得可能
23 | ~~~㊗激レア!!! ‘上級エリート’タグを選択し、求人時間を9時間にすれば必ず★6のキャラが貰えます㊗~~~
24 | 作動時間
25 | %d分間
26 | 制限なし
27 | 作動時間は%sに設定しました
28 | ダークテーマ
29 | ARGS™をONにしてください
30 | ARGS™開始
31 | ARGS™終了
32 | ARGS™作動中,残り%d分
33 | ARGS™はまだ解像度%1$d×%2$dに対応していません。レポートをしてください。\n公開求人の企画等の機能には影響しません。
34 | ArkTapについて
35 | 寄付について
36 | 寄付をして頂ければ幸いです。
37 | 寄付をしていただきありがとうございます。これからもどうぞ宜しくお願いします。
38 | アプリレビュー
39 | 好評価をお願いします
40 | チャットグループ
41 | 最新情報はGithubで確認できます
42 | プロジェクトページ
43 | GitHubでレポートをする
44 | 現在のバージョン
45 | アップデートをチェック中…
46 | アップデートのチェックが失敗
47 | 既に最新バージョンにアップデート込み
48 | 新しいアップデートを発見
49 | バージョンタイプ
50 | Version type changed, please reinstall app
51 | アップデート
52 | 了解
53 | 許可する
54 | 拒否する
55 | また今度
56 | エラー発生
57 | 乞うご期待
58 | アプリの自動アップデート
59 | 定期的にアップデートチェックをする
60 | ‘ArkTapについて’でのアップデートチェックも可能
61 | ゲームを起動する
62 | 必要時にゲームを自動起動する
63 | サーバー選択
64 | 並び替え
65 | 低レア順に並び替える
66 | 未実装のキャラを加える
67 | 選択したサーバーで未実装キャラを加える
68 | オートスライディング
69 | 5つのタグを選び終えたら下方にスライドする
70 | 特別感謝
71 | ガチャカウンタ
72 | ガチャ回数:%1$d回\n次回★6入手確率:%2$d%%\n+を長押し→十連ガチャ\n−を長押し→リセット
73 | ダウンロードしたアップデートデータをリセットしますか?
74 | アップデートデータをリセットしました
75 | 既に最新のデータにアップデート
76 | 素材周回オススメ
77 | 倍速行動
78 | 2倍速でタップ
79 | データはPenguin Statisticsから。ご参考に。
80 | %s > 加工所
81 | %1$s | %2$.1f%% | %3$.1f理性
82 | 標準ガチャ
83 | 限定ガチャ
84 | 操作ボタンを半透明に
85 | 减少内存占用
86 | 打开无障碍后开始,结束后关闭无障碍
87 | Root is required.
88 | 詳細情報
89 | Accessibility was killed, please reinstall app
90 | ARGS™ not found in Accessibity? Click here
91 | Reinstall
92 | Share
93 | Support
94 | Volume down to stop
95 | Customize points
96 | Wrong format
97 | 额外点击坐标
98 | 防止嗑药碎石和结算循环
99 | Penguin Statistics
100 | PRTS Wiki
101 | Alipay
102 | WeChat Pay
103 | PayPal
104 | 寄稿者
105 | 翻訳
106 |
107 |
--------------------------------------------------------------------------------
/app/src/main/res/values-night/colors.xml:
--------------------------------------------------------------------------------
1 |
2 | @color/color_secondary_night
3 |
--------------------------------------------------------------------------------
/app/src/main/res/values-night/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/values/arrays.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | - 明日方舟
4 | - 明日方舟 - 哔哩哔哩
5 | - 明日方舟 - 龍成網路
6 | - Arknights
7 | - アークナイツ
8 | - 명일방주
9 |
10 |
11 |
12 | - com.hypergryph.arknights
13 | - com.hypergryph.arknights.bilibili
14 | - tw.txwy.and.arknights
15 | - com.YoStarEN.Arknights
16 | - com.YoStarJP.Arknights
17 | - com.YoStarKR.Arknights
18 |
19 |
20 |
21 | - @string/donation_alipay
22 | - @string/donation_wechat
23 | - @string/donation_paypal
24 |
25 |
--------------------------------------------------------------------------------
/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 | #212121
3 | #212121
4 | #FFA000
5 | #FF80AB
6 | #99000000
7 | #E6EEEEEE
8 | #F44336
9 | #8BC34A
10 | #FBC02D
11 | #00B0FF
12 | #8D6E63
13 | #D32F2F
14 | #E65100
15 | #0097A7
16 | #388E3C
17 | #5D4037
18 | #616161
19 |
--------------------------------------------------------------------------------
/app/src/main/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 | 16dp
3 | 12dp
4 | 4dp
5 | 8dp
6 | 4dp
7 | 2dp
8 | 6dp
9 | 40dp
10 | 16dp
11 | 8dp
12 | 280dp
13 | 16dp
14 | 22dp
15 |
--------------------------------------------------------------------------------
/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | 方舟帮帮忙
3 | 戳戳乐™
4 | 打开戳戳乐™后,可在选择的非剿灭作战关卡持续进行代理作战。\n\n使用前请先选择好要代理的关卡,并使用代理指挥作战。如设备为异形屏,还需在游戏设置中将“异形屏UI适配”调至0以避免误触。\n\n使用本服务可能会导致账号异常,请参照游戏运营组最新的判断标准,开发者不承担相关责任。\n\n戳戳乐™所需权限仅用于代理博士行动,方舟帮帮忙不会通过本服务收集个人信息。\n\n如有问题与建议可在关于向开发者反馈。\n\n使用技巧:\n1. 在首页可设置行动时长\n2. 行动时可按下音量键-结束行动\n3. 高版本 Android 可使用音量键快捷方式打开无障碍服务,即开即用(推荐在设置打开“减少内存占用”以获取最佳体验)
5 | 帮帮忙™
6 | 设置
7 | 需要权限
8 | 设备未适配
9 | 程序启动
10 | 初始化完成
11 | - 显示在其他应用的上层\n可通过悬浮球在游戏内使用公开招募规划等功能
12 | 帮帮忙™已连接
13 | 帮帮忙™连接解除
14 | 解除
15 | 收起
16 | 公开招募规划
17 | 重置
18 | 暂无符合需求的干员
19 | 全部可能出现的干员
20 | 选择支援机械招募3:50可锁定1★
21 | 可锁定4★,黄票+1
22 | 可锁定5★,有点小欧
23 | 选择高级资深干员招募9小时必得6★干员!柠檬树上柠檬果,柠檬树下只有我~
24 | 行动时长
25 | %d分钟
26 | 无限制
27 | 行动时长已设置为%s
28 | 夜间模式
29 | 请打开戳戳乐™
30 | 戳戳乐™开始一直戳
31 | 戳戳乐™行动结束
32 | 戳戳乐™正在行动,还有%d分钟
33 | 戳戳乐™暂未适配%1$d×%2$d分辨率,请在关于向开发者反馈。其他功能不受影响。\n\n点击“更新”获取最新数据。已是最新版本时,请向开发者提供以下截图原图进行适配。游戏截图需在游戏设置中将“异形屏UI适配”调至0。\n\n1. 本“设备未适配”界面截图,需带有设备分辨率信息。\n2. 游戏“关卡选择”界面截图,需带有蓝色“开始行动”按钮。\n3. 游戏“战前编队”界面截图,需带有红色“开始行动”按钮。\n\n* 请检查设备分辨率信息与游戏截图分辨率是否一致。\n* 可能无法适配部分设备。
34 | 关于
35 | 捐赠
36 | 方舟帮帮忙是一款自由软件,欢迎您分享、成为志愿者或提供捐赠来支持方舟帮帮忙项目。
37 | 感谢你的信任,博士
38 | 评论应用
39 | 在应用评论区反馈
40 | 群聊讨论
41 | 加入QQ群940135139,抢先体验新版本
42 | 项目主页
43 | 在GitHub提交问题或拉取请求
44 | 当前版本
45 | 正在获取更新……
46 | 暂时无法获取更新
47 | 已是最新版本
48 | 发现新版本
49 | 版本类型
50 | 版本类型已更新,覆盖安装后生效
51 | 更新
52 | 知道了
53 | 授权
54 | 不用了
55 | 算了算了
56 | 发生错误
57 | 敬请期待
58 | 自动更新
59 | 应用会定期自动获取更新
60 | 可以在关于手动获取更新
61 | 启动游戏
62 | 必要时自动启动游戏
63 | 游戏渠道
64 | 保底优先
65 | 规划方案中干员按★升序排序
66 | 显示未实装干员
67 | 显示当前渠道尚未实装的干员
68 | 快速导航
69 | 选择5个标签后向下滑动到规划方案
70 | 特别感谢
71 | Lis
72 | Originium
73 | 7:40~9:00
74 | 4:00~7:30
75 | 1:00~3:50
76 | 寻访计数器
77 | 已寻访:%1$d次\n下次获得6★概率:%2$d%%\n长按“+”十连,“-”清零
78 | 重置已下载的更新数据吗?
79 | 已重置更新数据
80 | 已更新最新数据
81 | 材料来源推荐
82 | 倍速行动
83 | 能耗略微增加,行动间隔缩短
84 | 数据来自企鹅物流数据统计,仅供参考
85 | %s > 加工站
86 | %1$s | %2$.1f%% | %3$.1f理智
87 | - %s × %d
88 | 标准寻访
89 | 限定寻访
90 | 半透明悬浮球
91 | 减少内存占用
92 | 打开无障碍后开始,结束后关闭无障碍
93 | 低于 Android 7.0 需要 Root 权限。\n虚拟设备推荐使用480×360分辨率。
94 | 详情
95 | 戳戳乐™失联了!\n请覆盖安装应用。\n反复发生此问题时,请在设置打开“减少内存占用”。
96 | 无障碍找不到戳戳乐™?戳我一下!
97 | 重装
98 | %s\n%s
99 | 白面鸮\n发生错误。
100 | 分享
101 | 支持
102 | 音量键-结束
103 | 自定义坐标
104 | 格式有误
105 | 额外点击坐标
106 | 防止嗑药碎石和结算循环
107 | 企鹅物流数据统计
108 | PRTS Wiki
109 | 支付宝
110 | 微信
111 | PayPal
112 | 贡献者
113 | 翻译
114 |
115 |
--------------------------------------------------------------------------------
/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/values/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
12 |
17 |
18 |
19 |
20 |
21 |
22 |
26 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/accessibility_config.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/filepaths.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/xml/root_preferences.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
18 |
19 |
24 |
25 |
28 |
29 |
30 |
31 |
37 |
38 |
43 |
44 |
48 |
49 |
50 |
53 |
54 |
58 |
59 |
64 |
65 |
69 |
70 |
74 |
75 |
--------------------------------------------------------------------------------
/build.gradle.kts:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 | plugins {
3 | id("com.android.application") version "8.0.1" apply false
4 | kotlin("android") version "1.8.20" apply false
5 | }
--------------------------------------------------------------------------------
/fastlane/metadata/android/en-US/full_description.txt:
--------------------------------------------------------------------------------
1 | Features
2 | ARSS™
3 | You can use it in game by a floating window.
4 | Recruit Guide
5 | Show possible operators in recruitment and help you choose the best combination of tags.
6 | Headhunt Counter
7 | Count the rolls of headhunt and show the possibility of 6★.
8 | Material Guide
9 | Recommend missions of elite materials.
10 | ARGS™
11 | Tap Version type 15 times in About to unlock this service
12 | Tap the mission start button automatically. In that way you can put down your phone and do something more meaningful.
13 |
--------------------------------------------------------------------------------
/fastlane/metadata/android/en-US/images/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/fastlane/metadata/android/en-US/images/icon.png
--------------------------------------------------------------------------------
/fastlane/metadata/android/en-US/short_description.txt:
--------------------------------------------------------------------------------
1 | Arknights helper app
--------------------------------------------------------------------------------
/fastlane/metadata/android/en-US/title.txt:
--------------------------------------------------------------------------------
1 | ArkTap
--------------------------------------------------------------------------------
/fastlane/metadata/android/zh-CN/full_description.txt:
--------------------------------------------------------------------------------
1 | 功能
2 | 帮帮忙™
3 | 一个提供各种实用功能的悬浮球,可从通知栏“快速设置”图块打开。
4 | 公开招募规划
5 | 使用5个需求标签组合出可能的方案。
6 |
7 | - 多渠道不同干员进度,明日方舟(含哔哩哔哩和龍成網路客户端)、Arknights 、アークナイツ 和 명일방주 随心切换,无需更改系统语言
8 | - 支持招募时限选择
9 | - 触摸标题时隐藏内容,抬起重置标签
10 |
11 | 寻访计数器
12 | 记录已寻访次数并获取下次获得6★概率。
13 | 材料来源推荐
14 | 提供养成材料的高性价比掉落关卡。
15 | 戳戳乐™
16 | 在关于界面一直戳“版本类型”,更新为 Originium 后覆盖安装应用或重启设备即可解除封印
17 | 可选择非剿灭作战关卡持续进行代理作战,解放双手,不用一直盯着屏幕。
18 |
19 | - Android 7.0 及更高版本基于无障碍 API 实现,无需 ADB 或 Root 权限
20 | - 不截取屏幕内容,支持多分辨率
21 | - 可设置行动间隔和时长,自带波动间隔(±150ms)和偏移坐标(±5px)点击
22 | - 首页长按图标可自定义坐标
23 |
24 |
--------------------------------------------------------------------------------
/fastlane/metadata/android/zh-CN/images/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/fastlane/metadata/android/zh-CN/images/icon.png
--------------------------------------------------------------------------------
/fastlane/metadata/android/zh-CN/short_description.txt:
--------------------------------------------------------------------------------
1 | 辅助博士们游玩明日方舟的应用
--------------------------------------------------------------------------------
/fastlane/metadata/android/zh-CN/title.txt:
--------------------------------------------------------------------------------
1 | 方舟帮帮忙
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 | # IDE (e.g. Android Studio) users:
3 | # Gradle settings configured through the IDE *will override*
4 | # any settings specified in this file.
5 | # For more details on how to configure your build environment visit
6 | # http://www.gradle.org/docs/current/userguide/build_environment.html
7 | # Specifies the JVM arguments used for the daemon process.
8 | # The setting is particularly useful for tweaking memory settings.
9 | org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
10 | # When configured, Gradle will run in incubating parallel mode.
11 | # This option should only be used with decoupled projects. More details, visit
12 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
13 | # org.gradle.parallel=true
14 | # AndroidX package structure to make it clearer which packages are bundled with the
15 | # Android operating system, and which are packaged with your app's APK
16 | # https://developer.android.com/topic/libraries/support-library/androidx-rn
17 | android.useAndroidX=true
18 | # Automatically convert third-party libraries to use AndroidX
19 | android.enableJetifier=true
20 | # Kotlin code style for this project: "official" or "obsolete":
21 | kotlin.code.style=official
22 | android.defaults.buildfeatures.buildconfig=true
23 | # Enables namespacing of each library's R class so that its R class includes only the
24 | # resources declared in the library itself and none from the library's dependencies,
25 | # thereby reducing the size of the R class for that library
26 | android.nonTransitiveRClass=false
27 | android.nonFinalResIds=false
28 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aistra0528/ArknightsTap/b9274f4b04c39728e83ef8e436f2310108bc81c8/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sun Apr 16 14:14:36 CST 2023
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
5 | zipStoreBase=GRADLE_USER_HOME
6 | zipStorePath=wrapper/dists
7 |
--------------------------------------------------------------------------------
/gradlew:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 |
3 | ##############################################################################
4 | ##
5 | ## Gradle start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Attempt to set APP_HOME
10 | # Resolve links: $0 may be a link
11 | PRG="$0"
12 | # Need this for relative symlinks.
13 | while [ -h "$PRG" ] ; do
14 | ls=`ls -ld "$PRG"`
15 | link=`expr "$ls" : '.*-> \(.*\)$'`
16 | if expr "$link" : '/.*' > /dev/null; then
17 | PRG="$link"
18 | else
19 | PRG=`dirname "$PRG"`"/$link"
20 | fi
21 | done
22 | SAVED="`pwd`"
23 | cd "`dirname \"$PRG\"`/" >/dev/null
24 | APP_HOME="`pwd -P`"
25 | cd "$SAVED" >/dev/null
26 |
27 | APP_NAME="Gradle"
28 | APP_BASE_NAME=`basename "$0"`
29 |
30 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
31 | DEFAULT_JVM_OPTS=""
32 |
33 | # Use the maximum available, or set MAX_FD != -1 to use that value.
34 | MAX_FD="maximum"
35 |
36 | warn () {
37 | echo "$*"
38 | }
39 |
40 | die () {
41 | echo
42 | echo "$*"
43 | echo
44 | exit 1
45 | }
46 |
47 | # OS specific support (must be 'true' or 'false').
48 | cygwin=false
49 | msys=false
50 | darwin=false
51 | nonstop=false
52 | case "`uname`" in
53 | CYGWIN* )
54 | cygwin=true
55 | ;;
56 | Darwin* )
57 | darwin=true
58 | ;;
59 | MINGW* )
60 | msys=true
61 | ;;
62 | NONSTOP* )
63 | nonstop=true
64 | ;;
65 | esac
66 |
67 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
68 |
69 | # Determine the Java command to use to start the JVM.
70 | if [ -n "$JAVA_HOME" ] ; then
71 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
72 | # IBM's JDK on AIX uses strange locations for the executables
73 | JAVACMD="$JAVA_HOME/jre/sh/java"
74 | else
75 | JAVACMD="$JAVA_HOME/bin/java"
76 | fi
77 | if [ ! -x "$JAVACMD" ] ; then
78 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
79 |
80 | Please set the JAVA_HOME variable in your environment to match the
81 | location of your Java installation."
82 | fi
83 | else
84 | JAVACMD="java"
85 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
86 |
87 | Please set the JAVA_HOME variable in your environment to match the
88 | location of your Java installation."
89 | fi
90 |
91 | # Increase the maximum file descriptors if we can.
92 | if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
93 | MAX_FD_LIMIT=`ulimit -H -n`
94 | if [ $? -eq 0 ] ; then
95 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
96 | MAX_FD="$MAX_FD_LIMIT"
97 | fi
98 | ulimit -n $MAX_FD
99 | if [ $? -ne 0 ] ; then
100 | warn "Could not set maximum file descriptor limit: $MAX_FD"
101 | fi
102 | else
103 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
104 | fi
105 | fi
106 |
107 | # For Darwin, add options to specify how the application appears in the dock
108 | if $darwin; then
109 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
110 | fi
111 |
112 | # For Cygwin, switch paths to Windows format before running java
113 | if $cygwin ; then
114 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
115 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
116 | JAVACMD=`cygpath --unix "$JAVACMD"`
117 |
118 | # We build the pattern for arguments to be converted via cygpath
119 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
120 | SEP=""
121 | for dir in $ROOTDIRSRAW ; do
122 | ROOTDIRS="$ROOTDIRS$SEP$dir"
123 | SEP="|"
124 | done
125 | OURCYGPATTERN="(^($ROOTDIRS))"
126 | # Add a user-defined pattern to the cygpath arguments
127 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then
128 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
129 | fi
130 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
131 | i=0
132 | for arg in "$@" ; do
133 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
134 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
135 |
136 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
137 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
138 | else
139 | eval `echo args$i`="\"$arg\""
140 | fi
141 | i=$((i+1))
142 | done
143 | case $i in
144 | (0) set -- ;;
145 | (1) set -- "$args0" ;;
146 | (2) set -- "$args0" "$args1" ;;
147 | (3) set -- "$args0" "$args1" "$args2" ;;
148 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
149 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
150 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
151 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
152 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
153 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
154 | esac
155 | fi
156 |
157 | # Escape application args
158 | save () {
159 | for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
160 | echo " "
161 | }
162 | APP_ARGS=$(save "$@")
163 |
164 | # Collect all arguments for the java command, following the shell quoting and substitution rules
165 | eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
166 |
167 | # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
168 | if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
169 | cd "$(dirname "$0")"
170 | fi
171 |
172 | exec "$JAVACMD" "$@"
173 |
--------------------------------------------------------------------------------
/gradlew.bat:
--------------------------------------------------------------------------------
1 | @if "%DEBUG%" == "" @echo off
2 | @rem ##########################################################################
3 | @rem
4 | @rem Gradle startup script for Windows
5 | @rem
6 | @rem ##########################################################################
7 |
8 | @rem Set local scope for the variables with windows NT shell
9 | if "%OS%"=="Windows_NT" setlocal
10 |
11 | set DIRNAME=%~dp0
12 | if "%DIRNAME%" == "" set DIRNAME=.
13 | set APP_BASE_NAME=%~n0
14 | set APP_HOME=%DIRNAME%
15 |
16 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
17 | set DEFAULT_JVM_OPTS=
18 |
19 | @rem Find java.exe
20 | if defined JAVA_HOME goto findJavaFromJavaHome
21 |
22 | set JAVA_EXE=java.exe
23 | %JAVA_EXE% -version >NUL 2>&1
24 | if "%ERRORLEVEL%" == "0" goto init
25 |
26 | echo.
27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
28 | echo.
29 | echo Please set the JAVA_HOME variable in your environment to match the
30 | echo location of your Java installation.
31 |
32 | goto fail
33 |
34 | :findJavaFromJavaHome
35 | set JAVA_HOME=%JAVA_HOME:"=%
36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
37 |
38 | if exist "%JAVA_EXE%" goto init
39 |
40 | echo.
41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
42 | echo.
43 | echo Please set the JAVA_HOME variable in your environment to match the
44 | echo location of your Java installation.
45 |
46 | goto fail
47 |
48 | :init
49 | @rem Get command-line arguments, handling Windows variants
50 |
51 | if not "%OS%" == "Windows_NT" goto win9xME_args
52 |
53 | :win9xME_args
54 | @rem Slurp the command line arguments.
55 | set CMD_LINE_ARGS=
56 | set _SKIP=2
57 |
58 | :win9xME_args_slurp
59 | if "x%~1" == "x" goto execute
60 |
61 | set CMD_LINE_ARGS=%*
62 |
63 | :execute
64 | @rem Setup the command line
65 |
66 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
67 |
68 | @rem Execute Gradle
69 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
70 |
71 | :end
72 | @rem End local scope for the variables with windows NT shell
73 | if "%ERRORLEVEL%"=="0" goto mainEnd
74 |
75 | :fail
76 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
77 | rem the _cmd.exe /c_ return code!
78 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
79 | exit /b 1
80 |
81 | :mainEnd
82 | if "%OS%"=="Windows_NT" endlocal
83 |
84 | :omega
85 |
--------------------------------------------------------------------------------
/settings.gradle.kts:
--------------------------------------------------------------------------------
1 | pluginManagement {
2 | repositories {
3 | google()
4 | mavenCentral()
5 | gradlePluginPortal()
6 | }
7 | }
8 | dependencyResolutionManagement {
9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
10 | repositories {
11 | google()
12 | mavenCentral()
13 | }
14 | }
15 | rootProject.name = "ArknightsTap"
16 | include(":app")
17 |
--------------------------------------------------------------------------------
/signing.properties.sample:
--------------------------------------------------------------------------------
1 | storeFile=filename.keystore
2 | storePassword=password
3 | keyAlias=alias
4 | keyPassword=password
--------------------------------------------------------------------------------