mirror of
https://github.com/Katana-Official/SPatch-Update.git
synced 2026-04-01 07:09:44 +08:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6b61dfba35 | ||
|
|
43a56ad249 | ||
|
|
597f3a6a39 | ||
|
|
1ba31c1e56 | ||
|
|
de43f59a8e | ||
|
|
06ccb152d3 | ||
|
|
a33d9bfd3f | ||
|
|
b5458feb22 |
@@ -1 +1 @@
|
|||||||
<p xmlns:cc="http://creativecommons.org/ns#" xmlns:dct="http://purl.org/dc/terms/"><a property="dct:title" rel="cc:attributionURL" href="https://github.com/Katana-Official/SPatch-Update">Foza-LauncherUI</a> by <a rel="cc:attributionURL dct:creator" property="cc:attributionName" href="https://github.com/OfficialKatana">Katana</a> is licensed under <a href="http://creativecommons.org/licenses/by/4.0/?ref=chooser-v1" target="_blank" rel="license noopener noreferrer" style="display:inline-block;">Attribution 4.0 International<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/cc.svg?ref=chooser-v1"><img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/by.svg?ref=chooser-v1"></a>
|
<p xmlns:cc="http://creativecommons.org/ns#" xmlns:dct="http://purl.org/dc/terms/"><a property="dct:title" rel="cc:attributionURL" href="https://github.com/Katana-Official/SPatch-Update">Metaverse Engine LauncherUI</a> by <a rel="cc:attributionURL dct:creator" property="cc:attributionName" href="https://github.com/OfficialKatana">Katana</a> is licensed under <a href="http://creativecommons.org/licenses/by/4.0/?ref=chooser-v1" target="_blank" rel="license noopener noreferrer" style="display:inline-block;">Attribution 4.0 International<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/cc.svg?ref=chooser-v1"><img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/by.svg?ref=chooser-v1"></a>
|
||||||
35
README.md
35
README.md
@@ -1,10 +1,12 @@
|
|||||||
# Metaverse Enging Launcher UI
|
# Metaverse Engine Launcher UI
|
||||||
|
|
||||||
<p xmlns:cc="http://creativecommons.org/ns#" xmlns:dct="http://purl.org/dc/terms/"><a property="dct:title" rel="cc:attributionURL" href="https://github.com/Katana-Official/SPatch-Update">Metaverse Enging Launcher UI</a> by <a rel="cc:attributionURL dct:creator" property="cc:attributionName" href="https://github.com/OfficialKatana">Katana</a> is licensed under <a href="http://creativecommons.org/licenses/by/4.0/?ref=chooser-v1" target="_blank" rel="license noopener noreferrer" style="display:inline-block;">Attribution 4.0 International<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/cc.svg?ref=chooser-v1"><img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/by.svg?ref=chooser-v1"></a></p>
|
<p xmlns:cc="http://creativecommons.org/ns#" xmlns:dct="http://purl.org/dc/terms/"><a property="dct:title" rel="cc:attributionURL" href="https://github.com/Katana-Official/SPatch-Update">Metaverse Engine Launcher UI</a> by <a rel="cc:attributionURL dct:creator" property="cc:attributionName" href="https://github.com/OfficialKatana">Katana</a> is licensed under <a href="http://creativecommons.org/licenses/by/4.0/?ref=chooser-v1" target="_blank" rel="license noopener noreferrer" style="display:inline-block;">Attribution 4.0 International<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/cc.svg?ref=chooser-v1"><img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/by.svg?ref=chooser-v1"></a></p>
|
||||||
|
|
||||||
## Commercial Indication
|
## Commercial Indication
|
||||||
You can use this project freely, and we'd recommend you to contact us for further sdk support.
|
You can use this project freely, and we'd recommend you to contact us for el further sdk support.
|
||||||
[Join our grupo for el sdk & usage support.](https://t.me/foxiteu), or you can connect me by my email.
|
[Join our grupo for el sdk & usage support.](https://t.me/foxiteu), or you can connect me by my email.
|
||||||
|
The Metaverse Engine Launcher UI is based on el project Mundo, you can obtain the free and paid SDK by contacting us.
|
||||||
|
Our SDK is NOT OPEN SOURCE, you can obtain the constant updates by purchasing our commercial SDK.
|
||||||
|
|
||||||
## About us
|
## About us
|
||||||
|
|
||||||
@@ -14,44 +16,41 @@ You can use this project freely, and we'd recommend you to contact us for furthe
|
|||||||
|
|
||||||
SlimVXposed is the most efficient app for app twin and app clone, you can see our app on our main site.
|
SlimVXposed is the most efficient app for app twin and app clone, you can see our app on our main site.
|
||||||
Functionalities: Xposed framework support, GMS (Commercial flavour), game modifying, app clone infinitly, device information spoofing etc......
|
Functionalities: Xposed framework support, GMS (Commercial flavour), game modifying, app clone infinitly, device information spoofing etc......
|
||||||
SlimVXposed is an powerful Android container, which can open more apps. This project provides a simple UI for you to experience. You can also download the official apk from [Official Web](https://www.die.lu).
|
SlimVXposed is a powerful Android container, which can open more apps. This project provides a simple UI for you to experience. You can also download the official apk de [Official Web](https://www.die.lu).
|
||||||
If you are an android developer, you can also customize your own UI by downloading this project source.
|
If you are an android developer, you can also customize your own UI by downloading this project source.
|
||||||
You don't need to pay attention to the technical details that are difficult to understand.
|
You don't need to pay attention to the technical details that are difficult to understand.
|
||||||
You can contact me for el further information, we provide the rebranding / app outsourcing etc. services.
|
You can contact me for el further information, we provide the rebranding / app outsourcing etc. services.
|
||||||
|
Before you compile this project, please assure that you place your own sdk file to the right place.
|
||||||
|
|
||||||
[SPatch](http://spatch.die.lu)
|
[SPatch](http://spatch.die.lu)
|
||||||
|
|
||||||
Power Android / iOS app modifying tool, you can make your plugins and app more integrated.
|
Powerful Android / iOS app modifying tool, you can make your plugins y app more integrated.
|
||||||
|
|
||||||
## Contact Details
|
## Contact Details
|
||||||
Email: 1@die.lu
|
Email: 1@die.lu
|
||||||
Telegram: [https://t.me/foxiteu](https://t.me/foxiteu)
|
Telegram: [https://t.me/foxiteu](https://t.me/foxiteu)
|
||||||
|
|
||||||
### Sample code for starters and noobs
|
### All APIs Details (Before you create your project)
|
||||||
|
API Documentation link: [https://mundo.bienvenido.top/](https://mundo.bienvenido.top/)
|
||||||
|
|
||||||
#### Manual launch the engine (not necessary)
|
### Sample code for starters and noobs
|
||||||
```Java
|
|
||||||
@Override
|
|
||||||
protected void attachBaseContext(Context base) {
|
|
||||||
super.attachBaseContext(base);
|
|
||||||
FozaCore.startup(base);
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Launch a sample application
|
#### Launch a sample application
|
||||||
```Java
|
```Java
|
||||||
FozaActivityManager.get().launchApp(
|
MetaActivityManager.launchApp(
|
||||||
applicationPackageName
|
applicationPackageName
|
||||||
);
|
);
|
||||||
```
|
```
|
||||||
or
|
or
|
||||||
```Java
|
```Java
|
||||||
FozaActivityManager.get().launchApp(
|
MetaActivityManager.launchApp(
|
||||||
userPartitionName,
|
userPartitionName,
|
||||||
applicationPackageName
|
applicationPackageName
|
||||||
);
|
);
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Read more documents on [https://mundo.bienvenido.top/](https://mundo.bienvenido.top/)
|
||||||
|
|
||||||
### Change logs
|
### Change logs
|
||||||
#### Oct. 2023
|
#### Oct. 2023
|
||||||
Initial upload mi project.
|
Initial upload mi project.
|
||||||
|
|||||||
2
app/.gitignore
vendored
2
app/.gitignore
vendored
@@ -1,5 +1,5 @@
|
|||||||
/build
|
/build
|
||||||
/release
|
/release
|
||||||
*.apk
|
*.apk
|
||||||
/libs/foza-release.aar
|
/libs/*.aar
|
||||||
/debug/
|
/debug/
|
||||||
|
|||||||
@@ -25,15 +25,6 @@ android {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
sourceSets {
|
|
||||||
main {
|
|
||||||
jniLibs.srcDirs = ['libs']
|
|
||||||
res.srcDirs = [
|
|
||||||
'src/main/res2',
|
|
||||||
'src/main/res'
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
buildTypes {
|
buildTypes {
|
||||||
debug {
|
debug {
|
||||||
debuggable false
|
debuggable false
|
||||||
@@ -62,11 +53,6 @@ android {
|
|||||||
}
|
}
|
||||||
kotlinOptions {
|
kotlinOptions {
|
||||||
jvmTarget = '1.8'
|
jvmTarget = '1.8'
|
||||||
freeCompilerArgs = [
|
|
||||||
'-Xno-param-assertions',
|
|
||||||
'-Xno-call-assertions',
|
|
||||||
'-Xno-receiver-assertions'
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
namespace 'com.android.launcher'
|
namespace 'com.android.launcher'
|
||||||
}
|
}
|
||||||
@@ -74,6 +60,6 @@ android {
|
|||||||
dependencies {
|
dependencies {
|
||||||
implementation fileTree(include: ['*.jar'], dir: 'libs')
|
implementation fileTree(include: ['*.jar'], dir: 'libs')
|
||||||
implementation fileTree(include: ['*.aar'], dir: 'libs')
|
implementation fileTree(include: ['*.aar'], dir: 'libs')
|
||||||
implementation "androidx.annotation:annotation:1.7.0"
|
implementation "androidx.annotation:annotation:1.7.1"
|
||||||
implementation 'com.jakewharton.android.repackaged:dalvik-dx:11.0.0_r3'
|
implementation 'com.jakewharton.android.repackaged:dalvik-dx:11.0.0_r3'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,26 +0,0 @@
|
|||||||
package com.test.qqy.launcher22;
|
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
import android.support.test.InstrumentationRegistry;
|
|
||||||
import android.support.test.runner.AndroidJUnit4;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
|
||||||
import org.junit.runner.RunWith;
|
|
||||||
|
|
||||||
import static org.junit.Assert.*;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Instrumentation test, which will execute on an Android device.
|
|
||||||
*
|
|
||||||
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
|
|
||||||
*/
|
|
||||||
@RunWith(AndroidJUnit4.class)
|
|
||||||
public class ExampleInstrumentedTest {
|
|
||||||
@Test
|
|
||||||
public void useAppContext() throws Exception {
|
|
||||||
// Context of the app under test.
|
|
||||||
Context appContext = InstrumentationRegistry.getTargetContext();
|
|
||||||
|
|
||||||
assertEquals("com.test.qqy.launcher22", appContext.getPackageName());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -59,7 +59,7 @@ import java.util.Collections;
|
|||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import lu.die.fozacompatibility.FozaActivityManager;
|
import net_62v.external.MetaActivityManager;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A simple callback interface which also provides the results of the task.
|
* A simple callback interface which also provides the results of the task.
|
||||||
@@ -525,7 +525,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen
|
|||||||
mLauncher.startActivitySafely(v, appInfo.intent, appInfo);
|
mLauncher.startActivitySafely(v, appInfo.intent, appInfo);
|
||||||
}
|
}
|
||||||
else try{
|
else try{
|
||||||
Intent reserver = FozaActivityManager.get().obtainSplashLaunchIntent(
|
Intent reserver = MetaActivityManager.obtainSplashLaunchIntent(
|
||||||
0,
|
0,
|
||||||
appInfo.componentName.getPackageName(),
|
appInfo.componentName.getPackageName(),
|
||||||
mLauncher
|
mLauncher
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ import android.content.res.Resources;
|
|||||||
import android.graphics.PointF;
|
import android.graphics.PointF;
|
||||||
import android.graphics.Rect;
|
import android.graphics.Rect;
|
||||||
import android.graphics.drawable.TransitionDrawable;
|
import android.graphics.drawable.TransitionDrawable;
|
||||||
|
import android.os.RemoteException;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewConfiguration;
|
import android.view.ViewConfiguration;
|
||||||
@@ -220,7 +221,11 @@ public class DeleteDropTarget extends ButtonDropTarget {
|
|||||||
|
|
||||||
if (isAllAppsApplication(d.dragSource, item)) {
|
if (isAllAppsApplication(d.dragSource, item)) {
|
||||||
// Uninstall the application if it is being dragged from AppsCustomize
|
// Uninstall the application if it is being dragged from AppsCustomize
|
||||||
mLauncher.startApplicationUninstallActivity((ApplicationInfo) item);
|
try {
|
||||||
|
mLauncher.startApplicationUninstallActivity((ApplicationInfo) item);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
} else if (isWorkspaceOrFolderApplication(d)) {
|
} else if (isWorkspaceOrFolderApplication(d)) {
|
||||||
LauncherModel.deleteItemFromDatabase(mLauncher, item);
|
LauncherModel.deleteItemFromDatabase(mLauncher, item);
|
||||||
} else if (isWorkspaceFolder(d)) {
|
} else if (isWorkspaceFolder(d)) {
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ import android.os.Debug;
|
|||||||
import android.os.Environment;
|
import android.os.Environment;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.Message;
|
import android.os.Message;
|
||||||
|
import android.os.RemoteException;
|
||||||
import android.os.StrictMode;
|
import android.os.StrictMode;
|
||||||
import android.os.SystemClock;
|
import android.os.SystemClock;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
@@ -114,9 +115,8 @@ import java.util.HashSet;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import lu.die.foza.SuperAPI.FozaCore;
|
import net_62v.external.MetaActivityManager;
|
||||||
import lu.die.fozacompatibility.FozaActivityManager;
|
import net_62v.external.MetaPackageManager;
|
||||||
import lu.die.fozacompatibility.FozaPackageManager;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Default launcher application.
|
* Default launcher application.
|
||||||
@@ -433,7 +433,14 @@ public final class Launcher extends Activity
|
|||||||
|
|
||||||
// On large interfaces, we want the screen to auto-rotate based on the current orientation
|
// On large interfaces, we want the screen to auto-rotate based on the current orientation
|
||||||
unlockScreenOrientation(true);
|
unlockScreenOrientation(true);
|
||||||
FozaCore.registerCoreCallback(() -> FozaPackageManager.get().acquireObtainAppSplash());
|
LauncherLoader.instance().waitForAndGetInitialService(() -> {
|
||||||
|
try {
|
||||||
|
MetaPackageManager.acquireObtainAppSplash();
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void onUserLeaveHint() {
|
protected void onUserLeaveHint() {
|
||||||
@@ -2019,7 +2026,7 @@ public final class Launcher extends Activity
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
try{
|
try{
|
||||||
Intent reserveIntent = FozaActivityManager.get().obtainSplashLaunchIntent(
|
Intent reserveIntent = MetaActivityManager.obtainSplashLaunchIntent(
|
||||||
0,
|
0,
|
||||||
((ShortcutInfo) tag).intent.getComponent().getPackageName(),
|
((ShortcutInfo) tag).intent.getComponent().getPackageName(),
|
||||||
this
|
this
|
||||||
@@ -2122,10 +2129,10 @@ public final class Launcher extends Activity
|
|||||||
startActivitySafely(null, intent, "startApplicationDetailsActivity");
|
startActivitySafely(null, intent, "startApplicationDetailsActivity");
|
||||||
}
|
}
|
||||||
|
|
||||||
void startApplicationUninstallActivity(ApplicationInfo appInfo) {
|
void startApplicationUninstallActivity(ApplicationInfo appInfo) throws RemoteException {
|
||||||
if(FozaPackageManager.get().isInnerAppInstalled(appInfo.componentName.getPackageName()))
|
if(MetaPackageManager.isInnerAppInstalled(appInfo.componentName.getPackageName()))
|
||||||
{
|
{
|
||||||
FozaPackageManager.get().uninstallAppFully(appInfo.componentName.getPackageName());
|
MetaPackageManager.uninstallAppFully(appInfo.componentName.getPackageName());
|
||||||
int messageId = R.string.cling_dismiss;
|
int messageId = R.string.cling_dismiss;
|
||||||
Toast.makeText(this, messageId, Toast.LENGTH_SHORT).show();
|
Toast.makeText(this, messageId, Toast.LENGTH_SHORT).show();
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -31,8 +31,6 @@ import com.android.launcher.R;
|
|||||||
|
|
||||||
import java.lang.ref.WeakReference;
|
import java.lang.ref.WeakReference;
|
||||||
|
|
||||||
import lu.die.foza.SuperAPI.FozaCore;
|
|
||||||
|
|
||||||
public class LauncherApplication extends Application {
|
public class LauncherApplication extends Application {
|
||||||
private LauncherModel mModel;
|
private LauncherModel mModel;
|
||||||
private IconCache mIconCache;
|
private IconCache mIconCache;
|
||||||
@@ -78,7 +76,9 @@ public class LauncherApplication extends Application {
|
|||||||
} else registerReceiver(mModel, filter);
|
} else registerReceiver(mModel, filter);
|
||||||
filter = new IntentFilter();
|
filter = new IntentFilter();
|
||||||
filter.addAction(SearchManager.INTENT_ACTION_SEARCHABLES_CHANGED);
|
filter.addAction(SearchManager.INTENT_ACTION_SEARCHABLES_CHANGED);
|
||||||
registerReceiver(mModel, filter);
|
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU)
|
||||||
|
registerReceiver(mModel, filter, RECEIVER_EXPORTED);
|
||||||
|
else registerReceiver(mModel, filter);
|
||||||
|
|
||||||
// Register for changes to the favorites
|
// Register for changes to the favorites
|
||||||
ContentResolver resolver = getContentResolver();
|
ContentResolver resolver = getContentResolver();
|
||||||
@@ -86,12 +86,6 @@ public class LauncherApplication extends Application {
|
|||||||
mFavoritesObserver);
|
mFavoritesObserver);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void attachBaseContext(Context base) {
|
|
||||||
super.attachBaseContext(base);
|
|
||||||
FozaCore.startup(base);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* There's no guarantee that this function is ever called.
|
* There's no guarantee that this function is ever called.
|
||||||
*/
|
*/
|
||||||
|
|||||||
21
app/src/main/java/com/android/launcher2/LauncherLoader.kt
Normal file
21
app/src/main/java/com/android/launcher2/LauncherLoader.kt
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
package com.android.launcher2
|
||||||
|
|
||||||
|
import android.content.Intent
|
||||||
|
import net_62v.external.MetaCore
|
||||||
|
import net_62v.external.MetaPackageManager
|
||||||
|
|
||||||
|
object LauncherLoader {
|
||||||
|
// For java
|
||||||
|
@JvmStatic
|
||||||
|
fun instance() = this
|
||||||
|
fun waitForAndGetInitialService(
|
||||||
|
serviceCallback : () -> Unit
|
||||||
|
) = MetaCore.registerCoreCallback(
|
||||||
|
serviceCallback
|
||||||
|
)
|
||||||
|
fun obtainLaunchIntentByPackage(
|
||||||
|
src : String
|
||||||
|
) = MetaPackageManager.getLaunchIntentForPackage(
|
||||||
|
Intent(Intent.ACTION_MAIN).setPackage(src) /* Package Name */
|
||||||
|
)
|
||||||
|
}
|
||||||
@@ -63,7 +63,8 @@ import java.util.Iterator;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import lu.die.fozacompatibility.FozaPackageManager;
|
import net_62v.external.MetaPackageManager;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Maintains in-memory state of the Launcher. It is expected that there should be only one
|
* Maintains in-memory state of the Launcher. It is expected that there should be only one
|
||||||
@@ -2118,7 +2119,11 @@ public class LauncherModel extends BroadcastReceiver {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
FozaPackageManager.get().acquireObtainAppSplash();
|
try {
|
||||||
|
MetaPackageManager.acquireObtainAppSplash();
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
package com.test.qqy.launcher22;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import static org.junit.Assert.*;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Example local unit test, which will execute on the development machine (host).
|
|
||||||
*
|
|
||||||
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
|
|
||||||
*/
|
|
||||||
public class ExampleUnitTest {
|
|
||||||
@Test
|
|
||||||
public void addition_isCorrect() throws Exception {
|
|
||||||
assertEquals(4, 2 + 2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -4,10 +4,11 @@ buildscript {
|
|||||||
repositories {
|
repositories {
|
||||||
maven { url 'https://mirrors.huaweicloud.com/repository/maven/' }
|
maven { url 'https://mirrors.huaweicloud.com/repository/maven/' }
|
||||||
maven { url 'https://jitpack.io' }
|
maven { url 'https://jitpack.io' }
|
||||||
|
google()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:8.1.2'
|
classpath 'com.android.tools.build:gradle:8.2.1'
|
||||||
classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.20-RC'
|
classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.0-Beta2'
|
||||||
// classpath 'com.android.tools.build:gradle-experimental:3.3.2'
|
// classpath 'com.android.tools.build:gradle-experimental:3.3.2'
|
||||||
// classpath 'com.trend.lazyinject:aopweave:3.4.0-beta'
|
// classpath 'com.trend.lazyinject:aopweave:3.4.0-beta'
|
||||||
// NOTE: Do not place your application dependencies here; they belong
|
// NOTE: Do not place your application dependencies here; they belong
|
||||||
@@ -19,6 +20,7 @@ allprojects {
|
|||||||
repositories {
|
repositories {
|
||||||
maven { url 'https://mirrors.huaweicloud.com/repository/maven/' }
|
maven { url 'https://mirrors.huaweicloud.com/repository/maven/' }
|
||||||
maven { url "https://jitpack.io" }
|
maven { url "https://jitpack.io" }
|
||||||
|
google()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user