从 ionic 应用程序调用本机 android 应用程序
Call a native android app from ionic app
我正在开发一个将由 android 本机应用程序调用的应用程序。我也得给他们打电话。为此,我发现 this plugin.
他们会按照以下代码调用我的应用程序(并希望我调用他们的应用程序):
String packageName = “com.android.app”;
Intent intent = getPackageManager().getLaunchIntentForPackage(packageName);
if (intent == null) {
// The app is not installed
intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(“market://details?id=” + packageName));
}
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(“param”, “aaaaa”);
startActivity(intent);
我不知道插件是否会在他们这样做时打开我的应用程序(他们的应用程序也会打开)。
我正在寻找一种在 ionic 中使用 intends 的方法,但一无所获。
谢谢!
也许它会帮助别人解决我的问题。
要打开另一个 android 应用程序,我使用 com.lampa.startapp。这样做的代码是:
var sApp = startApp.set({
"package": "packageName" //The packageName of the app I want to open
}, {
//extras I want to add
"myParams" : "aaaaa"
});
sApp.start();
为了处理意图(打开我的应用程序的那些),我使用带有以下代码的 cordova-plugin-intent:
//To get the intent and extras when the app it's open for the first time
window.plugins.intent.getCordovaIntent (function (intent) {
intenthandler(intent);
});
//To get the intent and extras if the app is running in the background
window.plugins.intent.setNewIntentHandler (function (intent) {
intenthandler(intent);
});
//To handle the params
var intenthandler = function (intent) {
if (intent && intent.extras && intent.extras.myParams) {
//Do something
}
};
就这些了!
我正在开发一个将由 android 本机应用程序调用的应用程序。我也得给他们打电话。为此,我发现 this plugin.
他们会按照以下代码调用我的应用程序(并希望我调用他们的应用程序):
String packageName = “com.android.app”;
Intent intent = getPackageManager().getLaunchIntentForPackage(packageName);
if (intent == null) {
// The app is not installed
intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(“market://details?id=” + packageName));
}
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(“param”, “aaaaa”);
startActivity(intent);
我不知道插件是否会在他们这样做时打开我的应用程序(他们的应用程序也会打开)。
我正在寻找一种在 ionic 中使用 intends 的方法,但一无所获。
谢谢!
也许它会帮助别人解决我的问题。
要打开另一个 android 应用程序,我使用 com.lampa.startapp。这样做的代码是:
var sApp = startApp.set({
"package": "packageName" //The packageName of the app I want to open
}, {
//extras I want to add
"myParams" : "aaaaa"
});
sApp.start();
为了处理意图(打开我的应用程序的那些),我使用带有以下代码的 cordova-plugin-intent:
//To get the intent and extras when the app it's open for the first time
window.plugins.intent.getCordovaIntent (function (intent) {
intenthandler(intent);
});
//To get the intent and extras if the app is running in the background
window.plugins.intent.setNewIntentHandler (function (intent) {
intenthandler(intent);
});
//To handle the params
var intenthandler = function (intent) {
if (intent && intent.extras && intent.extras.myParams) {
//Do something
}
};
就这些了!