Q:

Problemas ao criar aplicativo para consumir serviços dos Correios

Estou desenvolvendo uma aplicação que tem o objetivo de consultar preços e prazos de encomendas consumindo o serviço dos Correios.  Porem estou com dificuldades de implementar o serviço no aplicativo.  Como faço para transferir os dados das entradas da primeira activity(onde pego cep origem e cep destino) da segunda(Comprimento, largura, altura,peso, diametro e recuperar na terceira, para realizar entao a consulta do serviço usando o método dos correios.  2
package com.example.diego.precoeprazocorreios;

import java.io. Serializable;

public class Encomenda implements Serializable{

private String cepOrigem;
private String cepDestino;
private int idIcon;
private String codigo;
private String PrazoEntrega;
private String peso;
private String maoPropria;
private String avisoRecibo;
private Double comprimento;
private Double altura;
private Double largura;
private Double valorDeclarado;

public Encomenda(String cepOrigem, String cepDestino, int idIcon, String codigo, String prazoEntrega, String peso, String maoPropria, String avisoRecibo, Double comprimento, Double altura, Double largura, Double valorDeclarado) {
    this.cepOrigem = cepOrigem;
    this.cepDestino = cepDestino;
    this.idIcon = idIcon;
    this.codigo = codigo;
    PrazoEntrega = prazoEntrega;
    this.peso = peso;
    this.maoPropria = maoPropria;
    this.avisoRecibo = avisoRecibo;
    this.comprimento = comprimento;
    this.altura = altura;
    this.largura = largura;
    this.valorDeclarado = valorDeclarado;
}

public String getCodigo() {
    return codigo;
}

public void setCodigo(String codigo) {
    this.codigo = codigo;
}

public String getPrazoEntrega() {
    return PrazoEntrega;
}

public int getIdIcon() {
    return idIcon;
}

public void setIdIcon(int idIcon) {
    this.idIcon = idIcon;
}

public void setPrazoEntrega(String prazoEntrega) {
    PrazoEntrega = prazoEntrega;
}

public String getPeso() {
    return peso;
}

public void setPeso(String peso) {
    this.peso = peso;
}

public String getMaoPropria() {
    return maoPropria;
}

public void setMaoPropria(String maoPropria) {
    this.maoPropria = maoPropria;
}

public String getAvisoRecibo() {
    return avisoRecibo;
}

public void setAvisoRecibo(String avisoRecibo) {
    this.avisoRecibo = avisoRecibo;
}

public Double getComprimento() {
    return comprimento;
}

public void setComprimento(Double comprimento) {
    this.comprimento = comprimento;
}

public Double getAltura() {
    return altura;
}

public void setAltura(Double altura) {
    this.altura = altura;
}

public Double getLargura() {
    return largura;
}

public void setLargura(Double largura) {
    this.largura = largura;
}

public Double getValorDeclarado() {
    return valorDeclarado;
}

public void setValorDeclarado(Double valorDeclarado) {
    this.valorDeclarado = valorDeclarado;
}

public String getCepOrigem() {
    return cepOrigem;
}

public void setCepOrigem(String cepOrigem) {
    this.cepOrigem = cepOrigem;
}

public String getCepDestino() {
    return cepDestino;
}

public void setCepDestino(String cepDestino) {
    this.cepDestino = cepDestino;
}

}

Primeira activity
package com.example.diego.precoeprazocorreios;

import android.content. Intent;
import android.support.v7.app. AlertDialog;
import android.support.v7.app. AppCompatActivity;
import android.os. Bundle;
import android.text. TextUtils;
import android.view. View;
import android.widget. Button;
import android.widget. EditText;
import android.widget. Toast;

public class MainActivity extends AppCompatActivity {

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

    Button btnProximo1 = (Button) findViewById(R.id.proximo1);
    btnProximo1.setOnClickListener(new View. OnClickListener() {

        @Override
        public void onClick(View v) {
            validarCampos();
        }
    });
}

public void validarCampos() {

    EditText cepOrigem = (EditText) findViewById(R.id.origem);
    EditText cepDestino = (EditText) findViewById(R.id.destino);

    String cepOri = cepOrigem.getText().toString();
    String cepDes = cepDestino.getText().toString();
    String padrao = "\\d{8}";

    if (! cepOri.matches(padrao)) {
        cepOrigem.requestFocus();
        Toast toast = Toast.makeText(getApplicationContext(), "CEP inválido", Toast. LENGTH_LONG);
        toast.show();
    } else if (! cepDes.matches(padrao)) {
        cepDestino.requestFocus();
        Toast toast = Toast.makeText(getApplicationContext(), "CEP inválido", Toast. LENGTH_LONG);
        toast.show();
    } else {
        Encomenda enc = new Encomenda(cepOrigem.getText().toString(), cepDestino.getText().toString());
        Intent myIntent = new Intent(MainActivity.this, SegundaActivity.class);
        myIntent.putExtras("objeto", enc);
        startActivity(myIntent);
    }
}
}

A:

Acrescente ma sua classe um construtor assim:
public Encomenda() {
}

Depois que você preencher os campos e for chamar a outra activity, preencha os campos usando o get e set.  Coloca esse trecho no else:
else {
        Encomenda enc = new Encomenda();
        enc.setCepOrigem(cepOrigem.getText().toString());
        enc.setCepDestino(cepDestino.getText().toString());
        Intent myIntent = new Intent(MainActivity.this, SegundaActivity.class);
        myIntent.putExtras("objeto", enc);
        startActivity(myIntent);
    }

Ai, na outra activity, você ao preencher os outros campos, antes de chamar a activity ler essa variavel do bundle, preencher com os novos campos usando o get e set e depois passar para a próxima, como da primeira para a segunda.  Exemplo:
Encomenda enc = getIntent().getSerializableExtra("objeto");
enc.setComprimento(); //Ai le do EditText como na primeira Activity. 

//Aqui vc vai chamar a activity 3
Intent myIntent = new Intent(MainActivity.this, TerceiraActivity.class);
myIntent.putExtras("objeto", enc);
startActivity(myIntent);

Na TerceiraActivity, você vai ler do mesmo jeito que na segunda, preencher e passar para a chamada do webservice.