Du bist nicht angemeldet. [Anmelden]
Seite 2 von 3 < 1 2 3 > alle
Optionen
Thema bewerten
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2905071 - 15.06.2018, 01:30:58
Sephiroth ME
​gods own prototype

Registriert: 24.11.2003
Beiträge: 215
Ort: RLP, DE
Da ich nicht alle Methoden offenlegen will, hab ich dir eine /m mit der Erklärung geschrieben.
_________________________
one step closer to world domination

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2905226 - 15.06.2018, 21:45:38
Sephiroth ME
​gods own prototype

Registriert: 24.11.2003
Beiträge: 215
Ort: RLP, DE
Antwort auf: TobyB
Client.pageData ist korrekt befüllt
Eben nochmal getestet:
Console =>
Code:
Client.pageData
undefined
Wenn korrekt undefined ist, dann okay. =)
_________________________
one step closer to world domination

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: Sephiroth ME] - #2905264 - 16.06.2018, 00:13:25
djchrisnet
Verif​ied P​rotot​ype H​ater​

Registriert: 27.05.2006
Beiträge: 835
Ort: Elmshorn
Du musst die Console auch im Scope des appContent ausführen, nicht von "top", siehe dazu Skype
_________________________
» AppEntwickler-Coach
» Prototype Hater



[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: djchrisnet] - #2905266 - 16.06.2018, 00:18:42
Sephiroth ME
​gods own prototype

Registriert: 24.11.2003
Beiträge: 215
Ort: RLP, DE
Nein habs auf appContent ebene ausgeführt, allerdings öffne ich die HTML File mit new HTMLFile('bla') - das Objekt wird nicht gesetzt, allerdings sollte es in "Client" dann dennoch definiert sein mit undefined oder null. Aber Client.hasOwnProperty('pageData') gibt false zurück, falls man es nur über new HTMLFile() ohne pageData Parameter geöffnet hat.

War nicht explizit genug, entschuldige. :)
_________________________
one step closer to world domination

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: Sephiroth ME] - #2905340 - 16.06.2018, 20:16:33
Sephiroth ME
​gods own prototype

Registriert: 24.11.2003
Beiträge: 215
Ort: RLP, DE
Client.getHostFrame().setTitle() wird nicht übernommen, es fehlt der Funktionsaufruf für postMessage() (wird aktuell nur ausgeführt durch den Eventlistener)
Code:
e.addEventListener("DOMContentLoaded", function() {
	l.appTitle && (document.title = l.appTitle), document.title || (document.title = "App"), f({
		type: "setTitle",
		params: [document.title]
	})
});
Ein window.dispatchEvent(new Event('DOMContentLoaded')); löst es aktuell.
Code:
Client.getHostFrame().setTitle("Some stuff!");
window.dispatchEvent(new Event("DOMContentLoaded"));

loaderServer Wert: closeOnDisconnect = true wird nicht berücksichtigt => AppContent.Popup öffnen => Channel verlassen => bleibt geöffnet. - Overlays/Headerbars werden Notgedrungen durch die Channelschließung beendet.

Ebenso Backspace löst dies aus:
Code:
knuddels-tools.js?loaderHash=1529100600407:1
'KeyboardEvent.keyLocation' is deprecated and will be removed in M50, around April 2016.
Please use 'KeyboardEvent.location' instead. See https://www.chromestatus.com/features/4997403308457984 for more details.
_________________________
one step closer to world domination

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: Sephiroth ME] - #2905522 - 18.06.2018, 08:33:40
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Antwort auf: Sephiroth ME
Client.hasOwnProperty('pageData') gibt false zurück

Stimmt, das ist ein Bug. Wird gefixt.

"closeOnDisconnect" hab ich auch auf die Bugfix Liste gesetzt.

Antwort auf: Sephiroth ME
Ebenso Backspace löst dies aus:
Code:
knuddels-tools.js?loaderHash=1529100600407:1
'KeyboardEvent.keyLocation' is deprecated and will be removed in M50, around April 2016.
Please use 'KeyboardEvent.location' instead. See https://www.chromestatus.com/features/4997403308457984 for more details.

Ich weiß nicht woher das kommen soll, ich finde kein "keyLocation" in unserem Code. [Und alles funktioniert soweit ja auch in Chrome >= 50]

"Client.getHostFrame().setTitle("Some stuff!");" hab ich auch auf der Bugfix Liste.

-----------

Antwort auf: Sephiroth ME
window.dispatchEvent(new Event('DOMContentLoaded'))

Ich rate dir und jedem anderen deutlich davon ab so etwas zu tun (das künstliche Erzeugen von existierenden nativen Events - schlimm genug, dass die Spec das erlaubt). "DOMContentLoaded" ist ein Lifecycle-Event des Browsers (siehe MDN Doc for Events (besonders: "HTML DOM Events")). Wenn du das künstlich (erneut) abfeuerst, dann kannst du damit unvorhersehbare Effekte und Probleme provozieren. In aller Regel sind Event-Handler für dieses Event auch nicht darauf vorbereitet mehrfach ausgeführt zu werden, eben da dieses Event exakt ein Mal im tatsächlichen Lifecycle der Webseite passiert.
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2905833 - 19.06.2018, 16:57:46
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Hallo :-)


Wir haben eben auf dem Dev-Server ein Update der API ausgerollt. Damit haben wir folgende Punkte behoben:
  • Die Property Client.pageData ist nun (wie vorher) immer existend, hat als Wert aber undefined wenn keine pageData vorhanden ist
  • Der Titel wird nun beim Laden der App und beim setzen via Client.getHostFrame().setTitle('someTitle') korrekt aktualisiert/gesetzt
  • Echte Interaktion eines Users mit der HTML-UI zählt nun wieder als Aktivität (das hat nicht überall und immer funktioniert)
  • Diverse kleinere Bugfixes, besonders für den JavaFX Browser der z.B. noch im Applet benutzt wird

Sonstige Hinweise:
  • Das erwähnte closeOnDisconnect ist eine interne API und funktioniert wie gewünscht
  • Cache-Invalidation für z.B. CSS-Dateien (wurde hier nachgefragt) gibt es schon immer out-of-the-box via Client.includeCSS()
  • Um es Entwickler-Neulingen in der nun beschränkteren Umgebung etwas einfacher zu machen haben wir z.B. alert() durch console.log() ersetzt und geben gleichzeitig ein Warning in der Console aus das darauf hinweist

Bitte testet noch mal dass alles funktioniert wie es soll.
Wir planen aktuell das ganze in wenigen Wochen Live für alle UserApps auszurollen.


Happy Testing. :)
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: Kev777] - #2905901 - 20.06.2018, 08:17:30
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Ich hätte da noch eine Bitte an Kev (und gerne jeder der sich sonst noch angesprochen fühlt!)

Antwort auf: Kev777
auch meine testapp mit unity, auch wenn die echt noch nicht viel tut, läuft.

Wer sich eventuell an Nics Posting zu unserer Unity3D App aus einem unserer Hackathons erinnert, der wird vermutlich auch noch folgenden Faupax von uns (bzw. dem UserApps System) kennen:
Antwort auf: nic95
Leider hat das UserApp System ein paar gemeine Sonderheiten. Zum Beispiel überschreiben wir URL, was Unity intern zum nachladen von Spielinhalten nutzt. Glücklicherweise können wir unsere eigenen JavaScript Dateien schnell anpassen. Der Übeltäter überschreibt nun zwar immernoch URL, stellt in window._URL aber das ursprüngliche Objekt bereit. Damit kann in der von Unity generierten HTML Seite ein kleines Schnippsel eingebunden werden, das _URL wieder zurück in URL kopiert.
Es muss also die Vorlage der von Unity generierten index.html angepasst werden. Unity bietet dafür benutzerdefinierte Templates. Damit kann das folgende Schnippsel leicht eingebunden werden, welches alle von Unity benötigten Funktionen des URL Objekts wiederherstellt. Stellt sicher, dass das Schnippsel eingebunden wird, bevor “UnityLoader.instantiate” aufgerufen wird.
Code:
<script>
	URL.createObjectURL = _URL.createObjectURL;
	URL.revokeObjectURL = _URL.revokeObjectURL;
</script>

Im Zuge der Umbauten an der API der letzten Wochen haben wir dieses Problem behoben. Wir überschreiben nicht mehr das Browser-native globale URL Objekt. Wir haben allerdings das damals als Workaround eingeführte globale Objekt _URL unangetastet gelassen um mit euren bestehenden Apps kompatibel zu bleiben. Allerdings würden wir diesen Workaround gerne irgendwann entfernen. Das heißt ihr könnt und sollt gerne den von Nic beschriebenen Workaround ausbauen, es sollte jetzt out-of-the-box funktionieren.

Daher wäre es super wenn ihr das tun und testen könntet. :)
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2906159 - 21.06.2018, 16:19:38
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Hallo :)


Das Test-Szenario wurde soeben ein wenig erweitert. Ihr könnt und sollt jetzt nicht nur eure UserApps testen sondern könnt und sollt auch die SystemApps testen die zum Thema UserApps/MyChannel gehören. Das ganze findet auch auf dem Dev-Server statt.

Die Apps sind:
- Entwickler-AGB
- /apps
- UserApp-Toplisten
- MyChannel-Monetarisierung
- /kcode web (KCode-Tool um zu prüfen wie das alles im HTMLChat aussieht)

HINWEIS:
Es gibt bei SystemApps in seltenen Fällen das Problem, dass der erste Versuche die App zu öffnen nicht korrekt funktioniert, dann bleibt die App im loading-Vorgang stecken. Dann einfach die App erneut öffnen, dann gehts. Diese Fehler werden wir vermutlich nächste Woche beheben.


Viel Spass! :)
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2906294 - 22.06.2018, 16:31:26
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Hey :)


Heute die für etwa 10 Tage die letzte Bugfix-Liste (ich bin dann im Urlaub).
  • Client.getHostFrame().setTitle() funktioniert jetzt auch vor dem DOMContentLoaded Event und auch der Title den ihr im Server-Code setzt wird immer sauber übernommen
  • Client.getHostFrame().setResizable() wirft keine NullPointerException mehr wenn man die Methode ohne Parameter aufruft - die Methode funktioniert nur noch mit exakt einem boolean-Parameter
  • Diverse Bugs im Ladeprozess, die aber glaube ich vor allem SystemApps betreffen
  • Code cleanup

Falls ihr noch Probleme finden solltet dann meldet sie hier, wenn ich wieder da bin werd ich mir die alle anschauen.

Weiterhin Happy Testing. :)
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2906349 - 23.06.2018, 03:46:09
0oMiro0
Forumuser

Registriert: 09.11.2015
Beiträge: 8
Ort: deutschland,schleswig-holstein...
hallo,

das user.sendevent läuft wieder, danke.

nun geht aber /apptop nicht mehr.

problem accessing/apps/apptop/toplists.html. with-api.html
reason:

not found


mfg


(Unter der ID: 0017472 gemeldet)


Bearbeitet von DerNeuanfang (25.06.2018, 20:55:54)
Bearbeitungsgrund: BTS ID hinzugefügt

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: 0oMiro0] - #2907774 - 03.07.2018, 15:14:58
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Entnehme ich dem Schweigen hier, dass es sonst keine offenen Probleme mehr gibt?

(/apptop haben wir auf der Liste)
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2907786 - 03.07.2018, 15:52:57
Sephiroth ME
​gods own prototype

Registriert: 24.11.2003
Beiträge: 215
Ort: RLP, DE
Antwort auf: Sephiroth ME
...
https://tools.ietf.org/html/rfc2616#section-6.1.1 - Header Status Codes
https://tools.ietf.org/html/rfc2616#section-10.2.1 - Header Status 200
https://tools.ietf.org/html/rfc2616#section-10.4.5 - Header Status 404
Warnung! Spoiler!
HTTP Header Anfrage:
Code:
GET /apps/api/knuddels-api.js HTTP/1.1
Host: apps3.knuddels.biz
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36
DNT: 1
Accept: */*
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9,de;q=0.8

HTTP Header Antwort:
Code:
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: text/html
Accept-Ranges: bytes
ETag: "1543400404"
Last-Modified: Fri, 15 Jan 2016 13:06:47 GMT
Content-Length: 466
Date: Mon, 11 Jun 2018 21:31:18 GMT
Server: lighttpd/1.4.33
Datei ist nicht existent, header status ist aber ok?! Falsche Statuscodemeldung => Fehlerhafte Verarbeitung für alles was danach folgt und darauf aufbaut wie impletierung von Scripten.

Der Browser überprüft in erster Linie den Status Code
200 Ok => Datei existiert => Versuchs als Script zu laden.
404 Nicht existient => Wieso soll ich etwas das nicht existiert laden?

Was der Webserver antworte sollte als Header:
Warnung! Spoiler!
Anfrage:
Code:
GET /nonExistent.js HTTP/1.1
Host: google.com
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
DNT: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9,de;q=0.8
Cookie: Jede Menge kram der euch nicht zu interessieren hat :p

Antwort:
Code:
HTTP/1.1 404 Not Found
Content-Type: text/html; charset=UTF-8
Referrer-Policy: no-referrer
Content-Length: 1575
Date: Mon, 11 Jun 2018 21:40:32 GMT
Ihr wisst auch genau, dass falsche Statuscodes zu Fehlverhalten führen, macht es dennoch. :|

Tritt nach wie vor auf und erschwert das Debuging unnötig. Denn es wird kein Script Part ausgeführt nachdem eine "Fehlende Datei" implementiert wurde. - Und Tippfehler überliest man gerne mal, vor allem vertauschte oder vergessene Buchstaben.
_________________________
one step closer to world domination

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: Sephiroth ME] - #2908592 - 09.07.2018, 10:36:56
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Hallo :)


Wir haben noch mal etwas umgebaut. Könnt ihr eure Apps noch mal testen, dass es damit keine Regression gegenüber dem Stand von letzter Woche gibt? Die bisher offenen Punkte sind weiterhin offen und werden wir uns dann ggf in Kürze anschauen.

Wir steuern übrigens auf den Release des ganzen zu. Da seit vielen Tagen keine neuen Meldungen mehr kommen und wir (so gut wie) alle wichtigen Punkte gelöst haben steht einem Release nicht mehr viel im Wege.


Happy Testing. :)
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2908684 - 09.07.2018, 20:19:16
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Hallo noch Mal. :)

Auf Wunsch erläutere ich kurz was sich mit diesem Update geändert hat:
- Wir haben hauptsächlich interne Veränderungen an der Struktur des Code vorgenommen (Refactoring, Cleanup)
- Wir haben einige uralte und seit langer Zeit als "veraltet"/"deprecated" definierte Code-Schnippsel und APIs entfernt
- Wir haben die Einbindung und initialisierung von Polyfills, Patches und Hilfs-Libraries vor allem für den JavaFX Browser glatt gezogen
- Wir haben den Mechanismus gefixt der Usern mit veralteten Clients Update- oder Migrations-Möglichkeiten zum neuen/besseren Client anbietet

Und noch mal in expliziter Form der Hinweis: diese Version ist der Release Candidate für das Projekt! So wie es jetzt ist wollen wir das ganze nächste Woche live für alle ausrollen. Daher ist das die letzte Gelegenheit Feedback zu geben bevor wir das ganze live ausrollen.
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2908737 - 10.07.2018, 00:19:07
Sephiroth ME
​gods own prototype

Registriert: 24.11.2003
Beiträge: 215
Ort: RLP, DE
Ob es damit im Zusammenhang steht, kann ich nicht beurteilen, allerdings melden alle Systemapps Bad Gateway aktuell aufm Dev-Server.
_________________________
one step closer to world domination

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: Sephiroth ME] - #2909086 - 12.07.2018, 10:15:14
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Antwort auf: Sephiroth ME
Ob es damit im Zusammenhang steht, kann ich nicht beurteilen, allerdings melden alle Systemapps Bad Gateway aktuell aufm Dev-Server.

Das ist ein Issue den wir bereits entdeckt haben. Das tritt lediglich beim ersten Aufruf jeder App nach einem Loader- oder AppServer-Update auf. Einfach die App erneut aufrufen, dann gehts. Diesen Issue gibt es nur auf dem Dev-Server.
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: TobyB] - #2909087 - 12.07.2018, 10:26:35
0oMiro0
Forumuser

Registriert: 09.11.2015
Beiträge: 8
Ort: deutschland,schleswig-holstein...
hallo, ich war heute im app menü (ansicht)drin weil ich was neu raufladen wollte.
welche app willst du installieren, da kommt nichts außer das es dort dreht.
bei einem kollegen ist das genau so.
wenn ich unten aber den namen eingebe geht es.
mfg

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: 0oMiro0] - #2909127 - 12.07.2018, 17:10:27
Sephiroth ME
​gods own prototype

Registriert: 24.11.2003
Beiträge: 215
Ort: RLP, DE
Der EventListener eventReceived wird nicht mehr ausgelöst. Ist auch nicht mehr in der api-core-js zu finden.
_________________________
one step closer to world domination

[zum Seitenanfang]  
Re: Developer-Server Test: Tiefgreifende Änderungen der App-API (Client) [Re: Sephiroth ME] - #2909131 - 12.07.2018, 17:23:30
TobyB
​Knuddelsteam

Registriert: 21.11.2003
Beiträge: 6.554
Antwort auf: Sephiroth ME
Der EventListener eventReceived wird nicht mehr ausgelöst. Ist auch nicht mehr in der api-core-js zu finden.

siehe letzter Changelog:
Antwort auf: TobyB
- Wir haben einige uralte und seit langer Zeit als "veraltet"/"deprecated" definierte Code-Schnippsel und APIs entfernt

Diese API die du ansprichst ist am 17.03.2015 eingeführt und am 17.06.2015, also nur drei Monate später (vor ziemlich genau 3 Jahren), als "Deprecated" markiert worden.
_________________________
There is no good without evil, but evil must not be allowed to flourish.
There is passion, yet peace; serenity, yet emotion; chaos, yet order.

[zum Seitenanfang]  
Seite 2 von 3 < 1 2 3 > alle