Service里面启动Activity和Alertdialog

启动Activity源码:(记得要加上Intent.FLAG_ACTIVITY_NEW_TASK)

Intent intent = new Intent();
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setClass(getApplicationContext(),FileBrowserActivity.class);
startActivity(intent);

启动AlertDialog源码:

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("是否接受文件?")
.setPositiveButton("是", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                }).setNegativeButton("否", new OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                    }
                });
AlertDialog ad = builder.create();
//ad.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG); //系统中关机对话框就是这个属性
ad.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
ad.setCanceledOnTouchOutside(false);                                   //点击外面区域不会让dialog消失
ad.show();

还要加上权限:<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

时间: 2024-11-06 10:01:26

Service里面启动Activity和Alertdialog的相关文章

[Android UI] Service里面启动Activity和Alertdialog

启动Activity源码:(记得要加上Intent.FLAG_ACTIVITY_NEW_TASK) Intent intent = new Intent(); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setClass(getApplicationContext(),FileBrowserActivity.class); startActivity(intent); 原因:如果一个外部的Activity Context调用sta

Service 启动Activity

我想我们一般在Service里想启动Activity一定会这样写: Java代码   Intent intentv = new Intent(Intent.ACTION_VIEW); intentv.setData(uri); intentv.putExtra("keepTitle", true); startActivity(intentv); 这样写就会报错的: 03-11 02:37:09.737: ERROR/AndroidRuntime(7881): android.util

【Android开发日记】初次探秘Android Service!Service开机启动+重力感应+弹窗+保持运行

前言: 最近在写一个小程序,需求是手机摇一摇就弹窗出来.第一次使用了Service,学习了两天,实现了Service弹窗,开机启动,Activity启动和销毁.满足了自己的需求.现记录学习心得.希望能给你带来一些帮助. 1.Service创建:重写4个方法 onBind():返回一个IBinder对象,这个对象可以使应用程序与Service通信.如果用startService.stopService启动和关闭Service的话,Service和访问者是无法通信交换数据的.onBind()返回值设

关于通过adb启动Activity、activity、service以及发送broadcast的命令

一.启动activity: $ adb shell$ am start -n {包名}/{包名}.{活动名称} 如:启动一个名叫MainActivity的活动 # am start -n com.example.test/com.example.test.MainActivity 二.启动service: $ adb shell$ am startservice -n {包名}/{包名}.{服务名称} 如:启动一个名叫MyService的服务 # am startservice -n com.e

【安卓面试题】在一个Activity启动另一个Activity和在Service中启动一个Activity有什么区别

在Activity中可以直接使用Intent启动另一个Activity 显式Intent intent = new Intent(context, activity.class) 隐式 Intent intent = new Intent(“com.aa.www.act”); startActivity(intent); 如果从Service中用同样方法启动Activity 的话,会报错: android.util.AndroidRuntimeException: Calling startAc

adb启动activity、service、发送broadcast

一.adb启动activity: $ adb shell$ am start -n {包(package)名}/{包名}.{活动(activity)名称} 如:启动浏览器 # am start -n com.android.browser/com.android.browser.BrowserActivity 二.adb启动service: $ adb shell$ am startservice -n {包(package)名}/{包名}.{服务(service)名称} 如:启动自己应用中一个

Service的启动,绑定,绑定后通信,跨应用绑定,跨应用绑定后通信

Service介绍: 与Acitivity平级的Android四大组件之一,对比Activity而言,就是没有交互界面,且可以一直在后台执行,只用于处理下载,I/O等长时间信息交流的任务. Service的生命周期和运行顺序: Service的生命周期只有启动状态和摧毁状态,相比Activity而言,更需要特别注意创建和摧毁的过程. Service运行或被杀死的情况: 1.直接startService()后,若不调用stopService()或stopService()来停止的话,Service

使用intent来启动activity

Intent最常见的用途是绑定应用程序组件,并在应用程序之间通信.Intent用来启动Activity,允许创建不同屏幕的一个工作流. 要创建并显示一个Activity,可以调用startActivity,并传递给它一个Intent,如: startActiiy(myintent); 可以构造Intent来显示地指定要打开的Activity类,或者包含一个目标Activity必须执行的动作.在后面一种情况时,运行时将会使用一个成为"intent解析"的过程来动态选择activity.

Android隐式启动Activity匹配详解:Action,category,data

更多例子请参考:http://hi.baidu.com/wishwingliao/blog/item/0a38ccfce06f39e8fc037f85.html 隐式启动Activity的intent到底发给哪个activity,需要进行三个匹配,一个是action,一个是category,一个是data,可以是全部或部分匹配 同样适用于Service和BroadcastReceiver,下面是以Activity为例 MainActivity.java --主Activity TestActiv