xiongzhu 4 years ago
parent
commit
2cd5a054ed
3 changed files with 44 additions and 2 deletions
  1. 1 0
      plugin.xml
  2. 2 2
      src/android/UmengPlugin.java
  3. 41 0
      src/android/after_install.js

+ 1 - 0
plugin.xml

@@ -8,6 +8,7 @@
         <clobbers target="UmengPlugin" />
         <clobbers target="UmengPlugin" />
     </js-module>
     </js-module>
     <platform name="android">
     <platform name="android">
+        <hook type="after_plugin_install" src="src/android/after_install.js"/>
         <config-file parent="/*" target="res/xml/config.xml">
         <config-file parent="/*" target="res/xml/config.xml">
             <feature name="UmengPlugin">
             <feature name="UmengPlugin">
                 <param name="android-package" value="com.umeng.UmengPlugin" />
                 <param name="android-package" value="com.umeng.UmengPlugin" />

+ 2 - 2
src/android/UmengPlugin.java

@@ -42,8 +42,8 @@ import org.json.JSONObject;
 
 
 import java.util.regex.Pattern;
 import java.util.regex.Pattern;
 
 
-import vip.raex.nft.BuildConfig;
-import vip.raex.nft.R;
+import vip.raex.oasismeta.BuildConfig;
+import vip.raex.oasismeta.R;
 
 
 /**
 /**
  * This class echoes a string called from JavaScript.
  * This class echoes a string called from JavaScript.

+ 41 - 0
src/android/after_install.js

@@ -0,0 +1,41 @@
+const fs = require("fs");
+const path = require("path");
+const https = require("https");
+module.exports = function (context) {
+    if (
+        context.opts.plugin &&
+        context.opts.plugin.id === "cordova-plugin-umeng"
+    ) {
+        const projectRoot = context.opts.projectRoot;
+
+        const cordovaCommon = context.requireCordovaModule("cordova-common");
+        const { ConfigParser } = cordovaCommon;
+        const appConfig = new ConfigParser(
+            path.resolve(projectRoot, "config.xml")
+        );
+
+        let projectName = appConfig.name();
+
+        const packageName =
+            appConfig.android_packageName() || appConfig.packageName();
+        const file = path.resolve(
+            projectRoot,
+            "platforms",
+            "android",
+            "app",
+            "src",
+            "main",
+            "java",
+            "com",
+            "umeng",
+            "UmengPlugin.java"
+        );
+        fs.writeFileSync(
+            file,
+            fs
+                .readFileSync(file)
+                .toString()
+                .replaceAll("${packageName}", packageName)
+        );
+    }
+};