Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not able to proceed with TextInput || iOS release #41801

Open
HarshitMadhav opened this issue Dec 5, 2023 · 28 comments
Open

Not able to proceed with TextInput || iOS release #41801

HarshitMadhav opened this issue Dec 5, 2023 · 28 comments
Labels
Component: TextInput Related to the TextInput component. Needs: Author Feedback Needs: Repro This issue could be improved with a clear list of steps to reproduce the issue. Platform: iOS iOS applications. Type: Unsupported Version Issues reported to a version of React Native that is no longer supported Type: Upgrade Issue Issues reported from upgrade issue form

Comments

@HarshitMadhav
Copy link

HarshitMadhav commented Dec 5, 2023

New Version

0.72.0

Old Version

0.68.5

Build Target(s)

iOS simulator release mode

Output of react-native info

System:
OS: macOS 14.1.1
CPU: (8) arm64 Apple M1 Pro
Memory: 77.88 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 18.18.2 - ~/.nvm/versions/node/v18.18.2/bin/node
Yarn: 1.22.18 - /usr/local/bin/yarn
npm: 9.8.1 - ~/.nvm/versions/node/v18.18.2/bin/npm
Watchman: 2022.10.03.00 - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.11.3 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 23.0, iOS 17.0, macOS 14.0, tvOS 17.0, watchOS 10.0
Android SDK: Not Found
IDEs:
Android Studio: 2021.3 AI-213.7172.25.2113.9123335
Xcode: 15.0.1/15A507 - /usr/bin/xcodebuild
Languages:
Java: 17.0.7 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 18.2.0 => 18.2.0
react-native: 0.72.0 => 0.72.0
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found

Issue and Reproduction Steps

Hi! I have updated the react native version from 0.68.5 to 0.72.0 the flipper and other dependencies are updated successfully.

I am facing this issue

-[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:] perform input operation requires a valid sessionID

while I am running the iOS app in release mode in Simulator (iPhone 15 - iOS 17.0), due to which I am not able to proceed further in the application.

The debug build works fine.

Attached screenshot is of the log that I am getting while clicking on a button after giving input to a TextInput

Screenshot 2023-12-05 at 5 05 23 PM
@HarshitMadhav HarshitMadhav added Needs: Triage 🔍 Type: Upgrade Issue Issues reported from upgrade issue form labels Dec 5, 2023
Copy link

github-actions bot commented Dec 5, 2023

⚠️ Missing Reproducible Example
ℹ️ We could not detect a reproducible example in your issue report. Please provide either:
  • If your bug is UI related: a Snack
  • If your bug is build/update related: use our Reproducer Template. A reproducer needs to be in a GitHub repository under your username.

@github-actions github-actions bot added Needs: Repro This issue could be improved with a clear list of steps to reproduce the issue. Component: TextInput Related to the TextInput component. Platform: iOS iOS applications. labels Dec 5, 2023
@hcac10
Copy link

hcac10 commented Dec 21, 2023

also dealing with this issue. I believe the same issue has been addressed on Apple forum https://forums.developer.apple.com/forums/thread/731700 and on StackOverflow https://stackoverflow.com/questions/77165006/searchable-swiftui-on-ios-17-cause-an-error-invalid-numeric-value
but no solution has been proposed yet.
I get the same log when I click a TextInput on the simulator.

RN 72.5 Expo 49.0.13

@squareborg
Copy link

Getting this too, in release mode I can't input text, works fine in development

Expo 50
RN 0.73.2

@dancosta-fed
Copy link

Also getting this:
[RemoteTextInput] -[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:] perform input operation requires a valid sessionID

Expo 50.0.4
RN 0.73.2

@SamiAljord
Copy link

Also getting this: [RemoteTextInput] -[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:] perform input operation requires a valid sessionID

Expo 50.0.4 RN 0.73.2

same

1 similar comment
@RichardSchleger
Copy link

Also getting this: [RemoteTextInput] -[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:] perform input operation requires a valid sessionID

Expo 50.0.4 RN 0.73.2

same

@geekabhinavp
Copy link

anyone looking into this issue?

@justinflint
Copy link

@geekabhinavp I'm facing the same issue in .NET MAUI. Got some folks looking into it - I'll try to post helpful content here once the solution is found.

@coyksdev
Copy link

Also getting this: [RemoteTextInput] -[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:] perform input operation requires a valid sessionID

Expo 50.0.4 RN 0.73.2

same

@webdiego
Copy link

Same

@UnknownUserdot
Copy link

Bummer, I have this same issue in my app when I try to use my "sell" button in the simulator which should subtract from an array I made..hopefully we can solve it.

@mphill
Copy link

mphill commented Feb 28, 2024

You are likely destroying/recreating the component on re-rendering. Hard to say for sure what the issue is without any reproduction code.

If you are doing something like this where you define an input inline, i.e.

App() {
 const InlineInput = () => <TextInput /> // Move this outside of the function definition.

  return (
   <InlineInput />
  )
}

You will see this error.

Previous versions of RN/iOS didn't seem to mind this, but now it's causing problems. My opinion is this is not a bug, but an implementation issue. Native devs see this too when they use LazyVStacks that recycle.

Hope that helps

@boltlessengineer
Copy link

Same thing happens to me even with HTML textarea/inputs.
Tried with webview element in as root level (app/_layout.tsx) but it didn't help.

@joshuagodwin
Copy link

joshuagodwin commented Mar 8, 2024

same issue, "react-native": "0.71.14", expo 0.7.3
even if nothing but textinput surrounded by view with no other code will still get error when press on text input in simulator:
[RemoteTextInput] -[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:] perform input operation requires a
valid sessionID

update: worked with reset to metro.

@CRIIPI11
Copy link

@joshuagodwin can you elaborate your solution please, currently having the same issue in development

@lesimoes
Copy link

Seems that issue only happens when you use physical keyboard on ios simulator, try to use "Software keyboard" from simulator. Menu bar > I/O > Keyboard > Toggle Software Keyboard.

@hassanad94
Copy link

hassanad94 commented Apr 17, 2024

Seems that issue only happens when you use physical keyboard on ios simulator, try to use "Software keyboard" from simulator. Menu bar > I/O > Keyboard > Toggle Software Keyboard.

I tried it... It still remain... But if its just a development warning, then no problem. :)

@ianbunn
Copy link

ianbunn commented Jul 19, 2024

"Command" + "Shift" + "K" alternates between software or hardware keyboard...but yeah, in development, the warning error will still be shown in the console:

[RemoteTextInput] -[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:]  perform input operation requires a valid sessionID. inputModality = Keyboard, inputOperation = <null selector>, customInfoType = UIEmojiSearchOperations

@eyedroot
Copy link

You are likely destroying/recreating the component on re-rendering. Hard to say for sure what the issue is without any reproduction code.

If you are doing something like this where you define an input inline, i.e.

App() {
 const InlineInput = () => <TextInput /> // Move this outside of the function definition.

  return (
   <InlineInput />
  )
}

You will see this error.

Previous versions of RN/iOS didn't seem to mind this, but now it's causing problems. My opinion is this is not a bug, but an implementation issue. Native devs see this too when they use LazyVStacks that recycle.

Hope that helps

I had the same structure as below. When separating some components as function expressions within the same component, the same error occurs, and there's an issue with losing focus after typing.

const MyComponent = () => {

  const HeaderComponent = () => <TextInput />;

  return (
    <>
      <HeaderComponent />
    </>
  );
};

export default MyComponent;

The problem was resolved by modifying it as follows, but I'm not sure about the exact cause either.

const MyComponent = () => {
  return (
    <>
      <TextInput />;
    </>
  );
};

export default MyComponent;

@clool
Copy link

clool commented Jul 30, 2024

I am facing the same issue. I found that first mount is ok, then I used expo-router to navigate back, and navigate to data entry page again that is when I see this message

@jasells
Copy link

jasells commented Aug 5, 2024

I found that first mount is ok, then I used expo-router to navigate back, and navigate to data entry page again that is when I see this message

I am seeing the same error when navigating back to a previous page after entering data on a dedicated data-entry page in .Net MAUI 8 via MAUI's Shell as well. Seems to only be happening on my Sim's, not real devices. Tried iOS-sim v17.2/17.5 with/without physical keyboard and didn't seem to change. iPhone XR with iOS 17.5.1 and iPhone 12-iOS 16.6 had no issues.

@KlutchKyle
Copy link

I am facing the same issue when using in-app-payments-react-native-plugin. Happens when I enter card information and tap "Pay". on React Native CLI 0.74.3, iOS 17.

@aretrace
Copy link

aretrace commented Oct 5, 2024

I get this: [RemoteTextInput] -[RTIInputSystemClient remoteTextInputSessionWithID:performInputOperation:] perform input operation requires a valid sessionID. inputModality = Keyboard, inputOperation = <null selector>, customInfoType = UIEmojiSearchOperations

@jkirira
Copy link

jkirira commented Oct 18, 2024

+1

1 similar comment
@IlinIgor
Copy link

+1

@periwinkleFTW
Copy link

I am getting the same warning, AI assistants say that it's not important and I should learn to live with and accept it being part of my log outputs

[RemoteTextInput] -[RTIInputSystemClient
remoteTextInputSessionWithID:performInputOperation:]  perform input
operation requires a valid sessionID. inputModality = Keyboard,
inputOperation = <null selector>, customInfoType =
UIEmojiSearchOperations```

@aretrace
Copy link

@periwinkleFTW
🤔 I got that warning while trying to programmatically interface with AI, hmmm...

@blakef blakef added Type: Unsupported Version Issues reported to a version of React Native that is no longer supported and removed Needs: Triage 🔍 labels Oct 25, 2024
@react-native-bot
Copy link
Collaborator

⚠️ Unsupported Version of React Native
ℹ️ It looks like your issue or the example you provided uses an unsupported version of React Native.

Due to the number of issues we receive, we're currently only accepting new issues against one of the supported versions. Please upgrade to latest and verify if the issue persists (alternatively, create a new project and repro the issue in it). If you cannot upgrade, please open your issue on StackOverflow to get further community support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: TextInput Related to the TextInput component. Needs: Author Feedback Needs: Repro This issue could be improved with a clear list of steps to reproduce the issue. Platform: iOS iOS applications. Type: Unsupported Version Issues reported to a version of React Native that is no longer supported Type: Upgrade Issue Issues reported from upgrade issue form
Projects
None yet
Development

No branches or pull requests