关键词:
Android5.0隐式启动服务
在Android 5.0中系统禁止我们通过隐式意图启动service,如果通过隐式意图启动会报异常,所以需要通过显式意图启动service,如果要被启动的服务在本应用中,还可以通过显式意图启动,但是如果是要启动其他应用的service,那么如何通过显式意图来启动呢?下面介绍一个方法用于通过显示意图启动其他应用中的service
public static Intent getExplicitIntent(Context context, Intent implicitIntent)
PackageManager pm = context.getPackageManager();
// 返回给定条件的所有ResolveInfo对象(本质上是Service)
List<ResolveInfo> resolveInfo = pm.queryIntentServices(implicitIntent, 0);
// 确保只有一个service匹配
if (resolveInfo == null || resolveInfo.size() != 1)
return null;
//获取component信息并创建ComponentName
ResolveInfo serviceInfo = resolveInfo.get(0);
//获取Service所在的包名
String packageName = serviceInfo.serviceInfo.packageName;
//获取Service的名称
String className = serviceInfo.serviceInfo.name;
// 通过包名和service的类名创建component
//ComponentName用于指定打开其他应用的activity和service
ComponentName component = new ComponentName(packageName, className);
// 创建新的intent
Intent explicitIntent = new Intent(implicitIntent);
// 为intent设置指定的组件
explicitIntent.setComponent(component);
return explicitIntent;
通过该方法可以实现显式意图启动其他应用中的service
QQ交流群
微信公众号:Android在路上,欢迎关注
跨应用启动service并传递数据
启动:在Android5.0之前可以通过隐式intent启动服务,但是Android5.0之后不可以了。在两个Application之间是不可能获取到Service的定义的,需要调用SetComponent函数:serviceIntent=newIntent();serviceIntent.setComponent(newComponentName("com.wanxiang.www.starts 查看详情
android5.0创建多用户双开多开应用
上一讲讲了如何创建一个userandroid5.0创建多用户双开多开应用(1)为什么要创建User 例如window系统创建了一个user会在当前用户下进行操作,而android多用户体系就像window系统创建了一个user之后在当前user下进行操作,就可以再... 查看详情
android5.0创建多用户双开多开应用
Andriod5.0多用户双开应用android多用户是5.0之后有的,类似windows的账户系统不过官方还没有完全确认,API大都是hide状态我这里提供一种方式并不适用所有的,由于我们有定制化手机,所以有定制化的服务可以开发,所以只需要将... 查看详情
activity之隐式启动
action:当有多个action匹配隐式启动时会弹出选择框categroy:动作执行环境Launcher属性通常与main配合使用Defalut:按照普通的执行顺序。 查看详情
intent显示启动与隐式启动
Android的Acitivity启动大致有两种方式:显式启动与隐式启动。下面分别介绍:1.显示启动:清单文件注册Activity<activityandroid:name="com.example.intentmethod.XianshiActivity"android:label="@string/xianshi_label"></activity> &nbs 查看详情
谁知道android5.0的状态栏布局文件。????
您好,问题不奇怪,TextView的尺寸是会变小。这样解释:控件有两类非常重要的属性,坐标:x,y;尺寸:width,height.控件其实是一些矩形框,这两类属性确定了后,就可以在Canvas上画出这个矩形了。清楚这一点后,就要知道android怎么确... 查看详情
显式启动activity和隐式启动activity
1.显式启动Intentintent=newIntent(this,class);startActivity(intent); 2.隐式启动AndroidManifest.xml中定义某个Activity的intent-fliter<intent-filter><actionandroid:name="com.example.activity.ACTION_START" 查看详情
显式intent与隐式intent的使用
Android中的显式Intent与隐式Intent的使用Intent是Android程序中各个组件中间进行交互的一种重要方式,它不仅仅可以指明当前组件想要执行的动作,还可以在不同组件之前传递数据。Intent一般可以被用于启动活动、启动服务以... 查看详情
使用android5.0的camerav2拍照
Android5.0对拍照API进行了全新的设计,新增了全新设计的Camerav2API,这些API不仅大幅提高了Android系统拍照的功能,还能支持RAW照片输出,甚至允许程序调整相机的对焦模式、曝光模式、快门等。Android5.0的Camerav2主要... 查看详情
android服务的限制
...于这个理解,我们将限制分成了前台和后台两个部分:从Android5.0(API级别21)开始,如果使用隐式Intent调用bindService(),则系统会抛出异常。为确保应用的安全性,在启动Service时,请始终使用显式Intent,且不要为服务声明Intent过... 查看详情
android5.0框架层短信接收过程分析(代码片段)
本文分析使用的是android5.0的源代码,涉及的相关文件:frameworks\\opt\\telephony\\src\\java\\com\\android\\internal\\telephony\\RIL.javaframeworks\\base\\core\\java\\com\\android\\internal\\util\\StateMachine. 查看详情
解决android5.0以上button自带阴影的问题(代码片段)
解决Android5.0以上Button自带阴影的问题自定义个Button的Style,继承@style/Widget.AppCompat.Button.Borderless样式即可。<stylename="MyButtonStyle"parent="@style/Widget.AppCompat.Button.Borderless 查看详情
android5.0+camera专栏终结
...。qq:1037701636email:gzzaigcn2009@163.comSoftware:系统源码Android5.1寥寥几笔写在开头:甚是惭愧,没有一直从事Androidcamera领域,没有来结束这个专栏。2021/5/24日,近 查看详情
android5.0受欢迎的api简介
android5.0作为系统的一次重大升级,给用户和开发者带来了全新的体验。MaterialDesign不但在视觉和操作上更胜一筹,扩展UI工具包同时也引入了大量新的API。1.3D视图和实时阴影:只要重新设定elevation,图像下的实时阴影就会出现,... 查看详情
隐式启动判断是否有匹配的intent
一、PackageManager的resolveActivitypublicabstractResolveInforesolveActivity(Intentintent,intflags);getPackageManager().resolveActivity(); 返回能够匹配的Intent,如果不能匹配就返回NULL,二、PackageManager的queryIntentActi 查看详情
WifiManager:Android 5.0.2 中的频道连接丢失并重新启动
】WifiManager:Android5.0.2中的频道连接丢失并重新启动【英文标题】:WifiManager:ChannelconnectionlostinAndroid5.0.2andreboot【发布时间】:2015-03-3107:54:40【问题描述】:我正在尝试创建WiFip2pGroupOwner。在logcat中的一个非特定时刻出现短语“Wif... 查看详情
macbookyosemite10.10.4编译android5.0
https://medium.com/@raminmahmoodi/build-android-5-0-lollipop-on-osx-10-10-yosemite-441bd00ee77a按照上来链接的博客内容设置编译环境,因为10.10所用的Xcode6.4,但是编译Android需要的Xcode比较老,因此需要修改Xcode的CommandLineTools的版本,如果有网络条件自... 查看详情