(这里使用安卓为例) 官网文档, 如果失效直接找到安卓集成即可. https://developer.umeng.com/docs/119267/detail/118584 对于我们这种不懂原生的人,别搞什么手动集成...android/app/src/main/kotlin/com/xxxxx/MainActivity.kt 第一个要注意的是引入包名, 光看官网文档看不出来, 需要自己去找demo看 import com.umeng.analytics.MobclickAgent...import com.umeng.commonsdk.UMConfigure # 在 onCreate 重写方法 UMConfigure.preInit(this, "appKey", "Umeng...") 到此原生的就完成了 Flutter 初始化 不要手动集成, 一切都要自动的依赖管理, 官方文档https://developer.umeng.com/docs/119267/detail/174923...在工程pubspec.yaml中加入友盟的依赖管理即可, 然后直接在用的地方UmengCommonSdk.initCommon('android app key', 'ios app key', 'Umeng
/UMCommon.framework/Modules mkdir xxx/Umeng/UMCommon.framework/Modules touch xxx/Umeng/UMCommon.framework.../Modules/module.modulemap cat xxx/Umeng/UMCommon.framework/Modules/module.modulemap.../UMShare.framework/Modules mkdir xxx/Umeng/UMShare.framework/Modules touch xxx/Umeng/UMShare.framework...= [ 'xxx/Umeng/*.framework', 'xxx/Umeng/SocialLibraries/Facebook/*.framework' ]...'xxx/Umeng/SocialLibraries/WeChat/libSocialWeChat.a' ] end
友盟多渠道打包 废话不多说,以友盟统计为例,在AndroidManifest.xml里面会有这么一段: <meta-data android:name="UMENG_CHANNEL" android...第一步 在 AndroidManifest.xml 里配置 PlaceHolder <meta-data android:name="UMENG_CHANNEL" android:value...="${UMENG_CHANNEL_VALUE}" /> 第二步 在 build.gradle 设置 ProductFlavors android { productFlavors... baidu { manifestPlaceholders = [UMENG_CHANNEL_VALUE: "baidu"] } ...的渠道 manifestPlaceholders = [UMENG_CHANNEL_VALUE: "umeng"] } lintOptions
正文 Umeng多渠道 我们在项目中会使用统计SDK,用的最流行的当属umeng了吧。这里我们就用友盟来说明。...用了友盟的App的清单文件AndroidManifest.xml中都会写上meta-data,来区分不同的渠道: <meta-data android:name="UMENG_CHANNEL"...="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE}" /> 2.在app的build.gradle设置produceFlavors: productFlavors...= [UMENG_CHANNEL_VALUE: "qihoo"] } baidu { manifestPlaceholders = [UMENG_CHANNEL_VALUE: "baidu...= [UMENG_CHANNEL_VALUE: "wandoujia"] } qq { manifestPlaceholders = [UMENG_CHANNEL_VALUE
使用多渠道打包的方式,就需要把上面的value配置成下面的方式: UMENG_CHANNEL" android:value="${UMENG_CHANNEL_VALUE...}" /> 其中${UMENG_CHANNEL_VALUE}中的值就是你在gradle中自定义配置的值。...: "wandoujia"] } xiaomi{ manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]...manifestPlaceholders = [UMENG_CHANNEL_VALUE: "360"] } } 其中[UMENG_CHANNEL_VALUE: “wandoujia”]就是对应...${UMENG_CHANNEL_VALUE}的值。
: 产品渠道,可以根据productFlavors,针对不同的渠道配置个性化apk 3、BuildVariants:每一个buildtype和flavor组成一个buildvariant 1.按照umeng...的要求,manifest文件中需要有(在application下,和activity是并列关系): <meta-data android:name="UMENG_CHANNEL..." android:value="${UMENG_CHANNEL_VALUE}" /> 2.app的build.gradle配置 1)写法一 productFlavors...xiaomi { manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"] } sc360 {...manifestPlaceholders = [UMENG_CHANNEL_VALUE: "360"] } baidu {
/uploads/apps/551ca857fd98c51076001a39/_umeng_%40_2_%40_ae5657334c1b05bfad5038796907f3af.apk","origin...(Class.java:272) 04-13 14:29:03.766: W/com.umeng.update.UmengUpdateAgent(9737): atcom.umeng.update.UmengUpdateAgent.c...(UmengUpdateAgent.java:57) 04-13 14:29:03.766: W/com.umeng.update.UmengUpdateAgent(9737): atcom.umeng.update.UmengUpdateAgent.b...(UmengUpdateAgent.java:682) 04-13 14:29:03.766: W/com.umeng.update.UmengUpdateAgent(9737): atcom.umeng.update.UmengUpdateAgent.a...(UmengUpdateAgent.java:27) 04-13 14:29:03.766: W/com.umeng.update.UmengUpdateAgent(9737): atcom.umeng.update.UmengUpdateAgent
field=umeng_push_notification_default_large_icon at com.umeng.message.common.c.a(Res.java:223) ...at com.umeng.message.common.c.d(Res.java:152) at com.umeng.message.UmengMessageHandler.getLargeIcon...(UmengMessageHandler.java:502) at com.umeng.message.UmengMessageHandler.a(UmengMessageHandler.java...:161) at com.umeng.message.UmengMessageHandler.handleMessage(UmengMessageHandler.java:71) at...at com.umeng.message.service.JobIntentServicea.a(JobIntentService.java:235) at com.umeng.message.service.JobIntentServicea.doInBackground
weiboSDKCore_3.1.4.jar') compile files('libs/wechat-sdk-android-with-mta-1.1.6.jar') compile files('libs/umeng_social_tool.jar...') compile files('libs/umeng_social_net.jar') compile files('libs/umeng_social_api.jar') compile...; import android.content.Intent; import android.os.Bundle; import com.umeng.socialize.UMShareAPI; 4.MainApplication.java...需要添加引用: import com.xxx.module.SharePackage; //xxx为你的包名 import com.umeng.socialize.Config; import com.umeng.socialize.PlatformConfig...; import com.umeng.socialize.UMShareAPI; 5.以上配置完毕,运行依然报错“com.android.dex.DexIndexOverflowException: method
.** -keep public interface com.umeng.socialize.sensor.** -keep public interface com.umeng.scrshot.*....** -keep class com.facebook.** -keep class com.umeng.scrshot.** -keep public class com.tencent.*....** { *; } -keep class com.umeng.analytics.** { *; } -keep class com.umeng.common.** { *; }... -keep class com.umeng.newxp.** { *; } -keep class com.j256.ormlite.** { *; } -keep....** -keep public interface com.umeng.socialize.sensor.** -keep public interface com.umeng.scrshot
UMENG_CHANNEL"/> 示例中的Channel ID我们要替换成不同渠道的名称,比如google...","google") } baidu { manifestPlaceholders.put("UMENG_CHANNEL","baidu")...UMENG_CHANNEL的内容替换为我们manifestPlaceholders中对应的value值。...}" android:name="UMENG_CHANNEL"/> <activity android:name=".MainActivity"...其中${UMENG_CHANNEL}就是一个占位符,它的变量名是UMENG_CHANNEL。构建的时候${UMENG_CHANNEL}将会被替换为google或者baidu。 现在我们运行.
Mainfest 文件中添加一个键值对,这里的value 我定义为 “UMENG_CHANNEL_VALUE”(当然实际应用中可以根据自己的需要命名),后面打包的时候会对这个值进行替换。...UMENG_CHANNEL_VALUE" android:name="UMENG_CHANNEL"/> 2....: "xiaomi"] } _360 { manifestPlaceholders =[UMENG_CHANNEL_VALUE: "_360"]... } baidu { manifestPlaceholders =[UMENG_CHANNEL_VALUE: "baidu"] }... wandoujia { manifestPlaceholders =[UMENG_CHANNEL_VALUE: "wandoujia"] }
################## -libraryjars libs/umeng-analytics-v5.2.4.jar -keep class com.umeng.analytics.** {*...;} -dontwarn com.umeng.analytics.** #-keep public class * extends com.umeng.** #-keep public class...* extends com.umeng.analytics.** #-keep public class * extends com.umeng.common.** #-keep public...class * extends com.umeng.newxp.** -keep class com.umeng.** { *; } -keep class com.umeng.analytics....** -dontwarn org.apache.commons.** -keep public class * extends com.umeng.** -keep class com.umeng
-- 友盟统计配置 --> <meta-data android:name="UMENG_APPKEY" android:value="56f0b1ef67e58eded700015b..." > UMENG_CHANNEL" android:value="Umeng" /> 使用Ant...打包的时候替换的渠道号就是UMENG_CHANNEL" android:value="Umeng" /> 将Umeng替换为具体的渠道,比如将Umeng...release.keystore key.alias.password=123456 key.store.password=123456 #publish channel channelname=Umeng
.** { *; } -keep class com.umeng.** { *; } -keep class com.umeng.analytics.** { *; }...-keep class com.umeng.common.** { *; } -keep class com.umeng.newxp.** { *; } -keep class....** -keep public interface com.umeng.socialize.sensor.** -keep public interface com.umeng.scrshot....** #不混淆该类及其成员变量 -keep public class com.umeng.socialize.* {*;} -keep public class javax.** -...keep public class android.webkit.** -keep class com.facebook.** -keep class com.umeng.scrshot.
clz.getSuperclass() == null) { return "WXEntryActivity配置不正确,您使用的是精简版,请使WXEntryActivity继承com.umeng.weixin.callback.WXCallbackActivity...clz.getSuperclass().toString().contains("com.umeng.weixin")) { return "WXEntryActivity配置不正确...,您使用的是精简版,请使WXEntryActivity继承com.umeng.weixin.callback.WXCallbackActivity"; } } else {...clz.getSuperclass().toString().contains("com.umeng.socialize")) { return "WXEntryActivity配置不正确...,您使用的是完整版,请使WXEntryActivity继承com.umeng.socialize.weixin.view.WXCallbackActivity"; } }
.jar utdid4all-1.0.4.jar 2、在AndroidManifest.xml中补充权限定义,以及meta-data参数定义,包括UMENG_APPKEY、UMENG_CHANNEL...等等,其中UMENG_APPKEY需要到友盟网站上注册申请; 3、代码里先设置采集参数,然后开始采集行为事件; MobclickAgent 友盟统计分析主要用到MobclickAgent类。...; import com.example.exmanalysis.umeng.analytics.FragmentTabs; import com.example.exmanalysis.umeng.analytics.WebviewAnalytic...; import com.umeng.analytics.MobclickAgent; import com.umeng.analytics.MobclickAgent.EScenarioType; import...com.umeng.analytics.social.UMPlatformData; import com.umeng.analytics.social.UMPlatformData.GENDER;
'com.umeng.umsdk:push:6.0.5' implementation 'com.umeng.umsdk:alicloud-httpdns:1.2.5' implementation...'com.umeng.umsdk:alicloud-utils:1.1.5' implementation 'com.umeng.umsdk:alicloud_beacon:1.0.1'...implementation 'com.umeng.umsdk:agoo-accs:3.3.8.8-open-fix2' implementation 'com.umeng.umsdk:agoo_networksdk...'com.umeng.umsdk:huawei-basetb:2.6.3.306' implementation 'com.umeng.umsdk:huawei-pushtb:2.6.3.306...'com.umeng.umsdk:oppo-push:2.0.2' implementation 'com.umeng.umsdk:oppo-umengaccs:1.0.6' // vivo
甚至可以在AndroidManifest文件中获取到在Gradle配置的数据,比如下面的配置不同的渠道 //AndroidManifest <meta-data android:name="UMENG_CHANNEL..." android:value="${UMENG_CHANNEL_VALUE}" /> //build.gradle productFlavors { playStore {...manifestPlaceholders = [UMENG_CHANNEL_VALUE: "playStore"] } miui { manifestPlaceholders...= [UMENG_CHANNEL_VALUE: "miui"] } wandoujia { manifestPlaceholders = [UMENG_CHANNEL_VALUE
集成友盟+ Flutter SDK 下载Demo,Demo地址:https://developer.umeng.com/api/sdk/customDownload?...删除umeng_sdk中的example文件夹。 在自己Flutter项目的pubspec.yaml中引入插件 Pub get。 umeng_sdk: path: ..../umeng_sdk/ 修改umeng_sdk文件夹下iOS目录下的umeng_sdandroidk.podspec文件。...//对应版本号去umeng_sdk/android/libs目录下对应版本 s.dependency 'UMCCommon' , '2.1.8' s.dependency 'UMCAnalytics...Demo地址:https://developer.umeng.com/sdk/flutter?refer=UApp# 极光推送 Flutter SDK集成 首先去友盟工作台添加一个应用。
领取专属 10元无门槛券
手把手带您无忧上云