Я использую Telr SDK в своем приложении, пока он показывает мне нулевой указатель контекста, за исключением того, что я использовал библиотеку Volley и написал несколько методов в классе, который расширен классом Application. Это снова и снова показывает мне эту ошибку, потому что я использовал класс «APPController», расширенный классом «Application», и зарегистрировал его в Manifest под тегом «Applicaion». Если я не использую класс 'Appcontroller' в моем проекте c, то шлюз Telr работает отлично, но мне нужно использовать оба, пожалуйста, помогите.
Код:
AppController. java:
public class AppController extends Application {
public static final String TAG = AppController.class
.getSimpleName();
private RequestQueue mRequestQueue;
private static AppController mInstance;
@Override
public void onCreate() {
super.onCreate();
FontsOverride.setDefaultFont(this, "DEFAULT", "fonts/Rubik-Regular.ttf");
FontsOverride.setDefaultFont(this, "MONOSPACE", "fonts/Rubik-Regular.ttf");
FontsOverride.setDefaultFont(this, "SERIF", "fonts/Rubik-Regular.ttf");
FontsOverride.setDefaultFont(this, "SANS_SERIF", "fonts/Rubik-Regular.ttf");
mInstance = this;
}
public static synchronized AppController getInstance() {
return mInstance;
}
public RequestQueue getRequestQueue() {
if (mRequestQueue == null) {
mRequestQueue = Volley.newRequestQueue(getApplicationContext());
}
return mRequestQueue;
}
public <T> void addToRequestQueue(Request<T> req, String tag) {
// set the default tag if tag is empty
req.setTag(TextUtils.isEmpty(tag) ? TAG : tag);
getRequestQueue().add(req);
}
public <T> void addToRequestQueue(Request<T> req) {
req.setTag(TAG);
getRequestQueue().add(req);
}
public void cancelPendingRequests(Object tag) {
if (mRequestQueue != null) {
mRequestQueue.cancelAll(tag);
}
}
}
Телр. java:
public void sendMessage() {
Intent intent = new Intent(Demo.this, WebviewActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
intent.putExtra(WebviewActivity.EXTRA_MESSAGE, getMobileRequest());
intent.putExtra(WebviewActivity.SUCCESS_ACTIVTY_CLASS_NAME, "com.marketplace.activity.SuccessTransationActivity");
intent.putExtra(WebviewActivity.FAILED_ACTIVTY_CLASS_NAME, "com.marketplace.activity.FailedTransationActivity");
intent.putExtra(WebviewActivity.IS_SECURITY_ENABLED, isSecurityEnabled);
startActivity(intent);
}
Я получаю сообщение об ошибке: Intent intent = новое намерение (Demo.this, WebviewActivity.class);
Манифест. xml:
<application
android:name="com.marketplace.utils.AppController"
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="@mipmap/app_icon_rect"
android:label="@string/app_name"
android:roundIcon="@mipmap/app_icon_circle"
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:replace="android:theme, android:name"
android:usesCleartextTraffic="true"
tools:ignore="GoogleAppIndexingWarning">