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

버튼에 따른 putExtra 사용방법

0 추천
// 추가 소스
Intent appname =new Intent(mContext, NotifiActivitiy.class);
                    appname.putExtra("DO", "appname");
                    PendingIntent button1 = PendingIntent.getActivity(mContext, 1, appname, PendingIntent.FLAG_UPDATE_CURRENT);
                    contentView.setOnClickPendingIntent(R.id.button1, button1);

Intent appinfo =new Intent(mContext, NotifiActivitiy.class);
                    appinfo.putExtra("DO", "smart");
                    PendingIntent button2 = PendingIntent.getActivity(mContext, 1, appinfo, PendingIntent.FLAG_UPDATE_CURRENT);
                    contentView.setOnClickPendingIntent(R.id.button2, button2);

보내는곳은 이런식으로 처리해보고

받는곳은
 ctx=this;
        String action;
        action= (String)getIntent().getExtras().get("DO");
        Log.d("action",action);
        Log.i("LOG", "lauching action: " + getIntent().getExtras().toString());
        //Log.i("LOG", "lauching action: " + action);
        if(action.equals("appname")){

            Intent i = new Intent(NotifiActivitiy.this, MainActivity.class);
            i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK
                    | Intent.FLAG_ACTIVITY_CLEAR_TOP
                    | Intent.FLAG_ACTIVITY_SINGLE_TOP);
            startActivity(i);
        } else if(action.equals("smart")){
//            Intent i = new Intent(NotifiActivitiy.this, SmartSwitch.class);
//            startActivity(i);
        } else if(action.equals("config")){

이렇게 처리햇습니다.



 

여러예제를 공부하고 있는 초급 개발자입니다.. 혹시 putExtra 부분에 대해 궁금한게 있어서 그러는데 저렇게 동시에 쓰면

아래잇는 DO 에 smart 만 들어가게 되더라고여 혹시 버튼에따라 다른 putExtra 주는게 저런식으로 쓰는게 아니라 다른방법이 있나요? 

 

 

초보개발 님이 2015년 3월 30일 질문
2015년 3월 30일 수정

1개의 답변

0 추천
Intent 자체를 새로 만들어보아요
Gradler (109,780 포인트) 님이 2015년 3월 30일 답변
Intent appname =new Intent(mContext, NotifiActivitiy.class);
                    appname.putExtra("DO", "appname");
                    PendingIntent button1 = PendingIntent.getActivity(mContext, 1, appname, PendingIntent.FLAG_UPDATE_CURRENT);
                    contentView.setOnClickPendingIntent(R.id.button1, button1);

                    Intent appinfo =new Intent(mContext, NotifiActivitiy.class);
                    appinfo.putExtra("DO", "smart");
                    PendingIntent button2 = PendingIntent.getActivity(mContext, 1, appinfo, PendingIntent.FLAG_UPDATE_CURRENT);
                    contentView.setOnClickPendingIntent(R.id.button2, button2);

이렇게 새로 만들었는데도 그래서 저 방법으로 해본건데 그래도 그러네요 ㅠㅠ
...