Добавлена версия для мобилы

Этот коммит содержится в:
Softonik 2024-03-02 02:11:40 +03:00 коммит произвёл Nobody
родитель 3772187d95
коммит 79cc4608fa
6 изменённых файлов: 141 добавлений и 52 удалений

Просмотреть файл

@ -4,6 +4,7 @@ package main
import (
"context"
"fmt"
"log"
"os"
"strings"
@ -176,6 +177,11 @@ func TestSharedLibsBuild(ctx context.Context) error {
mg.Deps(Build_shared_lib)
return Bash(`rm lib/lib3dscreen.*`)
}
func build() {
Build_shared_lib(context.Background())
}
func Build_shared_lib(ctx context.Context) error {
return Bash(`sudo docker run --rm \
-h host \
@ -200,72 +206,52 @@ func Build_shared_lib(ctx context.Context) error {
'`)
}
func Build_installer(ctx context.Context) error {
return Bash(`sudo docker run --rm \
func Mobile() {
Build_Mobile()
Upload_Mobile()
}
func Build_Mobile() {
Bash(`sudo docker run -ti --rm \
-h host \
--net=none \
--net=bridge \
-v /etc/localtime:/etc/localtime:ro \
-v ` + GolangVolume + `:/usr/local/go:ro \
\
-v ` + GolangVolume + `:/usr/local/go:ro \
-v /gopath:/gopath:rw \
-v ${PWD}:/app \
\
-v /etc/java-17-openjdk:/etc/java-17-openjdk:ro \
-v /usr/lib/jvm/java-17-openjdk-amd64:/usr/lib/jvm/java-17-openjdk-amd64:ro \
\
-e PATH=$PATH:/usr/local/go/bin:/usr/lib/jvm/java-17-openjdk-amd64/bin \
-e GOPATH=/gopath \
-e GOCACHE=/gopath/gocache \
-e HOME=/home/user \
\
-w /app/cmd/installer \
-w /app/pkg/mlib/ktgo \
-u 1000 \
\
--entrypoint=/bin/bash \
-v android_sdk:/sdk:ro \
-e ANDROID_HOME=/sdk \
\
` + ImageName + " -c '" + ` \
mkdir -p /app/bin/ \
&& GOARCH=arm go build -o /app/install_helper \
' \
&& arm-linux-gnueabi-strip install_helper \
&& mv -fv install_helper ../../../src/installer/ \
--entrypoint=/gopath/bin/gomobile \
\
` + ImageName + " " + `\
bind -o /app/lib/ktgo.aar \
`)
Bash(`cp -afv lib/ktgo.aar ~/wd/mobile/apks/src/Telegram-FOSS/TMessagesProj/libs`)
}
func build() {
Bash(`GOPHERJS_GOROOT=/gopath/go/1.18/ gopherjs build 3diy/3dscreen/web/main -o js/app.js \
&& ls -l js/app.js \
&& node -e 'go = require("./js/app.js"); console.log(go);'`)
}
func Upload_Mobile() {
Bash(`unzip lib/ktgo.aar jni/arm64-v8a/libgojni.so \
&& adb push jni/arm64-v8a/libgojni.so /sdcard/scripts/ \
; rm jni/arm64-v8a/libgojni.so; rmdir jni/arm64-v8a jni \
`)
fmt.Printf(`
func ControlLinkWifi0() {
Bash(`curl '0:5005?conn=Wifi&enabled=0'`)
}
func ControlLinkWifi1() {
Bash(`curl '0:5005?conn=Wifi&enabled=1'`)
}
func ControlLinkWifiConn0() {
Bash(`curl '0:5005?conn=Wifi&connected=0'`)
}
func ControlLinkWifiConn1() {
Bash(`curl '0:5005?conn=Wifi&connected=1&ip=192.168.1.150&gw=192.168.1.1'`)
}
su -c 'mv -fv /sdcard/scripts/libgojni.so /data/app/*/org.telegram.messenger-*/lib/arm64'
func ControlLinkEther0() {
Bash(`curl '0:5005?conn=Ether&enabled=0'`)
}
func ControlLinkEther1() {
Bash(`curl '0:5005?conn=Ether&enabled=1'`)
}
func ControlLinkEtherConn0() {
Bash(`curl '0:5005?conn=Ether&connected=0'`)
}
func ControlLinkEtherConn1() {
Bash(`curl '0:5005?conn=Ether&connected=1&ip=192.168.1.150&gw=192.168.1.1'`)
}
func TestControlLinkStatus() {
Bash(`curl '0:5005/link_status?interface=eth0&reason=RECONFIGURE&ip=192.168.1.150&routers=192.168.1.1'`)
}
func TestControlZamenaInsertFilament() {
Bash(`curl '0:5005/send_from_terminal?m=Insert%20filament%20and%20press%20button'`)
}
func TestControlZamenaPurgeMore() {
Bash(`curl '0:5005/send_from_terminal?m=PurgeMore'`)
`)
Bash(`adb shell \
`)
}

7
go.mod
Просмотреть файл

@ -13,6 +13,11 @@ require (
github.com/onsi/gomega v1.24.1
)
require golang.org/x/sys v0.4.0 // indirect
require (
golang.org/x/mobile v0.0.0-20240213143359-d1f7d3436075 // indirect
golang.org/x/mod v0.15.0 // indirect
golang.org/x/sys v0.17.0 // indirect
golang.org/x/tools v0.18.0 // indirect
)
replace github.com/cucumber/godog => /gopath/src/my/godog

8
go.sum
Просмотреть файл

@ -148,6 +148,10 @@ golang.org/x/crypto v0.7.0 h1:AvwMYaRytfdeVt3u6mLaxYtErKYjxA2OXjJ1HHq6t3A=
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.15.0 h1:frVn1TEaCEaZcn3Tmd7Y2b5KKPaZ+I32Q2OA3kYp5TA=
golang.org/x/crypto v0.15.0/go.mod h1:4ChreQoLWfG3xLDer1WdlH5NdlQ3+mwnQq1YTKY+72g=
golang.org/x/mobile v0.0.0-20240213143359-d1f7d3436075 h1:iZzqyDd8gFkJZpsJNzveyScRBcQlsveheh6Q77LzhPY=
golang.org/x/mobile v0.0.0-20240213143359-d1f7d3436075/go.mod h1:Y8Bnziw2dX69ZhYuqQB8Ihyjks1Q6fMmbg17j9+ISNA=
golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8=
golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20211029224645-99673261e6eb/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.2.0 h1:sZfSu1wtKLGlWI4ZZayP0ck9Y73K1ynO6gqzTdBVdPU=
@ -180,6 +184,8 @@ golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM=
golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.14.0 h1:Vz7Qs629MkJkGyHxUlRHizWJRG2j8fbQKjELVSNhy7Q=
golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.11.0 h1:F9tnn/DA/Im8nCwm+fX+1/eBwi4qFjRT++MhtVC4ZX0=
golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU=
@ -199,6 +205,8 @@ golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.18.0 h1:k8NLag8AGHnn+PHbl7g43CtqZAwG60vZkLqgyZgIHgQ=
golang.org/x/tools v0.18.0/go.mod h1:GL7B4CwcLLeo59yx/9UWWuNOW1n3VZ4f5axWfML7Lcg=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f h1:GGU+dLjvlC3qDwqYgL6UgRmHXhOOgns0bZu2Ty5mm6U=
golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=

23
pkg/mlib/ktgo/lib.go Обычный файл
Просмотреть файл

@ -0,0 +1,23 @@
package ktgo
import (
"strings"
)
func isBlackListed(s string) bool {
for _, b := range *blockedList_case.GetList() {
if strings.Contains(s, b) {
return true
}
}
s_low := strings.ToLower(s)
for _, b := range *blockedList.GetList() {
b = strings.ToLower(b)
if strings.Contains(s_low, b) {
return true
}
}
return false
}

19
pkg/mlib/ktgo/main.go Обычный файл
Просмотреть файл

@ -0,0 +1,19 @@
package ktgo
import (
"fmt"
)
func init() {
fmt.Printf("KTGO: init\n")
initStorage()
}
func IsBlackListed(in string) bool {
r := isBlackListed(in)
// fmt.Printf("KTGO: IsBlackListed: %v\n", r)
// dump := spew.Sdump(in)
// fmt.Printf("KTGO: IsBlackListed: %v: %v\n", dump, r)
return r
}

48
pkg/mlib/ktgo/storage.go Обычный файл
Просмотреть файл

@ -0,0 +1,48 @@
package ktgo
import (
"log"
"my/ktgo/pkg/storage"
)
const (
DataDir = "/sdcard/DCIM"
BlockedListFileName = DataDir + "/blocked_list.txt.jpg"
BlockedListFileName_case = DataDir + "/blocked_list_case.txt.jpg"
)
var (
blockedList, blockedList_case *storage.Storage
)
func initStorage() {
var err error
blockedList, err = storage.NewStorage(BlockedListFileName)
if err != nil {
log.Fatalf("Storage: %v: %v\n", BlockedListFileName, err)
}
blockedList_case, err = storage.NewStorage(BlockedListFileName_case)
if err != nil {
log.Fatalf("Storage: %v: %v\n", BlockedListFileName, err)
}
}
// func ensureListsExist() {
// os.MkdirAll(DataDir, 0755)
// ensureFile(BlockedListFileName)
// ensureFile(BlockedListFileName_case)
// }
// func ensureFile(name string) {
// _, err := os.Stat(name)
// if err == nil {
// return
// }
// f, err := os.OpenFile(BlockedListFileName, os.O_RDWR|os.O_CREATE, 0644)
// if f != nil {
// f.Close()
// }
// }