我试图在Android上以编程方式创建主屏幕快捷方式。到目前为止,我已经能够使用以下代码添加快捷方式本身:
Intent shortcutIntent = new Intent();
shortcutIntent.setClassName(mContext, mContext.getClass().getName());
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
shortcutIntent.putExtra("someParameter", "HelloWorld 123");
Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "Shortcut Name 123");
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, R.drawable.icon);
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
mContext.sendBroadcast(addIntent);
但是,快捷方式是使用资源中的默认图标安装的。但是,我想从我的网站中获取图标,并将图标添加到快捷方式。首先,我需要下载此快捷方式。假设我已完成此操作,并且例如该图标位于sdcard上,则无法设置可绘制图标。
如下代码:
try {
Uri contentURI = Uri.parse("http://mnt/sdcard/mytest/test.png");
ContentResolver cr = mContext.getContentResolver();
InputStream in;
in = cr.openInputStream(contentURI);
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize=8;
Bitmap thumb = BitmapFactory.decodeStream(in,null,options);
Intent shortcutIntent = new Intent();
shortcutIntent.setClassName(mContext, mContext.getClass().getName());
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
shortcutIntent.putExtra("someParameter", "HelloWorld 123");
Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "Shortcut Name 123");
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, thumb);
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
mContext.sendBroadcast(addIntent);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
该文件肯定存在,并且我已经使用adb shell进行了验证。此段代码显示以下错误:
10-13 16:11:31.184: WARN/System.err(23273): java.io.FileNotFoundException: No content provider: /mnt/sdcard/mytest/test.png
我究竟做错了什么?
谢谢
我试图根据用户输入的坐标捕捉区域截图。基本上,用户在屏幕上点击得到x,y坐标,然后在其他地方点击另一对x,y坐标,然后将其放入一个矩形中,并使用机器人库创建屏幕截图。 我有的问题是,我得到了随机截图,这不是用户输入的坐标,我怎么能考虑包括0的坐标,因为矩形值必须超过1。 以下是我迄今为止的代码:
我的应用程序名称很大,应用程序名称在主屏幕上被截断。有没有办法引用申请的全称?目前应用名称来自Android:label = " @ string/app _ name " 例如。标题为“abcdeghijklmnopqrstuvwxyz”的应用程序将在主屏幕上命名为“abcdeghi...”。所以在主屏幕上保留全名的应用程序快捷方式。
本文向大家介绍ubuntu/deepin制作快捷启动图标的方法,包括了ubuntu/deepin制作快捷启动图标的方法的使用技巧和注意事项,需要的朋友参考一下 默认情况下系统所有的快捷方式放在/usr/share/applications,打开该目录会看到大量的.desktop文件,每个文件便是一个快捷方式。 有时我们需要自己安装软件,然后添加快捷方式。文件的主要结构为: 其中Name是快
在linux机器中,可以通过使用R中的< code>Sys.readlink函数或命令行中的< code>readlink来访问符号链接指向的位置。阅读它的文档,我们发现这不是为Windows快捷方式设计的。 在视窗系统中,我找不到一个行来告诉我文件指向哪里。我最接近的是从这个演示使用的SO问题中得到的。虽然输出并不完美,但我想用一些正则表达式魔法我可以隔离文件路径。 然而,当我尝试时,收到错误消
问题内容: 在VC1(集合视图)中,这是我的prepareforsegue代码: 当我进入VC2(它是TabBarViewController)时,我println()selectedIndexPassing看看返回了什么。它正确返回。然后,在VC2中,我将此调用prepareforsegue转到实际的视图控制器或选项卡栏中的第一个按钮: 但是,当我在VC3(PlayerFromRosterVie
问题内容: 我目前正在使用Android应用程序,因此我以编程方式编写了指向主屏幕的快捷方式。像这样: (实际上是一个StackOverflow帖子向我指出了该解决方案)。 无论如何,当我在模拟器中运行该应用程序时,快捷方式被写到左侧第五页(在2.3主屏幕上)。随后的运行将快捷方式写到主屏幕左侧的第4页。 我的问题是:是否可以将快捷方式写入中心页面或首页(例如传递似乎保存应用程序快捷方式的二维数组