Как получить контекст внутри плагина Cordova в Android

Класс Context — это абстрактный класс, реализация которого обеспечивается системой Android. Он позволяет получить доступ к ресурсам и классам, относящимся к конкретному приложению, а также к дополнительным вызовам для таких операций на уровне приложения, как запуск, передача и прием и т. Д.

Множество частей с открытым исходным кодом или нативных функций Android требует использования контекста в качестве параметра в некоторых функциях. В этой статье вы узнаете, как легко получить его в плагине Cordova.

Получить контекст

Во-первых, вам нужно импортировать класс Context для обработки переменной в вашем коде, используя:

import android.content.Context;

Теперь, когда вы только что импортировали класс Context, вы можете получить его, используя:

Context context = this.cordova.getActivity().getApplicationContext();

Замечания: Вы должны использовать этот код в классе, который расширяет класс CordovaPlugin.

пример

В следующем примере показано, как извлечь контекст в плагине Cordova, чтобы показать тост:

package com.ourcodeworld.plugins.MyCustomClassName;
import org.apache.cordova.*;
import org.json.JSONArray;
import org.json.JSONObject;
import org.json.JSONException;
/*For toast and context*/
import android.content.Context;
import android.widget.Toast;
public class MyCustomClassName extends CordovaPlugin {
private CallbackContext PUBLIC_CALLBACKS = null;
@Override
public boolean execute(String action, JSONArray data, CallbackContext callbackContext) throws JSONException {
PUBLIC_CALLBACKS = callbackContext;
final JSONObject arg_object = data.getJSONObject(0);
/*Shows hello world in a Toast*/
if(action.equals("show_toast")){
Context context = this.cordova.getActivity().getApplicationContext();
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, "Hello World!", duration);
toast.show();
}
PluginResult result = new PluginResult(PluginResult.Status.OK, "success");
result.setKeepCallback(true);
PUBLIC_CALLBACKS.sendPluginResult(result);
return true;
}
}
Ссылка на основную публикацию
Adblock
detector