diff --git a/app/src/main/java/com/fongmi/android/tv/player/extractor/Force.java b/app/src/main/java/com/fongmi/android/tv/player/extractor/Force.java
index 422302706..e8fb8f167 100644
--- a/app/src/main/java/com/fongmi/android/tv/player/extractor/Force.java
+++ b/app/src/main/java/com/fongmi/android/tv/player/extractor/Force.java
@@ -11,6 +11,7 @@ import com.fongmi.android.tv.App;
import com.fongmi.android.tv.player.Source;
import com.forcetech.Util;
import com.github.catvod.net.OkHttp;
+import com.github.catvod.utils.Github;
import java.util.HashSet;
@@ -26,7 +27,7 @@ public class Force implements Source.Extractor {
}
private void init(String scheme) {
- App.get().bindService(Util.intent(App.get(), scheme), mConn, Context.BIND_AUTO_CREATE);
+ App.get().bindService(Util.intent(App.get(), scheme, Github.getSo(scheme)), mConn, Context.BIND_AUTO_CREATE);
}
@Override
diff --git a/catvod/src/main/java/com/github/catvod/utils/Github.java b/catvod/src/main/java/com/github/catvod/utils/Github.java
index 4d416e2f4..70486ff1e 100644
--- a/catvod/src/main/java/com/github/catvod/utils/Github.java
+++ b/catvod/src/main/java/com/github/catvod/utils/Github.java
@@ -66,8 +66,8 @@ public class Github {
public static String getSo(String name) {
try {
File file = Path.so(name);
- String path = getReleasePath("/other/jniLibs/" + file.getName());
- if (!file.exists() || file.length() == 0) Path.write(file, OkHttp.newCall(path).execute().body().bytes());
+ String url = getReleasePath("/other/jniLibs/".concat(file.getName()));
+ if (file.length() < 300) Path.write(file, OkHttp.newCall(url).execute().body().bytes());
return file.getAbsolutePath();
} catch (Exception e) {
return "";
diff --git a/catvod/src/main/java/com/github/catvod/utils/Path.java b/catvod/src/main/java/com/github/catvod/utils/Path.java
index 3f42e1551..2d990b411 100644
--- a/catvod/src/main/java/com/github/catvod/utils/Path.java
+++ b/catvod/src/main/java/com/github/catvod/utils/Path.java
@@ -87,7 +87,7 @@ public class Path {
}
public static File so(String name) {
- return new File(so(), "lib".concat(name).concat(".so"));
+ return new File("mitv".equals(name) ? cache() : so(), "lib".concat(name).concat(".so"));
}
public static File js(String name) {
diff --git a/forcetech/src/main/AndroidManifest.xml b/forcetech/src/main/AndroidManifest.xml
index 014923565..e6230ca12 100644
--- a/forcetech/src/main/AndroidManifest.xml
+++ b/forcetech/src/main/AndroidManifest.xml
@@ -6,48 +6,39 @@
+ android:exported="false" />
+ android:exported="false" />
+ android:exported="false" />
+ android:exported="false" />
+ android:exported="false" />
+ android:exported="false" />
+ android:exported="false" />
+ android:exported="false" />
+ android:exported="false" />
\ No newline at end of file
diff --git a/forcetech/src/main/java/com/forcetech/Util.java b/forcetech/src/main/java/com/forcetech/Util.java
index 141a701cc..cb5b5b914 100644
--- a/forcetech/src/main/java/com/forcetech/Util.java
+++ b/forcetech/src/main/java/com/forcetech/Util.java
@@ -41,9 +41,9 @@ public class Util {
return name.toLowerCase();
}
- public static Intent intent(Context context, String scheme) {
+ public static Intent intent(Context context, String scheme, String path) {
Intent intent = new Intent(context, clz(scheme));
- intent.putExtra("scheme", scheme);
+ intent.putExtra("path", path);
return intent;
}
diff --git a/forcetech/src/main/java/com/forcetech/android/ForceTV.java b/forcetech/src/main/java/com/forcetech/android/ForceTV.java
index e3367cd1f..ddd150591 100644
--- a/forcetech/src/main/java/com/forcetech/android/ForceTV.java
+++ b/forcetech/src/main/java/com/forcetech/android/ForceTV.java
@@ -1,12 +1,10 @@
package com.forcetech.android;
-import com.github.catvod.utils.Github;
-
public class ForceTV {
public void start(String lib, int port) {
try {
- System.load(Github.getSo(lib));
+ System.load(lib);
start(port, 20 * 1024 * 1024);
} catch (Throwable ignored) {
}
diff --git a/forcetech/src/main/java/com/forcetech/service/PxPService.java b/forcetech/src/main/java/com/forcetech/service/PxPService.java
index 83f504a81..84d7ae580 100644
--- a/forcetech/src/main/java/com/forcetech/service/PxPService.java
+++ b/forcetech/src/main/java/com/forcetech/service/PxPService.java
@@ -23,7 +23,7 @@ public abstract class PxPService extends Service {
@Override
public IBinder onBind(Intent intent) {
forceTV = new ForceTV();
- forceTV.start(intent.getStringExtra("scheme"), getPort());
+ forceTV.start(intent.getStringExtra("path"), getPort());
return binder;
}