Hướng Dẫn Android Alarmmanager

Thảo luận trong 'Học tập' bởi nuongitq, 21/1/2016.

  1. nuongitq

    nuongitq Thành viên đạt chuẩn

    Tham gia:
    5/8/2014
    Bài viết:
    73
    Đã được thích:
    8
    Điểm thành tích:
    8
    Android AlarmManager cho phép bạn truy cập vào hệ thống báo động. Bởi sự trợ giúp của Android AlarmManager trong Android, bạn có thể lên lịch cho ứng dụng của bạn chạy thời điểm cụ thể trong tương lai. Nó hoạt động mặc dù điện thoại của bạn hiện tại hay không. Android AlarmManager chứa một khóa sau CPU cung cấp bảo lãnh không ngủ cho đến khi điện thoại phát sóng được xử lý học lap trinh android

    Android AlarmManager
    Hãy xem one ví dụ đơn giản AlarmManager chạy sau one thời gian cụ thể cung cấp bởi người dùng. Bạn cần phải kéo chỉ một EditText và một nút như được đưa ra dưới đây.
    File: activity_main.xml

    Code:
    <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=".MainActivity" > <EditText android:id="@+id/time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginTop="28dp" android:ems="10" android:hint="Number of seconds" android:inputType="numberDecimal" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@+id/time" android:layout_below="@+id/time" android:layout_marginRight="60dp" android:layout_marginTop="120dp" android:text="Start" /> </RelativeLayout>
    Lớp Activity
    Lớp hoạt động khởi động dịch vụ cảnh báo khi người dùng nhấp chuột vào nút.
    File: MainActivity.java

    Code:
    package com.example.alarmexample; import android.app.Activity; import android.app.AlarmManager; import android.app.PendingIntent; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { Button b1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); b1=(Button) findViewById(R.id.button1); b1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub startAlert(); } }); } public void startAlert() { EditText text = (EditText) findViewById(R.id.time); int i = Integer.parseInt(text.getText().toString()); Intent intent = new Intent(this, MyBroadcastReceiver.class); PendingIntent pendingIntent = PendingIntent.getBroadcast( this.getApplicationContext(), 234324243, intent, 0); AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE); alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + (i * 1000), pendingIntent); Toast.makeText(this, "Alarm set in " + i + " seconds",Toast.LENGTH_LONG).show(); } }
    Hãy tạo lớp BroadcastReceiver bắt đầu alarm.
    File: MyBroadcastReceiver.java

    Code:
    package com.example.alarmexample; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.media.MediaPlayer; import android.widget.Toast; public class MyBroadcastReceiver extends BroadcastReceiver { MediaPlayer mp; @Override public void onReceive(Context context, Intent intent) { mp=MediaPlayer.create(context, R.raw.alrm ); mp.start(); Toast.makeText(context, "Alarm....", Toast.LENGTH_LONG).show(); } }
    >> Khóa học lập trình android tại hà nội
    File: AndroidManifest.xml

    Bạn cần phải cung cấp một mục thu trong file AndroidManifest.xml.

    Code:
    <receiver android:name="MyBroadcastReceiver" > </receiver>
    Hãy xem đoạn code đầy đủ của tập tin AndroidManifest.xml.

    Code:
    <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.alarmexample" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16" /> <uses-permission android:name="android.permission.VIBRATE" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.alarmexample.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> <receiver android:name="MyBroadcastReceiver" > </receiver> </application> </manifest>
    Kết quả:
    [​IMG]
    [​IMG]
    [​IMG]

    ---------------------- || ----------------------
    Trung tâm Đào tạo học photoshop tại Hà Nội!
     

    Xem thêm các chủ đề tạo bởi nuongitq
    Đang tải...


  2. dochoicaocap

    dochoicaocap Thành viên rất tích cực

    Tham gia:
    3/8/2015
    Bài viết:
    1,211
    Đã được thích:
    251
    Điểm thành tích:
    153
    chằng hiểu gì
     

Chia sẻ trang này