-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Add kotlin examples in new-architecture-app-modules-android.md #3241
Add kotlin examples in new-architecture-app-modules-android.md #3241
Conversation
Hi @tusharvars! Thank you for your pull request and welcome to our community. Action RequiredIn order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you. ProcessIn order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA. Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with If you have received this in error or have any questions, please contact us at [email protected]. Thanks! |
✅ Deploy Preview for react-native ready!
To edit notification comments on pull requests, go to your Netlify site settings. |
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Meta Open Source project. Thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for sending this over 🙏
There are several changes to do + please give it a test to the code. It feels like the current code won't compile as it is, but please confirm that everything is working
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's great, thanks for doing a second pass. Left some nits but we're mostly good to go 👍
reactApplicationContext: ReactApplicationContext, | ||
packages: List<ReactPackage> | ||
) : ReactPackageTurboModuleManagerDelegate(reactApplicationContext, packages) { | ||
override protected external fun initHybrid(): HybridData? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Can we add new lines around this method?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
): MyApplicationTurboModuleManagerDelegate { | ||
return MyApplicationTurboModuleManagerDelegate(context, packages) | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
): MyApplicationTurboModuleManagerDelegate { | |
return MyApplicationTurboModuleManagerDelegate(context, packages) | |
} | |
) = MyApplicationTurboModuleManagerDelegate(context, packages) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added
} | ||
|
||
companion object { | ||
@Volatile private var sIsSoLibraryLoaded = false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Volatile private var sIsSoLibraryLoaded = false | |
@Volatile private var isSoLibraryLoaded = false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
```java | ||
public class MyApplication extends Application implements ReactApplication { | ||
|
||
private final ReactNativeHost mReactNativeHost = | ||
private final ReactNativeHost reactNativeHost = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry I was not precise before. Let's use mReactNativeHost
for Java and reactNativeHost
for Kotlin.
That convention was in place for Java only:
https://source.android.com/setup/contribute/code-style#follow-field-naming-conventions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
override fun getReactPackageTurboModuleManagerDelegateBuilder(): | ||
ReactPackageTurboModuleManagerDelegate.Builder? { | ||
return Builder() | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
override fun getReactPackageTurboModuleManagerDelegateBuilder(): | |
ReactPackageTurboModuleManagerDelegate.Builder? { | |
return Builder() | |
} | |
override fun getReactPackageTurboModuleManagerDelegateBuilder() = | |
ReactPackageTurboModuleManagerDelegate.Builder() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
```java | ||
public class MyApplication extends Application implements ReactApplication { | ||
|
||
private final ReactNativeHost mReactNativeHost = | ||
private final ReactNativeHost reactNativeHost = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as above
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
* Add a few Microsoft apps to the showcase (facebook#3203) * fix artsy icon * add microsoft office mobile * add outlook mobile * add teams * add xbox * remove placeholder link * Correct minor mistake in native-components-android.md (facebook#3210) * Update fast-refresh.md (facebook#3208) Co-authored-by: Bartosz Kaszubowski <[email protected]> * Fixed Artsy logo and infoLink of oculus in webiste/showcase (facebook#3199) * Wrap "Android SDK Build-Tools" with backticks (facebook#3206) * Update keyboardavoidingview.md (facebook#3202) * Update debugging.md (facebook#3209) * Add the blogpost for Hermes as the Default engine (facebook#3212) * Add the blogpost for Hermes as the Default engine * Update website/blog/2022-07-08-hermes-as-the-default.md Co-authored-by: Bartosz Kaszubowski <[email protected]> * Update website/blog/2022-07-08-hermes-as-the-default.md Co-authored-by: Bartosz Kaszubowski <[email protected]> Co-authored-by: Nicola Corti <[email protected]> Co-authored-by: Bartosz Kaszubowski <[email protected]> * Update iOS data in Hermes default blog post (facebook#3216) * Update the contributing section docs (facebook#3221) Co-authored-by: Nicola Corti <[email protected]> Co-authored-by: Bartosz Kaszubowski <[email protected]> * Bump terser from 5.12.1 to 5.14.2 (facebook#3219) Bumps [terser](https://github.com/terser/terser) from 5.12.1 to 5.14.2. - [Release notes](https://github.com/terser/terser/releases) - [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md) - [Commits](https://github.com/terser/terser/commits) --- updated-dependencies: - dependency-name: terser dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: add build tools to Table of Contents (facebook#3228) * Update build-speed.md (facebook#3223) Removed duplicated sentence from docs * Remove Uber Eats from showcase (facebook#3229) * docs: add two sections to the New Architecture (facebook#3230) * Note on connecting to React Native simulator. (facebook#3214) Co-authored-by: LeoTM <[email protected]> Co-authored-by: Nicola Corti <[email protected]> * Fix a couple of problems on the release runbook (facebook#3222) * Improving UX: replace videos and links with SnackPlayers, update examples (facebook#3231) * Fix extra whitespace on debugging.md (facebook#3233) * Add more info to Prerequisites for Libraries guide (facebook#3238) * Add spaces in the example * Add section about codegen types * Correct section title * Add information about requireNativeComponent * [Docs] iOS Simulator version & UDID (facebook#3225) Co-authored-by: Bartosz Kaszubowski <[email protected]> * Add retrospective as a copilot responsibility (facebook#3242) * update release related docs page (facebook#3240) * update crew composition and remove testers/supporters * add note about testing async * Update website/contributing/release-roles-responsibilites.md Co-authored-by: Riccardo <[email protected]> * Update website/contributing/release-roles-responsibilites.md Co-authored-by: Riccardo <[email protected]> * refactor note into a snipper * Update website/contributing/release-roles-responsibilites.md Co-authored-by: Marek Fořt <[email protected]> * yarnlock change? * clean up document based on feedback * more words at the start Co-authored-by: Riccardo <[email protected]> Co-authored-by: Marek Fořt <[email protected]> * Update image.md (facebook#2850) This is missing, but this is an important information. Imagine a view sized 100x150 and an image sized 200x300. The old description could be interpreted in a way, that the image doesn't scale at all! * Fix lint * chore: Specify return vs resolve (facebook#3236) When dealing with functions which return Promises, it's helpful to be clear about whether something _returns_ a value, or whether the returned Promise will _resolve to_ a value. * update Docusaurus and other dependencies (facebook#3218) * Add kotlin examples in new-architecture-app-modules-android.md (facebook#3241) * change links in main home (facebook#3244) * Refactoring The New Architecture Guide (facebook#3037) * [Do Not Merge] Refactoring The New Architecture (facebook#3029) * [Guide - The New Architecture] What Backward Compatibility Is (facebook#3038) * Guide to creating a New Architecture app from template (facebook#3056) * Start new template guide This is a first iteration. I want to get feedback on a few aspects, so starting from here as a baseline. * Update title * Use tabs for target OS Set up matching the style of "Getting Started", except I kept the headers inside the tabs for now as it makes for a useful right-hand TOC. * Capitalize New Architecture, simplify * Preliminary section for Hermes Add section for recommending enabling Hermes. Not sure of contents yet, and still have to test. * Reword to emphasize importance of Hermes usage * Show new arch in use * Add build speed article link * Add pro tip for pod install alias * Restructure, repeat less Favor linking to original setup guide instead of repeating content. * Note about Expo * Include command on uninstalling global CLI * How to learn more * Remove headers in tabs They don't work correctly with the righthand TOC. * Make header more clear * Use quote block less often There was way too much yellow. * Opt for instructions using XCode Because `xcodebuild clean` already failed me once when XCode GUI clean worked. * Fix lint issue * Improve wording * Use product name * Fix line wraps * Reword based on feedback * Note use of bundle install * Pod removal instructions Also standardize on using yarn scripts from template for commands, it's a little confusing to see the mix of `npx` and `yarn` once we start referring to `yarn pod-install` * Convert quotes to admonitions * Convert Note: to admonitions * Feedback: Change admonitions to caution * PR feedback * New Architecture landing page (facebook#3072) * First draft of landing page * Add migration and backwards compatibility links * lint fix * Restructure slightly, leaning more on context from Why a New Architecture * Don't need md in links * Suggested rewording * Rephrase pillar summaries * [Guide - The New Architecture] Why A New Architecture (facebook#3043) * [Guide - The New Architecture] Pillars (facebook#3046) * [Guide - The New Architecture] TurboModules as Native Modules (facebook#3039) * [Guide - The New Architecture] Fabric Components as Native Components (facebook#3040) * [FEAT][TNA] Fabric Component Guide (facebook#3132) * [Feat] Add intro for Fabric Components * feat: add guide to create a Fabric Component * Add page on codegen (facebook#3155) * [FEAT] TurboModules guide (facebook#3168) * [Feat] Add intro for Fabric Components * feat: add guide to create a Fabric Component * Beginning of guide/folder structure * WIP JS Spec * specification section * Configuration * native code intro * Must be named Spec * Best stab at iOS native code, but I don't know how to describe what's going on in the code very well. Extrapolated what I could. * Android instructions iOS isn't working for me. Builds, but can't load module. Writing up Android auto-linking next because the steps I tested did work. * Include linking instructions from RNNArch repo * Add example JavaScript * native modules link * Address quick feedback items * Remove, fix for rebased branch * fix TM parameter on Android * Revert to 'Codegen' casing * Revert folly version change 2021.07.22 is for current version on main * fix typo * getTurboModule explainer * Sentence edits - Fix acronym bolding - Change wording to "recommended" because "standard" has other connotations of possibly being required - Parentheses unnecessary, distracting * Remove TODO for now Getting inconsistent results here, not sure if this is wrong or not; removing TODO for now so it doesn't block anything * ABI rephrase, more in line with new Fabric guide wording * Explain shared C++ code more * feat: add guide to create a Fabric Component * feat: add guide to create a Fabric Component * package.json description * Lint fixes * fix: Move JS constants to reduce changes * fix: Remove newline * feat: add required step for Android Codegen * fix: use the proper links Co-authored-by: Riccardo Cipolleschi <[email protected]> * wip: migration guide review (facebook#3200) Co-authored-by: Lizzi Lindboe <[email protected]> * fix: Fix typo in the sidebar (facebook#3247) * Delete ubereats.png (facebook#3246) Redundant image data * Fixed pod install instructions (facebook#3243) * Fixed pod install instructions Yarn must be run prior to pod install, otherwise pod install fails with "Error: Cannot find module 'mkdirp'" * yarn start is not necessary anymore * Refer to rntester readme * Update android studio screenshot (facebook#3253) * Adding Android 13 Permissions into PermissionsAndroid (facebook#3254) * TextInput: Add cursorColor Android prop (facebook#3255) * Update Android Studio screenshot (Windows) (facebook#3257) * docs (releases): small refactoring and updating templates (facebook#3256) * Update documentation for keyboard events on Android (facebook#3259) facebook/react-native@1e48274 fixed keyboard events on Android 11+ when an activity has set `android:windowSoftInputMode` to `adjustNothing`. Update the documentation to reflect the change. * Update to Docusaurus stable release, fix alert admonition styling (facebook#3248) * Change asks to ask (grammar) (facebook#3262) * contributing: remove old references (facebook#3263) * adding accessibilityLabelledBy to documentation (facebook#3249) * Update references to Expo / Expo CLI (facebook#3267) * feat(images): Adding iOS Image Cache Limits (facebook#3258) Co-authored-by: Bartosz Kaszubowski <[email protected]> * feat: update instructions around automatic linking (facebook#3269) * Follow up from facebook#3267 with minor fixes (facebook#3270) * nit: fix typo in new architecture docs (facebook#3261) * fix typo * fix: typescript example * fix: lint * make text optional * fix(images): move app-transport-security reference (facebook#3271) * fix(images): move app-transport-security reference * feat(images): updating link references * fix(network): change network app transport security reference * fix(docs): updating versioned docs link reference * Showcase page refresh (facebook#3235) Co-authored-by: Lorenzo Sciandra <[email protected]> * fix: moving the Using forwardRef and Using a getter to a lower hierarchy level (facebook#3282) * Upgrade toast Android example to camelCase (facebook#3283) * Fix link in Introduction (facebook#3290) * Fix link in Introduction * Use new page title (potentially renaming that is a separate discussion) * fix: push steps in a lower hierarchy level (facebook#3296) * fix type in the new architecture pillars section (facebook#3297) * cut 0.70 docs (take 2) (facebook#3295) * Blog post for 0.70 RN release (facebook#3298) * Blog post for 0.70 RN release * Fixes and TOC * Update my GH handle * Update my GH handle * Apply suggestions from code review Co-authored-by: Riccardo <[email protected]> * Update @Titozzz Twitter handle * Add example for javaPackageName * Update commits count * Minor fixes to the wording Co-authored-by: Dmytro Rykun <[email protected]> Co-authored-by: Riccardo <[email protected]> Co-authored-by: Lorenzo Sciandra <[email protected]> Co-authored-by: Marcin Kozubek <[email protected]> Co-authored-by: Malachi Gruenhagen <[email protected]> Co-authored-by: Bartosz Kaszubowski <[email protected]> Co-authored-by: Pushkar Yadav <[email protected]> Co-authored-by: Muhammad Ovi (Owais) <[email protected]> Co-authored-by: rj-jones <[email protected]> Co-authored-by: fbmal7 <[email protected]> Co-authored-by: Nicola Corti <[email protected]> Co-authored-by: neildhar <[email protected]> Co-authored-by: Lorenzo Sciandra <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Yvan Zhu <[email protected]> Co-authored-by: Mileta Dulović <[email protected]> Co-authored-by: Ricky <[email protected]> Co-authored-by: Andrew <[email protected]> Co-authored-by: LeoTM <[email protected]> Co-authored-by: Nicola Corti <[email protected]> Co-authored-by: Oskar Kwaśniewski <[email protected]> Co-authored-by: Furkan Arabacı <[email protected]> Co-authored-by: Marek Fořt <[email protected]> Co-authored-by: Riccardo <[email protected]> Co-authored-by: Władysław Raczek <[email protected]> Co-authored-by: Luna Wei <[email protected]> Co-authored-by: Evan Charlton <[email protected]> Co-authored-by: Tushar Varshney <[email protected]> Co-authored-by: Riccardo <[email protected]> Co-authored-by: Lizzi Lindboe <[email protected]> Co-authored-by: Jessej Samuel <[email protected]> Co-authored-by: Seph Soliman <[email protected]> Co-authored-by: Kimiyasu Morikawa <[email protected]> Co-authored-by: Agastya Darma <[email protected]> Co-authored-by: Nick Gerleman <[email protected]> Co-authored-by: denis-tsoi-mox <[email protected]> Co-authored-by: fabriziobertoglio1987 <[email protected]> Co-authored-by: Brent Vatne <[email protected]> Co-authored-by: Michał Pierzchała <[email protected]> Co-authored-by: nishan (o^▽^o) <[email protected]> Co-authored-by: Lorenzo Sciandra <[email protected]> Co-authored-by: Lucas Alves <[email protected]> Co-authored-by: dan <[email protected]> Co-authored-by: Dmytro Rykun <[email protected]>
No description provided.