【发布时间】:2014-12-01 19:40:45
【问题描述】:
我想从我刚刚编写的另一个应用程序中启动/运行/启动我用 Embarcadero XE7 (Delphi) 编写的应用程序。
function LaunchActivity(const Intent: JIntent): Boolean; overload;
begin
SharedActivity.getPackageManager.resolveActivity(Intent, 0);
SharedActivity.startActivity(Intent);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Intent: JIntent;
begin
Intent := TJIntent.JavaClass.init(StringToJString('com.embarcadero.Server.MAIN'));
Intent.setPackage(StringToJString('com.embarcadero.Server'));
LaunchActivity(Intent)
end;
待启动应用的Manifest文件部分内容:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
我认为清单文件是正确的,表明我可以调用应用程序。但是,当我运行程序时,它会说
未找到处理 Intent {act=com.embarcadero.Server.MAIN 的活动 pkg=com.embaracdero.Server}
我尝试使用android.intent.action.MAIN 得到了一些结果。
缺少什么?
【问题讨论】:
标签: android delphi android-intent