一、申请友盟key
https://mobile.umeng.com/platform/apps/list
二 、在android/app/build.gradle中添加如下代码
dependencies {
........
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'com.umeng.umsdk:common:2.0.0' //基础组件
implementation 'com.umeng.umsdk:analytics:8.0.0' //统计
........
}
三、在android/app/src/main/AndroidManifest.xml中添加权限
<manifest……>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<application ……>
……
<activity ……/>
<meta-data android:value="YOUR_APP_KEY" android:name="你的APPKEY"/>
<meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/>
</application>
</manifest>
四、在android/app/src/main/java/com/你的项目名xxx/MainActivity.java中添加以下代码
//引入资源包
import com.umeng.analytics.MobclickAgent;
import com.umeng.commonsdk.UMConfigure;
//重写onCreate方法
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 注意:如果您已经在AndroidManifest.xml中配置过appkey和channel值,可以调用此版本初始化函数。
UMConfigure.init(this, "你的appkay", "Umeng", UMConfigure.DEVICE_TYPE_PHONE, null);
// interval: 单位是毫秒,默认Session间隔时间是30秒
MobclickAgent.setSessionContinueMillis(30000);
MobclickAgent.setPageCollectionMode(MobclickAgent.PageMode.LEGACY_MANUAL);
UMConfigure.setProcessEvent(true);
}
//增加以下代码
public void onResume() {
super.onResume();
MobclickAgent.onResume(this);
}
public void onPause() {
super.onPause();
MobclickAgent.onPause(this);
}
五、下载友盟SDK
https://developer.umeng.com/sdk](https://developer.umeng.com/sdk
六、导入资源包
1.在android/app/src/main/java/com/你的项目名XXX,新建目录invokenative
2.将下载的文件(解压后为:Android,IOS,ReactNative)ReactNative里面的所有.java放入该目录下,如图
七、修改导入.java文件的导入包路径--导入的包路径都要修改,原本的package路径为
package com.umeng.soexample.invokenative;
图片为修改的后的路径--顶端为修改的包位置
八、在android/app/src/main/java/com/你的项目名XXX/MainApplication.java中添加以下代码
//导入我们第五六步修改好的资源包
import com.zhg.invokenative.DplusReactPackage;
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new DplusReactPackage() // 实例化一下
);
}
九、maven依赖配置(自动集成)
在android/build.gradle中buildscript和allprojects添加
maven { url 'https://dl.bintray.com/umsdk/release' }
allprojects {
repositories {
maven { url 'https://dl.bintray.com/umsdk/release' }
}
}
buildscript {
repositories {
maven { url 'https://dl.bintray.com/umsdk/release' }
}
}