My PhoneGap app does not work if I link to index.js


#1

When I create a new PhoneGap project, and include it with Framework7, it does not work, but if I remove index.js linking it works.
Generally if app.initialize(); executed, my app won’t work in PhoneGap mobile in connection with PhoneGap Desktop.
Why? What should I do?


#2

We have no idea what is in your index.js and in the rest of the app. More information required, what do you use, what app parameters, routes, console errors, etc.?


#3

When you create a “New Project” in PhoneGap Desktop, it automatically creates and links to index.js
Users don’t create this file, it is created by default by PhoneGap.

And it contains this code

/*

  • Licensed to the Apache Software Foundation (ASF) under one

  • or more contributor license agreements. See the NOTICE file

  • distributed with this work for additional information

  • regarding copyright ownership. The ASF licenses this file

  • to you under the Apache License, Version 2.0 (the

  • “License”); you may not use this file except in compliance

  • with the License. You may obtain a copy of the License at

  • http://www.apache.org/licenses/LICENSE-2.0

  • Unless required by applicable law or agreed to in writing,

  • software distributed under the License is distributed on an

  • “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

  • KIND, either express or implied. See the License for the

  • specific language governing permissions and limitations

  • under the License.
    */
    var app = {
    // Application Constructor
    initialize: function() {
    this.bindEvents();
    },
    // Bind Event Listeners
    //
    // Bind any events that are required on startup. Common events are:
    // ‘load’, ‘deviceready’, ‘offline’, and ‘online’.
    bindEvents: function() {
    document.addEventListener(‘deviceready’, this.onDeviceReady, false);
    },
    // deviceready Event Handler
    //
    // The scope of ‘this’ is the event. In order to call the ‘receivedEvent’
    // function, we must explicitly call ‘app.receivedEvent(…);’
    onDeviceReady: function() {
    app.receivedEvent(‘deviceready’);
    },
    // Update DOM on a Received Event
    receivedEvent: function(id) {
    var parentElement = document.getElementById(id);
    var listeningElement = parentElement.querySelector(’.listening’);
    var receivedElement = parentElement.querySelector(’.received’);

     listeningElement.setAttribute('style', 'display:none;');
     receivedElement.setAttribute('style', 'display:block;');
    
     console.log('Received Event: ' + id);
    

    }
    };


#4

do you attach index.js in your index.html? check the order with framework7.js, cause in my case the order can make differences.


#5

Yes, I do attach index.js in my index.html, because that what PhoneGap put in index.js while creating a new project for me (either blank project or hello world project).

What do u mean by “check order with f7.js…”?
cordova.js is on the top
then comes index.js
then comes script app.initialize
then comes f7 js


#6

in my case when the route goes wrong, i rearrange the order put f7 at the top,then cordova, and it seems everything runs well.