2013-01-17 8 views
9

SZENARIOWelches sind die unnötigen Phonegap-Plugins, die in der App entfernt werden sollen?

ich ein kleines Android Phonegap/Cordova 2.3.0 Anwendung haben, schaute ich in /res/xml/config.xml Datei und fand, dass so viele Plugins gibt.

Es ist eine sehr kleine App und ich denke, alles, was ich benutze, ist Benachrichtigungen und ChildBrowser-Plugin.

FRAGE: Ich möchte wissen, ist es sicher, alle anderen Plugin-Einträge zu entfernen. Wenn ja, dann:

1) Entferne sie nur aus /res/xml/config.xml genug?

2) Welche Plugins sind obligatorisch (ohne welche BASIC App wird nicht funktionieren)? z. B. die erste ("App" Plugin), ich denke, es ist erforderlich?

3) Werden mir die Plugins helfen, die Geschwindigkeit meiner App zu erhöhen? Oder kleinere Installationsgröße oder .apk Größe.

Einzelheiten Hier ist der Teil meiner XML-Datei:

<plugins> 
    <plugin name="App" value="org.apache.cordova.App"/> 
    <plugin name="Geolocation" value="org.apache.cordova.GeoBroker"/> 
    <plugin name="Device" value="org.apache.cordova.Device"/> 
    <plugin name="Accelerometer" value="org.apache.cordova.AccelListener"/> 
    <plugin name="Compass" value="org.apache.cordova.CompassListener"/> 
    <plugin name="Media" value="org.apache.cordova.AudioHandler"/> 
    <plugin name="Camera" value="org.apache.cordova.CameraLauncher"/> 
    <plugin name="Contacts" value="org.apache.cordova.ContactManager"/> 
    <plugin name="File" value="org.apache.cordova.FileUtils"/> 
    <plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager"/> 
    <plugin name="Notification" value="org.apache.cordova.Notification"/> 
    <plugin name="Storage" value="org.apache.cordova.Storage"/> 
    <plugin name="Temperature" value="org.apache.cordova.TempListener"/> 
    <plugin name="FileTransfer" value="org.apache.cordova.FileTransfer"/> 
    <plugin name="Capture" value="org.apache.cordova.Capture"/> 
    <plugin name="Battery" value="org.apache.cordova.BatteryListener"/> 
    <plugin name="SplashScreen" value="org.apache.cordova.SplashScreen"/> 
    <plugin name="Echo" value="org.apache.cordova.Echo" /> 
    <plugin name="StatusBarNotification" value="com.phonegap.plugins.statusBarNotification.StatusBarNotification"/> 
    <plugin name="InAppBrowser" value="org.apache.cordova.InAppBrowser"/> 
    <plugin name="ChildBrowser" value="com.phonegap.plugins.childBrowser.ChildBrowser"/> 
    <plugin name="PushNotification" value="com.pushwoosh.plugin.pushnotifications.PushNotifications" onload="true"> 
</plugin> 

P. S .: Ich ganzen Internet gesucht, keine nützlichen Informationen überall bekam für Android, so zu fragen.

+2

Gefunden, ist es nicht sinnvoll, Kern-Plugins zu entfernen: https://groups.google.com/forum/?fromgroups=#!topic/phonegap/VBsWphi8ydA – shamittomar

Antwort

13

In Antwort auf Ihre Fragen:

1), um sie von config.xml entfernen, werden sie nicht aus der App entfernen wird es einfach unmöglich machen, dass die Funktionalität zu nennen.

2) Sie sollten niemals App, Gerät oder NetworkStatus entfernen. Ohne sie würden Sie kein "deviceready" Ereignis erhalten.

3) Es wird Ihre App nicht schneller machen. Diese Klassen sind Lazy Load, d. H. Nur instanziiert, wenn sie zum ersten Mal verwendet werden. Dadurch wird Ihre .apk nicht kleiner, da sich diese Klassen in der cordova.jar-Datei befinden, die in Ihrer App enthalten ist.

+0

Betreffen diese Plugins nicht "Berechtigungen" der App ? Das Geolocation-Plugin erzwingt beispielsweise, dass die Android-App diese Berechtigung bei der Installation benötigt. – Alex

Verwandte Themen