안 드 로 이 드 초 장 문자 발송

2847 단어 androidsmsmanager
감사:
http://www.pocketdigi.com/20110715/395.html
문자 내용 이 너무 길 면 SmsManager. divideMessage (String text) 방법 으로 하나의 ArrayList 배열 로 자동 으로 나 누 어 보 내 거나 배열 의 길이 에 따라 순환 적 으로 보 내 거나 sendMultipart TextMessage 방법 으로 직접 보 낼 수 있 습 니 다. 매개 변 수 는 sendTextMessage 와 유사 합 니 다. 문자 내용 이 divideMessage 로 분 리 된 ArrayList 가 되 었 을 뿐만 아니 라 두 방송 도 마찬가지 입 니 다.그래서 더 이상 예 를 쓰 지 않 습 니 다. 앞에서 말 했 듯 이 Intent 를 보 내 는 방식 으로 문자 메 시 지 를 보 낼 수 있 습 니 다. 사용자 가 조작 하지 않 아 도 됩 니 다. 일부 양심 없 는 개발 자 들 은 이 SmsManager 기능 으로 배경 에서 몰래 SP 에 게 문 자 를 보 내 서 사용자 의 전화 요금 이 공제 되 었 습 니 다. 사실은 이런 응용 프로그램 들 은 잘 구분 할 수 있 습 니 다.SmsManager 를 통 해 문 자 를 보 내 려 면 android. permission. SEND 를 추가 해 야 하기 때 문 입 니 다.SMS 권한 은 설치 할 때 조금 만 주의 하면 됩 니 다. 물론 프로그램 에서 다른 문자 권한 이 있 는 응용 프로그램 을 다운로드 하고 배경 에 문자 메 시 지 를 보 내 는 경우 도 있 습 니 다. 설치 할 때 이 응용 프로그램 이 다른 응용 프로그램 을 설치 할 수 있 는 권한 이 있 는 지 주의 하 십시오 (android. permission. INSTALL PACKAGES). 이 권한 이 없 으 면 설치 응용 프로그램 은 반드시 사용자 의 클릭 을 거 쳐 야 합 니 다.
package com.hello;
 
import android.app.Activity;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.telephony.SmsManager;
 
public class HelloWorldActivity extends Activity {
    /** Called when the activity is first created. */
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        String action="com.pocketdigi";
 
        sendReceiver receiver=new sendReceiver();
        IntentFilter filter=new IntentFilter();
		filter.addAction(action);
		registerReceiver(receiver,filter);
        //          ,          
 
        SmsManager smsMgr = SmsManager.getDefault(); 
        Intent intent = new Intent(action);
        PendingIntent pi = PendingIntent.getBroadcast(this, 0, intent, 0);
        smsMgr.sendTextMessage("10086", null, "1561", pi, null);
        //       ,        (null  ),    ,        PendingIntent,      
     //        (          ),    ,     ,      ,          ,     null
    }
 
    class sendReceiver extends BroadcastReceiver{
    	//     
		@Override
		public void onReceive(Context context, Intent intent) {
			// TODO Auto-generated method stub
			int resultCode = getResultCode();
			if(resultCode==Activity.RESULT_OK){
				System.out.println("    ");
			}else{
				System.out.println("    ");
			}
		}
    }
}

좋은 웹페이지 즐겨찾기