Skip to content

Inaccessible native source code without modulemap #5187

Closed
@mbektchiev

Description

@mbektchiev

Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):

  • CLI: 6.3.0

Describe the bug
A user reported the following bug:

When building for iOS, we are trying to invoke a class named MiSnapSDKViewController, which inherits from UIViewController.

This class is defined in /src/platforms/ios/src/MiSnapSDKViewController.m

We are able to build, without error (as long as we do not attempt to access this class), as well as able to generate typings without error.

TNS_TYPESCRIPT_DECLARATIONS_PATH="$(pwd)/typings" tns build ios
all of the frameworks are found in the /typings but NOTHING from the /src/platforms/ios/src/ folder.
Also, the class does not appear accessible at run time. But adding the same files to the /demo/App_Resources produces an Xcode error of duplicate classes.

How do we make the MiSnapSDKViewController accessible from Nativescript?

It turned out that they didn't have a module.modulemap file which is necessary for the native code to be picked up by metadata generator and to become callable from JavaScript.

CLI should detect such cases and raise a warning in order to make discovering them much easier and earlier.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions