React NationAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 React Nation

Сообщение Anonymous »

После обновления от REACT Native 0.71.3 до 0,78.0 (большое обновление), в следующий раз, когда я сделаю это меньшими шагами.
Синхро src = "https://i.sstatic.net/8nppertk.jpg"/>
mainactivity.kt

Код: Выделить всё

package com.radius.charge.home

import com.facebook.react.ReactActivity
import com.facebook.react.ReactActivityDelegate
import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.fabricEnabled
import com.facebook.react.defaults.DefaultReactActivityDelegate

class MainActivity : ReactActivity() {

/**
* Returns the name of the main component registered from JavaScript. This is used to schedule
* rendering of the component.
*/
override fun getMainComponentName(): String = "eMsp"

/**
* Returns the instance of the [ReactActivityDelegate].  We use [DefaultReactActivityDelegate]
* which allows you to enable New Architecture with a single boolean flags [fabricEnabled]
*/
override fun createReactActivityDelegate(): ReactActivityDelegate =
DefaultReactActivityDelegate(this, mainComponentName, fabricEnabled)
}

< /code>
mainapplication.kt
package com.radius.charge.home

import android.app.Application
import com.facebook.react.PackageList
import com.facebook.react.ReactApplication
import com.facebook.react.ReactHost
import com.facebook.react.ReactNativeHost
import com.facebook.react.ReactPackage
import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint.load
import com.facebook.react.defaults.DefaultReactHost.getDefaultReactHost
import com.facebook.react.defaults.DefaultReactNativeHost
import com.facebook.react.soloader.OpenSourceMergedSoMapping
import com.facebook.soloader.SoLoader

class MainApplication : Application(), ReactApplication {

override val reactNativeHost: ReactNativeHost =
object : DefaultReactNativeHost(this) {
override fun getPackages(): List  =
PackageList(this).packages.apply {
// Packages that cannot be autolinked yet can be added manually here, for example:
// add(MyReactNativePackage())
}

override fun getJSMainModuleName(): String = "index"

override fun getUseDeveloperSupport(): Boolean = BuildConfig.DEBUG

override val isNewArchEnabled: Boolean = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED
override val isHermesEnabled: Boolean = BuildConfig.IS_HERMES_ENABLED
}

override val reactHost: ReactHost
get() = getDefaultReactHost(applicationContext, reactNativeHost)

override fun onCreate() {
super.onCreate()
SoLoader.init(this, OpenSourceMergedSoMapping)
if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
// If you opted-in for the New Architecture, we load the native entry point for this app.
load()
}
}
}
< /code>
Уровень приложения build.gradle < /p>
apply plugin: "com.android.application"
apply plugin: "com.google.gms.google-services"
apply plugin: "org.jetbrains.kotlin.android"
apply plugin: "com.facebook.react"
apply plugin: 'com.google.firebase.crashlytics'

react {
autolinkLibrariesWithApp()
}

def enableProguardInReleaseBuilds = false

def jscFlavor = 'io.github.react-native-community:jsc-android:2026004.+'

android {
ndkVersion rootProject.ext.ndkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
compileSdk rootProject.ext.compileSdkVersion
namespace "com.foo.bar"

defaultConfig {
applicationId "com.foo.bar"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 161
versionName "1"
multiDexEnabled true
missingDimensionStrategy 'react-native-camera', 'general'
}

signingConfigs {
release {
keyAlias 'foo'
keyPassword 'foo'
storeFile file('foo.jks')
storePassword 'foo'
}
debug {
storeFile file('foo.jks')
storePassword 'foo'
keyAlias 'foo'
keyPassword 'foo'
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
debuggable true
}
release {
signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("foo.txt"), "foo.pro"
}
}
}

dependencies {
implementation("com.facebook.react:react-android")
implementation('org.jetbrains:annotations:16.0.2')
implementation 'androidx.multidex:multidex:2.0.1'
implementation platform('com.google.firebase:firebase-bom:31.2.3')
implementation 'com.google.android.gms:play-services-location:21.2.0'

if (hermesEnabled.toBoolean()) {
implementation("com.facebook.react:hermes-android")
} else {
implementation jscFlavor
}
}
< /code>
Build.gradle.gradle < /p>
buildscript {
ext {
buildToolsVersion = "35.0.0"
googlePlayServicesVersion = "+"
firebaseMessagingVersion = "21.1.0"

minSdkVersion = 24
compileSdkVersion = 35
targetSdkVersion = 35

ndkVersion = "27.1.12297006"
kotlinVersion = "2.0.21"
}
repositories {
google()
mavenCentral()
}
dependencies {
classpath("com.android.tools.build:gradle")
classpath("com.facebook.react:react-native-gradle-plugin")
classpath ('com.google.gms:google-services:4.4.3')
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin")
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9'
}
}

apply plugin: "com.facebook.react.rootproject"
< /code>
Exceptionsmanage Manager - это турбомодуль, введенный в RN 0,76.0, я вижу, что модуль существует в пакете RN. Строка кода в mainapplication.kt 
в нижней части, где загружается импорт DefaultnewarchitectureEntryPoint , я добавил точку останова внутри оператора if , чтобы подтвердить это. Функция нагрузки принимает три аргумента (

Код: Выделить всё

turboModulesEnabled: kotlin.Boolean = COMPILED_CODE, fabricEnabled: kotlin.Boolean = COMPILED_CODE, bridgelessEnabled: kotlin.Boolean = COMPILED_CODE
) Я не знаю, что такое значения по умолчанию для них, но я попытался вызвать метод загрузки так:

Код: Выделить всё

load(true, true)

, чтобы попытаться заставить турбо -модули быть включенными, и для того, чтобы ткань была включена, ошибка в изображении выше исчезла, и казалось, что Exceptions Exceptions Manager Turbomodule, но затем застревание я использовал в react rain rain rain -lepper, я использовал нативный, я использовал rate rain, rain -gatper, я использовал rate rain, rain -rain rapper. Проверено ничего не хватает.cd android
./gradlew clean
cd ..
rm -rf node_modules
rm -rf android/app/build
watchman watch-del-all
< /code>
Дайте мне знать, если вы хотите, чтобы я опубликовал дополнительную информацию. < /p>
спасибо
ric < /p>

Подробнее здесь: https://stackoverflow.com/questions/797 ... t-be-found
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»