Closed rmotwani33 closed 7 months ago
Hi @rmotwani33 thanks for the issue. This is a very interesting use case! I need some more context to understand it.
Does your custom keyboard utilize react native for its implementation? Or it crashes on React Native applications?
Hi, @safaiyeh Thanks for replying, Yes it will crash on our react native app as well in every IOS App,
Here I have registered components with the app and keyboard. Like this It's the beginning part of the app.
App.js
import React from 'react';
import { AppRegistry } from 'react-native';
import Keyboard from './app/screens/Keyboard';
import { name as RNFirebaseBackgroundMessage } from './app.json';
function HeadlessCheck({ isHeadless, isKeyboard }) {
if (isKeyboard) {
console.log('Keyboard app ==> No need to start the app');
} else {
console.log('Headless Check ====> ', isHeadless);
if (isHeadless) {
// App has been launched in the background by iOS, ignore
return null;
}
const App = require('./app/index').default;
require('react-native-gesture-handler');
import('react-native-screens')
.then((module) => {
// Do something with the module.
module.enableScreens();
});
import('@react-native-firebase/messaging')
.then((module) => {
console.log('module ==> ', module);
module.default().setBackgroundMessageHandler(async (remoteMessage) => {
console.log('Message handled in the background!', remoteMessage);
});
});
console.log('App ==> ', App);
return <App />;
}
}
AppRegistry.registerComponent(RNFirebaseBackgroundMessage, () => HeadlessCheck);
AppRegistry.registerComponent('RNKeyboard', () => Keyboard);
@safaiyeh One more thing I want to tell you, In IOS I think the problem is with memory it's consuming a lot of memory and then crash.
Hi, @safaiyeh Thanks for replying, Yes it will crash on our react native app as well in every IOS App,
Here I have registered components with the app and keyboard. Like this It's the beginning part of the app.
App.js
import React from 'react'; import { AppRegistry } from 'react-native'; import Keyboard from './app/screens/Keyboard'; import { name as RNFirebaseBackgroundMessage } from './app.json'; function HeadlessCheck({ isHeadless, isKeyboard }) { if (isKeyboard) { console.log('Keyboard app ==> No need to start the app'); } else { console.log('Headless Check ====> ', isHeadless); if (isHeadless) { // App has been launched in the background by iOS, ignore return null; } const App = require('./app/index').default; require('react-native-gesture-handler'); import('react-native-screens') .then((module) => { // Do something with the module. module.enableScreens(); }); import('@react-native-firebase/messaging') .then((module) => { console.log('module ==> ', module); module.default().setBackgroundMessageHandler(async (remoteMessage) => { console.log('Message handled in the background!', remoteMessage); }); }); console.log('App ==> ', App); return <App />; } } AppRegistry.registerComponent(RNFirebaseBackgroundMessage, () => HeadlessCheck); AppRegistry.registerComponent('RNKeyboard', () => Keyboard);
@safaiyeh One more thing I want to tell you, In IOS I think the problem is with memory it's consuming a lot of memory and then crash.
@safaiyeh Any Update regarding the above issue please?
This issue is stale because it has been open 180 days with no activity. Remove stale label or comment or this will be closed in 7 days.
This issue was closed because it has been stalled for 7 days with no activity.
Description
I have created a custom keyboard(Native) that can be selected from the input methods and can be used in any App. This keyboard works perfectly for React-Native Android App but not works in IOS When I open the App keyboard doesn't appear in the input methods list.
Here are some points to be noted:-
React Native version:
"react-native": "0.63.2"
Steps To Reproduce
Provide a detailed list of steps that reproduce the issue.
1.Keyboard crashes due to memory limit in IOS 2.IOS Allows only 48 MB ram for Keyboard and Our app exhausts and can't render the keyboard.
KeyboardViewController.m
KeyboardExtension.m
Expected Results
The keyboard Should be Opened and usable for Any IOS App