android splash白屏_(Android)react-native-splash-screen实践-解决react-native打包好后启动白屏的问题...

1.安装

npm i react-native-splash-screen --save or

yarn add react-native-splash-screen --save

2.自动配置

react-native link react-native-splash-screen or rnpm link react-native-splash-screen

or 3.手动配置

3.1 android/settings.gradle

include ':react-native-splash-screen'project(':react-native-splash-screen').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-splash-screen/android')

3.2  android/app/build.gradle

...

dependencies {

...

compile project(':react-native-splash-screen')

}

3.3 MainApplication.java

// react-native-splash-screen >= 0.3.1

import org.devio.rn.splashscreen.SplashScreenReactPackage;// react-native-splash-screen < 0.3.1

// import com.cboy.rn.splashscreen.SplashScreenReactPackage;

public class MainApplication extends Application implements ReactApplication {

private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {

@Override

protected booleangetUseDeveloperSupport() {

returnBuildConfig.DEBUG;

}

@Override

protected ListgetPackages() { return Arrays.asList( newMainReactPackage(), new SplashScreenReactPackage() //here ); } }; @Override public ReactNativeHost getReactNativeHost() { returnmReactNativeHost; } }

3.4 MainActivity.java

import android.os.Bundle; // here

import com.facebook.react.ReactActivity;

// react-native-splash-screen >= 0.3.1

import org.devio.rn.splashscreen.SplashScreen; // here

// react-native-splash-screen < 0.3.1

// import com.cboy.rn.splashscreen.SplashScreen; // here

public class MainActivity extends ReactActivity {

@Override

protectedvoid onCreate(Bundle savedInstanceState) {

SplashScreen.show(this); // here

super.onCreate(savedInstanceState);

}// ...other code

}

3.5 在app/src/main/res/layout下创建launch_screen.xml

3.6 在app/src/main/res/drawable/ 下加入launch_screen.png图片

3.7 设置透明背景android/app/src/main/res/values/styles.xml

true

3.8 react-native run-android失败 提示tool:replace allbackup

application节点添加

3.9 android 闪退 需要添加android/app/src/main/res/values/colors.xml

<?xml version="1.0" encoding="utf-8"?> #660B0B0B

4.用法

import SplashScreen from 'react-native-splash-screen'export defaultclass WelcomePage extends Component {

componentDidMount() {

// do stuff while splash screen is shown

// After having done stuff (such as async tasks) hide the splash screen

SplashScreen.hide();

}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值