2011-12-12 4 views
-2

나는 앱을 만드는 사용자가 사진을 검색하여 다른 사용자가 해당 항목을 볼 수있는 항목을 판매하도록 앱을 만드는 방법을 알아 내려고 노력하고 있습니다. 예를 들어 android 용 craigslist와 같은 것입니다. 카테고리, 제목, 가격, 설명 및 판매용으로 게시 할 항목의 그림과 같은 편집 텍스트를 사용자가 채울 수있는 앱을 설정하고 싶습니다. 이렇게하면 사용자가 항목을 검색 할 수 있습니다. 내가 이해하는 것으로부터 사용자가 판매용으로 입력하는 것을 가져 와서 다른 사람들이 검색 할 수 있도록 서버에 보내야합니다. 이제안드로이드에는 내 앱 사용자가 다른 사용자가 앱에 게시하는 것을 볼 수있는 서버가 있습니까?

public class Post extends Activity implements OnClickListener { 

    ImageButton ibutton1; 
    ImageButton ibutton2; 
    ImageButton ibutton3; 
    ImageButton ibutton4; 
    ImageButton ibutton5; 
    ImageButton ibutton6; 


    Intent i1; 
    Intent i2; 
    Intent i3; 
    Intent i4; 
    Intent i5; 
    Intent i6; 

    final static int cameraData1 = 1; 
    final static int cameraData2 = 2; 
    final static int cameraData3 = 3; 
    final static int cameraData4 = 4; 
    final static int cameraData5 = 5; 
    final static int cameraData6 = 6; 

    Bitmap bmp; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.post); 

     Button button = (Button) findViewById(R.id.bNext); 
     button.setOnClickListener(mNextListener); 

     // Category spinner set up 
     Spinner cSpinner = (Spinner) findViewById(R.id.spCategoryPost); 
     ArrayAdapter<CharSequence> adapter2 = ArrayAdapter.createFromResource(
       this, R.array.category_array, 
       android.R.layout.simple_spinner_item); 
     adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     cSpinner.setAdapter(adapter2); 

     cSpinner.setOnItemSelectedListener(new MyOnItemSelectedListener2()); 
     initialize(); 
    } 

    private void initialize() { 
     ibutton1 = (ImageButton) findViewById(R.id.imageButton1); 
     ibutton2 = (ImageButton) findViewById(R.id.imageButton2); 
     ibutton3 = (ImageButton) findViewById(R.id.imageButton3); 
     ibutton4 = (ImageButton) findViewById(R.id.imageButton4); 
     ibutton5 = (ImageButton) findViewById(R.id.imageButton5); 
     ibutton6 = (ImageButton) findViewById(R.id.imageButton6); 
     ibutton1.setOnClickListener(this); 
     ibutton2.setOnClickListener(this); 
     ibutton3.setOnClickListener(this); 
     ibutton4.setOnClickListener(this); 
     ibutton5.setOnClickListener(this); 
     ibutton6.setOnClickListener(this); 
    } 

    public void onClick(View Images) { 
     switch (Images.getId()) { 

     case R.id.imageButton1: 
      i1 = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(i1, cameraData1); 
      break; 
     case R.id.imageButton2: 
      i2 = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(i2, cameraData2); 
      break; 
     case R.id.imageButton3: 
      i3 = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(i3, cameraData3); 
      break; 
     case R.id.imageButton4: 
      i4 = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(i4, cameraData4); 
      break; 
     case R.id.imageButton5: 
      i5 = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(i5, cameraData5); 
      break; 
     case R.id.imageButton6: 
      i6 = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(i6, cameraData6); 
      break; 
     } 

    } 

    private OnClickListener mNextListener = new OnClickListener() { 
     public void onClick(View v) { 

      EditText edit = (EditText) findViewById(R.id.etTitle); 
      EditText editP = (EditText) findViewById(R.id.etPrice); 
      EditText editD = (EditText) findViewById(R.id.etDescription); 
      long currentTime = System.currentTimeMillis(); 
      Calendar cal = Calendar.getInstance(); 
      cal.setTimeInMillis(currentTime); 
      String showTime=String.format("%1$tI:%1$tM:%1$tS %1$Tp",cal); 

      Intent intent = new Intent(Post.this, PostSet.class); 
      intent.putExtra("com.mandam.isellibuy.TITLE", edit.getText().toString()); 
      intent.putExtra("com.mandam.isellibuy.PRICE", editP.getText().toString()); 
      intent.putExtra("com.mandam.isellibuy.DESC", editD.getText().toString()); 
      intent.putExtra("currentTime", currentTime); 
      startActivity(intent); 

     } 
    }; 
    @Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     if (resultCode == RESULT_OK){ 
      Bundle extras = data.getExtras(); 
      bmp = (Bitmap) extras.get("data"); 
      ibutton1.setImageBitmap(bmp); 
     } 
    } 

} 

내가 모든 편집 텍스트, 회 전자의 값을, 이미지 및 다른 반환 : 사람이 시작하는 방향으로 안내 할 수 있습니다, 이것은 내가 항목을 게시하는 사용자에 대해 무엇을 가지고 사용자가 확인이 좋아 보인다하려면이 모두 보려면 및 판매를위한 항목을 게시 할 수있는 활동이, 여기에 활동 :

public class PostSet extends Activity { 



    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.post_set); 

     // Setting text of edit text tvTitle from class Post 
     TextView tv1 = (TextView) findViewById (R.id.tvTitleText); 
     TextView tv2 = (TextView) findViewById (R.id.tvPrice); 
     TextView tv3 = (TextView) findViewById (R.id.tvTimeStamp); 
     TextView tv4 = (TextView) findViewById (R.id.tvDescription); 

     Intent intent = getIntent(); 
     String edit = intent.getStringExtra("com.mandam.isellibuy.TITLE"); 
     String editP = intent.getStringExtra("com.mandam.isellibuy.PRICE"); 
     String editD = intent.getStringExtra("com.mandam.isellibuy.DESC"); 
     //long currentTime = extras.getLong("currentTime"); 

     tv1.setText(edit); 
     tv2.setText(editP); 
     tv4.setText(editD); 
     //tv3.setText(currentTime); 


    } 



} 

지금이 활동은 단지 이상을 찾기 위해 사용자의 모든 입력을 표시하고 다른 사용자가 내 앱에서 항목을 볼 수 있도록 사용자가 항목을 제출하기 위해 클릭하는 "제출"버튼이 있습니다. 이것은 내가 혼란스러워서 어떻게 성취합니까?

답변

1

"Android에 서버가 있습니다 ..."라는 제목의 질문에 대한 대답은 아니오입니다. Google에서 Android 용으로 특별히 제공하는 서버는 없습니다. 그러나 Android는 표준 네트워크 통신을 수행 할 수 있으므로 원하는 액세스 가능한 모든 서버를 사용할 수 있습니다. Google App Engine, HerokuAWS을 비롯한 많은 무료 (계층화 된) 서버가 있습니다. 자신 만의 서버 측 구성 요소를 만들어야합니다.

질문의 실제 본문이 매우 광범위하기 때문에 아마도 downvotes가 표시됩니다. 나는 아마도 당신의 질문을 "Craigslist를 어떻게 만들 수 있나?"라고 다시 말할 수있을 것입니다. 관련이 많고 다양한 가능성과 요구 사항이 있습니다. 문제를 조각으로 분해하고, 할 수있는 것을 채워야하며, 조각에 대해 기술적 인 질문이 있으면 StackOverflow에서 여기에 질문하십시오.

당신이 질문 할 때 올바른 방향으로 시작할 수 있도록 도와 줄 것입니다. 웹 서비스를 구현하는 방법을 배우고 목록을 게시하고 목록을 검색하는 방법을 배우십시오. 해당 웹 서비스에서 요청을 해석하고 데이터를 데이터베이스에 저장해야합니다. 마찬가지로 목록을 검색 할 때 이전에 저장된 목록을 검색하고 잠재적으로 필터/정렬 한 다음 다시 어떤 형식으로 반환하도록 데이터베이스로 이동해야합니다.

이것은 사소한 일이 아닙니다. 행운을 비네.

+0

잘 이해 해주셔서 감사 드리며 이해가 약간 흐립니다. 따라서 게시물을 처리하고 사용자가 게시물을 올바르게 검색 할 수 있도록 "클라우드"또는 "서버"를 사용해야합니다. 이 문제를 어디서부터 시작해야할지 조금만 알려 주시겠습니까? 또한 웹 서비스는 정확히 무엇입니까? 인터넷에있는 웹 사이트 또는 단순히 "클라우드"입니까? 이러한 게시물을 저장하고 사용자가 이러한 게시물을 검색 할 수 있도록 사용할 수 있습니까? 고맙습니다. – mandam

+0

웹 서비스가 무엇인지 알았으므로이 프로젝트에 대해 더 구체적으로 몇 가지 질문을하겠습니다. 웹 서비스를 시작하는 방법에 대한 또 다른 질문을 할 것입니다. 웹 서비스를 시작하는 방법에 대해 몇 가지 통찰력을 줄 수 있다면 크게 감사 할 것입니다. 다시 한 번 감사드립니다. – mandam

관련 문제