安卓开发广播最简单强制下线
来源:互联网 发布:数据标准化方法比较 编辑:程序博客网 时间:2024/06/14 05:20
小菜鸟,不喜勿喷。
部分代码
package com.example.test619qiangzhixiaxian.test619qiangzhixiaxian;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;public class MainActivity extends AppCompatActivity { //发送广播 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button force_offline = (Button) findViewById(R.id.force_offline); force_offline.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent("com.example.broadcastbestpractice.FORCE_OFFLINE"); sendBroadcast(intent); Intent intent1 = new Intent(MainActivity.this, LoginActivity.class); startActivity(intent1); } }); }}
package com.example.test619qiangzhixiaxian.test619qiangzhixiaxian;import android.app.AlertDialog;import android.content.BroadcastReceiver;import android.content.ContentProviderOperation;import android.content.Context;import android.content.DialogInterface;import android.content.Intent;import android.view.WindowManager;/** * Created by Administrator on 2017-06-19. *///广播接收器public class BroadcaseReceiver extends BroadcastReceiver { @Override public void onReceive(final Context context, Intent intent) { AlertDialog.Builder dialogbuilder = new AlertDialog.Builder(context); dialogbuilder.setTitle("warning"); dialogbuilder.setMessage("您已经强制退出,请重新登录"); dialogbuilder.setCancelable(false); dialogbuilder.setPositiveButton("ok", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { //销毁所有东西 ActivityCollector.finishAll(); Intent intent1 = new Intent(context, LoginActivity.class); //根据活动启动方式,调用实现不同的穹顶方式 intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); } }); //创建实现 AlertDialog alertDialog = dialogbuilder.create(); //需要设置ALTERDIALOG的类型,保证在广播接收器中正常弹出 alertDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT); alertDialog.show(); }}
package com.example.test619qiangzhixiaxian.test619qiangzhixiaxian;import android.app.Activity;import java.util.ArrayList;import java.util.List;/** * Created by Administrator on 2017-06-19. */// TODO: 2017-06-19 用于管理所有的活动 public class ActivityCollector { //设置activity public static List<Activity> activities = new ArrayList<Activity>(); //替换的方法 public static void addActivity(Activity activity) { activities.add(activity); } //设置移除的方法 public static void removeActivity(Activity activity) { activities.remove(activity); } //关闭所有现有活动 public static void finishAll() { for (Activity activity : activities) { if (activity.isFinishing()) { activity.finish(); } } }}
package com.example.test619qiangzhixiaxian.test619qiangzhixiaxian;import android.app.Activity;import android.os.Bundle;/** * Created by Administrator on 2017-06-19. */// TODO: 2017-06-19 所有活动的父类public class BaseActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ActivityCollector.addActivity(this); } @Override protected void onDestroy() { super.onDestroy(); ActivityCollector.removeActivity(this); }}package com.example.test619qiangzhixiaxian.test619qiangzhixiaxian;import android.content.Intent;import android.net.ConnectivityManager;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;/** * Created by Administrator on 2017-06-19. */public class LoginActivity extends BaseActivity { EditText edit_account; EditText edit_password; Button button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.login); edit_account = (EditText) findViewById(R.id.account); edit_password = (EditText) findViewById(R.id.password); button = (Button) findViewById(R.id.login); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String account = edit_account.getText().toString(); String pasworrd = edit_password.getText().toString(); //设置账号是admin和密码是123456即为登录成功 if (account.equals("admin") && pasworrd.equals("123456")) { Intent intent = new Intent(LoginActivity.this, MainActivity.class); startActivity(intent); finish(); } else { Toast.makeText(LoginActivity.this, "您输入的不对,请重新输入", Toast.LENGTH_SHORT).show(); } } }); }}demo地址:http://pan.baidu.com/s/1hsgOy4c
阅读全文
0 0
- 安卓开发广播最简单强制下线
- 【安卓基础】04 广播机制实现强制下线
- 强制下线 本地广播
- 安卓开发最简单的网络广播监听
- 安卓开发最简单收发短信(广播)
- 强制下线 使用本地广播
- 登录界面+广播强制下线
- 广播实践--强制用户下线功能
- 广播的实现--实现强制下线功能
- Android 广播------实现强制下线功能
- 广播实践--强制用户下线功能
- 广播的实践-强制下线功能
- 利用广播机制实现强制下线
- android广播的实践----实现强制下线
- 利用广播实现强制下线功能
- 利用广播实现强制下线功能
- Adroid中广播接收者的使用,实现强制下线功能
- 广播的最佳实践——实现强制下线功能
- 记一次JSON序列化的问题
- SQL总结(五)存储过程
- java web会话跟踪技术(深入理解HTTP Session与Cookie)
- tensorlayer 存在的隐藏问题
- d3画柱状图
- 安卓开发广播最简单强制下线
- Python3 BeautifulSoup爬虫 ZOJ自动提交
- BaseAdapter 的使用实例
- [SCOI2007]压缩 区间dp
- mysql的5中查询子句之四order by排序查询
- 设计模式(对象创建)——原型模式
- 多类型查询
- 决策树(补充)
- 统一接口开发架构,统一接口架构实现封装