diff --git a/app/src/main/java/com/fongmi/android/tv/App.java b/app/src/main/java/com/fongmi/android/tv/App.java index 6c7aa6bed..9cbc8313d 100644 --- a/app/src/main/java/com/fongmi/android/tv/App.java +++ b/app/src/main/java/com/fongmi/android/tv/App.java @@ -106,7 +106,6 @@ public class App extends Application { public void onCreate() { super.onCreate(); Notify.createChannel(); - Github.setAbi(BuildConfig.FLAVOR_abi); Logger.addLogAdapter(getLogAdapter()); OkHttp.get().setProxy(Setting.getProxy()); OkHttp.get().setDoh(Doh.objectFrom(Setting.getDoh())); 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 326e9068c..02fc07e98 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 @@ -9,10 +9,8 @@ import android.os.SystemClock; import com.fongmi.android.tv.App; import com.fongmi.android.tv.player.Source; -import com.fongmi.android.tv.utils.UrlUtil; import com.forcetech.Util; import com.github.catvod.net.OkHttp; -import com.github.catvod.utils.Github; import com.google.common.net.HttpHeaders; import java.util.HashSet; @@ -29,12 +27,12 @@ public class Force implements Source.Extractor { } private void init(String scheme) { - App.get().bindService(Util.intent(App.get(), scheme, Github.getSo(scheme)), mConn, Context.BIND_AUTO_CREATE); + App.get().bindService(Util.intent(App.get(), scheme), mConn, Context.BIND_AUTO_CREATE); } @Override public String fetch(String url) throws Exception { - String scheme = UrlUtil.scheme(url); + String scheme = Util.scheme(url); if (!set.contains(scheme)) init(scheme); while (!set.contains(scheme)) SystemClock.sleep(10); Uri uri = Uri.parse(url); 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 945466530..015508c48 100644 --- a/catvod/src/main/java/com/github/catvod/utils/Github.java +++ b/catvod/src/main/java/com/github/catvod/utils/Github.java @@ -1,5 +1,7 @@ package com.github.catvod.utils; +import android.net.Uri; + import com.github.catvod.net.OkHttp; import java.io.File; @@ -7,11 +9,6 @@ import java.io.File; public class Github { public static final String URL = "https://my.t4tv.hz.cz"; - private static String ABI; - - public static void setAbi(String abi) { - Github.ABI = abi.replace("_", "-"); - } private static String getUrl(String path, String name) { return URL + "/" + path + "/" + name; @@ -25,20 +22,14 @@ public class Github { return getUrl("apk/" + (dev ? "dev" : "release"), name + ".apk"); } - public static String getSo(String name) { + public static String getSo(String url) { try { - File file = Path.so(name); - moveExist(Path.download(), file); - String url = name.startsWith("http") ? name : getUrl("so/" + ABI, file.getName()); + File file = new File(Path.so(), Uri.parse(url).getLastPathSegment()); if (file.length() < 300) Path.write(file, OkHttp.newCall(url).execute().body().bytes()); return file.getAbsolutePath(); } catch (Exception e) { + e.printStackTrace(); return ""; } } - - private static void moveExist(File path, File file) { - File temp = new File(path, file.getName()); - if (temp.exists()) Path.move(temp, file); - } } 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 ad9e6862f..35c2db84d 100644 --- a/catvod/src/main/java/com/github/catvod/utils/Path.java +++ b/catvod/src/main/java/com/github/catvod/utils/Path.java @@ -1,6 +1,5 @@ package com.github.catvod.utils; -import android.net.Uri; import android.os.Environment; import android.util.Log; @@ -42,10 +41,6 @@ public class Path { return Init.context().getFilesDir(); } - public static File download() { - return Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); - } - public static String rootPath() { return root().getAbsolutePath(); } @@ -102,11 +97,6 @@ public class Path { return new File(files(), name); } - public static File so(String name) { - if (name.startsWith("http")) return new File(so(), Uri.parse(name).getLastPathSegment()); - return new File("mitv".equals(name) ? cache() : so(), "lib".concat(name).concat(".so")); - } - public static File js(String name) { return new File(js(), name); } diff --git a/forcetech/src/main/assets/libmitv.so b/forcetech/src/main/assets/libmitv.so new file mode 100644 index 000000000..971b8d57a Binary files /dev/null and b/forcetech/src/main/assets/libmitv.so differ diff --git a/forcetech/src/main/java/com/forcetech/Util.java b/forcetech/src/main/java/com/forcetech/Util.java index cb5b5b914..141a701cc 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, String path) { + public static Intent intent(Context context, String scheme) { Intent intent = new Intent(context, clz(scheme)); - intent.putExtra("path", path); + intent.putExtra("scheme", scheme); 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 ddd150591..9b996e231 100644 --- a/forcetech/src/main/java/com/forcetech/android/ForceTV.java +++ b/forcetech/src/main/java/com/forcetech/android/ForceTV.java @@ -4,7 +4,7 @@ public class ForceTV { public void start(String lib, int port) { try { - System.load(lib); + System.loadLibrary(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 84d7ae580..83f504a81 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("path"), getPort()); + forceTV.start(intent.getStringExtra("scheme"), getPort()); return binder; } diff --git a/forcetech/src/main/java/com/gsoft/mitv/MainActivity.java b/forcetech/src/main/java/com/gsoft/mitv/MainActivity.java index c6e34a791..09d99433c 100644 --- a/forcetech/src/main/java/com/gsoft/mitv/MainActivity.java +++ b/forcetech/src/main/java/com/gsoft/mitv/MainActivity.java @@ -6,6 +6,9 @@ import android.os.IBinder; import com.anymediacloud.iptv.standard.ForceTV; import com.forcetech.Util; +import com.github.catvod.utils.Path; + +import java.io.File; public class MainActivity extends Service { @@ -14,11 +17,17 @@ public class MainActivity extends Service { public MainActivity() { try { + checkLibrary(); System.loadLibrary("mitv"); } catch (Throwable ignored) { } } + private void checkLibrary() throws Exception { + File cache = Path.cache("libmitv.so"); + if (!cache.exists()) Path.copy(getAssets().open("libmitv.so"), cache); + } + @Override public void onCreate() { super.onCreate(); diff --git a/forcetech/src/main/jniLibs/armeabi-v7a/libp2p.so b/forcetech/src/main/jniLibs/armeabi-v7a/libp2p.so new file mode 100644 index 000000000..7758b7cbf Binary files /dev/null and b/forcetech/src/main/jniLibs/armeabi-v7a/libp2p.so differ diff --git a/forcetech/src/main/jniLibs/armeabi-v7a/libp3p.so b/forcetech/src/main/jniLibs/armeabi-v7a/libp3p.so new file mode 100644 index 000000000..e7283345b Binary files /dev/null and b/forcetech/src/main/jniLibs/armeabi-v7a/libp3p.so differ diff --git a/forcetech/src/main/jniLibs/armeabi-v7a/libp4p.so b/forcetech/src/main/jniLibs/armeabi-v7a/libp4p.so new file mode 100644 index 000000000..488782761 Binary files /dev/null and b/forcetech/src/main/jniLibs/armeabi-v7a/libp4p.so differ diff --git a/forcetech/src/main/jniLibs/armeabi-v7a/libp5p.so b/forcetech/src/main/jniLibs/armeabi-v7a/libp5p.so new file mode 100644 index 000000000..9156844b1 Binary files /dev/null and b/forcetech/src/main/jniLibs/armeabi-v7a/libp5p.so differ diff --git a/forcetech/src/main/jniLibs/armeabi-v7a/libp6p.so b/forcetech/src/main/jniLibs/armeabi-v7a/libp6p.so new file mode 100644 index 000000000..7758b7cbf Binary files /dev/null and b/forcetech/src/main/jniLibs/armeabi-v7a/libp6p.so differ diff --git a/forcetech/src/main/jniLibs/armeabi-v7a/libp7p.so b/forcetech/src/main/jniLibs/armeabi-v7a/libp7p.so new file mode 100644 index 000000000..4e316daf9 Binary files /dev/null and b/forcetech/src/main/jniLibs/armeabi-v7a/libp7p.so differ diff --git a/forcetech/src/main/jniLibs/armeabi-v7a/libp8p.so b/forcetech/src/main/jniLibs/armeabi-v7a/libp8p.so new file mode 100644 index 000000000..a3c7cb185 Binary files /dev/null and b/forcetech/src/main/jniLibs/armeabi-v7a/libp8p.so differ diff --git a/forcetech/src/main/jniLibs/armeabi-v7a/libp9p.so b/forcetech/src/main/jniLibs/armeabi-v7a/libp9p.so new file mode 100644 index 000000000..e87f04504 Binary files /dev/null and b/forcetech/src/main/jniLibs/armeabi-v7a/libp9p.so differ diff --git a/jianpian/src/main/java/com/p2p/P2PClass.java b/jianpian/src/main/java/com/p2p/P2PClass.java index 7bb23b92e..95be7271c 100644 --- a/jianpian/src/main/java/com/p2p/P2PClass.java +++ b/jianpian/src/main/java/com/p2p/P2PClass.java @@ -1,6 +1,5 @@ package com.p2p; -import com.github.catvod.utils.Github; import com.github.catvod.utils.Path; public class P2PClass { @@ -8,7 +7,7 @@ public class P2PClass { public int port; public P2PClass() { - System.load(Github.getSo("jpa")); + System.loadLibrary("jpa"); this.port = P2Pdoxstarthttpd("TEST3E63BAAECDAA79BEAA91853490A69F08".getBytes(), Path.jpa().getAbsolutePath().getBytes()); } diff --git a/jianpian/src/main/jniLibs/arm64-v8a/libjpa.so b/jianpian/src/main/jniLibs/arm64-v8a/libjpa.so new file mode 100644 index 000000000..2d75eed49 Binary files /dev/null and b/jianpian/src/main/jniLibs/arm64-v8a/libjpa.so differ diff --git a/jianpian/src/main/jniLibs/armeabi-v7a/libjpa.so b/jianpian/src/main/jniLibs/armeabi-v7a/libjpa.so new file mode 100644 index 000000000..170246640 Binary files /dev/null and b/jianpian/src/main/jniLibs/armeabi-v7a/libjpa.so differ diff --git a/thunder/src/main/java/com/xunlei/downloadlib/XLLoader.java b/thunder/src/main/java/com/xunlei/downloadlib/XLLoader.java index 55a685da6..49183d2a9 100644 --- a/thunder/src/main/java/com/xunlei/downloadlib/XLLoader.java +++ b/thunder/src/main/java/com/xunlei/downloadlib/XLLoader.java @@ -1,6 +1,5 @@ package com.xunlei.downloadlib; -import com.github.catvod.utils.Github; import com.xunlei.downloadlib.parameter.BtIndexSet; import com.xunlei.downloadlib.parameter.BtSubTaskDetail; import com.xunlei.downloadlib.parameter.GetDownloadLibVersion; @@ -14,8 +13,8 @@ import com.xunlei.downloadlib.parameter.XLTaskLocalUrl; class XLLoader { public XLLoader() { - System.load(Github.getSo("xl_stat")); - System.load(Github.getSo("xl_thunder_sdk")); + System.loadLibrary("xl_stat"); + System.loadLibrary("xl_thunder_sdk"); } public native int createBtMagnetTask(String str, String str2, String str3, GetTaskId getTaskId); diff --git a/thunder/src/main/jniLibs/arm64-v8a/libxl_stat.so b/thunder/src/main/jniLibs/arm64-v8a/libxl_stat.so new file mode 100644 index 000000000..2d8e3d43b Binary files /dev/null and b/thunder/src/main/jniLibs/arm64-v8a/libxl_stat.so differ diff --git a/thunder/src/main/jniLibs/arm64-v8a/libxl_thunder_sdk.so b/thunder/src/main/jniLibs/arm64-v8a/libxl_thunder_sdk.so new file mode 100644 index 000000000..14230530f Binary files /dev/null and b/thunder/src/main/jniLibs/arm64-v8a/libxl_thunder_sdk.so differ diff --git a/thunder/src/main/jniLibs/armeabi-v7a/libxl_stat.so b/thunder/src/main/jniLibs/armeabi-v7a/libxl_stat.so new file mode 100644 index 000000000..f3eaddf28 Binary files /dev/null and b/thunder/src/main/jniLibs/armeabi-v7a/libxl_stat.so differ diff --git a/thunder/src/main/jniLibs/armeabi-v7a/libxl_thunder_sdk.so b/thunder/src/main/jniLibs/armeabi-v7a/libxl_thunder_sdk.so new file mode 100644 index 000000000..25dac4387 Binary files /dev/null and b/thunder/src/main/jniLibs/armeabi-v7a/libxl_thunder_sdk.so differ