介绍
这篇文章将为大家详细讲解有关怎么在Android项目中添加一个强制下线通知功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
具体内容如下:
package com.itheima74.broadcastbestpractice; import android.content.Intent; import android.os.Bundle; import android.os.SystemClock; import android.support.v4.content.LocalBroadcastManager; import android.view.View;/* * ,*模拟强制下线通知 ,* 1。登录成功后10秒发送一条本地自定义无序广播 *大敌;2。接收到广播后弹出对话框(不可取消) *大敌;3。点击对话框确定按钮重新返回登陆界面 ,*/public class  MainActivity extends BaseActivity  { @Override才能 protected 才能;void  onCreate (Bundle savedInstanceState), { ,,,super.onCreate (savedInstanceState); ,,,setContentView (R.layout.activity_main); ,,,//,启动一个子线程,10秒发送一条本地无序广播 ,,,new 线程(new Runnable (), { ,,,,@Override ,,,,,public void 运行(),{ ,,,,,,,SystemClock.sleep (1000, *, 10); ,,,,,,,LocalBroadcastManager LocalBroadcastManager =, LocalBroadcastManager.getInstance (getApplicationContext ()); ,,,,,,,localBroadcastManager.sendBroadcast (new 意图(“com.itheima74.broadcastbestpractice.FORCE_OFFLINE")); ,,,,,} ,,,}).start (); ,,}//,才能点击按钮,启动Main2Activity public 才能;void 单击(View 视图),{ ,,,startActivity (new 意图(,,Main2Activity.class)); ,,} }
package com.itheima74.broadcastbestpractice; import android.content.Intent; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.EditText; import android.widget.Toast;/* * ,* Created by  My 提醒2017/3/6。 ,*/public class  LoginActivity extends AppCompatActivity  { private 才能;EditText  et_username; private 才能;EditText  et_password; @Override才能 protected 才能;void  onCreate (@Nullable Bundle  savedInstanceState), { ,,,super.onCreate (savedInstanceState); ,,,setContentView (R.layout.activity_login); ,,,et_username =, (EditText), findViewById (R.id.et_username); ,,,et_password =, (EditText), findViewById (R.id.et_password); ,,}//,才能点击按钮,进行登录 public 才能;void 登录(View 视图),{ ,,,String username =, et_username.getText () .toString () .trim (); ,,,String password =, et_password.getText () .toString () .trim (); ,,,if (“admin" .equals(用户名),,,,“123456“.equals(密码)),{ ,,,,,Toast.makeText (,,“login  success",, Toast.LENGTH_SHORT),告诉(); ,,,,,startActivity (new 意图(,,MainActivity.class)); ,,,},{else ,,,,,Toast.makeText (,,“login  fail",, Toast.LENGTH_SHORT),告诉(); ,,,} ,,} }
package com.itheima74.broadcastbestpractice; import android.app.AlertDialog; import android.content.BroadcastReceiver; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.IntentFilter; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v4.content.LocalBroadcastManager; import android.support.v7.app.AppCompatActivity; import android.util.Log; import java.util.ArrayList;/* * ,* BaseActivity ,* 1。记录所有新创建的活动 *大敌;2。随时销毁所有活动 *大敌;3。所有子类获取焦点注册广播接收者,失去焦点取消注册 *大敌;4。收到强制下线广播,弹出对话框,结束所有活动,重新启动LoginActivity ,* Created by  My 提醒2017/3/6。 ,*/public class  BaseActivity extends AppCompatActivity  { protected 才能static ArrayList< BaseActivity>, activityList =, new ArrayList<在(); private 才能;LocalBroadcastManager  localBroadcastManager; private 才能;OffLineReceiver  offLineReceiver; private 才能;IntentFilter  intentFilter; @Override才能 protected 才能;void  onCreate (@Nullable Bundle  savedInstanceState), { null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null怎么在Android项目中添加一个强制下线通知功能