Giter Site home page Giter Site logo

android-metadata-generator's Introduction

NativeScript

Automated Android Tests Passing Automated iOS Tests Passing License NPM Version Discord FOSSA Status website https://good-labs.github.io/greater-good-affirmation/assets/images/badge.svg support

NativeScript empowers you to access native APIs from JavaScript directly. Currently iOS, Android, and visionOS runtimes are provided for rich mobile development across a variety of diverse use cases.

FOSSA Status

Contribute

  1. Setup your local development environment

  2. Clone to contribute:

$ git clone https://github.com/NativeScript/NativeScript.git
$ cd NativeScript

# setup workspace for development
$ npm run setup

# list all available commands to run
$ npm start

We love you and your pull requests 🤗. Please follow our contributing guide and see our code of governance to become as involved as you want to be.

@nativescript/*

Quick Links

Other source repos

Outside the source centralized in this repo, NativeScript consists of a few other source repos. Here are the major ones:

  • iOS and visionOS Runtime Empowers JavaScript code to be executed on iOS and visionOS devices written in a mix of C++, Objective-C, and Swift.
  • Android Runtime Empowers JavaScript code to be executed on Android devices written in a mix of C++, Java and Kotlin.
  • CLI Command-line interface empowering you to create, build, and run apps using NativeScript.
  • Docs Documentation available at http://docs.nativescript.org/ written in Markdown.
  • Plugins Various TSC managed plugins. Also a good reference is the plugin marketplace with several additional plugins.
  • Firebase Modular Firebase 🔥 implementation for supported platforms.
  • ML Kit Google's ML Kit SDKs for supported platforms.
  • Payments In-App Purchase, Subscriptions, Google Pay and Apple Pay.
  • Artwork Want to use our logo or colors? Feel free to use any of our ready-to-use media material.

Copyright notice

Copyright OpenJS Foundation and NativeScript contributors. All rights reserved. The OpenJS Foundation has registered trademarks and uses trademarks. For a list of trademarks of the OpenJS Foundation, please see our Trademark Policy and Trademark List. Trademarks and logos not indicated on the list of OpenJS Foundation trademarks are trademarks™ or registered® trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.

The OpenJS Foundation | Terms of Use | Privacy Policy | OpenJS Foundation Bylaws | Trademark Policy | Trademark List | Cookie Policy

Made with ❤️

android-metadata-generator's People

Contributors

atanasovg avatar blagoev avatar erjangavalji avatar ivanbuhov avatar plamen5kov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

android-metadata-generator's Issues

Generate metadata for protected interfaces

Copy from NativeScript/android#236

The following constant:

android.provider.ContactsContract.SyncColumns.ACCOUNT_TYPE

has no metadata generated for it because the declaring interface is protected. We should enable this scenario and process protected interface in our metadata-generator tool.

Additionally, the better approach would be to attach all such constants to the implementing type directly, much like this is done in Android. Otherwise code that is available in the internet will not work with our Runtime and we will have to explain this explicitly.

Generate metadata for non-public base classes

In Java it is possible to call public method of non-public base class. Here is an example:

class Base {
   public void method1() {
   }
}
public class Derived extends Base {
   public void method2() {
   }
}
...
Derived d = new Derived();
d.method1();
d.method2();

Currently the metadata generator doesn't generate metadata for Base.method1.

Metadata generator should support multiple paths to jars, and generate metadata for them.

Problem:
Currently the metadata-generator can only use path to directory with jars to generate metadata.
This creates the need for all necessary jars to be copied in one directory (which can create additional problems if only some of the jars need to be included or some jars should be deleted at build time).

Suggestion:
A more elegant solution will be for the metadata-generator to accept as input parameters, paths to all jars.

Nativescript Error: java.lang.VerifyError on android plugin

I am creating a plugin for android from SKMaps library http://developer.skobbler.com/getting-started/android, but only get the following error in all classes during tns build android:

isMetadataGenerationNecessary
:buildMetadata

Skip com.skobbler.ngx.SKCategories$SKPOICategory
Error: java.lang.VerifyError: Expecting a stackmap frame at branch target 36
Exception Details:
Location:
com/skobbler/ngx/SKCategories$SKPOICategory.forInt(I)Lcom/skobbler/ngx/SKCategories$SKPOICategory;@11: if_icmpge
Reason:
Expected stackmap frame at this location.
Bytecode:
0x0000000: b802 2f59 4cbe 3d03 3e1d 1ca2 0019 2b1d
0x0000010: 3259 3a04 b402 2b1a a000 0619 04b0 8403
0x0000020: 01a7 ffe8 b202 21b0

This is my plugin include.grade

screen shot 2015-12-21 at 7 24 37 pm

license?

Hi, what license is this project under? I don't see any license file in the repo.

Bash dependency is not Windows friendly

The generate-metadata script is bash based which prevents it to run on Windows environments that don't have bash.

It should be possible to convert this simple script to a node based script.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.