【发布时间】:2012-11-19 16:39:48
【问题描述】:
public static final String CALCULATOR_PACKAGE ="com.android.calculator2";
public static final String CALCULATOR_CLASS ="com.android.calculator2.Calculator";
Intent intent = new Intent();
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setComponent(new ComponentName(
CALCULATOR_PACKAGE,
CALCULATOR_CLASS));
以上仅适用于 HTC
public static final String CALCULATOR_PACKAGE ="com.sec.android.app.popupcalculator";
public static final String CALCULATOR_CLASS ="com.sec.android.app.popupcalculator.Calculator";
以上适用于 S3
我需要一个适用于所有人的代码。有任何线索的人吗?请给出示例代码
【问题讨论】:
-
@kumaand 这个基本一样……
-
@kumaand 仅适用于 HTC 但不适用于 S3。我有 HTC 和 S3 的独立代码,两者都在工作。我需要一个适合所有人的。
-
最好的方法是使用 PackageManager 获取内部应用程序包名称并在所有字符串中找到
calculator如果找到,然后提取主类名称或包以启动它。通过这种方式,您将支持所有设备或用于启动默认计算器的平板电脑 -
@imran Khan 我有同样的想法,但实施是个问题。请帮我举个例子。它会给我一个良好的开端。谢谢