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

특정 이벤트나 일정 시간이 지나면 자동으로 실행되는 앱을 만들고 싶습니다.ㅜㅜ

+1 추천
package kr.pe.theeye.gobackground;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import android.app.AlarmManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;

public class BootSvc extends Service {

	@Override
	public IBinder onBind(Intent arg0) { // onBind()는 IBinder 객체를 반환하는데 이놈이 서비스와 컴포넌트 사이의 인터페이스를 정의합니다
		// TODO Auto-generated method stub
		return null;
	}
	@Override
	public void onCreate(){
		super.onCreate();
		
		Log.i("0000aaa","서비스 시작은 재부팅 후에");
	}
	public void registerAlarm()
	{
	    Log.e("###", "registerAlarm");
	     
	    Intent intent = new Intent(this, BootSvc.class);
	    PendingIntent sender = PendingIntent.getBroadcast(this, 0, intent, 0);
	     
	    try
	    {
	        // 내일 아침 8시 10분에 처음 시작해서, 24시간 마다 실행되게
	        Date tomorrow = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse("2015-08-19 17:12:00");
	        AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
	        am.setInexactRepeating(AlarmManager.RTC, tomorrow.getTime(), 24 * 60 * 60 * 1000, sender);
	    } catch (ParseException e)
	    {
	        e.printStackTrace();
	    }
	     
	     
	}
}

핸드폰 2개중 하나가 약 50m정도 떨어질 경우 다른 하나가 알림을 받는 코드를 작성하고 싶습니다...ㅠㅠ

아오쿠르 (900 포인트) 님이 2015년 8월 19일 질문
아오쿠르님이 2015년 8월 19일 수정

1개의 답변

+2 추천
 
채택된 답변
핸드폰의 위치가 고정일리 없으니 2개  두 핸드폰의 위치를 서로 알고 있어야 겠네요.

그러면 서버가 필요하고 두 핸드폰 모두 주기적으로 서버로 위치를 보내야 겠네요.

그 후 거리 판단이나 위치정보 전송은 각 상황에 맞게 하시면 됩니다.

서버에서 거리 판단하여 50m 이상일 때만 GCM 전송한다던지

단말에서 주기적으로 다른 핸드폰의 위치를 서버에서 가져가서 비교 해도 됩니다.

 

만약 하나의 핸드폰 위치가 고정이라면 ProximityAlert 을 이용하면 되겠네요.
원조안드로이드 (58,190 포인트) 님이 2015년 8월 20일 답변
아오쿠르님이 2015년 8월 20일 채택됨
...