Android之在launcher里面动态加载桌面图标

1、在手机桌面加载图标方式

         1)、动态加载

       

Launcher.java
private void addSourceList() {Intent launchIntent = new Intent(this, RcGrpActivity.class);launchIntent.setAction(Intent.ACTION_MAIN);launchIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);Intent addIntent = new Intent();addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, launchIntent);addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.source_list));addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,ShortcutIconResource.fromContext(this, R.drawable.keycard));ShortcutInfo shortcut = mModel.infoFromShortcutIntent(this, addIntent);shortcut.deletable = false;shortcut.titleResource = getResources().getResourceName(R.string.source_list);shortcut.presetItemId = getResources().getInteger(R.integer.preset_source_list_icon);if (LauncherModel.presetItemExists(this, shortcut.presetItemId)) {return;}ArrayList<ItemInfo> list = new ArrayList<ItemInfo>();list.add(shortcut);mModel.addAndBindAddedApps(this, list, new ArrayList<AppInfo>(), true);}LauncherModel.javastatic boolean presetItemExists(Context context, int presetItemId) {final ContentResolver cr = context.getContentResolver();Cursor c = cr.query(LauncherSettings.Favorites.CONTENT_URI,new String[]{"title"},"presetItemId=?",new String[]{Integer.toString(presetItemId)},null);if (c == null) {return false;}try {return c.moveToFirst();} finally {c.close();}}


    优点:不需要平板适配

 

 

 

     2)、静态加载

     通过xml文件加载

      1、xml文件

 

    <?xml version="1.0" encoding="utf-8"?><favorites xmlns:launcher="http://schemas.android.com/apk/res-auto"><shortcutlauncher:uri="#Intent;action=com.sangfor.action.ACTION_OPEN_RESOURCE;category=android.intent.category.DEFAULT;end"launcher:iconRes="@drawable/ic_setting_app"launcher:titleRes="@string/source_list"launcher:container="-100"launcher:screen="0"launcher:x="2"launcher:y="2"launcher:deletable="false"launcher:presetItemId="@integer/preset_settings_icon"/></favorites>

 

 


     2、  AndroidManifest.xml

 

 

 

        <activityandroid:name="com.sangfor.vpn.client.phone.resource.RcGrpActivity"android:configChanges="orientation|keyboardHidden|screenSize"android:label="@string/about"android:screenOrientation="behind"android:theme="@android:style/Theme.Light.NoTitleBar" ><intent-filter><action android:name="com.sangfor.action.ACTION_OPEN_RESOURCE" /><category android:name="android.intent.category.DEFAULT" /></intent-filter></activity>

 

 

 

 

 

 

 

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/290831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机与交通工程论文,交通工程论文.doc

淮 阴 工 学 院毕业设计(论文)系 部&#xff1a; 交 通 工 程 系专 业&#xff1a; 交 通 工 程学生姓名: 徐东成 学 号:设计(论文)题目&#xff1a; 城市交通信息系统功能研究起 迄 日 期: 2006年 2 月 20日 ~ 06月10日设计(论文) 地点: 大学城指 导 教 师: 夏晶晶专 业 负 责…

Avalonia跨平台入门第五篇之ListBox多选

前面我也提前预告了今天要实现的效果;不过中间被卡了一下;今天赶紧去弥补上次要做的效果,其实在WPF效果中已经实现过了,看效果吧:ListBox的前台布局代码:使用的附加属性和WPF好相似:子项模板(绑定写法简化了好多):多值转换器(少了一个ConvertBack):最终简单的效果先这样吧;以后…

Android之android.os.NewWorkOnMainThreadException解决办法

1、问题 用别人提供的的sdk的Demo出现android.os.NewWorkOnMainThreadException 2、解决办法 网络请求开启一个线程请求或者开启异步任务都行 3、总结 1、 之前就看到过这种android.os.NewWorkOnMainThreadException异常&#xff0c;时间很久了&#xff0c;自己也没反映过来&a…

mediawiki 搭建

[1] http://www.cnblogs.com/mchina/archive/2012/11/28/2778779.html转载于:https://www.cnblogs.com/deepblueme/p/4665610.html

金蝶K/3 WISE 12.3订单跟踪SQL报表

金蝶K3一直缺少完整的跟踪报表&#xff0c;所以我们开发了一张完整的跟踪报表&#xff0c;通过查询分析工具直接生成。代码&#xff08;WIN2008 R2SQL 2008 R2环境&#xff0c;K3 WISE 12.3&#xff09;&#xff1a;select t1.fname1 客户,t1.fname2 业务员,t1.f_102 款号,t1.f…

计算机与人脑的异同作文,小学信息技术3-6年级全册教案.pdf

清华版小学信息技术 3-6 年级全册教案三年级上册教学计划课 题 1、芝麻开门1、了解计算机的组成和用途&#xff0c;认识计算机的桌面。教学目标2 、鼠标的基本操作。教 学初步学会使用鼠标的移动、指向、单击。重难点PowerPoint教具软件、多媒体电脑一、引入&#xff1a;教 同学…

Fragment 键盘弹出方式设置

由于在FragmentActivity中配置SoftInputMode不好使&#xff0c;所以要在Fragment 中设定&#xff1a;getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);转载于:https://www.cnblogs.com/chenlong-50954265/p/3924094.html

开源绘画应用 Pinta 已移植到GTK 3和.NET 6

Pinta [1]是一款开源绘画应用&#xff0c;适用于 Linux、Windows 和 macOS。你可以用它来进行自由手绘/素描。你也可以用它在现有的图片上添加箭头、方框、文字等。年初发布了 Pinta 2.0.2 版本&#xff0c;这是我看到的第一款桌面的dotnet6 和 gtksharp的 应用。Pinta是一个小…

Druid源码分析系列1:dataSource.init()的准备工作

2019独角兽企业重金招聘Python工程师标准>>> 本节&#xff0c;讲解 dataSource.init(); 打断点在 stop in com.alibaba.druid.pool.DruidDataSource.init 好&#xff0c;开始研究代码 public void init() throws SQLException {// 首先确定没有initedif (inited) {r…

软件测试推荐专业,软件测试专业老师推荐信

尊敬的领导&#xff1a;您好&#xff01;首先感谢您在百忙之中抽出时间来阅读我学生XX的推荐信&#xff01;该生是XX大学软件测试专业应届毕业生&#xff0c;自进入XX大学以来&#xff0c;凭借自身扎实的基础和顽强拼搏的奋斗精神&#xff0c;经过几年不断的学习&#xff0c;在…

Android之用Handler实现主线程和子线程互相通信以及子线程和子线程之间的通信

1、上代码 activity_main.xml文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_p…

poj 2398 Toy Storage (计算几何,判断点和线段关系)

http://poj.org/problem?id2398 题意大概是说将一个盒子用n个board分成n1 部分 然后往里面放toy,给定盒子,board,和toy的坐标 问所有的toy放完后,有多少部分中有t个toy; 简单计算几何 需要判断的是点和直线的关系. 判断 某一点在直线左右侧 左右方向是相对前进方向的,只要指定…

[转]Android中pendingIntent的深入理解

转自;here pendingIntent字面意义&#xff1a;等待的&#xff0c;未决定的Intent。要得到一个pendingIntent对象&#xff0c;使用方法类的静态方法 getActivity(Context, int, Intent, int),getBroadcast(Context, int, Intent, int),getService(Context, int, Intent, int) 分…

叮,您有一份ML.NET 速查手册请查收!

点击上方蓝字关注我们&#xff08;本文阅读时间&#xff1a;7分钟&#xff09;本篇文章简要介绍 ML.NET 背景和面向 .NET 开发的特色功能&#xff0c;以及典型的机器学习编码示例&#xff0c;并分享自己整理的 ML.NET API 速查手册。微软MVP实验室研究员项斌微软全球最有价值专…

微信公众号开发之文本消息自动回复,以及系统关注自动回复,php代码

以tshop为例 直接上代码&#xff1a; 企业 cc_wx_sys表为自建&#xff0c;存储系统消息的配置的 字段: id type key status <?php /*** tpshop* * * 版权所有 2015-2027 深圳搜豹网络科技有限公司&#xff0c;并保留所有权利。* 网站地址: http://www.tp-shop.cn* -------…

java之ThreadLocal简单使用总结

1、介绍ThreadLocal 看安卓源码的时候&#xff0c;在这个类Looper.java &#xff0c;会有这个一句函数 static final ThreadLocal<Looper> sThreadLocal new ThreadLocal<Looper>(); 一开始我不是很懂ThreadLocal.java这个类&#xff0c;简单理解 ThreadLocal 就…

老师计算机传帮带工作总结,传帮带工作总结范文

传帮带工作总结范文一段时间的工作在不知不觉间已经告一段落了&#xff0c;回首这段不平凡的时间&#xff0c;有欢笑&#xff0c;有泪水&#xff0c;有成长&#xff0c;有不足&#xff0c;让我们好好总结下&#xff0c;并记录在工作总结里。那么如何把工作总结写出新花样呢&…

[Usaco2007 Demo][BZOJ1628] City skyline

1628: [Usaco2007 Demo]City skyline Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 320 Solved: 260[Submit][Status][Discuss]Description Input 第一行给出N&#xff0c;W第二行到第N1行:每行给出二个整数x,y&#xff0c;输入的x严格递增&#xff0c;并且第一个x总是1Out…

负载均衡(LB)集群 dr

LB、LVS介绍LB集群是load balance 集群的简写&#xff0c;翻译成中文就是负载均衡集群 LVS是一个实现负载均衡集群的开源软件项目 LVS架构从逻辑上可分为调度层(Director)、server集群层(Real server)和共享存储层LVS可分为三种工作模式: NAT(调度器将请求的目标ip即vip地址改为…

ASP.NET Core启动地址配置方法及优先级顺序 | .NET 6 版本

前言上次&#xff0c;我们讨论了如何通过配置或代码方式修改启动地址&#xff1a;《ASP.NET Core启动地址配置方法及优先级顺序》。不过是基于 .NET 5 版本的。由于 .NET 6 使用了最小 WEB API, 配置方式已经部分发生了变化。设置方法1. applicationUrl 属性launchSettings.jso…