java - 我如何访问我们在 Ionic Projects 中获得的 MainActivity 中的应用程序
问题描述
我正在尝试将 Swrve 插件集成到我的 Android 项目中。以下是我们在 MainActivity 中得到的代码
public class MainActivity extends BridgeActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Initializes the Bridge
this.init(savedInstanceState, new ArrayList<Class<? extends Plugin>>() {{
// Additional plugins you've installed go here
// Ex: add(TotallyAwesomePlugin.class);
add(MyPlugin.class);
}});
try {
SwrveConfig config = new SwrveConfig();
// To use the EU stack, include this in your config.
// config.setSelectedStack(SwrveStack.EU);
SwrveSDK.createInstance(this, <app_id>, "<api_key>", config);
} catch (IllegalArgumentException exp) {
Log.e("SwrveDemo", "Could not initialize the Swrve SDK", exp);
}
}
}
当我运行代码时,出现以下错误
error: incompatible types: MainActivity cannot be converted to Application
网站上的参考代码如下
public class YourApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
try {
SwrveConfig config = new SwrveConfig();
// To use the EU stack, include this in your config.
// config.setSelectedStack(SwrveStack.EU);
SwrveSDK.createInstance(this, <app_id>, "<api_key>", config);
} catch (IllegalArgumentException exp) {
Log.e("SwrveDemo", "Could not initialize the Swrve SDK", exp);
}
}
}
在离子项目中,我有 MainActivity 而不是
public class MainActivity extends BridgeActivity {
在文档中我有这个
public class YourApplication extends Application {
并在初始化行中,此关键字试图引用 Application 而不是 MainActivity
SwrveSDK.createInstance(this, <app_id>, "<api_key>", config);
我对本机代码一无所知,所以如果有人可以指导我并解释我可以解决的问题,我将不胜感激。
解决方案
您需要为该代码创建一个应用程序类。
创建一个新的 Java 类并将其设置为扩展应用程序:
public class SomeApp extends Application {}
然后将其添加到您的 AndroidManifest 中,在application
标签中:
<application
...
android:name=".SomeApp">
然后按照设置指南,将应该在 Application 类中的内容放入您刚刚创建的 Application 类中。
推荐阅读
- wordpress - wordpress - 如何按日期、月份和年份过滤帖子
- arrays - 如何从字符串中提取字符?
- kubernetes - 如何通过 promethues 获取 kubernetes 部署 CPU 使用情况
- r - R中高斯过程回归测试集的预测
- c++ - CMake - 如果在子项目中编译,可以选择包含静态库
- asp.net - 如何将 asp.net 核心 Web 应用程序部署到 azure b2c 租户?
- java - Google Drive API 无法列出文件 (v3 Java)
- ios - 如何在 alamofire 中发布单值数组?
- c++ - 为 Sony NMOS 实现编译 C++ boost 库
- c++ - 这2张魔法卡能打出的最大技能是多少?