Instalacja Phonegap Cordova Windows


120

Dokumentacja phonegap / cordova jest absolutnie okropna. Wszystko, co próbuję zrobić, to zainstalować PhoneGap 3.0 w moim środowisku Windows, ale bezskutecznie.

Poniżej znajdują się moje kroki i punkty awarii. Czy ktoś może doradzić rozwiązania?

Zgodnie z instrukcją :

  1. Zainstaluj Node.js (POWIODŁO SIĘ)
  2. Z nodes.js: install -g cordova( POWIODŁO SIĘ )
  3. Dodaj platformę: cordova platform add wp8(NIC SIĘ NIE DZIEJE)
  4. Spróbuj z phonegap: phonegap install wp8(Nie można znaleźć katalogu projektu ERROR)

Z „ Przewodnika po platformie Windows Phone 8

  1. Zainstaluj Windows SDK (POMYŚLNIE)
  2. „Pobierz i rozpakuj najnowszą kopię [PhoneGap. Będziesz pracować w podfolderze lib \ windows-phone-8 \ wp8, lib \ windows-phone-8 \ wp7 zawiera wersję Cordova dla Windwos Phone 7”

HUH?!?! W jakiej lokalizacji znajduje się katalog?!?! Więc znalazłem nieudokumentowany katalog phonegap ukryty w AppData \ Local ... i jest tam katalog libs, ale z pewnością NIE ma żadnych podfolderów WP8. Skąd można to zainstalować? Prawdopodobnie powyższe polecenie dodawania platformy, ale dodaj, że po prostu zwraca mnie do nowego wiersza polecenia.

Wypróbowano przy użyciu polecenia phonegap: phonegap plaform add wp8

BŁĄD - „platform add wp8” nie jest węzłem.

Mam jego otwarte źródło, ale jest to brutalna dokumentacja dotycząca spaghetti. Jeśli komuś udało się pomyślnie zainstalować wersję 3.0 dla WP8, pomocne byłyby wszelkie wskazówki.


Wspomina, że ​​musisz utworzyć aplikację cordova create hello com.example.hello HelloWorldw katalogu, w którym ma znajdować się kod, a następnie uruchomić ją cordova platform add wp8w właśnie utworzonym katalogu projektu.
dfockler

5
Nie mogłem się bardziej zgodzić, właśnie wkurzyłem 6 godzin mojego weekendu, próbując też sprawić, by to działało. Użyłem tego w przeszłości i ustawienie go wtedy nie było wcale trudne, ale `` nowy ulepszony '' cli sposób robienia rzeczy po prostu nie działa z dostarczonymi instrukcjami. Pierwsza część mówi o zainstalowaniu i używaniu polecenia phonegap, a następnie przechodzisz do sekcji android i przełącza się na użycie polecenia cordova. Co za frustrujący bałagan, nigdy nie wymyśliłem, jak sprawić, by rozpoznał platformę Android, mimo że sdk był zainstalowany na moim komputerze.
Jay13,

7
Jakość pisania nie przeszkadza mi tak bardzo, jak fakt, że dokumenty nigdy nie zostały przetestowane i są po prostu błędne.
Erik Reppen,

3
Wydaje się też, że dokumentacja jest miejscami sprzeczna. Na jednej stronie jest napisane, aby zrobić to w jeden sposób, a na innej opisuje zupełnie inne podejście! Miałem fajne rzeczy z częścią rozszerzenia Phonegap moich narzędzi programistycznych Android jako przycisku (w Eclipse). Teraz, po aktualizacji ADT, już go nie ma. Uruchomiłem platformę phonegap add android i nic nie wydarzyło się tak jak powyżej z wp8. Dlaczego nie możemy go po prostu pobrać jako zip? Lub użyj git clone?
Bruce Whealton,

Napisałem artykuł zawierający instrukcje krok po kroku, jak zainstalować phonegap. Jest dostosowany do urządzeń z Androidem, ale jedyną różnicą powinna być część Windows / Android SDK: kapitanh.blogspot.de/2014/02/native-android-apps-with.html
Kai Hartmann

Odpowiedzi:


131

Po godzinach frustracji ... oto co odkryłem.

  1. Zignoruj ​​dokumentację instalacji i całą linię poleceń, elementy node.js (poważnie stracisz na tym godziny.
  2. Wejdź na github i po prostu pobierz główny plik .zip PhoneGap
  3. W tym zipie znajdują się pliki projektu dla platformy Windows Phone, itp ... po prostu użyj tych szablonów.

Nie wiem, jak taki łatwy proces mógłby mieć gorszą dokumentację. To tak, jakby zostało napisane przez prawników.


7
Korzystanie z dokumentacji pozwoliłoby mieć jeden wwwfolder „globalny” dla wszystkich platform.
Justin D.,

3
Dzięki za to, na pewno zaoszczędziłem wiele irytacji. Ponadto jest to doskonałe źródło informacji dla każdego, kto konfiguruje Phonegap na Androida: link
Oliver Holmberg,

Mówisz poważnie? Czy to się dzieje naprawdę? Nie wiem, czy mam być naprawdę zły, czy bardzo szczęśliwy. Czy będę mógł dodawać wtyczki również bez wiersza poleceń? I czy to nadal jest ważne dla bardzo różnych Phonegap 3.0?
Wytze

Frigon twój opis jest doskonały, ale powinieneś wspomnieć, że należy uruchomić createTemplates.bat, aby wygenerować pliki zip, które mają być skopiowane do folderu szablonów.
Hexodus

Hexodus, nie wydaje się, aby ten krok był nigdzie udokumentowany, a przynajmniej nie jest wcale jasny. Jak można sobie wyobrazić, rozpoczęcie na jednej stronie od uruchomienia polecenia cordova, a następnie przejście do innej strony z napisem użyj phonegap, czy też w drugą stronę, jest bardzo mylące. Oliver, twój link jest świetny, strona jest bardzo przejrzysta. Ale prawie przeoczyłem link. Zacząłem się zastanawiać „co to jest doskonałe źródło informacji?” Następnie natknąłem się na link i znalazłem doskonałe źródło informacji. Z poważaniem, sugerowałbym, aby wszystko, od doskonałego zasobu po link, było łączem, IMHO.
Bruce Whealton

54

Napotkałem ten sam problem i przez godzinę walczyłem, aby przejść, czytając dokumenty i inne problemy zgłoszone w Stack Overflow, ale nie znalazłem na to żadnej odpowiedzi. Oto przewodnik, jak pomyślnie uruchomić phonegap / cordova na komputerze z systemem Windows.

Wykonaj poniższe czynności

  1. Pobierz i zainstaluj node.js z http://nodejs.org/
  2. Uruchom polecenie npm install -g phonegap(w przypadku instalacji phonegap) lub uruchom polecenie npm install -g cordova(w przypadku instalacji Cordova).
  3. Po zakończeniu instalacji możesz to zauważyć:

    C: \ Users \ binaryuser \ AppData \ Roaming \ npm \ cordova -> C: \ Users \ binaryuser \ AppData \ Roaming \ npm \ node_modules \ cordova \ bin \ cordova
    cordova@3.0.9 C: \ Users \ binaryuser \ AppData \ Roaming \ npm \ node_modules \ cordova
    ├── ncallbacks@1.0.0
    ├── open@0.0.3
    ├── kolory@0,6.2
    ├── semver@1.1.0
    ├── shelljs@0.1.2
    ├── follow-redirects@0.0.3 (underscore@1.5.2)
    ├── elementtree@0.1.3 (sax@0.3.5)
    ├── optimist@0.6.0 (wordwrap@0.0.2, minimist@0.0.2)
    ├── xcode@0.5.1 (node-uuid@1.3.3, pegjs@0.6.2)
    ├── glob@3.2.6 (inherits@2.0.1, minimatch@0.2.12)
    ├── plist@0.4.3 (xmlbuilder@0.4.2, xmldom@0.1.16)
    ├── tar@0.1.18 (inherits@2.0.1, block-stream@0.0.7, fstream@0.1.24)
    ├── prompt@0.2.7 (revalidator@0.1.5, pkginfo@0.3.0, read@1.0.5, utile@0.1.7, winston@0.6.2)
    ├── request@2.22.0 (json-stringify-safe@4.0.0, aws-sign@0.3.0, qs@0.6.5, oauth-sign@0.3.0, forever-agent@0.5.0, cookie -jar@0.3.0, tunnel-agent@0.3.0, mime@1.2.11, node-uuid@1.4.1, http-signature@0.10.0, hawk@0.13.1, form-data@0.0.8 )
    ├── express@3.0.0 (methods@0.0.1, fresh@0.1.0, range-parser@0.0.4, crc@0.2.0, cookie@0.0.4, commander@0.6.1, debug@0,7 .2, mkdirp@0.3.3, send@0.1.0, connect@2.6.0)
    ├── ripple-emulator@0.9.18 (connect-xcors@0.5.2, colors@0.6.0-1, account@0.3.2, request@2.12.0, moment@1.7.2, express@3.1.0 )
    ├── npm@1.3.11
    └── plugman@0.11.0 (ncallbacks@1.1.0, osenv@0.0.3, bplist-parser@0.0.4, underscore@1.4.4, semver@2.0.11, dep-graph@1.1.0, elementtree @ 0.1.5, xcode@0.6.1, nopt@1.0.10, rc@0.3.0, tar.gz@0.1.1, npm@1.3.4)
    
  4. Zwróć uwagę na powyższą linię, w której widać ścieżkę, do której wspomniano plik. Skopiuj tę ścieżkę. W moim przypadku jest C:\Users\binaryuser\AppData\Roaming\npm\cordovatak wykorzystać cd C:\Users\binaryuser\AppData\Roaming\npm\i wpisać cordova. Oto jest, w końcu działa.

  5. Ponieważ -gwartość klucza nie działa, ustawiłeś ścieżkę zmiennych środowiskowych:
    1. Naciśnij Win+ Pause|Breaklub kliknij prawym przyciskiem myszy Computeri wybierz Properties.
    2. Kliknij Advanced system settingspo lewej stronie.
    3. Kliknij Environment Variablespod Advancedzakładką.
    4. Wybierz PATHzmienną i kliknij Edit.
    5. Skopiuj powyższą ścieżkę do pola wartości i naciśnij OK.

7
Zauważ również, że jeśli instalujesz node.js jako administrator, a twój użytkownik ma ograniczone prawa w Active Directory, powinieneś uruchomić "npm install -g phonegap" jako twój użytkownik, a nie jako administrator, w przeciwnym razie pliki zostaną utworzone przez administratora folder roamingowy, a użytkownik nie będzie miał do nich dostępu. Możesz „npm odinstalować phonegap” pod administratorem i w takim przypadku zainstalować go ponownie jako użytkownik.
vicenteherrera

1
Uwaga, musisz użyć Node.js command prompt, a nie wbudowanego w system Windows cmd.exe
ładowany

2
@gotnull Popieram twój wniosek.
Jay Jay Jay

2
Kiedy próbowałem użyć wiersza poleceń node.js, dostałem komunikat o błędzie, który skierował mnie do terminala systemowego. Dotyczy to środowiska Node.js v0.10.26.
John Macon,

Ta odpowiedź mówi dokładnie, co jest w oficjalnych instrukcjach, które działają, ale to nie odpowiada części dotyczącej szablonów wp8. Nie można znaleźć folderu wp8 ani pliku createTemplates.bat podczas instalowania cordova / phonegap za pomocą npm, o czym głównie chodzi.
Matthieu Harlé

18

Ta odpowiedź została po raz pierwszy opublikowana tutaj: cordova / phonegap nie tworzy katalogu Androida

Wydaje się, że wraz z wydaniem Cordova 3.3.0 zespół PhoneGap próbuje rozwiązać problem związany z nazewnictwem. Dokumentacje zostały zaktualizowane, aby cordovazamiast tego polecać osoby korzystające z polecenia. Nie używaj phonegapjuż tego polecenia.

Oto nowy przewodnik instalacji zapewniający bezproblemową konfigurację:

  1. Zainstaluj Cordova (zapomnij o nazwie PhoneGap od teraz). Na PC:

    C:> npm install -g cordova

  2. W wierszu poleceń przejdź do folderu, w którym chcesz utworzyć projekt, używając:

    cordova utwórz cześć com.example.hello HelloWorld
    witam cd

  3. Zdefiniuj system operacyjny, który chcesz obsługiwać, na przykład:

    platforma cordova dodaj wp8

  4. Zainstaluj wtyczki (w razie potrzeby). Na przykład chcemy, aby:

    wtyczka cordova dodaj org.apache.cordova.device
    wtyczka cordova dodaj org.apache.cordova.camera
    wtyczka cordova dodaje org.apache.cordova.media-capture
    wtyczka cordova dodaj org.apache.cordova.media
    

  5. Na koniec wygeneruj aplikację za pomocą:
    cordova kompilacja wp8

Oto łącze do dokumentacji PhoneGap Cordova 3.3.0 http://docs.phonegap.com/en/3.3.0/guide_cli_index.md.html#The%20Command-Line%20Interface


1
Ponadto, czy polecenie kompilacji działało? Mogę budować w Visual Studio, ale nie z wiersza poleceń. Błąd: D:\Project1\platforms\wp8\cordova\lib\build.js(56, 5) WshShell.Exec: The system cannot find the file specified.nie wiem, jakiego pliku szuka.
atlantis

1
W linii 56 znajdziesz Log("Command: " + command);zakomentowane. Odkomentowanie go wydrukuje command, a będziesz wiedział, jakiego pliku szuka.
Edward Grech,

Uważam, że w kroku 2 powinno to być „cd hello” zamiast „cd HelloWorld”.
Jarnal

6

Ja też napotkałem ten sam błąd. Próbowałem nawet pobrać master PhoneGap z GitHub, ale okazało się, że otrzymałem Phonegap 2.9. Ostatecznie musiałem pobrać Cordova 3 Source

Wykonaj następujące kroki, aby go uzyskać.

  1. Pobierz i rozpakuj źródło Cordova 3
  2. Uruchom plik template.bat w folderze cordova-wp8
  3. Skopiuj wygenerowane pliki ZIP do folderu szablonów programu Visual Studio

4

Instalacja Phonegap Cordova w systemie Windows

Wymagania

  • Wtyczka Eclipse + ADT
  • Narzędzie Android SDK
  • Narzędzia platformy Android
  • Najnowszy folder zip PhoneGap. Wypakuj jego zawartość.

Obsługiwane urządzenia z systemem Android

Instalacja systemu Android 2.2 Android 2.3 Android 4.x Phonegap Cordova

Ustaw zmienną środowiskową PATH dla Androida

  1. Na pulpicie kliknij prawym przyciskiem Mój komputer i kliknij Właściwości.

  2. Kliknij łącze Zaawansowane ustawienia systemu w lewej kolumnie.

  3. W oknie właściwości systemu kliknij przycisk zmiennych środowiskowych.

  4. Wybierz zmienną PATH z sekcji Zmienne systemowe. Wybierz przycisk Edytuj. Musisz dodać ścieżkę do katalogu narzędzi platformy Android SDK i narzędzi. Na przykład: D: \ adt-bundle-windows-x86_64-20130219 \ sdk \ platform-tools; D: \ adt-bundle-windows-x86_64-20130219 \ sdk \ tools Zapisz edycję. Zamknij okno dialogowe Zmienna środowiskowa.

  5. Dodatkowo może być konieczne dołączenie% JAVA_HOME% \ bin do ścieżki PATH. Aby sprawdzić, czy jest to wymagane, uruchom wiersz polecenia i wpisz java. Jeśli nie można znaleźć programu, dodaj% JAVA_HOME% \ bin do PATH. Może być konieczne określenie pełnej ścieżki zamiast używania zmiennej środowiskowej% JAVA_HOME%.
  6. Na koniec może być konieczne dołączenie% ANT_HOME% \ bin do ścieżki PATH. Aby sprawdzić, czy jest to wymagane, uruchom wiersz polecenia i wpisz ant. Jeśli nie można znaleźć programu, dodaj% ANT_HOME% \ bin do PATH. Może być konieczne określenie pełnej ścieżki zamiast używania zmiennej środowiskowej% ANT_HOME%. Skonfiguruj nowy projekt

Otwórz wiersz polecenia, przejdź do katalogu bin w podfolderze android dystrybucji Cordova.

Wpisz: ./create

Następnie naciśnij Enter i uruchom Eclipse. W pozycji menu Plik i wybierz opcję Importuj…

Importuj Wybierz „Istniejący kod Androida do obszaru roboczego” i kliknij „Dalej>”.

Przeglądaj projekt utworzony za pomocą wiersza polecenia. I kliknij „Zakończ”. Wdróż w emulatorze Z poziomu Eclipse naciśnij tę ikonę paska narzędzi.

Po otwarciu Android SDK Manager wyświetla różne biblioteki środowiska uruchomieniowego. Zainstaluj interfejsy API zgodnie z wymaganiami. Z poziomu Eclipse naciśnij tę ikonę paska narzędzi.

Wybierz i definicję urządzenia z wyświetlonej listy. (Na bieżącej liście jest tylko jedna pozycja). Naciśnij przycisk Nowy… w powyższym oknie, aby utworzyć nowe urządzenie wirtualne z systemem Android (AVD) i użyć go do uruchomienia projektu.

Aby otworzyć emulator jako oddzielną aplikację, wybierz AVD i naciśnij Start. Uruchamia się tak samo, jak na urządzeniu, z dodatkowymi kontrolkami dostępnymi dla przycisków sprzętowych:

Wdróż na urządzeniu:

Upewnij się, że debugowanie USB jest włączone w urządzeniu i podłącz je do systemu. Kliknij prawym przyciskiem myszy projekt i przejdź do Uruchom jako> Aplikacja na Androida.

Czytaj więcej ...


2

Miałem problemy z instalacją phonegap. Problemy zostały rozwiązane, gdy uruchomiłem cmd jako Administrator, a następnie uruchomiłem polecenie

npm install -g phonegap

i został pomyślnie zainstalowany.

Następnie w katalogu, w którym jest zainstalowany, otworzyłem cmd i uruchomiłem polecenie phonegap i działało dobrze. Teraz będę się tym bardziej bawić :)

Dzięki kumple za całą tę pomoc.


2

W C:\phonegap-2.9.0\lib\windows-phone-8 there'spliku wsadowym o nazwie createTemplates.bat. Musisz uruchomić ten plik, co spowoduje utworzenie CordovaWP8_2_9_0.zippliku wymienionego w ich dokumentach.


Nie mogę znaleźć tego pliku wsadowego dla phonegap-3.3.0. W rzeczywistości nie mogę znaleźć folderu windows-phone-8. Masz pojęcie, co robię źle?
MysticMagicϡ,

1

Miałem ten sam problem, ale w końcu odniosłem sukces, robiąc to, proszę, rzuć ten obraz Plase Uruchom wszystkie komendy w PHONE TOOL COMMAND PROMPT wprowadź opis obrazu tutaj


Cześć Mayur. Próbuję z twoją powyższą metodą. Wystąpił błąd w dodaniu platformy. po wpisaniu platformy cordova dodaj wp8. występuje następujący błąd Błąd: nie można znaleźć pliku „check_reqs.js” w folderze „bin”, przerywam ...
Gurunathan

@mayur - dla mnie też nie działa. Otrzymuję słowo „cordova” nie jest rozpoznawane, bla, bla, bla. Zakładam, że to problem ze ścieżką. Ale gdzie jest Cordova?
schmidlop

1

Znalazłem tę aplikację hybrydową dla wielu urządzeń dla dokumentacji programu Visual Studio dla CTP1.1 Ostatnia aktualizacja: 29 maja 2014 r .

Niektóre treści z dokumentacji są następujące.

Ta wersja obsługuje tworzenie aplikacji dla następujących urządzeń docelowych :

Android 4+ (4.4 zapewniający optymalne wrażenia programistyczne) iOS 6 i 7 Windows 8.0 (Sklep) Windows Phone 8.0

Wymagania: Windows 8.1

Visual Studio 2013 Update 2 - Professional, Ultimate lub Premium z zainstalowanymi następującymi funkcjami opcjonalnymi:

Narzędzia do obsługi aplikacji Sklepu dla systemu Windows 8 Windows Phone 8.0 SDK

Dodatkowe wymagania systemowe różnią się w zależności od platformy urządzenia:

Emulator Androida działa najlepiej na komputerach PC, na których można zainstalować sterownik Intel HAXM

Windows Phone 8 wymaga komputera PC obsługującego technologię Hyper-V do uruchomienia kompilacji emulatora dla systemu iOS, a korzystanie z symulatora iOS wymaga komputera Mac obsługującego Xcode 5.1

Zależności od innych firm:

Joyent Node.js - umożliwia integrację programu Visual Studio z interfejsem wiersza poleceń Apache Cordova (CLI) i emulatorem Git CLI Apache Ripple ™ - wymagane tylko wtedy, gdy trzeba ręcznie dodać identyfikatory URI git dla wtyczek

Google Chrome - wymagany do uruchomienia emulatora Apache Ripple dla systemów iOS i Android

Apache Ant 1.8.0+ - wymagany jako zależność w procesie kompilacji Androida

Oracle Java JDK 7 - wymagana jako zależność w procesie budowania systemu Android

Android SDK - wymagany jako zależność dla procesu kompilacji systemu Android i Ripple

SQLLite for Windows Runtime - wymagane do dodania łączności SQL do aplikacji Windows (dla wtyczki WebSQL Polyfill)

Apple iTunes - wymagane do wdrożenia aplikacji na urządzeniu iOS podłączonym do komputera z systemem Windows

wprowadź opis obrazu tutaj


0

Uruchomienie CMD jako administrator w systemie Windows dało mi do myślenia i myślę, że ma to sens tylko dlatego, że ludzie tak naprawdę nigdy nie wysilają się, aby zainstalować swoje rzeczy w niestandardowym katalogu. Więc kiedy instalujesz node.js w katalogu Windows, a następnie próbujesz zainstalować PhoneGap na Unelevated CMD, trudno jest ustawić zmienne ścieżki.


0

Miałem ten sam problem. Straciłem godziny, po czym zobaczyłem, że zainstalowana wersja node.js to 0.8. Ale pobrałem i zainstalowałem wersję 0.10 ze strony node.js.

Pobrałem i zainstalowałem ponownie, a teraz wersja to 0.10. Wynik: PhoneGap został pomyślnie zainstalowany w tej wersji.


0

Phonegap może być trochę trudne dla odświeżaczy. Spędziłem dużo czasu, próbując znaleźć optymalny sposób na stworzenie solidnej aplikacji na Androida, która może uzyskać dostęp do natywnych funkcji telefonu.

Ten link zapewnia mądrą metodę tworzenia aplikacji Phonegap na Androida przy użyciu systemu Windows, HTML i JavaScript.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.