⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 installer.h

📁 java 1.1 gemini 08_16
💻 H
字号:
#ifndef __INSTALLER_H
#define __INSTALLER_H

/*************************************************************************
 * Include Header Files
 *************************************************************************/
#include "j2me_custom.h"

/*************************************************************************
 * Global Constant Definition
 *************************************************************************/
typedef enum {
	AMS_OP_INSTALL,
	AMS_OP_INSTALL_JAR,
	AMS_OP_UPDATE,
	AMS_OP_REMOVE,
	AMS_OP_INVALID
} ams_op_enum;

#define INSTALLER_DEBUG
#define INSTALLER_DETAILED_DEBUG 						(0)
#define __J2ME_SUPPORT_INDEX_STORAGE_NAME__				

#ifdef __J2ME_SUPPORT_INDEX_STORAGE_NAME__
#define __SUPPORT_MIDLETSUITE_HASH_VALUE__
#endif
#define CLDC_VERSION 									"CLDC-1.1"
#define MIDP_VERSION 									"MIDP-2.0"

/* IVI Jack 20061228 */
#define Eureka_Domain_Name								"EGE_DOMAIN"

/* Number of fields in native_permissions table */
#define NUMBER_OF_PERMISSIONS 							(29)
extern char* native_permissions[];

  
/*************************************************************************
 * Midlet Attribute names
 *************************************************************************/
#define JAR_MANIFEST									"META-INF/MANIFEST.MF"
#define DATA_SIZE_PROP									"MIDlet-Data-Size"
#define JAR_SIZE_PROP									"MIDlet-Jar-Size"
#define JAR_URL_PROP									"MIDlet-Jar-URL"
#define SUITE_NAME_PROP									"MIDlet-Name"
#define VENDOR_PROP										"MIDlet-Vendor"
#define VERSION_PROP									"MIDlet-Version"
#define DESC_PROP										"MIDlet-Description"
#define NOTIFY_PROP										"MIDlet-Install-Notify"
#define DELETE_PROP										"MIDlet-Delete-Notify"
#define CONFIGURATION_PROP 								"MicroEdition-Configuration"
#define PROFILE_PROP									"MicroEdition-Profile"
#define PERMISSIONS_PROP								"MIDlet-Permissions"
#define PERMISSIONS_OPT_PROP							"MIDlet-Permissions-Opt"


/*************************************************************************
 * Sub-filenames of install midlets
 *************************************************************************/
#define CA_FILENAME										"CA.utf"
#define JAD_URL_FILENAME 								"jadUrl.utf"
#define JAR_URL_FILENAME 								"jarUrl.utf"
#define JAD_ENCODING_FILENAME 							"jadEncoding.utf"
#define SETTINGS_FILENAME 								"settings.bin"
#define JAR_FILENAME 									"suite.jar"
#define JAD_FILENAME 									"suite.jad"
#define DELETE_NOTIFY_FILENAME							"_delete_notify.utf"

#define TMP_FILENAME 									"_temp.jar" 
#define MANIFEST_FILENAME 								"suite.mf" 
#define SUITE_LIST_FILENAME 							"suites.utf" 
#ifdef __SUPPORT_MIDLETSUITE_HASH_VALUE__
#define SUITE_HASH_FILENAME							"suites.hash"
#define SUITE_HASH_BACKUP_FILENAME					"suites.hashtmp"
#endif
#define SUITE_LIST_BACKUP_NAME 							"suites.utftmp" 


/*************************************************************************
 * Installing Result Code and Message
 *************************************************************************/
#define SUCCESS_MSG 									"900 Success" 
#define INSUFFICIENT_MEM_MSG 							"901 Insufficient Memory" 
#define USER_CANCELLED_MSG 								"902 User Cancelled" 
#define JAR_SIZE_MISMATCH_MSG 							"904 JAR Size Mismatch" 
#define ATTRIBUTE_MISMATCH_MSG 							"905 Attribute Mismatch" 
#define INVALID_JAD_MSG 								"906 Invalid Descriptor" 
#define INVALID_JAR_MSG 								"907 Invalid JAR" 
#define INCOMPATIBLE_MSG 								"908 Incompatible Configuration or Profile" 
#define AUTHENTICATION_FAILURE_MSG 						"909 Application authentication failure" 
#define AUTHORIZATION_FAILURE_MSG 						"910 Application authorization failure" 
#define PUSH_REG_FAILURE_MSG 							"911 Push registration failure" 
#define DELETE_NOTIFICATION_MSG 						"912 Deletion notification" 


#define MAX_STORAGE_SIZE 								(256 - 10)     

/* IVI Jack adds to distinguish error */
#define INSTALLER_INVALIDJADEXCEPTION					(1)
#define INSTALLER_ILLEGALARGUMENTEXCEPTION				(2)
#define INSTALLER_OTEREXCEPTION							(3)



/*************************************************************************
 * Main Structure to store installing information
 *************************************************************************/
typedef struct state_struct
{
	int nextStep;      
	/* jboolean stopInstallation; */

	int exception; 
	unsigned short* exception_extra_data;
	char *error_reason;
	unsigned short* jadUrl;
	jboolean force;
	jboolean removeRMS;
	unsigned char* jad;   
	int jad_len;
	unsigned short* jadEncoding;
	/* unsigned short* username; */
	/* unsigned short* password; */
	/* unsigned short* proxyUsername; */
	/* unsigned short* proxyPassword; */
	unsigned short* suiteName;
	unsigned short* vendor;
	unsigned short* version;
	/* unsigned short* description; */
	unsigned short* storageName;
	unsigned short* ca;
	int expectedJarSize;
	unsigned short* jarUrl;
	unsigned char pushInterruptSetting;
	jboolean trusted;
	unsigned char* manifest;
	int manifest_len;
	char* tempFilename;
	char* storageRoot;
	jboolean isPreviousVersion;
	unsigned short* previousUrl;
	unsigned short* previousJadUrl;
	unsigned short* previousJarUrl;
	int previousTrusted;
	int NumberOfMIDlets;        
	unsigned short* previousCA;         

	/*IVI Jack add to reocord the total size of generated files*/
	int total_file_size;
	kal_bool path_need_recovery;

} install_state;

/*************************************************************************
 * External Declaration
 *************************************************************************/
extern int getAndCleanMSG(int *);
extern void getAndCleanMSGWithPost(int *);
extern int postInstallMsgBackToProvider(char *);
extern int install_main(game_type_enum game_type, ams_op_enum op_type, char* work_path, char *argv);

kal_bool is_EGE_game(void);
#endif /* __INSTALLER_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -