2016-04-30 3 views
1

Je suis nouveau dans le développement android. J'ai besoin d'avoir une idée sur la façon de déployer le fichier vidéo/audio en tant que service web sur le serveur glass-fish, puis d'appeler le service web depuis le périphérique client (Mobile). S'il vous plaît, aidez-moi à avoir une idée très simple. J'ai déjà exécuté beaucoup d'applications (simples) sur le serveur et les ai appelées avec succès du périphérique client. Cette fois-ci besoin d'appeler un fichier audio/vidéo et l'obtenir sur mon appareil client.Media Player en tant que Webservice

Merci

Répondre

0

je l'ai déjà exécuter de nombreuses applications (simples) sur le serveur et appelé les succès du dispositif client.

Je ne suis pas sûr de ce que vous demandez. Les fichiers audio ou vidéo sont transférés de la même manière que tout le reste. Vous avez les mêmes défis que le transfert d'une chaîne "Hello World".

Si c'est la lecture avec laquelle vous avez du mal à vous débrouiller, voici un excellent didacticiel sur les lecteurs multimédias. MediaPlayer Tutorial

+0

En fait, je suis nouveau et je ne pouvais pas expliquer ma question clairement. Eh bien, le lien que vous avez donné est juste de développer un mediaplaer pour Android. Ma question est que je veux que ce mediaplayer fonctionne sur le serveur. Je dois envoyer la demande de lecture de fichier audio du périphérique mobile (client) et le serveur devrait répondre. Est-ce qu'il y a une idée comme ça? J'ai exécuté tant d'applications simples sur le serveur et j'ai passé les arguments du périphérique client et j'ai récupéré les valeurs résultantes sur mon périphérique client. – Mushtaq

+0

Exactement le même que j'ai besoin d'un mediaplyer pour fonctionner sur le serveur et j'envoie la demande de chanson, le serveur devrait obtenir la demande de chanson le traiter et renvoyer le contenu joué sur le dispositif de foule. Merci – Mushtaq

+0

Montrez-moi un exemple de code. – Valitos

0

les deux classes Webserver sont ...

1-

package org.ali.javabrains.business; 

import java.util.ArrayList; 
import java.util.List; 

public class BusinessProductImpl { 

List<String> bookList= new ArrayList<String>(); 
List<String> moviesList= new ArrayList<String>(); 
List<String> musicList= new ArrayList<String>(); 

public BusinessProductImpl(){ 

    bookList.add("swatnama"); 
    bookList.add("yadona"); 
    bookList.add("ka ta raghali za ba gul sham"); 

    musicList.add ("hamayun album1"); 
    musicList.add ("bkhtayar Khatak"); 
    musicList.add ("zare sandary"); 

    moviesList.add("bajrangi bhai jan"); 
    moviesList.add("Terminator 2"); 
    moviesList.add("Salam Namasty"); 
} 

public List<String> getProductCategories(){ 

List<String> categories=new ArrayList<>(); 
categories.add("books"); 
categories.add("Movies"); 
categories.add("Music"); 
return categories; 
} 

public List<String> getProducts(String category){ 
    switch (category.toLowerCase()) { 
    case "books": 
     return bookList; 
    case "music": 
     return musicList; 
    case "movies": 
     return moviesList; 
    } 
     return null; 
    } 
public boolean addProduct(String category, String product){ 

    switch (category.toLowerCase()) { 
    case "books": 
     bookList.add(product); 
     break; 
    case "music": 
     musicList.add(product); 
     break; 
    case "movies": 
     moviesList.add(product); 
     break; 
    default: 
     return false; 
    } 
     return true; 
} 

} 

2- .....

package org.ali.javabrains; 

import java.util.List; 
import org.ali.javabrains.business.BusinessProductImpl; 
import javax.jws.WebMethod; 
import javax.jws.WebService; 

@WebService 
public class ProductCatalog { 

BusinessProductImpl BpImpl=new BusinessProductImpl(); 
@WebMethod 
public List<String> getProductCategories(){ 
return BpImpl.getProductCategories(); 
} 

@WebMethod 
public List<String> getProducts(String category){ 
    return BpImpl.getProducts(category); 
} 
public boolean addProduct(String category, String product){ 
    return BpImpl.addProduct(category, product); 
} 

public int addnumbers(int a, int b){ 
    return (a+b); 
} 
public int minusnumbers(int a, int b){ 
    return (a-b); 
} 
} 

et les appels de périphériques clients sont ...

1-

package com.example.bookwservice; 



import org.ksoap2.SoapEnvelope; 
import org.ksoap2.serialization.SoapObject; 
import org.ksoap2.serialization.SoapPrimitive; 
import org.ksoap2.serialization.SoapSerializationEnvelope; 
import org.ksoap2.transport.AndroidHttpTransport; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 

public class MainActivity extends Activity { 
private static final String 
    SOAP_ACTION1="http://javabrains.ali.org/addnumbers"; 
private static final String METHOD_NAME1="addnumbers"; 
private static final String 
SOAP_ACTION2="http://javabrains.ali.org/minusnumbers"; 
private static final String METHOD_NAME2="minusnumbers"; 
private static final String NAMESPACE="http://javabrains.ali.org/"; 
private static final String 
URL="http://172.25.181.54:8080/TestWeb/ProductCatalogService"; 
TextView tv1, tv2, tv3; 
EditText et1, et2,et3; 
Button bt1, bt2, bt3; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    tv1=(TextView)findViewById(R.id.textView1); 
    tv2=(TextView)findViewById(R.id.textView2); 
    tv3=(TextView)findViewById(R.id.textView3); 

    et1=(EditText)findViewById(R.id.editText1); 
    et2=(EditText)findViewById(R.id.editText2); 
    et3=(EditText)findViewById(R.id.editText3); 

    bt1=(Button)findViewById(R.id.button1); 
    bt2=(Button)findViewById(R.id.button2); 
    bt3=(Button)findViewById(R.id.button3); 
    et1.requestFocus(); 

    bt1.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 

    SoapObject request=new SoapObject(NAMESPACE, METHOD_NAME1); 
    request.addProperty("arg0",et1.getText().toString()); 
    request.addProperty("arg1",et2.getText().toString()); 


    SoapSerializationEnvelope soapEnvelope =new 
    SoapSerializationEnvelope(SoapEnvelope.VER11); 
    soapEnvelope.dotNet=false; 
    soapEnvelope.setOutputSoapObject(request); 

    AndroidHttpTransport aht=new AndroidHttpTransport(URL); 
    try { 
     aht.call(SOAP_ACTION1, soapEnvelope); 
     SoapPrimitive resultString= 
     (SoapPrimitive)soapEnvelope.getResponse(); 

      et3.setText("" +resultString); 

     } 

    catch (Exception e){ 

     e.printStackTrace(); 
    } 
     }}); 


    bt2.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 

    SoapObject request=new SoapObject(NAMESPACE, METHOD_NAME2); 
    request.addProperty("arg0",et1.getText().toString()); 
    request.addProperty("arg1",et2.getText().toString()); 


    SoapSerializationEnvelope soapEnvelope =new 
    SoapSerializationEnvelope(SoapEnvelope.VER11); 
    soapEnvelope.dotNet=false; 
    soapEnvelope.setOutputSoapObject(request); 

    AndroidHttpTransport aht=new AndroidHttpTransport(URL); 
    try { 
     aht.call(SOAP_ACTION2, soapEnvelope); 
     SoapPrimitive resultString= 

     (SoapPrimitive)soapEnvelope.getResponse(); 

      et3.setText("" +resultString); 

     } 

    catch (Exception e){ 

     e.printStackTrace(); 
    } 
     }}); 

    bt3.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      try { 

        et1.setText(""); 
        et2.setText(""); 
        et3.setText(""); 
        et1.requestFocus(); 

       } 

      catch (Exception e){ 

       e.printStackTrace(); 
      } 
       }}); 

     } 

}