TelephonyManager mgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String myNumber = mgr.getLine1Number(); 이 코드로 어플 에서는 테스트 한 후 결과가 잘 나오는데,
제가 어플이 아닌 핸드폰의 번호를 즉, OnCreate가 아닌 곳에서 새로운 클래스 생성을 해서
임의의 번호를 지정하려고 하거든요..OnCreate에서만 사용가능하다는 글을 봐서요.. 혹시 다른 방법은 없는 건가요?
긴글 읽어 주시느라 고맙습니다.~
덧글 감사합니다.
context가 살아 있는 녀석인지 어떻게 확인하죠??
import android.telephony.TelephonyManager;
import android.content.Context;
위의 2개를 import 시켜줬고요~
private String u_M = "";
public class BP_Connecter { //첫번째
GetTelMgr gtm = new GetTelMgr(); // 이용자 핸드폰 번호 가져오기
public String gg() {
u_M = gtm.getTelMgrNum();
Log.e(u_M,"test111111111111111111111111111111111111111111111");
//u_M = "test"; //이건 되네..
return u_M;
}
}
class GetTelMgr { //이용자 핸드폰 번호 가져오기 //두번째
private String getNumber = "";// 이용자 핸드폰 번호 가져오기
TelephonyManager telephonyManager;
public String getTelMgrNum() { // 이용자 핸드폰 번호 가져오기
telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
getNumber = telephonyManager.getLine1Number(); // 이용자 핸드폰 번호 가져오기
//getNumber="asldjflaskjdf;lasjfd";
return getNumber;
}
private TelephonyManager getSystemService(String telephonyService) { // <++++++++++이걸 생성 해야지 에러가 없어지더라고요~(이클립스로 자동생성)
// TODO Auto-generated method stub
return null;
}
}
===========================================================================================================================================
어플(
public class BP_Activity extends Activity {
public void onCreate(Bundle savedInstanceState) {
}
private View.OnClickListener onB1=new View.OnClickListener() {
public void onClick(View v) {
BP_Connecter test3 = new BP_Connecter();
try {
str = test3.gg();
str = test3.gg();
//str = "번호adsfadsfadsf " + min1;
Viewer.setText(str); <++++++++++++++++++++++++++++++폰번호가 출력이 안되요~// 간이 TEST로 문자를 하면 출력이 되요
} catch(Exception e) {}
}
};
}
아마 getSystemService 하실때 쓰셨던 context가 살아 있는 녀석인지 확인해 보세요.