React Native打包(二:react-native集成友盟)

(一)前言
版本环境

node 8.0+(v8.12.0)
npm 5.0+(v6.4.1)
java (v1.8.0_172)

"react-native": "0.57.1",
 "react": "16.5.0",

参考链接博客

(二). ##集成安卓环境##

  1. 在android/app/build.gradle
dependencies {
    ....
    implementation "com.facebook.react:react-native:+"  // From node_modules
    implementation 'com.umeng.analytics:analytics:latest.integration' // umeng
}
  1. 如果无法正常集成请在android/build.gradle 添加如下代码 :
allprojects {
    repositories {
        google()
        mavenLocal()
        jcenter()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$rootDir/../node_modules/react-native/android"
        }

        // react-native-image-crop-picker
        maven { url 'https://maven.google.com' }

        // react-native-image-crop-picker
        maven { url "https://jitpack.io" }
        // umeng  
        mavenCentral() 
    }
}

重新build应用,Gradle就会将上述配置的sdk自动下载到本地。

  1. 配置android/app/src/main/AndroidManifest.xml
<manifest……>
……
<activity ……/>
	<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
	<!--umeng-->
	<meta-data android:value="YOUR_APP_KEY" android:name="UMENG_APPKEY"/>
	<meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/>
</application>    
</manifest>
  1. 配置android/app/src/main/java/com/项目名/MainActivity.java
// umeng
import com.umeng.analytics.MobclickAgent;

...
// Umeng sdk
public void onResume() {
	super.onResume();
	MobclickAgent.onResume(this);
}
public void onPause() {
	super.onPause();
	MobclickAgent.onPause(this);
}

(三). ##集成IOS环境##

  1. 在pod增加依赖
target '项目名' do
  # react-native-image-crop-picker setup ----->
  # this is very important to have!
  rn_path = '../node_modules/react-native'
  pod 'yoga', path: "#{rn_path}/ReactCommon/yoga/yoga.podspec"
  pod 'React', path: rn_path, subspecs: [
    'Core',
    'RCTActionSheet',
    'RCTAnimation',
    'RCTGeolocation',
    'RCTImage',
    'RCTLinkingIOS',
    'RCTNetwork',
    'RCTSettings',
    'RCTText',
    'RCTVibration',
    'RCTWebSocket',
    'ART', # react-native-progress
  ]
# umeng 标准SDK,含IDFA  ----->
  pod 'UMengAnalytics'
# <-----  标准SDK,含IDFA
  pod 'RNImageCropPicker', :path =>  '../node_modules/react-native-image-crop-picker'
# <----- react-native-image-crop-picker setup

end

然后 cd ios && pod install 安装sdk

  1. 设置配置

在AppDelegate.m文件

#import "UMMobClick/MobClick.h" // <--- import umeng 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  UMConfigInstance.appKey = @"YOUR_APP_KEY";
  UMConfigInstance.channelId = @"Channel ID";
  // UMConfigInstance.eSType = E_UM_GAME; // 仅适用于游戏场景,应用统计不用设置
  [MobClick setAppVersion: XcodeAppVersion]; // 配置umeng app版本
  [MobClick startWithConfigure:UMConfigInstance]; // 配置以上参数后调用此方法初始化SDK
  NSURL *jsCodeLocation;
  ...
}

(四). ##结论##

基础环境配置完成,但是目前友盟app_key写死在配置文件中,后续多环境打包会提供方案解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值