socialgekon.com
  • Glavni
  • Okretna
  • Porazdeljene Ekipe
  • Donosnost In Učinkovitost
  • Drugo
Mobilni

Vadnica za ambiciozne razvijalce Googla Glass: Ustvarjanje prve aplikacije za Glass

Google Glass je futuristična tehnologija, ki obljublja revolucijo v načinu uporabe naših naprav za interakcijo s svetom. Toda kaj je tako posebnega pri razvoju stekla z vidika razvijalca? Odgovor je 'Nič!' Pravzaprav z vidika izkušeni razvijalec za Android , Google Glass je le še ena naprava Android z zelo majhnim zaslonom in omejenimi funkcijami!

Googlov razvoj stekla je zelo podoben razvoju Androida, ki zajema različne naprave.

Dejstvo, da lahko vsakdo, ki ima znanje o razvoju Androida, postane član te 'elitne' skupnosti futurističnih evangelistov, ki jih je mogoče nositi, je del tega, zaradi česar je Google Glass tako čudovit. Seveda se boste morali naučiti nekaj novih stvari, na primer razlike med “Potopitvijo” in “Aktivno kartico”, toda kot boste videli, krivulja učenja ni strma.



Namen te vadnice Google Glass je postaviti temelje za razvoj katere koli aplikacije Glass z ustvarjanjem preproste aplikacije, ki zajema vse običajne korake. Moj cilj je prihraniti nekaj časa pri raziskavah in poskusih in napakah ter vam omogočiti, da čim prej zaženete svojo prvo aplikacijo Glass.

V tej vadnici bomo najprej preučili, kako nastaviti razvojno okolje in povezati Google Glass z računalnikom. Nato bomo ustvarili preprosto aplikacijo Glass Hello, ki bo vključevala glasovne ukaze po meri in integracijo z začetnim menijem Glass. Ko boste svojo prvo aplikacijo razvili in zagnali na vašem Glassu, se boste naučili osnov navigacije v aplikacijah Glass, glasovno aktiviranih menijev in dinamičnega ustvarjanja vsebine.

Kako priti na krov

Steklo je še vedno v nekakšni fazi 'beta testiranja', za kar je Google izumil izraz 'raziskovalni program'. Ne glede na to, Glass še ni nekaj, kar bi lahko dobili v trgovini, kot je pametni telefon. Na žalost razvojna orodja za Android še vedno nimajo emulatorja, s katerim lahko razvijete svojo aplikacijo brez dejanske strojne opreme.

Če želite torej zagnati in odpraviti napake v svoji aplikaciji, boste morali s programom Explorer dobiti dejanski Google Glass. Če se želite pridružiti obisku programa strani za prijavo in se prijavite za dostop. Po odobritvi pripravite kreditno kartico in počakajte, da bo kozarec dostavljen. Raziskovalčeva različica Glass trenutno stane 1.500 USD, vendar naj bi se cena znatno znižala, preden naprava pride v trgovine.

Za brez stekla

Zaradi pomanjkanja kakršnega koli emulatorja morate imeti dejansko strojno opremo Google Glass, da bi lahko razvili aplikacijo v tej vadnici (ali kateri koli aplikaciji Glass), toda če je pridobitev takšne, je zunaj vašega proračuna, ne bodite malodušni bo vseeno vredno spremljati. V tej vadnici se bo pokazalo, da je razvoj za Glass skoraj enako kot razvoj za katero koli drugo platformo Android!

Če še vedno niste uporabljali Googla Glass, vendar ste nad njim navdušeni kot jaz, si oglejte ta dva videoposnetka, saj bi vam morala dati dovolj informacij za razumevanje osnov uporabniškega vmesnika.

  • Uvod v Google Glass
  • Navodila za Google Glass: Kako začeti

Obstaja še več uporabnih videoposnetkov za nastavitev in navigacijo tukaj in veliko več podrobnosti o uporabniškem vmesniku tukaj .

Pravila zaroke

To Razvijalca Google Glass vadnica podaja naslednje predpostavke:

  • Predvidevam, da razumete osnove navigacije in nastavitve stekla. Če stekla še nikoli niste uporabljali, si oglejte zgornje videoposnetke.
  • Predvidevam, da razumete osnove razvoja Androida : struktura projektnih datotek, konfiguracija aplikacij za Android itd.
  • Uporabljal bom Android Studio, toda navodila bi se morala prevesti v skoraj vsako razvojno okolje Androida. Android Studio je še vedno v 'beta', prav tako pa tudi Glass. Ne bojte se, da ga začnete uporabljati - res je odličen izdelek. Android Studio je na voljo za prenos tukaj .

Nastavitev Google Glass

V redu, začnimo!

Prva stvar, ki jo morate storiti, je, da na steklu omogočite način za odpravljanje napak. Kaj takega morate narediti v vsaki napravi Android, ki jo uporabljate za razvoj svojih aplikacij, da je to morda znano. Če želite omogočiti odpravljanje napak, povlecite do Nastavitve '->' Informacije o napravi 'In nato tapnite, da odprete meni naprave. Izberite “ Vklopite odpravljanje napak 'In bo omogočeno.

Nato morate pripraviti svoje razvojno okolje. Trenutna različica Google Glass zahteva, da uporabljate API različice 19, zato se prepričajte, da je nameščen. Prav tako morate imeti nameščen komplet za razvoj stekla. Če tega še niste storili, z upraviteljem Android SDK namestite ta dva paketa.

Uporabite Android SDK Manager in se prepričajte, da je nameščen komplet za razvoj stekla.

Pozdravljen, svet!

Naredimo torej naš prvi kos 'Steklovine'. (Da, Google je skoval drug izraz! »Glassware« je ime za katero koli aplikacijo, ki se izvaja v Google Glassu). Začeli bomo z razvojem dobrega starega 'Hello World!' aplikacijo. Tako kot večina glavnih razvojnih okolij za Android, tudi Android Studio samodejno zapolni nove aplikacije s predlogo za prikaz te slavne fraze. Kot rezultat, dobite 'Hello World!' zagon in delovanje je zgolj vaja pri temeljni uvajanju aplikacij.

V Android Studio kliknite » Nov projekt «In izpolnite projektni obrazec. Lahko uporabite nekaj podobnega temu:

To so začetni koraki za nastavitev za Google Glass.

Ko izbirate dejavnike oblike in API, izberite » Steklo «In API 19

To je nekaj dodatnih nastavitev aplikacije Glass.

Izberite “ Aktivnost potapljanja 'Kot vašo zagonsko dejavnost.

Immersion Activity je najprimernejša zagonska dejavnost za razvoj aplikacije Glass.

Se spomnite, da sem omenil, da se boste morali naučiti razlike med Immersion in Live Card? Googlove Članek o uporabniškem vmesniku razlaga različne vrste zaslon Glass. Tu je kratek povzetek:

  • Karte v živo so dodani na časovno premico Glass in v realnem času prikazujejo informacije o nečem s pomočjo visokofrekvenčnih posodobitev. Nenehno se izvajajo v ozadju, tudi če uporabniki komunicirajo z različnimi karticami. To uporabnikom omogoča večopravilnost s stalnim dostopom do različnih vrst informacij v realnem času.

  • Potopitve so popolnoma prilagodljivi zasloni, ki delujejo zunaj časovne izkušnje. Ti vam omogočajo oblikovanje lastnega uporabniškega vmesnika in obdelavo uporabniškega vnosa, kot se vam zdi primerno. To bomo uporabili!

Na naslednjem zaslonu čarovnika pustite privzete vrednosti za » Ime 'In' Naslov 'In kliknite' Končaj '.

Po Gradle poskrbi za vaše odvisnosti in pripravi vaš projekt, čas je, da ga priklopite v Glass. Zdaj je to futuristični razvoj!

Če predpostavimo, da so vsi vaši gonilniki za Android ADB nameščeni in da vaš sistem prepozna vaš Glass, bi morali imeti Glass na seznamu naprav.

Na seznamu naprav naj bo Google Glass prikazan kot naprava Android.

Če ste napravo prvič povezali z računalnikom, bo Glass zahteval odobritev / zaupanje. Samo tapnite kozarec, da omogočite povezavo, in že bi morali biti pripravljeni.

Kliknite » Teči «In namestite svoj» Privzeti APK «z» MainActivity «kot zagonsko dejavnost za zagon v napravi» USB «.

Po nekaj sekundah bi morali videti nekaj takega na zaslonu Glass:

To je primer tega, kar lahko vidite skozi Google Glass, če natančno sledite tej vadnici.

Hura! Vaša aplikacija deluje na Googlu Glass! In vse, kar ste morali storiti, je, da ob ustvarjanju aplikacije izpolnite nekaj privzetih vrednosti!

Ker nismo določili drugače, bo Glass aplikacijo prikazal pod imenom »Pokaži predstavitev«. Če povlečete nazaj do začetnega zaslona in nato tapnete, da odprete meni aplikacije, bo prikazan takole:

To je primer elementa menija »Show demo« v Googlu Glass.

Mali Poljak

V redu, zagnali ste ga, vendar to ni videti kot prava aplikacija za Glass in ne želite, da se aplikacija zažene s 'Show demo'.

V tej vadnici ga bomo le malo prilagodili, da bomo dobili pravi občutek.

Nastavitev teme

Prvič, nočete zavzeti nobenega majhnega zaslona Glass s to grdo naslovno vrstico dejavnosti »Hello World Immersion« in zagotovo ne želite, da je zaslon siv s črno pisavo. Da bi to popravili, moramo samo preklopiti temo na našem Androidu in pustiti, da za to poskrbi Glass OS.

Odpri res/values/styles.xml za urejanje. Vsebovati mora naslednjo vsebino:

android:Theme.Holo.Light

Samo spremenite android:Theme.DeviceDefault do AndroidManifest.xml. To naj samodejno poskrbi za postavitev in barve aplikacij s privzeto temo Glass.

Določanje videza menija

Ok, naslednja stvar, ki jo želimo narediti v tej vadnici za razvoj stekla, je, da nastavimo našo aplikacijo tako, da ima pravilno ime in lep glasovno nadzorovan zagon. Odprite Android Manifest ( ) in dodajte naslednje zgoraj DEVELOPMENT oznaka:

DEVELOPMENT

Razlog, zaradi katerega želite uporabiti voice_trigger.xml dovoljenj, tako da se lahko igrate z glasovnimi kontrolami po meri. Google je precej strog glede tega, kateri glasovni ukazi so dovoljeni v odobrenih aplikacijah Glass, in vsi novi ukazi morajo biti odobreni. Ker je ta vadnica namenjena učenju in te vloge ne boste oddali v uradno trgovino s steklovino, vas ne bi smelo skrbeti. Samo vklopite res/xml/ in boste imeli dostop do »glasovnih ukazov, ki niso na seznamu«. Za več informacij o tem preberite tej strani GDK .

Odpri android:label='@string/app_name' za urejanje. Tu je definiran glasovni ukaz za zagon aplikacije. Nahajati se mora v @string/app_name mapo. Morali bi dobiti vsebino, podobno tej:

Hello Glass

Namesto da bi rekli »Pokaži mi predstavitev«, da zaženemo našo aplikacijo, izgovorimo samo ime aplikacije. Vsebino datoteke spremenite v:

android:label='@string/app_name'

Če se vrnete v datoteko manifesta, boste morda opazili, da je vaš res/values/strings.xml je bil samodejno posodobljen, tako da uporablja tudi niz virov app_name namesto trdo kodirane Hello Glass vrednost, kot je bila prej. Če ta nastavitev ni bila posodobljena, nastavite vrednost na voice_trigger.xml.

In kako točno je ime vaše aplikacije? Če odprete network='true', bo vaš FEATURE_VOICE_COMMANDS je treba navesti kot:

onCreate

To bi moralo zaokrožiti stvari za vaš prvi program Hello Glass. Poglejmo, kako to deluje zdaj!

Na začetnem zaslonu lahko rečete 'Ok steklo' , da odprete glasovni meni. Vaša aplikacija je zdaj na seznamu glasovno aktiviranih ukazov.

S to vadnico, ki vas vodi, je tako videti zdaj začetni zaslon aplikacije Glass.

Če rečeš ' Pozdravljen kozarec 'Začela bi se vaša aplikacija in dobili bi standardizirano izkušnjo s steklom:

Glasovni ukazi ustvarjajo ta odziv Google Glass.

Če ne želite z glasom aktivirati aplikacije, se preprosto dotaknite začetnega zaslona in v meniju boste videli, da je vaša aplikacija na voljo:

Aplikacija Google Glass, ki ste jo razvili, je zdaj na voljo.

Glas ali dotik? Uporabite oboje!

Zelo pomembno je, da ste zelo pozorni na vmesnik vaše aplikacije in interakcijo vaših uporabnikov z njo. Ne pozabite, da vaši uporabniki niso vedno sposobni uporabiti svojega glasu - na primer med gledanjem predavanja ali predstavitve. Lahko pa imajo polne roke dela in ne morejo uporabljati dotika. Predlagam, da omogočite interakcijo z menijem na dotik in z glasom, kadar koli je to mogoče, kar uporabnikom omogoča vzporedno krmarjenje po vaši aplikaciji z uporabo glasu in sledilne ploščice.

Resnična aplikacija - ApeeScape Finder

Primer razvoja Googla Glass, ki ga bomo opisali v tej vadnici, je »ApeeScape Finder«.

Zdaj, ko ste zadovoljni z razvojem Glass in ste ustvarili Hello Glass, je čas, da ustvarite resnično aplikacijo, ki bo omogočila delovanje novih funkcij Glass. Zgradimo aplikacijo, ki vam omogoča brskanje po profilih najboljših razvijalcev ApeeScape na podlagi razvojne platforme.

Struktura našega primera aplikacije Glass bo preprosta:

  1. Želimo, da ima naš začetni zaslon ApeeScape logotip z menijem z glasom in dotikom, ki nam omogoča, da izberemo razvojno platformo, za katero potrebujemo razvijalca.
  2. Po izbiri platforme želimo dobiti seznam razvijalcev z njihovo sliko in imenom. Profili razvijalcev bodo predstavljeni v obliki pomičnega seznama osebnih kartic.
  3. Pri ogledu profila razvijalca jih želimo dodati med priljubljene ali poslati prošnjo za najem.

Osnove

Na hitro ponovimo, kaj ste že dodali poleg znanja o Androidu:

  1. Kako nastaviti razvojno okolje za izdelavo steklovine.
  2. Kako konfigurirati svojo aplikacijo za uporabo standardne teme GUI za Glassware.
  3. Kako zagnati aplikacijo z uporabo glasovnih ukazov in imen menijev po meri.

S tem znanjem zaženite in zaženite novo aplikacijo. Aplikacijo Hello Glass lahko posodobite od zgoraj ali pa zaženete novo aplikacijo, ki sledi istim korakom. Poimenujte to aplikacijo “ Top Finder ', In vnesite MainActivity datoteka izgleda takole.

getWindow().requestFeature(WindowUtils.FEATURE_VOICE_COMMANDS);

The res/menu omejitev pove steklu, naj pri zagonu te aplikacije preveri omrežno povezljivost, ki jo bomo morali povezati s seznami razvijalcev ApeeScape. Če povezave ni, bo Glass prikazal opozorilno sporočilo.

Domači zaslon

Naj bo domači zaslon naše aplikacije videti nekako takole:

To je oblika, ki smo jo izbrali za naš primer začetnega zaslona aplikacije Glass.

Ko vidite 'Ok steklo' sporočilo na zaslonu pomeni, da ima aplikacija na tem mestu glasovno aktiviran meni. Ko govorim besedno zvezo 'Ok steklo' tukaj aktivira glasovni meni za to lokacijo. Ta stavek je vnaprej določil Glass in ga ne morete spremeniti.

Lahko si omislite 'Ok steklo' kot 'aplikacijski meni', tako kot ste ga uporabljali pri razvoju pametnega telefona / tabličnega računalnika, in ima popolnoma enako vlogo. Ko bi se na zaslonu »pogosto dotaknili« ikone menija z aplikacijami (pogosto 3 pike ali vrstice), morate odpreti meni aplikacije Android, morate 'Ok steklo' , da odprete glasovno aktiviran meni v aplikaciji Glassware.

Da bi omogočili 'Ok steklo' meni, ki ga morate zahtevati main.xml iz API-ja. Če želite to narediti, dodajte naslednjo vrstico v onCreatePanelMenu vodnik v vašem MainActivity:

@Override public boolean onCreatePanelMenu(int featureId, Menu menu){ if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS || featureId == Window.FEATURE_OPTIONS_PANEL) { getMenuInflater().inflate(R.menu.main, menu); return true; } return super.onCreatePanelMenu(featureId, menu); }

Vsaka dejavnost, ki vključuje to funkcijo, bo upodobljena z 'Ok steklo' besedilo spodaj na sredini.

Naslednja stvar, ki jo morate storiti, je ustvariti meni za glavni zaslon. V vašem findDevelopers mapa ustvari novo definicijo menija XML z imenom public void findDevelopers(String platform){ } @Override public boolean onMenuItemSelected(int featureId, MenuItem item) { if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS || featureId == Window.FEATURE_OPTIONS_PANEL) { switch (item.getItemId()) { case R.id.find_android: findDevelopers('Android'); break; case R.id.find_javascript: findDevelopers('Java Script'); break; case R.id.find_ios: findDevelopers('iOS'); break; } return true; } return super.onMenuItemSelected(featureId, item); } . Da bomo stvari poenostavili, bomo omogočili samo tri platforme za razvijalce ApeeScape, vendar spremembe lahko vnesete, kot želite.

Vsebovati mora naslednjo vsebino:

res/drawable/logo.png

Morda se sprašujete, zakaj sem namesto Androidov, JavaScript in iOS izbral precej dolge naslove menijev. No, razlog je zelo preprost. Fantje iz razvojne ekipe za Glass še vedno izboljšujejo prepoznavanje glasu. Priporočljivo je, da v menijih uporabite dve ali tri besede, da jih bo Glass lažje prepoznal.

Sem že omenil, da 'Ok steklo' meni se ne razlikuje od običajnega menija aplikacije Android. Priključitev menija k dejavnosti je praktično enako. Preglasite MainActivity v vašem private CardScrollView mCardScroller; private View mView; private GestureDetector mGestureDetector; in napihnite glavni meni, ki ste ga pravkar ustvarili:

buildView

Zdaj moramo dodati upravljalnik menijev. Preden to storite, ustvarite eno prazno metodo z imenom private View buildView() { Card card = new Card(this); card.setText(R.string.app_name); card.setImageLayout(Card.ImageLayout.LEFT); card.addImage(R.drawable.logo); return card.getView(); } . Na to se bomo vrnili kasneje, da začnemo iskati in prikažemo rezultate. Po tem lahko preglasite upravljalnik menijev.

onCreate

Zdaj je čas, da domači zaslon aplikacije Google Glass naredimo lep. Uvozite logotip ApeeScape v svojo aplikacijo kot protected void onCreate(Bundle bundle) { super.onCreate(bundle); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); getWindow().requestFeature(WindowUtils.FEATURE_VOICE_COMMANDS); mView = buildView(); mCardScroller = new CardScrollView(this); mCardScroller.setAdapter(new CardScrollAdapter() { @Override public int getCount() { return 1; } @Override public Object getItem(int position) { return mView; } @Override public View getView(int position, View convertView, ViewGroup parent) { return mView; } @Override public int getPosition(Object item) { if (mView.equals(item)) { return 0; } return AdapterView.INVALID_POSITION; } }); // Handle the TAP event. mCardScroller.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { openOptionsMenu(); } }); mGestureDetector = createGestureDetector(this); setContentView(mCardScroller); } . Uporabil sem to sliko:

Logotip ApeeScape za uporabo v naši aplikaciji Glass.

V vašem MainActivity razred, naredite naslednje spremembe.

Prepričajte se, da so na začetku razreda navedene naslednje zasebne spremenljivke:

private GestureDetector createGestureDetector(Context context) { GestureDetector gestureDetector = new GestureDetector(context); //Create a base listener for generic gestures gestureDetector.setBaseListener( new GestureDetector.BaseListener() { @Override public boolean onGesture(Gesture gesture) { if (gesture == Gesture.TAP) { openOptionsMenu(); return true; } else if (gesture == Gesture.TWO_TAP) { // do something on two finger tap return true; } else if (gesture == Gesture.SWIPE_RIGHT) { // do something on right (forward) swipe return true; } else if (gesture == Gesture.SWIPE_LEFT) { // do something on left (backwards) swipe return true; } else if (gesture == Gesture.SWIPE_DOWN){ finish(); } return false; } }); gestureDetector.setFingerListener(new GestureDetector.FingerListener() { @Override public void onFingerCountChanged(int previousCount, int currentCount) { // do something on finger count changes } }); gestureDetector.setScrollListener(new GestureDetector.ScrollListener() { @Override public boolean onScroll(float displacement, float delta, float velocity) { // do something on scrolling return true; } }); return gestureDetector; } @Override public boolean onGenericMotionEvent(MotionEvent event) { if (mGestureDetector != null) { return mGestureDetector.onMotionEvent(event); } return false; }

Spremenite findDevelopers način prilagajanja postavitve kartice:

DeveloperModel.java

In spremenite svoj java/models vodnik, da bo takšen:

public class DeveloperModel implements Serializable { private String name; public String getName(){ return name; } public void setName(String name){ this.name=name; } private String platform; public String getPlatform(){ return platform; } public void setPlatform(String platform){ this.platform=platform; } private String image; public String getImage(){ return image; } public void setImage(String image){ this.image=image; } }

Kot sem že rekel, želimo vključiti tudi meni, ki se aktivira z dotikom 'Ok steklo' , zato samo omogočite poteze, kot bi to storili v svoji aplikaciji za Android. V CardScrollAdapter dodajte naslednje metode razred:

DeveloperAdapter.java

To bi moralo biti to! Zdaj lahko zaženete aplikacijo in preizkusite oba načina aktiviranja menija. Če rečeš 'Ok steklo' na zaslonu se prikažejo trije elementi menija, in če tapnete steklo, se odpre pomični meni. Za krmarjenje po menijskih elementih lahko povlečete naprej in nazaj.

Takole je videti glasovni meni:

Tu so glasovni ukazi, s katerimi se na zaslonu Glass prikažejo vrhunski razvijalci.

In tukaj je meni s kretnjami:

Tu so glasovni ukazi, s katerimi se na zaslonu Glass prikažejo vrhunski razvijalci.

Če izberete element menija, se nič ne bo zgodilo kot java/adapters metoda še ni uvedena.

Zasloni za razvijalce

Še naprej bomo uporabljali privzeto postavitev Glass Card s sliko na levi strani, besedilom na desni in nekaj informacijami o nogi. Za več informacij o najboljših praksah za oblikovanje kartic glejte Google Glass slog vodnik .

Naš profil razvijalca je opredeljen s preprostimi lastnostmi:

  1. Ime
  2. Slika
  3. Razvojna platforma

Torej, poskrbimo za pravilno strukturo razredov v naši aplikaciji. Ustvarite nov razred z imenom public class DeveloperAdapter extends CardScrollAdapter { private List mCards; private List mData; public DeveloperAdapter(List cards){ this.mCards = cards; } @Override public int getCount() { return mCards.size(); } @Override public Object getItem(int i) { return mCards.get(i); } @Override public View getView(int i, View view, ViewGroup viewGroup) { return mCards.get(i).getView(); } @Override public int getPosition(Object o) { return this.mCards.indexOf(o); } } v vašem ResultsActivity mapo. Želimo si, da bi bil ta razred serializirati, saj bo vseboval profile, ki so na seznamu.

MainActivity

Želimo, da so naše kartice tesno povezane s podatki našega profila razvijalca. Ker privzeto java/com.helloglass je nekoliko splošen glede na svoj podatkovni model, zato ga moramo razširiti in narediti po svoje. Ustvari extends Activity v vašem developer.xml mapa:

ResultsActivity

Ne želimo, da se naši rezultati iskanja dodajo na začetni zaslon aplikacije, zato bomo ustvarili novo dejavnost, ki bo iskala in prikazovala rezultate. Ustvari novo dejavnost, MainActivity , poleg vašega ResultsActivity (verjetno v public static final String SEARCH = 'search'; private String mPlatform='Android'; ).

Prepričajte se, da je ResultsActivity.

Nato moramo določiti meni za naše kartice profilov razvijalcev. Ustvarite nov meni, MainActivity, z naslednjo vsebino:

private CardScrollView mCardScroller; private List mCards; private GestureDetector mGestureDetector;

Za omogočanje prenosa parametrov med findDevelopers in ResultsActivity dodajte naslednje vrstice na začetek private void findDevelopers(String platform){ for (int i=1; i<=10; i++){ Card card = new Card(this); card.setText(platform+' '+Integer.toString(i)); card.setTimestamp(platform); card.setImageLayout(Card.ImageLayout.LEFT); card.addImage(R.drawable.ic_person_50); mCards.add(card); } mCardScroller.setSelection(0); } razred:

MainActivity

Ne pozabite dodati nove dejavnosti v datoteko manifesta:

findDevelopers

Nastavitev začetnega zaslona ResultsActivity in konfiguriranje kartic je zelo podobno tistemu, ki smo ga počeli platform Najprej preverite, ali imate na začetku definirane kartice in drsnik:

public void findDevelopers(String platform){ Intent resultsIntent = new Intent(this, ResultsActivity.class); resultsIntent.putExtra(ResultsActivity.SEARCH, platform); startActivity(resultsIntent); }

Ustvarite začasno metodo iskanja, na katero se bomo kasneje vrnili, da jo bomo izvedli. Dodajanje novih kart na seznam profilov je tako preprosto kot dodajanje elementov v polje. To metodo bomo poimenovali ResultsActivity tudi, toda ta pripada @Override public boolean onCreatePanelMenu(int featureId, Menu menu){ if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS || featureId == Window.FEATURE_OPTIONS_PANEL) { getMenuInflater().inflate(R.menu.developer, menu); return true; } return super.onCreatePanelMenu(featureId, menu); } :

ResultsActivity

Zdaj se vrnite na vaš openOptionsMenu() in posodobitev onGesture(Gesture gesture) tam za začetek private GestureDetector createGestureDetector(Context context) { // … @Override public boolean onGesture(Gesture gesture) { if (gesture == Gesture.TAP) { openOptionsMenu(); return true; } else if // … in podajte v @Override public boolean onMenuItemSelected(int featureId, MenuItem item) { if (featureId == WindowUtils.FEATURE_VOICE_COMMANDS || featureId == Window.FEATURE_OPTIONS_PANEL) { switch (item.getItemId()) { case R.id.developer_fav: Toast.makeText(getApplicationContext(), 'Favorite', Toast.LENGTH_LONG).show(); break; case R.id.developer_hire: Toast.makeText(getApplicationContext(), 'Message', Toast.LENGTH_LONG).show(); break; case R.id.go_back: break; } return true; } return super.onMenuItemSelected(featureId, item); } lastnina:

ic_person_50.png

Priložite svoj meni za razvijalce na resdrawable. Meni boste lahko odprli na kateri koli profilni kartici.

onCreate

Tako kot prej omogočite poteze za upravljanje sledilne ploščice na steklu, ko ResultsActivity se prikaže. Za to preprosto pokličite MainActivity v vašem @Override protected void onCreate(Bundle bundle) { super.onCreate(bundle); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); getWindow().requestFeature(WindowUtils.FEATURE_VOICE_COMMANDS); mCardScroller = new CardScrollView(this); mCards = new ArrayList(); if(getIntent().hasExtra(SEARCH)){ mPlatform = getIntent().getStringExtra(SEARCH); } findDevelopers(mPlatform); mCardScroller.setAdapter(new DeveloperAdapter(mCards)); // Handle the TAP event. mCardScroller.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { openOptionsMenu(); } }); mGestureDetector = createGestureDetector(this); setContentView(mCardScroller); } metoda:

onResume

Dejanjem, povezanim z razvijalci, dodajte tudi upravljalnik menijev. Zaenkrat bomo pustili preprosta Toast sporočila.

onPause

Vsaka aplikacija mora uporabljati nekaj lepih vizualnih elementov, ikon itd. Skupina Google Glass je zagotovila zelo velik nabor običajnih standardiziranih ikon, ki jih lahko razvijalci Glass uporabljajo v svojih aplikacijah. Tu lahko najdete celoten nabor standardnih ikon Glass in pisav v njihovi knjižnici

Za zdaj potrebujete samo eno ikono MainActivity, zato jo prenesite na svoj MainActivity mapo. To ikono bomo uporabili namesto prenosa slike razvijalca.

Zadnja stvar, ki je za zdaj ostala v naši vadnici za razvoj aplikacij Glass, je preglasiti našo

 na 
, kjer bomo preverili, s katere razvojne platforme je bila posredovana 
 in zapolnite naš seznam.

Lahko zapustite

|_+_|
in
 metode enake kot v vašem 
|_+_|
.

Če svojo aplikacijo zaženete zdaj, lahko preverite, kako se vaši profili razvijalcev ustvarjajo sproti na podlagi menija, izbranega v

. Spet imate možnost prikaza menija z uporabo 'Ok steklo' ali s tapkanjem sledilne ploščice ali z glasovnim aktiviranjem. Trenutno je videti profil »10. razvijalca za Android«:

V našem primeru aplikacije Glass je 10. zaslon razvijalca za Android videti tako.

S tapkanjem se odpre meni na dotik:

Če tapnete zaslon Google Glass, se prikaže sporočilo »Dodaj med priljubljene«.

In rekel 'Ok steklo' prikaže glasovni meni:

To sproži glasovni ukaz »OK Glass«.

Povlecite s seznama navzdol, da se vrnete na začetni zaslon aplikacije.

Pridobivanje profilov z interneta

Za konec stvari zapolnimo meni z resničnimi informacijami za 10 najboljših razvijalcev za ApeeScape JavaScript , Android , in ios .

Boste morali prenesti njihove slike profila in jih dati na voljo prek HTTP ali pa preprosto uporabiti URL-je neposredno iz toptal.com .

Ker je gradnja spletnega pajka samo zato, da dobite imena najboljših razvijalcev v ApeeScape, morda preveč ovinek za ta članek, sem ustvaril datoteke JSON, ki jih lahko uporabite za Android , JavaScript , in ios .

V svoji aplikaciji morate najprej zahtevati dostop do interneta iz sistema Android. V datoteko manifesta dodajte naslednjo vrstico

|_+_|

Upoštevajte, da vam Glass ne bo mogel blokirati glavne niti z neposredno uporabo zahtev HTTP. Prenose JSON in posamezne slike boste morali obravnavati asinhrono. Uporabite lahko asinhronizacijsko nalogo, ustvarite lastno storitev za prenos ali namen ali kar koli želite pri svojem vsakdanjem delu.

Izdelava te funkcije ni značilna za Google Glass, zato bom preskočila odrezke kode. Če napredujete in začnete delati še zadnji del funkcije, bi morale biti vaše profilne kartice videti takole:

To je Google Glass življenjepis razvijalke ApeeScape Anna Chiare Bellini.

To je Google Glass življenjepis razvijalca ApeeScape Samuela Edwardsa.

Zaključek vadnice

Upam, da ste se zabavali, ko ste spremljali to vadnico za razvoj Googla Glass in ustvarili svojo prvo aplikacijo Glassware. Do zdaj bi vas že zanimalo, da se pisanje aplikacij za Glass ne razlikuje veliko od katere koli druge platforme Android.

Na tej točki ste se naučili, kako razširiti začetni zaslon z glasovnim vklopom Google Glass, kako ustvariti lastne glasovno aktivirane menije in kako kombinirati glasovne kontrole z gestami na dotik. Prav tako morate razumeti koncepte in osnovne gradnike za uporabniški vmesnik za Glass, kot so kartice, postavitve in elementi. Videli ste, kako dinamično ustvarjate kartice in kako se premikate med različnimi dejavnostmi.

Če se želite poglobiti, pojdite na Googlove vire za razvijalce na developers.google.com/glass . Ko začnete graditi bolj zapletene aplikacije, se bo izkazal za zelo koristen vir.

Opozarjamo vas, da je Glass še v fazi razvoja in je verjetno še veliko izboljšav, ki jih je treba izvesti, preden pride na potrošniški trg. Glede na to imam za vas eno pomembno opombo:

Na področju prepoznavanja glasu je ostalo še kar nekaj dela in morda se boste ujeli, kako kričite na svojega namišljenega prijatelja, medtem ko poskušate začeti s svojo dejavnostjo ali vnesti nekaj informacij. Brez skrbi - vsi, ki preizkusijo razvoj Google Glass, se počutijo enako, zato niste sami.

Tehnologija se bo izboljšala in steklo bo v kratkem pripravljeno za prodajo. Zagotovo bo naredil velike valove, ko pride v trgovine, zato upam, da ste tako navdušeni kot jaz, da ste med prvimi, ki so v ospredju te razburljive tehnologije!


Zadreti se : Posnetki zaslona v tem članku so narejeni z uporabo [e-pošta zaščitena] .

Kako izvesti sprint na daljavo

Orodja In Vaje

Kako izvesti sprint na daljavo
Raziskovanje geštaltskih načel oblikovanja

Raziskovanje geštaltskih načel oblikovanja

Ux Oblikovanje

Priljubljene Objave
Predvidevanje: Kako ustvariti čarobne uporabniške izkušnje
Predvidevanje: Kako ustvariti čarobne uporabniške izkušnje
Navdihnite se s temi vizualizacijami podatkov
Navdihnite se s temi vizualizacijami podatkov
Legalne športne stave: novo gospodarstvo, zgrajeno na podlagi vice
Legalne športne stave: novo gospodarstvo, zgrajeno na podlagi vice
10 pristnih načinov, kako pridobiti več všečkov na Instagramu
10 pristnih načinov, kako pridobiti več všečkov na Instagramu
Kako izdelati uspešno tržno strategijo
Kako izdelati uspešno tržno strategijo
 
Kako preklicati naročnine na iPhone
Kako preklicati naročnine na iPhone
Globoko poglobitev v uspešnost entitetnega okvira pri uporabi 'Contains'
Globoko poglobitev v uspešnost entitetnega okvira pri uporabi 'Contains'
Siva zadeva - kaj je miselni zemljevid v procesu oblikovanja?
Siva zadeva - kaj je miselni zemljevid v procesu oblikovanja?
Showdown Design Tool - Adobe XD vs. Sketch (2019)
Showdown Design Tool - Adobe XD vs. Sketch (2019)
Obvladajte vroče trende oblikovanja s temi vajami za Photoshop
Obvladajte vroče trende oblikovanja s temi vajami za Photoshop
Kategorije
Ljudje In EkipeIzdelki In EkipeNamigi In OrodjaUx OblikovanjeOdpravljanje težavPrihodnost DelaUi DesignSpletno MestoProces In OrodjaPostopek Oblikovanja

© 2023 | Vse Pravice Pridržane

socialgekon.com