Connection mellan server och app

Diskussion i 'Frågor, support och diskussion' startad av sika, 5 mar 2011.

  1. sika

    sika Baby Droid Medlem

    Blev medlem:
    25 feb 2011
    Inlägg:
    17
    Mottagna gillanden:
    0

    MINA ENHETER

    Hej,

    Jag skrev ett inlägg för ca en vecka sedan om koppling mellan app och en server. Jag ville veta hur man gör så att en app kan ta emot pushad data från nätet (server), även om den inte är igång. Svaret jag fick var C2DM (Android Cloud to Device Messaging Framework), men detta är inte det jag är ute efter. Jag fortsatte att skriva i den posten, men tog även upp lite andra ämnen så folk orkade nog inte svara :). Startar därför en ny som jag förhoppningsvis kan hålla "renare" (hålla mig till ämnet), och så har jag en något förändrad fråga.

    Det jag vill kunna göra är:
    - Upprätta en uppkoppling mellan en server och appen.
    - Kunna ta emot databaser och filer


    För övrigt undrar jag också om det finns något sätt att uppkopplingen mellan app och server kan göras/hållas även när appen inte är igång (någon form av service)?

    Många frågor här, så vad hoppas jag få för svar?
    Eftersom jag är ny på Android programmering så är det svåra för mig att veta var jag ska börja kolla.
    Skulle jättegärna vilja ha pekpinnar om vilka klasser som är aktuella (java.net.?, android.net.?, etc) och tips om tutorials som tar upp detta.
    Liksom, vad är grejen som det viktiga för att få detta att funka? Vet jag det kan jag sen läsa på om det.
     
  2. Reconnnn

    Reconnnn Professional Droid Hedersmedlem

    Blev medlem:
    9 mar 2010
    Inlägg:
    2 809
    Mottagna gillanden:
    263

    MINA ENHETER

    Vad är det för app du ska göra? Vore mycket enklare att svara på vad som är lämpligt då.
     
  3. Kaj

    Kaj Senior Droid Medlem

    Blev medlem:
    12 jun 2009
    Inlägg:
    1 768
    Mottagna gillanden:
    44

    MINA ENHETER

    Är du säker på det? Varför inte mellan appen och servern? Dvs, det är appen som kopplar upp.

    Vad man skickar / får bör inte spela så stor roll.

    Låter som en service, men tänk på hur du skriver den, du bör definitivt inte alltid ha en uppkoppling. Bättre att i så fall polla lite då och då. Ev skulle du kunna använda C2DM för notifiering om att det finns data, och sedan göra uppkopplingen med klienten för att hämta datat.

    Behöver nog ha mer info om vad du skall göra, och varför.
     
  4. corgrath

    corgrath Kid Droid Medlem

    Blev medlem:
    28 okt 2009
    Inlägg:
    69
    Mottagna gillanden:
    13

    MINA ENHETER

    Angående att skapa en anslutning mellan appen och en server är ganska enkelt.

    I Android appen (klienten) behöver du bara implementera en java.net.Socket som ansluter sig till servern som har implementerat en java.net.ServerSocket. Det är inget speciellt, utan bara grundläggande nätverks-programmering i Java.

    Nackdelen att skapa en egen server är att du måste alltid hålla den igång och publik mot Internet, så att dina klienten kan alltid ansluta sig.

    Ett annat alternativ är att du kör allting via webservrar och http, och då finns det ett jättesnabbt protokoll som heter Hessian som är riktigt enkelt att använda.

    En snabb guide finns här: http://hessian.caucho.com/#Introduction to Hessian

    Tanken är att du bara laddar in Hessian-biblioteket, sedan skapa en interface och implementera metoder. Sedan är det typ bara att anropa metoder på server/klienten.

    Hur man lägger in Hessian I android finns beskrivet här: http://blog.christoffer.me/2010/10/hessian-library-for-android.html


    Angående att kunna ta emot data, då appen är inte igång går nog inte. Det du behöver är en bakgrundslyssnare (Service tror jag det heter i Android) som med mellan rum kollar servern för ny data.
     
    sika gillar detta.
  5. mikma

    mikma Adult Droid Medlem

    Blev medlem:
    5 dec 2010
    Inlägg:
    729
    Mottagna gillanden:
    81
    Telefon:
    Sony XZ2 Compact

    MINA ENHETER

    Telefon:
    Sony XZ2 Compact
  6. sika

    sika Baby Droid Medlem

    Blev medlem:
    25 feb 2011
    Inlägg:
    17
    Mottagna gillanden:
    0

    MINA ENHETER

    Tack för hjälpen!
    Ska undersöka detta vidare :)