在我的应用程序中,我想显示该特定Android手机上每个可用启动器(用于主屏幕)的列表.是否有可能从Android操作系统获取某些信息,我该如何拨打此电话?
谢谢!
亲切的问候丹尼尔
什么实际的发射器是开源的?我需要2.3+的启动器,但不需要启动器或ADW,因为它们已经不受支持.库存ICS +发射器不适用于2.3.
Android(开源项目)本机启动程序源代码似乎在其某些已发布的资源文件中缺少以下必需的XML布局参数:layout_height和layout_width
这打破了启动程序编译,至少是独立编译,抛出错误,例如:
注意:在编译Android launcher2时还有许多其他问题需要解决,这个问题是关于这些特定的缺失属性以及它们是如何丢失的?
那么,当缺少这些必需的属性时,Google如何编译代码?
此外,应该使用的值是什么,如果它们是:
android:layout_width="fill_parent"
android:layout_height="fill_parent"
Run Code Online (Sandbox Code Playgroud)
或者wrap_content,或者特定的像素值 - 换句话说,我在哪里可以得到这种信息/什么是秘密构建过程?
这是我在StackOverflow上的第一个问题,所以如果我没有表达我的问题,请耐心等待.
我正在开发一款针对Android O的Android应用,我希望启动器不显示图标,即删除白色背景.我尝试使用自适应图标并且它们可以工作,但问题是它们会改变图标本身,使其呈现出粗糙,方形,松鼠和泪痕.
起初我以为它不在我手中,但其他一些应用程序(例如facebook,whatsapp和Snapchat)的图标不变.
tl;博士:我如何强制Android O上的启动器使用图标?
在Android中,如何实现以下效果?
只安装一个应用程序,但在启动器中,有两个条目,并且每个条目都将进入不同的ui.
就像谷歌地图一样,你只能看到一个应用程序,但有地图和导航条目.
谢谢.
我以前从未为Android开发过,所以当你回答时请认为我100%愚蠢:)
我想创建一个应用程序启动器,它将打开默认的Web浏览器到给定的URL.换句话说,我想用我的网站徽标制作一个图标,当你点击它时,它会在你的默认网络浏览器中打开网站.
有人可以指导我进入教程/文档页面来实现这一目标吗?或者,如果它真的很简单,也许在这里给我看一些代码?
谢谢你的时间!
P
对于我已经工作了一段时间的应用程序,我遇到了一个非常令人困惑的问题.突然,在运行我的应用程序时,我发现在发布时立即关闭了一个力量.
经过进一步调查,我在发射器中发现了两个发射器图标.其中一个将在应用程序正在运行时恢复应用程序,或者如果它未运行则强制关闭.第二个将正常运行 - 正常启动应用程序并正常恢复.
我很困惑,因为我没有做任何事情(我能想到)导致这个问题.我没有更改清单中的任何内容,只是实现了一些新的方法来更快地更改我的应用程序中的颜色.
无论我关闭手机,手动终止应用程序还是卸载/重新安装应用程序,这些问题在我的所有模拟器和设备中都会持续存在.一个简单的ctrl + z不起作用.澄清 - 我想要的是回到一个启动器图标来正常启动我的应用程序(没有什么特别的事情发生).
更新:
我现在被提出立即用任何一个图标启动.我确实在我的Manifest中的两个活动中找到了代码,并将.LAUNCHER中的第二行更改为.DEFAULT确实解决了我原来的问题.但是,我现在总是立刻被迫关闭...现在我的原始发射器活动中存在问题(我可以看到)......我在尝试修复此问题时遇到了很多麻烦(不知道该怎么做我开始变得非常担心!
更新2:
我发现了我的问题,谢谢你们的帮助!实际上,我有两个独立且无关的问题同时发生.第一 - 我的启动器中的两个图标:因为我有两个活动而导致
我想阻止/解除阻止(用户无法使用/访问被阻止的应用程序)我的应用程序在Android设备中的某些应用程序.但我找不到任何解决方案/想法.
我读Android如何以编程方式隐藏启动器图标,但这隐藏了同一应用程序的应用程序启动器图标.
我怎样才能做到这一点?请分享一些关于此的想法/链接.
我正在寻找一个解决方案,我希望用户在他的设备上打开或安装应用程序.我必须从我的BroadcastReceiver类中获取用户打开的应用程序.我已经实现了我的代码如下:
public class AppReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
ActivityManager am = (ActivityManager)context.getSystemService(context.ACTIVITY_SERVICE);
List l = am.getRunningAppProcesses();
Iterator i = l.iterator();
PackageManager pm = context.getPackageManager();
while(i.hasNext()) {
ActivityManager.RunningAppProcessInfo info = (ActivityManager.RunningAppProcessInfo)(i.next());
try {
CharSequence c = pm.getApplicationLabel(pm.getApplicationInfo(info.processName, PackageManager.GET_META_DATA));
Log.v(" App Name : ", c.toString());
}catch(Exception e) {
}
}
}
Run Code Online (Sandbox Code Playgroud)
我还在清单文件中添加了关于此接收器的信息:
<receiver android:name="AppReciever">
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
<action android:name="android.intent.action.PACKAGE_ADDED"></action>
<action android:name="android.intent.action.PACKAGE_CHANGED"></action>
<action android:name="android.intent.action.PACKAGE_INSTALL"></action>
<action android:name="android.intent.action.PACKAGE_REPLACED"></action>
<action android:name="android.intent.action.PACKAGE_RESTARTED"></action>
<data android:scheme="package" />
</intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud)
从上面的代码AppReciver没有执行以获取应用程序名称在Log.v当我打开已经存在(已安装)在设备上的新应用程序时.它仅适用于在设备上运行的其他应用程序.
请任何机构帮我从BroadcastReceiver获取当前打开的应用程序
我无法从Linux Mint 17.1 Cinnamon上创建的.desktop启动器启动python脚本.
问题是脚本将在错误的路径中启动 - 即主文件夹而不是它所在的目录.因此,它无法在其文件夹中找到伴随它的其他重要文件,因此无法正常工作.
为了检查这种不当行为,我创建了一个简短的脚本来检查python脚本正在执行的文件夹:
#!/usr/bin/env python
import subprocess
import time
subprocess.call(["pwd"], shell=True)
time.sleep(7) # to get a chance to read the output
Run Code Online (Sandbox Code Playgroud)
从它自己的文件夹执行它给出输出:
/home/myusername/PythonProjects
Run Code Online (Sandbox Code Playgroud)
我正在通过Nemo的菜单设置桌面启动器.现在执行相同的脚本会产生:
/home/myusername
Run Code Online (Sandbox Code Playgroud)
我不明白这种行为.我怎么能为我的python脚本创建一个工作桌面启动器?