Perché l'app IOS dei prodotti IOS PhoneGap (cloud) mostra sempre l'immagine di spruzzi predefinita in iOS?
-
21-12-2019 - |
Domanda
Ho creato un'app Platform Cross (da confezionare per iOS, Android e Windows Phone) in Sencha Touch 2.3.1-GPL e confezionato per iOS tramite Phonegap.com ( Phonegap Cloud) . L'app e l'icona dell'app funzionano bene in tutti i dispositivi IOS ma quando l'app viene avviata questa pagina predefinita PhoneGap Splash Screen è mostrato:
Non riesco a trovare alcuna opzione nell'interfaccia utente PhoneGap (Cloud) per selezionare una schermata Splash per la mia app:
Ora le mie domande sono:
- .
-
Dove o come posso definire una schermata di spruzzi personalizzata per la mia app?
-
La schermata Splash deve essere specificata nel codice dell'app Sencha Touch? o Deve essere aggiunto da qualche parte in PhoneGap (Cloud) UI?
Ecco il mio codice Sencha Touch App.JS in Non ho specificato alcuna icona o spruzzata perché secondo la mia comprensione icone e schermi splash devono essere aggiunti in PhoneGap (cloud):
Ext.Loader.setConfig({disableCaching: false});
Ext.application({
name: 'RedmineApp',
views: ['Issue', 'ProjectIssues', 'RedmineIssuesNavigator', 'RedmineTabPanel', 'RedmineChart', 'RedmineChartsNavigator', 'UserInputView', 'RedmineIDChart', 'RedminePriorityChart', 'RedmineTrackerChart', 'RedmineStatusChart', 'IssueHistory'],
models: ['RedmineConfig', 'Issue', 'IssueCategory', 'IssuePriority', 'Project', 'ProjectMembership', 'Tracker', 'User', 'IssueStatus'],
stores: ['RedmineConfigs', 'Projects', 'IssuePriorities', 'IssueStatuses'],
controllers: ['Projects', 'Issues', 'ChartsMenu', 'UserInputFields'],
launch: function() {
// Destroy the #appLoadingIndicator element
Ext.fly('appLoadingIndicator').destroy();
// Initialize the main view
Ext.Viewport.add(Ext.create('RedmineApp.view.RedmineTabPanel'));
},
projectIdentifier: null,
redmine_url: '',
redmine_access_key: '',
loadRedmineConfig: function() {
var configStore = Ext.getStore('RedmineConfigs');
configStore.load();
var redmine_config = configStore.getAt(0);
if (redmine_config !== undefined) {
this.redmine_url = redmine_config.get('redmine_url');
this.redmine_access_key = redmine_config.get('redmine_access_key');
} else {
this.redmine_url = 'http://redmine.arkhitech.com';
}
},
saveRedmineConfig: function() {
var newRecord = new RedmineApp.model.RedmineConfig({
redmine_url: this.redmine_url,
redmine_access_key: this.redmine_access_key
});
var configStore = Ext.getStore('RedmineConfigs');
configStore.load();
configStore.removeAll();
configStore.add(newRecord);
configStore.sync();
},
setRedmineUrl: function(redmine_url) {
this.redmine_url = redmine_url.replace(/\/$/, '');
this.saveRedmineConfig();
},
getRedmineUrl: function() {
if (this.redmine_url === '') {
this.loadRedmineConfig();
}
return this.redmine_url;
},
redmine_base_path: '',
setRedmineBasePath: function(redmine_base_path) {
this.redmine_base_path = redmine_base_path;
},
getRedmineBasePath: function() {
return this.redmine_base_path;
},
setRedmineAccessKey: function(redmine_access_key) {
this.redmine_access_key = redmine_access_key;
this.saveRedmineConfig();
},
getRedmineAccessKey: function() {
if (this.redmine_access_key === '') {
this.loadRedmineConfig();
}
return this.redmine_access_key;
},
setCurrentProjectIdentifier: function(projectIdentifier) {
this.projectIdentifier = projectIdentifier;
},
getCurrentProjectIdentifier: function() {
return this.projectIdentifier;
},
getCurrentProjectTrackers: function() {
return this.projectTrackersStore;
},
setCurrentProjectTrackers: function(projectTrackersStore) {
this.projectTrackersStore = projectTrackersStore;
},
getCurrentIssuesStore: function() {
return this.createIssuesStore(this.getCurrentProjectIdentifier());
},
getCurrentProjectIssueCategories: function() {
return this.issueCategoriesStore;
},
setCurrentProjectIssueCategories: function(issueCategoriesStore) {
this.issueCategoriesStore = issueCategoriesStore;
},
loadProjectSettings: function(project_id) {
var Project = Ext.ModelManager.getModel('RedmineApp.model.Project');
Project.load(project_id, {
success: function(project) {
RedmineApp.app.setCurrentProjectTrackers(project.trackersStore);
RedmineApp.app.setCurrentProjectIssueCategories(project.issueCategoriesStore);
}
});
},
createIssuesStore: function(projectIdentifier) {
var newStore = Ext.create('Ext.data.Store', {
model: 'RedmineApp.model.Issue',
autoLoad: true,
proxy: {
type: 'dynamicrest',
resourcePath: '/projects/' + projectIdentifier + '/issues',
format: 'json',
reader: {
rootProperty: 'issues',
type: 'json'
}
},
grouper: {
groupFn: function(record) {
return record.get('updated_on');
},
sortProperty: 'updated_on',
direction: 'DESC'
}
});
return newStore;
}
});
. Soluzione
lo ha risolto aggiungendo questo file config.xml nella radice del codice APP SENCHA TOUCH:
<?xml version="1.0" encoding="UTF-8" ?>
<widget xmlns = "http://www.w3.org/ns/widgets"
xmlns:gap = "http://phonegap.com/ns/1.0"
id = "com.phonegap.example"
versionCode = "10"
version = "1.0.0" >
<!-- versionCode is optional and Android only -->
<name>Your app name</name>
<description>
Your app description
</description>
<author href="http://www.author.com" email="info@email.com">
Author Name
</author>
<!-- iPhone and iPod touch -->
<gap:splash src="splash/ios/Default.png" gap:platform="ios" width="320" height="480" />
<gap:splash src="splash/ios/Default@2x.png" gap:platform="ios" width="640" height="960" />
<!-- iPhone 5 / iPod Touch (5th Generation) -->
<gap:splash src="splash/ios/Default-568h@2x.png" gap:platform="ios" width="640" height="1136" />
<!-- iPad -->
<gap:splash src="splash/ios/Default-Portrait.png" gap:platform="ios" width="768" height="1024" />
<gap:splash src="splash/ios/Default-Landscape.png" gap:platform="ios" width="1024" height="768" />
<!-- Retina iPad -->
<gap:splash src="splash/ios/Default-Portrait@2x.png" gap:platform="ios" width="1536" height="2048" />
<gap:splash src="splash/ios/Default-Landscape@2x.png" gap:platform="ios" width="2048" height="1536" />
</widget>
.
Dopo aver aggiunto questo file, PhoneGap (Cloud) inizia a raccogliere il nome, la schermata Descrizione e Splash da questo file Config.xml invece di utilizzare i propri valori predefiniti.