Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e34d5675eb | ||
|
|
94c7ffb788 | ||
|
|
0647ef4c6d | ||
|
|
97c6ff95cd |
+18
-4
@@ -1,14 +1,28 @@
|
||||
#!/bin/bash
|
||||
|
||||
ndk-build clean
|
||||
ndk-build
|
||||
function try () {
|
||||
"$@" || exit -1
|
||||
}
|
||||
|
||||
# Build
|
||||
try ndk-build clean
|
||||
try ndk-build
|
||||
|
||||
# copy executables
|
||||
rm -rf src/main/assets/armeabi-v7a
|
||||
rm -rf src/main/assets/x86
|
||||
mkdir -p src/main/assets/armeabi-v7a
|
||||
mkdir -p src/main/assets/x86
|
||||
for app in pdnsd redsocks
|
||||
do
|
||||
mv libs/armeabi-v7a/$app src/main/assets/armeabi-v7a/
|
||||
mv libs/x86/$app src/main/assets/x86/
|
||||
try mv libs/armeabi-v7a/$app src/main/assets/armeabi-v7a/
|
||||
try mv libs/x86/$app src/main/assets/x86/
|
||||
done
|
||||
|
||||
# copy libraries
|
||||
rm -rf src/main/jni/armeabi-v7a
|
||||
rm -rf src/main/jni/x86
|
||||
mkdir -p src/main/jni/armeabi-v7a
|
||||
mkdir -p src/main/jni/x86
|
||||
try mv libs/armeabi-v7a/*.so src/main/jni/armeabi-v7a/
|
||||
try mv libs/x86/*.so src/main/jni/x86/
|
||||
|
||||
+1
-1
Submodule jni/shadowsocks updated: 06f1a57c9b...5d7dd372fc
+5
-5
@@ -21,11 +21,11 @@ jstring Java_com_github_shadowsocks_system_getabi(JNIEnv *env, jobject thiz) {
|
||||
} else if (family == ANDROID_CPU_FAMILY_MIPS) {
|
||||
abi = "mips";
|
||||
} else if (family == ANDROID_CPU_FAMILY_ARM) {
|
||||
if (features & ANDROID_CPU_ARM_FEATURE_ARMv7) {
|
||||
abi = "armeabi-v7a";
|
||||
} else {
|
||||
abi = "armeabi";
|
||||
}
|
||||
// if (features & ANDROID_CPU_ARM_FEATURE_ARMv7) {
|
||||
abi = "armeabi-v7a";
|
||||
// } else {
|
||||
// abi = "armeabi";
|
||||
// }
|
||||
}
|
||||
return env->NewStringUTF(abi);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.github.shadowsocks"
|
||||
android:versionCode="71"
|
||||
android:versionName="2.2.3">
|
||||
android:versionCode="74"
|
||||
android:versionName="2.2.6">
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
|
||||
|
||||
@@ -114,25 +114,40 @@ class ShadowsocksNatService extends Service with BaseService {
|
||||
})
|
||||
}
|
||||
|
||||
val raw_args = ("ss-local -b 127.0.0.1 -s %s -p %d -l %d -k %s -m %s -f " +
|
||||
Path.BASE + "ss-local.pid")
|
||||
.format(config.proxy, config.remotePort, config.localPort, config.sitekey, config.encMethod)
|
||||
val args = if (Build.VERSION.SDK_INT >= 20) {
|
||||
raw_args
|
||||
} else {
|
||||
Path.BASE + raw_args
|
||||
}
|
||||
val cmd = if (config.isGFWList && isACLEnabled) args + " --acl " + Path.BASE + "chn.acl" else args
|
||||
if (BuildConfig.DEBUG) Log.d(TAG, cmd)
|
||||
val cmd = new ArrayBuffer[String]
|
||||
cmd += ("ss-local"
|
||||
, "-b" , "127.0.0.1"
|
||||
, "-s" , config.proxy
|
||||
, "-p" , config.remotePort.toString
|
||||
, "-l" , config.localPort.toString
|
||||
, "-k" , config.sitekey
|
||||
, "-m" , config.encMethod
|
||||
, "-f" , (Path.BASE + "ss-local.pid"))
|
||||
|
||||
Core.sslocal(cmd.split(" "))
|
||||
if (config.isGFWList && isACLEnabled) {
|
||||
cmd += "--acl"
|
||||
cmd += (Path.BASE + "chn.acl")
|
||||
}
|
||||
|
||||
if (BuildConfig.DEBUG) Log.d(TAG, cmd.mkString(" "))
|
||||
|
||||
Core.sslocal(cmd.toArray)
|
||||
}
|
||||
|
||||
def startDnsDaemon() {
|
||||
val args = if (config.isUdpDns) {
|
||||
("ss-tunnel -b 127.0.0.1 -s %s -p %d -l %d -k %s -m %s -L 8.8.8.8:53 -u -f " +
|
||||
Path.BASE + "ss-tunnel.pid")
|
||||
.format(config.proxy, config.remotePort, 8153, config.sitekey, config.encMethod)
|
||||
if (config.isUdpDns) {
|
||||
val cmd = new ArrayBuffer[String]
|
||||
cmd += ("ss-tunnel" , "-u"
|
||||
, "-b" , "127.0.0.1"
|
||||
, "-l" , "8153"
|
||||
, "-L" , "8.8.8.8:53"
|
||||
, "-s" , config.proxy
|
||||
, "-p" , config.remotePort.toString
|
||||
, "-k" , config.sitekey
|
||||
, "-m" , config.encMethod
|
||||
, "-f" , (Path.BASE + "ss-tunnel.pid"))
|
||||
if (BuildConfig.DEBUG) Log.d(TAG, cmd.mkString(" "))
|
||||
Core.sstunnel(cmd.toArray)
|
||||
} else {
|
||||
val conf = {
|
||||
if (config.isGFWList)
|
||||
@@ -143,20 +158,15 @@ class ShadowsocksNatService extends Service with BaseService {
|
||||
ConfigUtils.printToFile(new File(Path.BASE + "pdnsd.conf"))(p => {
|
||||
p.println(conf)
|
||||
})
|
||||
"pdnsd -c " + Path.BASE + "pdnsd.conf"
|
||||
}
|
||||
|
||||
val cmd = if (Build.VERSION.SDK_INT >= 20) {
|
||||
"/system/bin/" + args
|
||||
} else {
|
||||
Path.BASE + args
|
||||
}
|
||||
val args = "pdnsd -c " + Path.BASE + "pdnsd.conf"
|
||||
|
||||
if (BuildConfig.DEBUG) Log.d(TAG, cmd)
|
||||
|
||||
if (config.isUdpDns) {
|
||||
Core.sstunnel(cmd.split(" "))
|
||||
} else {
|
||||
val cmd = if (Build.VERSION.SDK_INT >= 20) {
|
||||
"/system/bin/" + args
|
||||
} else {
|
||||
Path.BASE + args
|
||||
}
|
||||
if (BuildConfig.DEBUG) Log.d(TAG, cmd)
|
||||
Console.runRootCommand(cmd)
|
||||
}
|
||||
}
|
||||
@@ -225,10 +235,6 @@ class ShadowsocksNatService extends Service with BaseService {
|
||||
|
||||
val icon = getResources.getDrawable(R.drawable.ic_stat_shadowsocks)
|
||||
if (rate >= 0) {
|
||||
val bitmap = Utils
|
||||
.getBitmap(rate.toString, icon.getIntrinsicWidth * 4, icon.getIntrinsicHeight * 4,
|
||||
Color.TRANSPARENT)
|
||||
builder.setLargeIcon(bitmap)
|
||||
|
||||
if (rate < 1000) {
|
||||
builder.setSmallIcon(R.drawable.ic_stat_speed, rate)
|
||||
|
||||
@@ -80,12 +80,17 @@ class ShadowsocksVpnService extends VpnService with BaseService {
|
||||
}
|
||||
|
||||
def startShadowsocksDaemon() {
|
||||
val cmd: String = (Path.BASE +
|
||||
"ss-local -b 127.0.0.1 -s %s -p %d -l %d -k %s -m %s -u -f " +
|
||||
Path.BASE + "ss-local.pid")
|
||||
.format(config.proxy, config.remotePort, config.localPort, config.sitekey, config.encMethod)
|
||||
if (BuildConfig.DEBUG) Log.d(TAG, cmd)
|
||||
Core.sslocal(cmd.split(" "))
|
||||
val cmd = new ArrayBuffer[String]
|
||||
cmd += ("ss-local" , "-u"
|
||||
, "-b" , "127.0.0.1"
|
||||
, "-s" , config.proxy
|
||||
, "-p" , config.remotePort.toString
|
||||
, "-l" , config.localPort.toString
|
||||
, "-k" , config.sitekey
|
||||
, "-m" , config.encMethod
|
||||
, "-f" , (Path.BASE + "ss-local.pid"))
|
||||
if (BuildConfig.DEBUG) Log.d(TAG, cmd.mkString(" "))
|
||||
Core.sslocal(cmd.toArray)
|
||||
}
|
||||
|
||||
def startDnsDaemon() {
|
||||
|
||||
Reference in New Issue
Block a user