【发布时间】:2017-10-20 18:10:10
【问题描述】:
您好,我使用这篇文章通过 react native 更改我的 android 启动画面,但我得到了这个错误: Article link
BUILD SUCCESSFUL
Total time: 1 mins 43.179 secs
Running C:\Users\Saeed\AppData\Local\Android\sdk/platform-tools/adb -s 5203fc0e586a3409 reverse tcp:8081 tcp:8081
Starting the app on 5203fc0e586a3409 (C:\Users\Saeed\AppData\Local\Android\sdk/platform-tools/adb -s 5203fc0e586a3409 shell am start -n com.mohajerkade/.MainActivity)...
Starting: Intent { cmp=com.mohajerkade/.MainActivity VirtualScreenParam=Params{mDisplayId=-1, null, mFlags=0x00000000)} }
Error type 3
Error: Activity class {com.mohajerkade/com.mohajerkade.MainActivity} does not exist.
events.js:160
throw er; // Unhandled 'error' event
^
Error: spawn cmd.exe ENOENT
at exports._errnoException (util.js:1022:11)
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
at onErrorNT (internal/child_process.js:359:16)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
首先我有 3 秒的启动画面,然后**我的手机出现了一个红色屏幕 Error calling AppRegistry.runApplication** 并且看不到 React Native Hello World
这是我的 MainActivity.java :
package com.mohajerkade;
import com.facebook.react.ReactActivity;
public class MainActivity extends ReactActivity {
/**
* Returns the name of the main component registered from JavaScript.
* This is used to schedule rendering of the component.
*/
@Override
protected String getMainComponentName() {
return "Mohajerkade";
}
}
这是 SplashActivity.java :
package com.mohajerkade;
import com.facebook.react.ReactActivity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
public class SplashActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
}
}
我使用了这个 Toturial 但我不知道如何在应用程序加载中看到启动画面,然后反应原生 Hello World。
【问题讨论】:
-
使用 react-native start 启动服务器,然后按下 android studio 中的运行按钮。
-
我正在使用我的手机运行和调试应用程序并且我没有模拟器,今天我开始时,它说,
unfortunately. myAppName has stopped。我的代码是 react native 的默认代码。 -
我浏览了你的代码,看来你正在使用本机代码,而不是对启动屏幕做出反应本机代码。这种方法有什么理由吗? react native 提供易于处理的组件以在 iOS 和 android 中显示启动画面。但在 xcode(iOS) 中,您可以根据设备大小直接放置启动画面。随意问:)
标签: javascript android react-native splash-screen