aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: b69b05531f565c90532bee6830af9d16c9e346fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
.PHONY: all clean

moku-assistant.apk: AndroidManifest.xml libs/arm64-v8a/libmoku.so debug.keystore
	rm -rf apk
	mkdir -p apk/lib/arm64-v8a
	cp libs/arm64-v8a/libmoku.so apk/lib/arm64-v8a/
	cp vosk/libvosk.so apk/lib/arm64-v8a/
	aapt package -f -M AndroidManifest.xml -I $(ANDROID_SDK_ROOT)/platforms/android-34/android.jar -F moku-assistant.apk apk/
	apksigner sign --ks debug.keystore --ks-pass pass:android moku-assistant.apk

libs/arm64-v8a/libmoku.so: vosk/libvosk.so vosk/include/vosk_api.h
	ndk-build

vosk/libvosk.so:
	rm -rf tmp/vosk vosk.zip
	wget https://repo1.maven.org/maven2/com/alphacephei/vosk-android/0.3.75/vosk-android-0.3.75.aar
	mkdir -p ./tmp/vosk
	mv vosk-android-0.3.75.aar ./tmp/vosk/vosk.zip
	cd ./tmp/vosk && unzip ./vosk.zip
	mkdir -p vosk
	cp ./tmp/vosk/jni/arm64-v8a/libvosk.so vosk/libvosk.so 

vosk/include/vosk_api.h:
	mkdir -p vosk/include
	cd vosk/include && wget https://raw.githubusercontent.com/alphacep/vosk-api/refs/tags/v0.3.50/src/vosk_api.h

all: moku-assistant.apk

clean:
	rm -rf apk libs obj moku-assistant.apk moku-assistant.apk.idsig debug.keystore vosk-android-0.3.75.aar tmp vosk

debug.keystore:
	keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -keyalg RSA -keysize 2048 -validity 10000 -dname "CN=Android Debug, O=Android, C=US" -storepass android -keypass android