.java Quelltext-Datei ohne Seiteneffekte aus Projekt entfernen

Q

qwert_zuiopue

Fortgeschrittenes Mitglied
6
Hallo :),

ich habe ein Android-Projekt erstellt und möchte nun jemandem Dritten ermöglichen, das Projekt selbst zu verändern und zu kompilieren. Dabei gibt es jedoch eine Einschränkung: Es existiert eine Datei namens "Geheim.java", von der ich nur die .class-Datei ausliefern kann.

Folgende Versuche sind erfolglos geblieben:
1. Einfach die .java-Datei löschen => Eclipse findet auch die Klasse nicht mehr
2. Die .java Datei löschen und die entsprechende .class-Datei in den Projekt-Einstellungen hinzufügen => Eclipse findet wiederum die Klasse nicht mehr
3. Ein jar-Archiv des gesamten Projekts erstellen und in ein neues Projekt (mit anderem Paketnamen) einbinden und Manifest anpassen => Kompiliert ohne Probleme, allerdings beendet sich die App gleich nach dem Starten mit einer "NoClassDefFoundException"

Ich bin mir sicher, dass es irgendwie geht, nur fällt mir momentan nichts mehr ein, weshalb ich sehr dankbar für Hinweise, die zur Lösung meines Problems führen, bin.

Also danke schon mal :).
 
Sinnloss, da sich auch .class Dateien dekompilieren lassen
 
Die Frage ist was da so fürchterlich geheim ist?

cu
 
Ja, da hast du natürlich Recht.


Wie könnte ich sowas dann umsetzen?
Die betreffende Java-Klasse realisiert den Verbindungsaufbau zu meinem Server - ich möchte das Serverpasswort gerne geheim halten.
 
Das meinte ich... wenn die Sicherheit des Servers daran hängt das man das Passwort in der App nicht findet... dann stimmt das Konzept schonmal grundsätzlich nicht.

cu
 
Ich hab leider nicht so viel Ahnung von Netzwerkprogrammierung.

Könntest du mir einen Hinweis geben, wonach ich suchen muss?
 
Naja, was machst du da eigentlich? Was ist das für ein Serverpasswort?

cu
 
Ich hab nochmal nachgedacht und ich glaub, das Problem ist nicht lösbar.
Genauer funktioniert es so:
Meine App trägt Daten in eine DB ein. Dazu ruft die App ein PHP-Skript auf. Geheim ist lediglich wie das Skript genau heißt :D.
Allerdings kann man auch ohne Dekompilieren das Programm so schreiben, dass endlos Daten in die DB geschickt werden.

Da fällt mir grad ein:
Ich könnte doch die IP-Adresse speichern und pro Zeiteinheit nur 1 Anfrage zulassen, dann könnte niemand so einfach die DB fluten. Meinungen dazu? :)
 
qwert_zuiopue schrieb:
Ich könnte doch die IP-Adresse speichern und pro Zeiteinheit nur 1 Anfrage zulassen, dann könnte niemand so einfach die DB fluten. Meinungen dazu? :)

Jup, das wäre eine Möglichkeit. Allerdings kannst du nicht verhindern das jemand deinen Server mit 3 Millionen Anfragen pro Sekunde lahmlegt ;-) So ganz verhindern kannst du Vandalismus nie.

Aber sofern es gewollt ist das jeder diese Schnittstelle nutzen können soll, wäre das (nur x Anfragen pro Zeiteinheit) eine gute Lösung um zu verhindern das jemand zu viel Blödsinn macht.

Du könntest auch nen Account einführen (man braucht Nutzername/Passwort). Wenn jemand Schwachsinn Einträgt, dann könntest du in einen Rutsch alle Einträge dieses Nutzers löschen.

cu
 
  • Danke
Reaktionen: qwert_zuiopue

Ähnliche Themen

D
Antworten
23
Aufrufe
2.531
Data2006
D
M
Antworten
2
Aufrufe
628
Mozart40
M
M
  • MikelKatzengreis
Antworten
5
Aufrufe
127
swa00
swa00
Zurück
Oben Unten