Hướng dẫn tìm hiểu NotificationManager

p_erudite

New Member
Android thông qua phương pháp getSystemService(). Cú pháp của nó được đưa ra dưới đây -

Mã:
NotificationManager NM; NM=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
Sau khi bạn tạo Notification và đặc biệt là thuộc tính như icon, title, time,... Cú pháp như sau:

Mã:
Notification notify=new Notification(android.R.drawable.stat_notify_more,title,System.currentTimeMillis());
Điều tiếp theo bạn cần làm là tạo một PendingIntent bằng cách thông qua context vàintent như một tham số. Bằng cách đưa ra một PendingIntent sang ứng dụng khác, bạn sẽ được cấp cho nó một quyền để thực hiện các hoạt động mà bạn đã chỉ định là nếu ứng dụng khác là chính bạn.

Mã:
PendingIntent pending=PendingIntent.getActivity(getApplicationContext(), 0, new Intent(),0);
Cuối cùng gọi phương thức setLastestEventInfo của lớp Notification và vượt qua intent cấp phát cùng với đối tượng thông báo và các chi tiết toàn bộ ứng dụng. Cú pháp của nó được đưa ra dưới đây. Và sau đó cuối cùng đã gọi phương thức của lớp thông báoNotificationManager .

Mã:
notify.setLatestEventInfo(getApplicationContext(), subject, body,pending); NM.notify(0, notify);
Ngoài những phương pháp này, dưới đây là một số phương pháp hữu ích trong lớpNotificationManager

STT

Phương thức và mô tả

1 cancel(int id) Phương thức này hủy một thông báo trước đó.

2 cancel(String tag, int id) Phương pháp này cũng hủy bỏ một thông báo hiển thị trước đó.

3 cancelAll() Phương thức này hủy tất cả thông báo trước đó.

4 notify(int id, Notification notification) Phương pháp này gửi một thông báo sẽ được hiển thị trên thanh trạng thái.

5 notify(String tag, int id, Notification notification) Phương thức này chit hiện thông báo Post được thể hiện trong status bar.

hoc lap trinh android cơ bản tại hà nội !

Ví dụ Ví dụ dưới đây chứng tỏ sử dụng lớp NotificationManager. Nó tạo một ứng dụng cơ bản rằng nó cho phép bạn tạo một thông báo. Đối với thử nghiệm trong ví dụ này, bạn cần để chạy trên một thiết bị thực hoặc ảo

Các bước

Mô tả

1 Bạn sẽ sử dụng Android studio để tạo ra một ứng dụng Android dưới một gói com.example.sairamkrishna.myapplication. Trong khi tạo dự án này, chắc chắn bạn Target SDK và biên dịch với các phiên bản mới nhất của Android SDK sử dụng các cấp cao hơn của các API.

2 Sửa file src/MainActivity.java thêm mã tiến để hiển thị hộp thoại tiến triển.

3 Sửa file res/layout/activity_main.xml thêm mã XML tương ứng.

4 Chạy ứng dụng và chọn một thiết bị Android chạy và cài đặt các ứng dụng trên nó và kiểm tra kết quả.

Nôi dung file MainActivity.java.

Mã:
package com.example.sairamkrishna.myapplication; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.graphics.Typeface; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import static java.lang.System.currentTimeMillis; public class MainActivity extends ActionBarActivity { EditText ed1,ed2,ed3; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ed1=(EditText)findViewById(R.id.editText); ed2=(EditText)findViewById(R.id.editText2); ed3=(EditText)findViewById(R.id.editText3); Button b1=(Button)findViewById(R.id.button); b1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String tittle=ed1.getText().toString().trim(); String subject=ed2.getText().toString().trim(); String body=ed3.getText().toString().trim(); NotificationManager notif=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE); Notification notify=new Notification(R.drawable.noti,tittle,System.currentTimeMillis()); PendingIntent pending= PendingIntent.getActivity(getApplicationContext(), 0, new Intent(), 0); notify.setLatestEventInfo(getApplicationContext(),subject,body,pending); notif.notify(0, notify); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }
Nội dung file activity_main.xml

Mã:
<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" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Notification" android:id="@+id/textView" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:textSize="30dp" /> . <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Tutorials Point" android:id="@+id/textView2" android:layout_below="@+id/textView" android:layout_centerHorizontal="true" android:textSize="35dp" android:textColor="#ff16ff01" /> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/editText" android:layout_below="@+id/textView2" android:layout_alignLeft="@+id/textView2" android:layout_alignStart="@+id/textView2" android:layout_marginTop="52dp" android:layout_alignRight="@+id/textView2" android:layout_alignEnd="@+id/textView2" android:hint="Name" /> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/editText2" android:hint="Subject" android:layout_below="@+id/editText" android:layout_alignLeft="@+id/editText" android:layout_alignStart="@+id/editText" android:layout_alignRight="@+id/editText" android:layout_alignEnd="@+id/editText" /> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:inputType="textPersonName" android:ems="10" android:id="@+id/editText3" android:hint="Body" android:layout_below="@+id/editText2" android:layout_alignLeft="@+id/editText2" android:layout_alignStart="@+id/editText2" android:layout_alignRight="@+id/editText2" android:layout_alignEnd="@+id/editText2" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Notification" android:id="@+id/button" android:layout_marginTop="77dp" android:layout_below="@+id/editText3" android:layout_alignRight="@+id/textView" android:layout_alignEnd="@+id/textView" /> </RelativeLayout/7gt;
Nội dung file AndroidManifest.xml.

Mã:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.sairamkrishna.myapplication" > <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
>> Khoa học lập trình android cơ bản tai ha noi !
Kết quả:







Hãy điền các lĩnh vực với các tiêu đề, chủ đề và cơ thể. Điều này đã được thể hiện trong hình







Bây giờ bấm vào nút thông báo và bạn sẽ thấy một thông báo trên thanh thông báo hàng đầu. Nó đã được hiển thị dưới đây





Bây giờ di chuyển xuống thanh thông báo và xem các thông báo. Điều này đã được thể hiện trong hình


Khóa hoc photoshop tai ha noi !
 
Загрузка...

Members online

No members online now.

Forum statistics

Threads
261,546
Bài viết
337,004
Thành viên
39,984
Thành viên mới nhất
ngokbuon33
Chuyển nhà trọn gói | Xe tải chở hàng giá rẻ | thi công bảng hiệu hộp đèn quảng cáo | Chuyển nhà trọn gói Bình Dương | Thi công bảng hiệu hộp đèn | thi công nhôm kính bình dương | thi công quán cafe trọn gói | chuyển nhà trọn gói Bình Dương | Tỏi Lý Sơn
Top