Endpointy
Gotowość do sklepów (API)
Czego aplikacji jeszcze brakuje do Google Play i App Store oraz kroki po kolei.
https://www.setherion.com/api/v1/projects/{id}/storePlan: Każdy plan
Okno „Publish to app stores” z edytora, wyrażone jako dane: co jest gotowe do sklepów oraz, z way, kroki dla Androida i iPhone'a po kolei. Czyta zapisany kod aplikacji tymi samymi funkcjami pomocniczymi co okno, więc nigdy się z nim nie rozmija.
Jest darmowe i nie zużywa kredytów. Wystarczy dostęp do podglądu. Okna i pełny przewodnik znajdziesz na stronie Publikowanie w sklepach z aplikacjami.
Żądanie
Bez way, aby najpierw porównać obie drogi:
curl https://www.setherion.com/api/v1/projects/7c1e4a52-9b0d-4f3e-8a61-2d5f0c9e7b14/store \
-H "Authorization: Bearer $SETHERION_API_KEY"Z way, aby dostać kroki:
curl "https://www.setherion.com/api/v1/projects/7c1e4a52-9b0d-4f3e-8a61-2d5f0c9e7b14/store?way=easy" \
-H "Authorization: Bearer $SETHERION_API_KEY"| Parametr | Znaczenie |
|---|---|
way | Opcjonalny. easy albo native. easy pakuje opublikowaną stronę internetową w paczki dla sklepów za pomocą PWA Builder, bez kodu. native to cała aplikacja jako projekt na telefon, który właściciel buduje na komputerze, potrzebny do reklam i zakupów w aplikacji. Cokolwiek innego kończy się odpowiedzią 400. |
Aplikacja musi mieć kod. Jeśli jest opublikowana, wywołanie prosi też działającą aplikację o jej ikonę dla sklepów (/icon-512.png), czekając najwyżej 5 sekund.
Odpowiedź bez way
{
"ok": true,
"app": { "name": "Coffee shop", "url": "https://coffee-shop.setherion.app" },
"ready": [
{
"item": "Published on the web",
"state": "ok",
"note": "https://coffee-shop.setherion.app"
},
{
"item": "Store icon",
"state": "ok",
"note": "PNG in every size the stores ask for, made when the app is published."
},
{
"item": "Privacy policy page",
"state": "missing",
"note": "Both stores ask for a link to one, and none was found in this app.",
"fix": "Add a Privacy Policy page at /privacy, linked from the footer and from the sign-up screen. Say what the app keeps (the account email and what people enter), why, for how long, that nothing is sold, and how to ask for an account and its data to be deleted. Leave the owner's contact email as a placeholder to fill in."
}
],
"ways": {
"easy": "Easy, no code: PWA Builder wraps the published website into store packages. About 2 steps in Setherion, the rest in the stores. Android is done from any computer; iPhone needs a Mac with Xcode.",
"native": "Native, for developers: the whole app as a phone project (Capacitor). Needed for ads and in-app purchases. Built on the owner's computer (Android Studio; a Mac with Xcode for iPhone), or in the cloud by GitHub when pushed to GitHub: no Android Studio and no Mac."
},
"onlyInSetherion": "In Setherion: open the app, Publish, then \"Publish to app stores\". Only there: dropping PWA Builder's ZIP, adding Google Play's key, downloading the phone project or pushing it to GitHub, the store screenshots (every size both stores ask for, free), and the store guidelines check. The window ticks the steps it can see, and keeps the owner's own ticks."
}| Pole | Typ | Znaczenie |
|---|---|---|
app | object | name aplikacji oraz jej url albo null, gdy nie jest opublikowana. |
ready | list | Co jest gotowe, a czego brakuje. Zobacz niżej. |
ways | object | Jedno zdanie dla każdej drogi, easy i native. |
onlyInSetherion | string | Co potrafi tylko okno Setherion, aby program wiedział, gdzie kończy się jego zasięg. |
Lista ready
Każdy wpis ma item, state i note, a czasem fix.
| Pole | Znaczenie |
|---|---|
item | Co jest sprawdzane. |
state | ok, missing albo unknown, gdy nie udało się tego teraz sprawdzić. |
note | Jedno zdanie mówiące dlaczego. |
fix | Tylko przy pozycji missing, którą edytor może dodać. Tekst do wysłania jako prompt na stronie Edycja aplikacji, gdy właściciel się zgodzi, ponieważ edycja zużywa kredyty. |
Pozycje, które mogą się pojawić
- Published on the web.
ok, gdy aplikacja ma adres.missing, gdy go nie ma: droga Easy pakuje opublikowany adres, więc najpierw opublikuj. Droga Native działa bez niego. - Store icon. Wymieniana dopiero po opublikowaniu aplikacji.
ok, gdy działająca aplikacja serwuje ikonę PNG,missing, gdy nie (opublikuj ponownie; aplikacja na własnej domenie ma na razie tylko ikonę SVG),unknown, gdy nie udało się sprawdzić działającej aplikacji. - Delete account button. Wymieniany tylko wtedy, gdy ludzie mogą zakładać konta w aplikacji. Apple odrzuca taką aplikację bez niego.
missingmafix. - Privacy policy page. Oba sklepy proszą o link do niej.
missingmafix.
Odpowiedź z way
Te same pola oraz kroki dla drogi, o którą poproszono:
{
"ok": true,
"app": { "name": "Coffee shop", "url": "https://coffee-shop.setherion.app" },
"ready": [ "... as above ..." ],
"ways": { "easy": "...", "native": "..." },
"way": "easy",
"android": [
{
"step": 1,
"title": "Make the Android package",
"meta": "PWA Builder, about 2 minutes",
"detail": "Open PWA Builder with the app's address filled in. Choose Package for stores, then Android, and download the ZIP.",
"link": "https://www.pwabuilder.com/reportcard?site=https%3A%2F%2Fcoffee-shop.setherion.app"
},
{
"step": 2,
"title": "Link the app to your site",
"meta": "So it opens without a browser's address bar",
"detail": "In Setherion: open the app, Publish, then \"Publish to app stores\", Easy, Android, this step: drop the ZIP from PWA Builder there. ...",
"done": false
}
],
"iphone": [ "... five steps, numbered the same way ..." ],
"iphoneNotes": [
"A Mac is needed. The Easy way builds the iPhone app on a Mac with Xcode. The Native way can build it on GitHub's Mac computers instead. Make sure you have one of the two before you pay Apple's $99 a year.",
"To Apple this looks like a website. Nobody signs in, nothing is saved, and Apple turns down apps that are only a website (guideline 4.2). Sign-in, saved data and features people come back to make it an app. Run the store guidelines check on the first page before you send it."
],
"onlyInSetherion": "..."
}(Tutaj skrócone: prawdziwa odpowiedź ma każdy krok w całości.)
| Pole | Typ | Znaczenie |
|---|---|---|
way | string | Droga, o którą poproszono, easy albo native. |
android | list | Kroki dla Androida, po kolei. |
iphone | list | Kroki dla iPhone'a, po kolei. |
iphoneNotes | list of strings | Z powodu czego Apple może odrzucić aplikację, każdy powód jako zdanie, z tytułem tam, gdzie nadaje go okno. |
Każdy krok ma:
| Pole | Typ | Znaczenie |
|---|---|---|
step | number | Jego miejsce na liście, od 1. |
title | string | Nazwa kroku, ta, którą pokazuje okno. |
meta | string | Krótka linijka: ile to trwa, czego wymaga albo ile kosztuje. |
detail | string | Co zrobić. Może zawierać kilka linijek, na przykład polecenia do uruchomienia. |
link | string | Gdzie to zrobić, gdy jest takie miejsce. W przeciwnym razie pominięte. |
done | boolean | Tylko przy krokach, które Setherion widzi sam na drodze Easy dla Androida: link do twojej strony i klucz Google Play. Pominięte, gdy nie potrafi tego ocenić. |
Kroki każdej listy
Easy, Android: zrób paczkę na Androida, połącz aplikację ze swoją stroną, otwórz konto deweloperskie Google Play, wgraj paczkę i przetestuj ją, dodaj klucz Google Play, wypełnij stronę sklepową i wydaj aplikację.
Easy, iPhone: otwórz konto deweloperskie Apple, zrób paczkę na iPhone'a, zbuduj ją i wgraj, wypróbuj ją na swoim iPhonie, wypełnij stronę sklepową i wyślij ją do sprawdzenia.
Native, Android: pobierz projekt, zbuduj go, podpisz go, wgraj go i przetestuj, wydaj aplikację.
Native, iPhone: pobierz projekt, zbuduj go, podpisz go i wgraj, wypróbuj go na swoim iPhonie, wypełnij stronę sklepową i wyślij ją do sprawdzenia.
Na drodze Native polecenia w detail zawierają dodatkowy krok przygotowania, gdy aplikacja pokazuje reklamy albo coś sprzedaje, oraz uwagi o reklamach i zakupach w aplikacji do formularzy sklepów.
Błędy
| Status | Kiedy |
|---|---|
400 | way ma inną wartość niż easy lub native. |
401 | Klucza brakuje, jest błędny albo odwołany. |
404 | Nie ma takiej aplikacji albo twój klucz nie może jej otworzyć. |
409 | Aplikacja nie ma jeszcze kodu. Najpierw zbuduj ją w Setherion. |
Dokładne komunikaty
| Status | error |
|---|---|
400 | way is "easy" or "native". |
404 | No such app on this account. |
409 | This app has no code yet. Build it in Setherion first. |
Czy ta strona była pomocna?
