From 95c363a645eedbef086d7333274e0eab71c0b887 Mon Sep 17 00:00:00 2001 From: Xavier Del Campo Romero Date: Thu, 13 Apr 2023 00:00:19 +0200 Subject: [PATCH] Simplify down a bit --- .gitignore | 1 + AndroidManifest.xml | 2 +- .../HelloWorld.java => HelloWorld.java | 14 +++- Makefile | 69 ++++++++++--------- 4 files changed, 52 insertions(+), 34 deletions(-) rename src/coffee/source/helloworld/HelloWorld.java => HelloWorld.java (55%) diff --git a/.gitignore b/.gitignore index 57e1748..1ef7f42 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ *.class *.dex *.jks +*.apk.idsig R.java diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 1d79277..242f46d 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1,6 +1,6 @@ diff --git a/src/coffee/source/helloworld/HelloWorld.java b/HelloWorld.java similarity index 55% rename from src/coffee/source/helloworld/HelloWorld.java rename to HelloWorld.java index bf012e2..45d4eb8 100644 --- a/src/coffee/source/helloworld/HelloWorld.java +++ b/HelloWorld.java @@ -1,12 +1,22 @@ -package coffee.source.helloworld; - +import helloworld.R; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; +import java.net.HttpURLConnection; +import java.net.URL; public class HelloWorld extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { + + try { + URL url = new URL("https://slcl.privatedns.org"); + + HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); + } catch (Exception e) { + //TODO: handle exception + } + super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); diff --git a/Makefile b/Makefile index 8072390..c0a2e70 100644 --- a/Makefile +++ b/Makefile @@ -1,48 +1,55 @@ -ANDROIDSDK=/usr/lib/android-sdk/build-tools/debian -PLATFORM=/usr/lib/android-sdk/platforms/android-23/android.jar -MINSDK=19 -APP=src/coffee/source/helloworld +.POSIX: -CLASSES=$(patsubst %.java,%.class,$(wildcard $(APP)/*.java)) +PROJECT = helloworld +ANDROIDSDK = /usr/lib/android-sdk +DX = $(ANDROIDSDK)/build-tools/debian/dx +PLATFORM = $(ANDROIDSDK)/platforms/android-23/android.jar +OBJECTS = \ + HelloWorld.class +RESOURCES = \ + res/layout/activity_main.xml +R = helloworld/R.java # Resources: # https://www.hanshq.net/command-line-android.html -helloworld.apk: helloworld.aligned.apk keystore.jks - apksigner sign --ks keystore.jks --ks-key-alias androidkey --ks-pass pass:android --key-pass pass:android --out $@ $< +$(PROJECT).apk: $(PROJECT).aligned.apk keystore.jks + apksigner sign \ + --ks keystore.jks \ + --ks-key-alias androidkey \ + --ks-pass pass:android \ + --key-pass pass:android \ + --out $@ $< keystore.jks: - keytool -genkeypair -keystore $@ -alias androidkey -validity 10000 -keyalg RSA -keysize 2048 -storepass android -keypass android + keytool \ + -genkeypair \ + -keystore $@ \ + -alias androidkey \ + -validity 10000 \ + -keyalg RSA \ + -keysize 4096 \ + -storepass android \ + -keypass android -helloworld.aligned.apk: helloworld.unsigned.apk +$(PROJECT).aligned.apk: $(PROJECT).unsigned.apk zipalign -f -p 4 $< $@ -helloworld.unsigned.apk: dex/classes.dex AndroidManifest.xml - aapt package -f -v -F $@ -I $(PLATFORM) -M AndroidManifest.xml -S res dex +$(PROJECT).unsigned.apk: dex/classes.dex AndroidManifest.xml + aapt package -f -F $@ -I $(PLATFORM) -M AndroidManifest.xml -S res dex -dex/classes.dex: $(CLASSES) - [ -e dex ] || mkdir dex - $(ANDROIDSDK)/dx --dex --verbose --min-sdk-version=$(MINSDK) --output=$@ src +dex/classes.dex: $(OBJECTS) AndroidManifest.xml + mkdir -p dex + $(DX) --dex --output=$@ $(OBJECTS) -$(APP)/HelloWorld.class: $(APP)/*.java $(APP)/R.java - javac -bootclasspath $(PLATFORM) -classpath src -source 1.7 -target 1.7 $^ +$(OBJECTS): $(OBJECTS:.class=.java) $(R) + javac -bootclasspath $(PLATFORM) -source 1.7 *.java -$(APP)/R.java: AndroidManifest.xml res/* - aapt package -f -m -J src -S res -M AndroidManifest.xml -I $(PLATFORM) +$(R): AndroidManifest.xml $(RESOURCES) + aapt package -f -m -S res -M AndroidManifest.xml -I $(PLATFORM) -J . clean: - rm -vf $(APP)/R.java \ - $(APP)/*.class \ - *.unsigned.apk \ - *.aligned.apk \ - dex/*.dex + rm -f $(R) *.java.class *.unsigned.apk *.aligned.apk *.apk.idsig dex/*.dex distclean: clean - [ ! -d dex ] || rmdir dex - rm -vf *.apk - -squeaky-clean: distclean - @echo 'Warning! This will remove your signing keys!' - @echo 'You have 5 seconds to press CTRL-C' - @sleep 5 - rm -vf *.jks + rm -rf dex/ *.apk keystore.jks