Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cordova@11 cordova-common@4.1.0 添加插件时报config file undefined requested for changes not found at cordova/platforms/android/undefined, ignoring #453

Open
tianheren1980 opened this issue Dec 8, 2022 · 0 comments · May be fixed by #455

Comments

@tianheren1980
Copy link

你的运行环境

  • 插件版本:
  • 平台(Android / iOS):android sdk 23~33,android sdk tools 33.0.0和30.0.3
  • Cordova version (cordova -v):cordova 11.0.0
  • Cordova platform version (cordova platform ls):cordova-android 10.1.0
  • cordova-common:cordova-common@4.1.0
  • gradle: gradle-7.5.1、gradle-6.9.3和gradle-7.1.1

期望效果

可以正常编译,jpush相关配置可正常自动添加至AndroidManifest.xml

实际效果

添加jpush插件,cordova plugin add jpush-phonegap-plugin --variable APP_KEY=your_jpush_appkey,当执行添加cordova-plugin-jcore" for android时报config file undefined requested for changes not found at cordova/platforms/android/undefined, ignoring。经排查,应该新版本cordova-common@4.1.0导致出错,同时也测试过低版本的cordova-common@4.0.2则不出错此类问题。出现问题位置,platforms/android/android.json,当cordova-common@4.1.0时json结果中会出一个undefined的key

重现步骤

1、corodva创建新工程;
2、cordova添加android平台,即cordova platform add android@10.1.0
3、添加jpush插件,即:cordova plugin add jpush-phonegap-plugin --variable APP_KEY=your_jpush_appkey
4、编译,cordova build android
即可重现config file undefined requested for changes not found at cordova/platforms/android/undefined

背景

你尝试做过些什么?
使用测试过低版本的cordova-common@4.0.2,其他环境不变的情况下,则不会出错此类问题。

Debug logs

android.json文件部分内容:

{
  "prepare_queue": {
    "installed": [],
    "uninstalled": []
  },
  "config_munge": {
    "files": {
      "AndroidManifest.xml": {
      },
      "res/xml/config.xml": {
      },
      "config.xml": {
        "parents": {
          "/*": [
          ]
        }
      },
      "undefined": {
        "parents": {
          "AndroidManifest.xml": [
            {
              "xml": "<permission android:name=\"包名.permission.JPUSH_MESSAGE\" android:protectionLevel=\"signature\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"包名.permission.JPUSH_MESSAGE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.RECEIVE_USER_PRESENT\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.INTERNET\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.READ_EXTERNAL_STORAGE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.VIBRATE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.SYSTEM_ALERT_WINDOW\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.ACCESS_BACKGROUND_LOCATION\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.ACCESS_LOCATION_EXTRA_COMMANDS\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.GET_TASKS\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.QUERY_ALL_PACKAGES\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"android.permission.REQUEST_INSTALL_PACKAGES\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"com.huawei.android.launcher.permission.CHANGE_BADGE\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<uses-permission android:name=\"com.vivo.notification.permission.BADGE_ICON\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<activity android:exported=\"true\" android:name=\"cn.jpush.android.ui.PopWinActivity\" android:theme=\"@style/MyDialogStyle\"><intent-filter><category android:name=\"android.intent.category.DEFAULT\" /><action android:name=\"cn.jpush.android.ui.PopWinActivity\" /><category android:name=\"包名\" /></intent-filter></activity>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<activity android:configChanges=\"orientation|keyboardHidden\" android:exported=\"false\" android:name=\"cn.jpush.android.ui.PushActivity\" android:theme=\"@android:style/Theme.NoTitleBar\"><intent-filter><action android:name=\"cn.jpush.android.ui.PushActivity\" /><category android:name=\"android.intent.category.DEFAULT\" /><category android:name=\"包名\" /></intent-filter></activity>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<service android:enabled=\"true\" android:exported=\"false\" android:name=\"cn.jpush.android.service.PushService\" android:process=\":pushcore\"><intent-filter><action android:name=\"cn.jpush.android.intent.REGISTER\" /><action android:name=\"cn.jpush.android.intent.REPORT\" /><action android:name=\"cn.jpush.android.intent.PushService\" /><action android:name=\"cn.jpush.android.intent.PUSH_TIME\" /></intent-filter></service>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<provider android:authorities=\"包名.DataProvider\" android:exported=\"false\" android:name=\"cn.jpush.android.service.DataProvider\" android:process=\":pushcore\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<service android:enabled=\"true\" android:exported=\"true\" android:name=\"cn.jpush.android.service.DaemonService\"><intent-filter><action android:name=\"cn.jpush.android.intent.DaemonService\" /><category android:name=\"包名\" /></intent-filter></service>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<provider android:authorities=\"包名.DownloadProvider\" android:exported=\"true\" android:name=\"cn.jpush.android.service.DownloadProvider\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<receiver android:enabled=\"true\" android:exported=\"false\" android:name=\"cn.jpush.android.service.PushReceiver\"><intent-filter android:priority=\"1000\"><action android:name=\"cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY\" /><category android:name=\"包名\" /></intent-filter><intent-filter><action android:name=\"android.net.conn.CONNECTIVITY_CHANGE\" /></intent-filter><intent-filter><action android:name=\"android.intent.action.PACKAGE_ADDED\" /><action android:name=\"android.intent.action.PACKAGE_REMOVED\" /><data android:scheme=\"package\" /></intent-filter></receiver>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<receiver android:exported=\"false\" android:name=\"cn.jpush.android.service.AlarmReceiver\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<receiver android:exported=\"false\" android:name=\"cn.jpush.android.service.SchedulerReceiver\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<receiver android:exported=\"false\" android:name=\"cn.jiguang.cordova.push.JPushEventReceiver\"><intent-filter><action android:name=\"cn.jpush.android.intent.RECEIVE_MESSAGE\" /><category android:name=\"包名\" /></intent-filter></receiver>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<activity android:exported=\"true\" android:name=\"cn.jpush.android.service.JNotifyActivity\" android:taskAffinity=\"jpush.custom\" android:theme=\"@style/JPushTheme\"><intent-filter><action android:name=\"cn.jpush.android.intent.JNotifyActivity\" /><category android:name=\"android.intent.category.DEFAULT\" /><category android:name=\"包名\" /></intent-filter></activity>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<activity android:exported=\"true\" android:name=\"cn.android.service.JTransitActivity\" android:taskAffinity=\"jpush.custom\" android:theme=\"@style/JPushTheme\"><intent-filter><action android:name=\"cn.android.service.JTransitActivity\" /><category android:name=\"android.intent.category.DEFAULT\" /><category android:name=\"包名\" /></intent-filter></activity>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<service android:exported=\"false\" android:name=\"cn.jiguang.cordova.push.PushService\" android:process=\":pushcore\"><intent-filter><action android:name=\"cn.jiguang.user.service.action\" /></intent-filter></service>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<provider android:authorities=\"包名.JAdFileProvider\" android:exported=\"false\" android:grantUriPermissions=\"true\" android:name=\"cn.jiguang.union.ads.service.JAdFileProvider\"><meta-data android:name=\"android.support.FILE_PROVIDER_PATHS\" android:resource=\"@xml/jpush_file_paths\" /><intent-filter><action android:name=\"cn.jpush.android.intent.FileProvider\" /><category android:name=\"包名\" /></intent-filter></provider>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<receiver android:enabled=\"true\" android:exported=\"false\" android:name=\"cn.jiguang.cordova.push.JPushReceiver\"><intent-filter><action android:name=\"cn.jpush.android.intent.REGISTRATION\" /><action android:name=\"cn.jpush.android.intent.MESSAGE_RECEIVED\" /><action android:name=\"cn.jpush.android.intent.NOTIFICATION_RECEIVED\" /><action android:name=\"cn.jpush.android.intent.NOTIFICATION_OPENED\" /><action android:name=\"cn.jpush.android.intent.CONNECTION\" /><category android:name=\"包名\" /></intent-filter></receiver>",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<meta-data android:name=\"JPUSH_CHANNEL\" android:value=\"developer-default\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            },
            {
              "xml": "<meta-data android:name=\"JPUSH_APPKEY\" android:value=\"APP_KEY\" />",
              "count": 1,
              "mode": "merge",
              "plugin": "jpush-phonegap-plugin"
            }
          ]
        }
      }
    }
  }
}

包括 Android 或 iOS 的日志:

  • iOS: XCode logs
    • Android: $ adb logcat / Android Studio logcat
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant