textview 값을 string id = " " 로 보내기

조회수 1515회

이미지

아래 메인 자바 소스중

String id = "15555215554"; 이부분을 직접 입력해서 빌드하면 위와 같이

그누보드 회원정보에서 포인트 정보를 잘 뽑아와서 보여줍니다

위 이미지중 15555215554 는 아래 메인 자바 소스중 내 폰번호를 추출해와서

textview 로 화면에 보여준 것입니다

제 핸드폰에 설치해서 확인해보면 제 폰번호가 정상적으로 보여집니다

그럼 디바이스 전화번호를 정상적으로 추출해 오는건 확인이 된거니까

이제 필요한건 추출한 전화번호를 textview 로 보여주는것이 아니라

String id = ; 로 전화번호가 들어가게 하는 방법 입니다.

도와 주세요....

아래는 현재 메인 자바 소스입니다


package call.exam.jsh.appaaa;

        import android.Manifest;
        import android.content.Context;
        import android.content.pm.PackageManager;
        import android.os.AsyncTask;
        import android.support.v4.app.ActivityCompat;
        import android.support.v4.content.ContextCompat;
        import android.support.v7.app.AppCompatActivity;
        import android.os.Bundle;
        import android.telephony.TelephonyManager;
        import android.widget.TextView;
        import org.apache.http.HttpResponse;
        import org.apache.http.client.HttpClient;
        import org.apache.http.client.methods.HttpGet;
        import org.apache.http.impl.client.DefaultHttpClient;
        import java.io.BufferedReader;
        import java.io.InputStreamReader;
        import java.net.URI;
        import java.net.URL;
        import static android.R.attr.name;

public class zzzzzz extends AppCompatActivity {
    TextView txtPhoneNo;
    TextView txtview;
    phpdo task;

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

         String id = "15555215554";
         String name = "";

task = new phpdo();
txtview = (TextView) findViewById(R.id.txtView);
task.execute(id, name);

txtPhoneNo = (TextView)findViewById(R.id.txtPhoneNo);

int permissionCheck = ContextCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE);

if (permissionCheck != PackageManager.PERMISSION_GRANTED) {
             ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_PHONE_STATE}, 1);
         } else {
//manager
             TelephonyManager telephonyManager = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);


             txtPhoneNo.setText("전화번호"+ telephonyManager.getLine1Number().replace("-", "").replace("+82", "0"));
         }
     }

@Override
    protected void onDestroy() {
super.onDestroy();
    }

private class phpdo extends AsyncTask<String, Void, String> {

protected void onPreExecute() {

        }

@Override
        protected String doInBackground(String... arg0) {

try {
                String id = arg0[0];

                String link = "http://sun7684.dothome.co.kr/testquery.php?ID=" + id + "&NAME=" + name;
                URL url = new URL(link);
                HttpClient client = new DefaultHttpClient();
                HttpGet request = new HttpGet();
                request.setURI(new URI(link));
                HttpResponse response = client.execute(request);
                BufferedReader in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));

                StringBuffer sb = new StringBuffer("");
                String line = "";

while ((line = in.readLine()) != null) {
                    sb.append(line);
break;
                }
                in.close();
return sb.toString();
            } catch (Exception e) {
return new String("Exception: " + e.getMessage());
            }

        }

@Override
        protected void onPostExecute(String result) {
//txtview.setText("Login Successful");
            txtview.setText(result);

        }

    }

}
  • (•́ ✖ •̀)
    알 수 없는 사용자
  • 다른 사람들이 알아들을 수 있도록 하고자 하는 것을 좀더 명확히 써주세요. 질문이 이해가 안됩니다 김선우 2017.10.10 14:14

1 답변

  • AysncTask 실행하는 명령

    task.execute(id, name);
    

    를 핸드폰 번호를 얻은 후에 호출해주세요.

    예를 들어,

    ...
    TelephonyManager telephonyManager = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
    txtPhoneNo.setText("전화번호"+ telephonyManager.getLine1Number().replace("-", "").replace("+82", "0"));
     }
    ...
    

    이 쪽 위치에,

    TelephonyManager telephonyManager = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
    
    String id = telephonyManager.getLine1Number().replace("-", "").replace("+82", "0");
    String name =  "";
    txtPhoneNo.setText("전화번호"+ id);
    task.execute(id, name);
     }
    
    
    
    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)