<intent
android:action=“android.intent.action.VIEW”
android:targetPackage=“hlq.jobscheduler”
android:targetClass=“hlq.view.activity.TestACtivity” />
shortcutId, 一个唯一的id
enabled, 表示这个shortcut是否可用
shortcutShortLabel, 这里是配置的短名称, 下面还会有长名称, 如果长名称显示不下, 就显示短名称
shortcutLongLabel, 这里是配置的长名称, launcher会优先选择长名称显示
shortcutDisabledMessage, 这个配置是在我们选择一个不可用的shortcut时给用户的一个提示
在intent标签中
targetPackage是指定一个目标应用的包名,
targetClass是我们要跳转的目标类
action属性表示执行的动作可以统一使用这个,categories用上述默认即可
如果我们点击图标想有多个快捷方式,在下面添加shortcut标签就可以了,最多可以配置5个
3.注册shortcut
像广播服务那样,需要在配置文件中声明编写的shortcuts,并且必须在默认启动的Activity中注册,如下:
<meta-data
android:name=“android.app.shortcuts”
android:resource=“@xml/shortcuts” />
注册好后,运行起来,我们长按app效果图如下所示:
我们看到运行图标没有适配,可以去Android8.0图标适配:https://blog.csdn.net/huangliniqng/article/details/80434952
4.动态注册
在Android广播中我们都知道广播可以动态注册和静态注册,那么快捷方式也是同样的,上述方式为静态注册,快捷方式入口适合打开固定不变的页面,如果我们打开的界面要和数据交互,我们可以使用动态注册方式,接下来,我们了解动态注册
4.1
首先我们得到ShortManger对象
ShortcutManager shortcutManager = getSystemService(ShortcutManager.class);
然后调用setDynamicShortcuts(List)方法设置shortcuts
比如我们从数组中得到数据,为每个数据设置快捷方式,可建的快捷方式最大个数我们可以通过
shortcutManager.getMaxShortcutCountPerActivity()得到,使用ShortcutInfo.Builder设置属性
for(int i = 0;i < shortcutManager.getMaxShortcutCountPerActivity(); i++){
Intent intent = new Intent(this, TestActivity3.class);
intent.setAction(Intent.ACTION_VIEW);
intent.putExtra(“msg”, “我和” + name[i] + “聊天”);
ShortcutInfo info = new ShortcutInfo.Builder(this, “id” + i)
结语
网上高级工程师面试相关文章鱼龙混杂,要么一堆内容,要么内容质量太浅, 鉴于此我整理了上述安卓开发高级工程师面试题以及答案。希望帮助大家顺利进阶为高级工程师。
目前我就职于某大厂安卓高级工程师职位,在当下大环境下也想为安卓工程师出一份力,通过我的技术经验整理了面试经常问的题,答案部分是一篇文章或者几篇文章,都是我认真看过并且觉得不错才整理出来。
大家知道高级工程师不会像刚入门那样被问的问题一句话两句话就能表述清楚,所以我通过过滤好文章来帮助大家理解。
现在都说互联网寒冬,其实只要自身技术能力够强,咱们就不怕!我这边专门针对Android开发工程师整理了一套【Android进阶学习视频】、【全套Android面试秘籍】、【Android知识点PDF】。
加入社区》https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0
冬,其实只要自身技术能力够强,咱们就不怕!我这边专门针对Android开发工程师整理了一套【Android进阶学习视频】、【全套Android面试秘籍】、【Android知识点PDF】。**
加入社区》https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0