버튼을 클릭하면 상태표시줄에 알림(Notification)이 발생하는 소스코드입니다.
메인화면 알림 발생(상태표시줄) 상태표시줄에 남아있는 알림 아이콘
상태바를 드래그하면 보이는 알림창(확장상태바) 상태바의 지우기 버튼을 누르면 알림이 삭제됨
Layout 파일
activity_main.xml |
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${relativePackage}.${activityClass}" > <Button android:id="@+id/button" android:layout_width="match_parent" android:layout_height="50dp" android:text="generate Notification" android:onClick="mOnClick"/> </RelativeLayout> |
소스파일
MainActivity.java |
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }
//Button을 클릭했을 때 자동으로 호출되는 callback method.... public void mOnClick(View v){ switch( v.getId() ){ case R.id.button:
//알림(Notification)을 관리하는 NotificationManager 얻어오기 NotificationManager manager= (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
//알림(Notification)을 만들어내는 Builder 객체 생성 //API 11 버전 이하도 지원하기 위해 NotificationCampat 클래스 사용 //만약 minimum SDK가 API 11 이상이면 Notification 클래스 사용 가능 NotificationCompat.Builder builder= new NotificationCompat.Builder(this);
//Notification.Builder에게 Notification 제목, 내용, 이미지 등을 설정////////////////////////////////////// builder.setSmallIcon(android.R.drawable.ic_dialog_email);//상태표시줄에 보이는 아이콘 모양 builder.setTicker("Notification"); //알림이 발생될 때 잠시 보이는 글씨 //상태바를 드래그하여 아래로 내리면 보이는 알림창(확장 상태바)의 아이콘 모양 지정 builder.setLargeIcon(BitmapFactory.decodeResource(getResources(), android.R.drawable.ic_input_add));
builder.setContentTitle("Contents Title"); //알림창에서의 제목 builder.setContentText("Contents TEXT"); //알림창에서의 글씨 ///////////////////////////////////////////////////////////////////////////////////////////////////////
Notification notification= builder.build(); //Notification 객체 생성
manager.notify(1, notification); //NotificationManager가 알림(Notification)을 표시
break; } } } |
'소소한 소스코드' 카테고리의 다른 글
Android 채팅 앱 - 간단한 단말기 간 소켓통신 (12) | 2015.04.14 |
---|---|
Android Notification 확인하기 (PendingIntent 적용) (0) | 2015.03.30 |
Android XML 파서(parsing)-네이버 오픈API XmlPullParser (3) | 2015.03.30 |
Android XML 파싱(parsing)-Resource폴더 xml 파일 XmlResourceParser (0) | 2015.03.30 |
Android 외부메모리(External Storage)-SDcard에 Data 저장하기 (1) | 2015.03.30 |