package com.sunvote.udptest; import android.os.Bundle; import android.os.Handler; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.TextView; import android.widget.Toast; public class Main3Activity extends AppCompatActivity implements FileReciverInterface{ private TextView serverIp; private TextView port; private TextView keyid; private TextView state; private View start; private View stop ; private Handler handler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main3); serverIp = findViewById(R.id.server_ip); port = findViewById(R.id.server_port); keyid = findViewById(R.id.key_id); state = findViewById(R.id.state); start = findViewById(R.id.start); stop = findViewById(R.id.stop); handler = new Handler(); start.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { DownloadFileModule.getInstance().setFileReciverInterface(Main3Activity.this); DownloadFileModule.getInstance().downloadFile(serverIp.getText().toString(), Integer.parseInt(port.getText().toString()),Integer.parseInt(keyid.getText().toString())); Toast.makeText(Main3Activity.this,"开始下载!",Toast.LENGTH_SHORT).show(); } }); stop.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { DownloadFileModule.getInstance().clean(); Toast.makeText(Main3Activity.this,"停止下载!",Toast.LENGTH_SHORT).show(); setState("准备就绪"); } }); } public void setState(final String msg){ runOnUiThread(new Runnable() { @Override public void run() { state.setText(msg); } }); } @Override public void onConnectServerError() { setState("连接服务器失败"); handler.postDelayed(new Runnable() { @Override public void run() { setState("准备就绪"); } },1000); } @Override public void onDownloadDataError() { setState("下载失败"); handler.postDelayed(new Runnable() { @Override public void run() { setState("准备就绪"); } },1000); } @Override public void onDownload(long percent) { setState("下载" + percent + "%"); } @Override public void onDownloadUserStop() { setState("下载取消"); handler.postDelayed(new Runnable() { @Override public void run() { setState("准备就绪"); } },1000); } @Override public void onDownloadSuccess() { setState("下载成功"); handler.postDelayed(new Runnable() { @Override public void run() { setState("准备就绪"); } },1000); } @Override public void onUnzipError() { setState("解压错误"); handler.postDelayed(new Runnable() { @Override public void run() { setState("准备就绪"); } },1000); } }