Simplify down a bit
This commit is contained in:
parent
d23a8567e6
commit
162f0d4f61
|
@ -2,4 +2,5 @@
|
||||||
*.class
|
*.class
|
||||||
*.dex
|
*.dex
|
||||||
*.jks
|
*.jks
|
||||||
|
*.apk.idsig
|
||||||
R.java
|
R.java
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="coffee.source.helloworld"
|
package="helloworld"
|
||||||
versionCode="0"
|
versionCode="0"
|
||||||
versionName="0">
|
versionName="0">
|
||||||
<uses-sdk android:minSdkVersion="19"/>
|
<uses-sdk android:minSdkVersion="19"/>
|
||||||
|
|
|
@ -1,12 +1,22 @@
|
||||||
package coffee.source.helloworld;
|
import helloworld.R;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
import java.net.HttpURLConnection;
|
||||||
|
import java.net.URL;
|
||||||
|
|
||||||
public class HelloWorld extends Activity {
|
public class HelloWorld extends Activity {
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
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);
|
super.onCreate(savedInstanceState);
|
||||||
setContentView(R.layout.activity_main);
|
setContentView(R.layout.activity_main);
|
||||||
|
|
69
Makefile
69
Makefile
|
@ -1,48 +1,55 @@
|
||||||
ANDROIDSDK=/usr/lib/android-sdk/build-tools/debian
|
.POSIX:
|
||||||
PLATFORM=/usr/lib/android-sdk/platforms/android-23/android.jar
|
|
||||||
MINSDK=19
|
|
||||||
APP=src/coffee/source/helloworld
|
|
||||||
|
|
||||||
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:
|
# Resources:
|
||||||
# https://www.hanshq.net/command-line-android.html
|
# https://www.hanshq.net/command-line-android.html
|
||||||
|
|
||||||
helloworld.apk: helloworld.aligned.apk keystore.jks
|
$(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 $@ $<
|
apksigner sign \
|
||||||
|
--ks keystore.jks \
|
||||||
|
--ks-key-alias androidkey \
|
||||||
|
--ks-pass pass:android \
|
||||||
|
--key-pass pass:android \
|
||||||
|
--out $@ $<
|
||||||
|
|
||||||
keystore.jks:
|
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 $< $@
|
zipalign -f -p 4 $< $@
|
||||||
|
|
||||||
helloworld.unsigned.apk: dex/classes.dex AndroidManifest.xml
|
$(PROJECT).unsigned.apk: dex/classes.dex AndroidManifest.xml
|
||||||
aapt package -f -v -F $@ -I $(PLATFORM) -M AndroidManifest.xml -S res dex
|
aapt package -f -F $@ -I $(PLATFORM) -M AndroidManifest.xml -S res dex
|
||||||
|
|
||||||
dex/classes.dex: $(CLASSES)
|
dex/classes.dex: $(OBJECTS) AndroidManifest.xml
|
||||||
[ -e dex ] || mkdir dex
|
mkdir -p dex
|
||||||
$(ANDROIDSDK)/dx --dex --verbose --min-sdk-version=$(MINSDK) --output=$@ src
|
$(DX) --dex --output=$@ $(OBJECTS)
|
||||||
|
|
||||||
$(APP)/HelloWorld.class: $(APP)/*.java $(APP)/R.java
|
$(OBJECTS): $(OBJECTS:.class=.java) $(R)
|
||||||
javac -bootclasspath $(PLATFORM) -classpath src -source 1.7 -target 1.7 $^
|
javac -bootclasspath $(PLATFORM) -source 1.7 *.java
|
||||||
|
|
||||||
$(APP)/R.java: AndroidManifest.xml res/*
|
$(R): AndroidManifest.xml $(RESOURCES)
|
||||||
aapt package -f -m -J src -S res -M AndroidManifest.xml -I $(PLATFORM)
|
aapt package -f -m -S res -M AndroidManifest.xml -I $(PLATFORM) -J .
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -vf $(APP)/R.java \
|
rm -f $(R) *.java.class *.unsigned.apk *.aligned.apk *.apk.idsig dex/*.dex
|
||||||
$(APP)/*.class \
|
|
||||||
*.unsigned.apk \
|
|
||||||
*.aligned.apk \
|
|
||||||
dex/*.dex
|
|
||||||
|
|
||||||
distclean: clean
|
distclean: clean
|
||||||
[ ! -d dex ] || rmdir dex
|
rm -rf dex/ *.apk keystore.jks
|
||||||
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
|
|
||||||
|
|
Loading…
Reference in New Issue