androidPluginKtTemplate function

String androidPluginKtTemplate(
  1. String org,
  2. String pluginName,
  3. String className,
  4. String moduleName,
)

Implementation

String androidPluginKtTemplate(
  String org,
  String pluginName,
  String className,
  String moduleName,
) =>
    '''
package $org.$pluginName

import io.flutter.embedding.engine.plugins.FlutterPlugin
import io.flutter.embedding.engine.plugins.activity.ActivityAware
import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding
import nitro.$moduleName.${className}JniBridge

class ${className}Plugin : FlutterPlugin, ActivityAware {

    companion object {
        init { System.loadLibrary("$pluginName") }
    }

    override fun onAttachedToEngine(binding: FlutterPlugin.FlutterPluginBinding) {
        ${className}JniBridge.register(${className}Impl(), binding.applicationContext)
    }

    override fun onDetachedFromEngine(binding: FlutterPlugin.FlutterPluginBinding) {
        ${className}JniBridge.onDetached()
    }

    override fun onAttachedToActivity(binding: ActivityPluginBinding) {
        ${className}JniBridge.onActivityAttached(binding.activity)
    }

    override fun onDetachedFromActivityForConfigChanges() {
        ${className}JniBridge.onActivityDetached()
    }

    override fun onReattachedToActivityForConfigChanges(binding: ActivityPluginBinding) {
        ${className}JniBridge.onActivityAttached(binding.activity)
    }

    override fun onDetachedFromActivity() {
        ${className}JniBridge.onActivityDetached()
    }
}''';