@@ -395,6 +395,9 @@ def make_package(args):
395395 if not args .activity_launch_mode :
396396 args .activity_launch_mode = ''
397397
398+ # if not args.service_class_name:
399+ # args.service_class_name = 'org.kivy.android.PythonService'
400+
398401 if args .extra_source_dirs :
399402 esd = []
400403 for spec in args .extra_source_dirs :
@@ -418,6 +421,7 @@ def make_package(args):
418421 service = True
419422
420423 service_names = []
424+ base_service_class = args .service_class_name .split ('.' )[- 1 ]
421425 for sid , spec in enumerate (args .services ):
422426 spec = spec .split (':' )
423427 name = spec [0 ]
@@ -442,6 +446,7 @@ def make_package(args):
442446 foreground = foreground ,
443447 sticky = sticky ,
444448 service_id = sid + 1 ,
449+ base_service_class = base_service_class ,
445450 )
446451
447452 # Find the SDK directory and target API
@@ -478,6 +483,7 @@ def make_package(args):
478483 args .backup_rules = split (args .backup_rules )[1 ][:- 4 ]
479484
480485 # Render out android manifest:
486+ print ("Rendering AndroidManifest.xml..." , args )
481487 manifest_path = "src/main/AndroidManifest.xml"
482488 render_args = {
483489 "args" : args ,
@@ -778,12 +784,22 @@ def parse_args_and_make_package(args=None):
778784 ap .add_argument ('--manifest-placeholders' , dest = 'manifest_placeholders' ,
779785 default = '[:]' , help = ('Inject build variables into the manifest '
780786 'via the manifestPlaceholders property' ))
787+ ap .add_argument ('--network-security-config' , dest = 'network_security_config' , default = '' ,
788+ help = 'Add a Network Security Configuration file path to AndroidManifest.xml' )
789+ ap .add_argument ('--uses-cleartext-traffic' , dest = 'uses_cleartext_traffic' , default = '' ,
790+ help = 'Indicate that app intends to use cleartext network traffic in AndroidManifest.xml' )
791+ ap .add_argument ('--service-class-name' , dest = 'service_class_name' , default = 'org.kivy.android.PythonService' ,
792+ help = 'Use that parameter if you need to implement your own PythonServive Java class' )
793+ ap .add_argument ('--activity-class-name' , dest = 'activity_class_name' , default = 'org.kivy.android.PythonActivity' ,
794+ help = 'The full java class name of the main activity' )
781795
782796 # Put together arguments, and add those from .p4a config file:
783797 if args is None :
784798 args = sys .argv [1 :]
799+ print ('args was empty, set from sys.argv' )
785800
786801 def _read_configuration ():
802+ print ("Looking for p4a configuration file in %r" % os .path .abspath ('.p4a' ))
787803 if not exists (".p4a" ):
788804 return
789805 print ("Reading .p4a configuration" )
@@ -793,10 +809,12 @@ def _read_configuration():
793809 for line in lines if not line .startswith ("#" )]
794810 for line in lines :
795811 for arg in line :
812+ print ('Added option: %r' % arg )
796813 args .append (arg )
797814 _read_configuration ()
798815
799816 args = ap .parse_args (args )
817+
800818 args .ignore_path = []
801819
802820 if args .name and args .name [0 ] == '"' and args .name [- 1 ] == '"' :
0 commit comments