Skocz do zawartości
  • 0
Zaloguj się, aby obserwować  
Innocent

Na jakiej zasadzie działa Update Checking?

Pytanie

Tak jak w tytule, na jakiej zasadzie działa Update Checking?

Kierowałem się tym:

https://invisionpower.com/4docs/advanced-usage/development/update-checking-r86/

A dokładniej tym:

<?php

  header('Content-type: application/json');

  $arr = array (
    "version" => "2.0.0",
    "longversion" => 20000,
    "released" => 1423841958,
    "updateurl" => "http://www.example.com/myapp/download"
  );

  echo json_encode($arr);
?>

Lecz żadna informacja mi nie wyskakuję

Ps.

Tak dodałem do application.json kod:

"app_update_check": "http:\/\/www.example.com\/update.php"

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

3 odpowiedzi na to pytanie

Polecane posty

  • 0

Update Checking dodaje do adresu jeszcze 2 argumenty:

  • app - jest to klucz aplikacji (nazwa katalogu)
  • version - długa wersja aplikacji

sprawdza wynik JSON (tablice version i releasenotes (jeśli jest))

Ja mam taki kod:

<?php

header('Content-type: application/json');

if(empty($_GET['app']) || !isset($_GET['version'])):
	header('Location: http://'.implode('.', array_slice(explode('.', parse_url('http://'.$_SERVER['SERVER_NAME'], PHP_URL_HOST)), -2)));
endif;

switch($_GET['app']):
	case 'serverlist':
		$releaseNotes = <<<HTML
<ul>
	<li>Added 'Enable/Disable Server' setting</li>
	<li>Added 'Position in the list' setting</li>
	<li>Fixed template error when there is no added servers</li>
	<li>New design of public statistics</li>
</ul>
HTML;

		$array = [
			"longversion" => 10007,
			"version" => "3.0.4",
			"released" => 1476463568 ,
			"security" => false,
			"updateurl" => "https://invisionpower.com/files/file/7456-gs-server-list/"
		];
		if((int) $_GET['version'] < 10007):
			$array = array_merge($array, [ "releasenotes" => $releaseNotes ]);
		endif;

		break;

	case 'playerpanel_amxx':
		$releaseNotes = <<<HTML
<ul>
	<li>First Alpha Release</li>
</ul>
HTML;

		$array = [
			"longversion" => 100000,
			"version" => "1.0.0",
			"released" => 1468715759,
			"security" => false,
			"updateurl" => "https://invisionpower.com/files/file/7456-gs-server-list/"
		];
		if((int) $_GET['version'] < 100001):
			$array = array_merge($array, [ "releasenotes" => $releaseNotes ]);
		endif;

		break;

endswitch;

return print json_encode($array, JSON_PRETTY_PRINT);

 

  • Like 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0

Czyli adres URL tak ma wyglądać?

Np przy Twoim kodzie:

"app_update_check": "http:\/\/www.example.com\/updateCheck.php?app=serverlist"

Jeszcze powiedz mi, skąd wziąć dokładny czas wydania, chyba że jest to w bazie danych

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0

Tak. Czas wydania ustalasz sam, musi to być czas unixowy (sekundy od 1 stycznia 1970)

  • Like 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Zaloguj się, aby obserwować  

  • Kto przegląda   0 użytkowników

    Brak zalogowanych użytkowników przeglądających tę stronę.

×

Ważne informacje

Kontynuując przeglądanie strony, wyrażasz zgodę na używanie przez nas plików cookies.