首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误TypeError:对象(...)不是function / ionic3 flurry analytics插件

错误TypeError:对象(...)不是function / ionic3 flurry analytics插件
EN

Stack Overflow用户
提问于 2019-03-11 04:30:04
回答 1查看 470关注 0票数 1

当我尝试使用https://github.com/blakgeek/cordova-plugin-flurryanalytics插件记录一个事件时,我得到了这个错误

(当我使用firebase-analytics插件时,我得到了同样的错误,我也无法解决这个问题:https://github.com/chemerisuk/cordova-plugin-firebase-analytics)

我在ionViewWillEnter()insights.ts(one of my component)中使用的代码如下:

代码语言:javascript
复制
const options: FlurryAnalyticsOptions = {
      appKey: 'my key', // REQUIRED
      userId: 'prash1234',
      reportSessionsOnClose: true,
      enableLogging: true
    }

let fa: FlurryAnalyticsObject = this.flurry.create(options);

    let ovenParams = {
      temp: 350,
      mode: 'convection',
      rackPosition: 'center'
    }

    fa.logEvent('set oven', ovenParams)
      .then(() => { console.log('something')})
      .catch((e) => console.log('error')); 

运行应用程序时出现以下错误:

代码语言:javascript
复制
ERROR TypeError: Object(...) is not a function
    at FlurryAnalyticsObject.logEvent (index.js:26)
    at InsightsPage.webpackJsonp.171.InsightsPage.ionViewWillEnter (insights.ts:60)
    at ViewController._lifecycle (view-controller.js:566)
    at ViewController._willEnter (view-controller.js:454)
    at Tab.NavControllerBase._willEnter (nav-controller-base.js:966)
    at nav-controller-base.js:828
    at t.invoke (polyfills.js:3)
    at Object.onInvoke (core.es5.js:4149)
    at t.invoke (polyfills.js:3)
    at r.run (polyfills.js:3)

我的包json:

代码语言:javascript
复制
{
  "name": "myFlurryApp",
  "version": "0.0.1",
  "author": "Ionic Framework",
  "homepage": "http://ionicframework.com/",
  "private": true,
  "scripts": {
    "clean": "ionic-app-scripts clean",
    "build": "ionic-app-scripts build",
    "lint": "ionic-app-scripts lint",
    "ionic:build": "ionic-app-scripts build",
    "ionic:serve": "ionic-app-scripts serve"
  },
  "dependencies": {
    "@angular/common": "4.1.3",
    "@angular/compiler": "4.1.3",
    "@angular/compiler-cli": "4.1.3",
    "@angular/core": "4.1.3",
    "@angular/forms": "4.1.3",
    "@angular/http": "4.1.3",
    "@angular/platform-browser": "4.1.3",
    "@angular/platform-browser-dynamic": "4.1.3",
    "@ionic-native/app-version": "^4.19.0",
    "@ionic-native/core": "^4.19.0",
    "@ionic-native/device": "^4.19.0",
    "@ionic-native/fcm": "^4.5.2",
    "@ionic-native/flurry-analytics": "^5.2.0",
    "@ionic-native/google-analytics": "^4.19.0",
    "@ionic-native/keyboard": "^4.19.0",
    "@ionic-native/local-notifications": "^4.6.0",
    "@ionic-native/push": "4.0.1",
    "@ionic-native/splash-screen": "^4.19.0",
    "@ionic-native/status-bar": "^4.19.0",
    "@ionic/storage": "2.0.1",
    "@types/lodash": "^4.14.91",
    "cordova-android": "7.1.4",
    "cordova-ios": "4.5.5",
    "cordova-plugin-app-version": "0.1.9",
    "cordova-plugin-badge": "0.8.8",
    "cordova-plugin-cocoapod-support": "1.6.0",
    "cordova-plugin-device": "2.0.2",
    "cordova-plugin-fcm-with-dependecy-updated": "2.4.0",
    "cordova-plugin-flurryanalytics": "1.4.6",
    "cordova-plugin-google-analytics": "1.8.6",
    "cordova-plugin-ionic-keyboard": "2.1.3",
    "cordova-plugin-local-notification": "0.9.0-beta.2",
    "cordova-plugin-splashscreen": "5.0.2",
    "cordova-plugin-statusbar": "2.4.2",
    "cordova-plugin-whitelist": "1.3.3",
    "datepicker-ionic2": "^2.6.2",
    "highcharts": "^4.2.6",
    "ion2-calendar": "^2.2.0",
    "ionic-angular": "3.6.1",
    "ionic-select-searchable": "^2.8.2",
    "ionicons": "3.0.0",
    "moment": "^2.22.2",
    "rxjs": "^5.5.12",
    "sw-toolbox": "3.6.0",
    "zone.js": "0.8.12"
  },
  "devDependencies": {
    "@ionic/app-scripts": "2.1.4",
    "typescript": "2.3.4"
  },
  "description": "An Ionic project",
  "cordova": {
    "plugins": {
      "cordova-plugin-app-version": {},
      "cordova-plugin-device": {},
      "cordova-plugin-ionic-keyboard": {},
      "cordova-plugin-splashscreen": {},
      "cordova-plugin-statusbar": {},
      "cordova-plugin-whitelist": {},
      "cordova-plugin-google-analytics": {
        "GMS_VERSION": "11.0.1"
      },
      "cordova-plugin-fcm-with-dependecy-updated": {},
      "cordova-plugin-local-notification": {},
      "cordova-plugin-flurryanalytics": {}
    },
    "platforms": [
      "ios",
      "android"
    ]
  }
}

ionic -v 4.3.0

安卓7.1.4

请帮我弄一下这个。谢谢:)

EN

回答 1

Stack Overflow用户

发布于 2021-05-22 19:50:20

要解决此问题,请执行以下操作:

  • 切换flurry插件的版本。

然后,

  • 在安卓文件中更改服务的版本( file服务)。使其与插件相同。

PS:我不推荐这个插件,但它会在你构建iOS项目时带来很大的问题。如果他们去年解决了iOS的构建问题,那么你可以肯定地使用它。

编辑:

现在使用离子和电容器,你可以解决这个问题。

代码语言:javascript
复制
npm install cordova-plugin-flurryanalytics
npm install @ionic-native/flurry-analytics
ionic cap sync
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55092078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档