如何在Android模拟器上运行Sencha应用程序

问题描述 投票:0回答:3

我已在命令行中使用以下Sencha命令创建了一个应用程序,如下所示

sencha app create mysenchaApp /path/to/www/mysenchaApp

这给了我如下

Code:

[INFO] Created file C:\path\to\www\mysenchaapp\.senchasdk
[INFO] Created file C:\path\to\www\mysenchaapp\index.html
[INFO] Created file C:\path\to\www\mysenchaapp\app.js
[INFO] Created file C:\path\to\www\mysenchaapp\packager.json
[INFO] Created file C:\path\to\www\mysenchaapp\app.json
[INFO] Created file C:\path\to\www\mysenchaapp\app\view\Main.js
[INFO] Copied dir: C:\path\to\www\mysenchaapp\sdk\src
[INFO] Copied dir: C:\path\to\www\mysenchaapp\sdk\resources
[INFO] Copied dir: C:\path\to\www\mysenchaapp\resources\icons
[INFO] Copied dir: C:\path\to\www\mysenchaapp\resources\loading
[INFO] Copied dir: C:\path\to\www\mysenchaapp\sdk\command
[INFO] Copied file: C:\path\to\www\mysenchaapp\sdk\microloader\development.js
[INFO] Copied file: C:\path\to\www\mysenchaapp\sdk\microloader\testing.js
[INFO] Copied file: C:\path\to\www\mysenchaapp\sdk\microloader\production.js
[INFO] Copied file: C:\path\to\www\mysenchaapp\sdk\version.txt
[INFO] Copied file: C:\path\to\www\mysenchaapp\sdk\sencha-touch.js
[INFO] Copied file: C:\path\to\www\mysenchaapp\sdk\sencha-touch-all.js
[INFO] Created file C:\path\to\www\mysenchaapp\resources\sass\app.scss
[INFO] Created file C:\path\to\www\mysenchaapp\resources\sass\config.rb
[INFO] Copied file: C:\path\to\www\mysenchaapp\resources\css\app.css

然后我如下修改了packager.json文件,使其在模拟器上运行:

Code:

/**
     * @cfg {String} applicationName
     * @required
     * This is the name of your application, which is displayed on the  device when the app is installed. On IOS, this should match
     * the name of your application in the Apple Provisioning Portal.
     */
    "applicationName":"My Application",

    /**
     * @cfg {String} applicationId
     * This is the name namespace for your application. On IOS, this  should match the name of your application in the Apple Provisioning  Portal.
     */
    "applicationId":"com.mycompany.myAppID",

    /**
     * @cfg {String} versionString
     * @required
     * This is the version of your application.
     */
    "versionString":"1.0",

    /**
     * @cfg {String} iconName
     * This is file name of your icon. This should be in the same directory of this configuration file.
     *
     * For iOS, please refer to their documentation about icon sizes:
     * https://developer.apple.com/library/ios/#documentation/userexperience/conceptual/mobilehig/IconsImages/IconsImages.html
     *
     * For Android, please refer to the Google Launcher icons guide:
     * http://developer.android.com/guide/practices/ui_guidelines/icon_design_launcher.html
     */
    "iconName":"resources/icons/Icon~ipad.png",

    /**
     * @cfg {String} inputPath
     * @required
     * This is location of your Sencha Touch 2 application, relative to this configuration file.
     */
    "inputPath":"build/native",

    /**
     * @cfg {String} outputPath
     * @required
     * This is where the built application file with be saved.
     */
    "outputPath":"build/",

    /**
     * @cfg {String} configuration
     * @required
     * This is configuration for your application. `Debug` should always be used unless you are submitting your app to an online
     * store - in which case `Release` should be specified.
     */
    "configuration":"Debug",

    /**
     * @cfg {String} platform
     * @required
     * This is the platform where you will be running your application. Available options are:
     *  - iOSSimulator
     *  - iOS
     *  - Android
     *  - AndroidEmulator
     */
    "platform":"AndroidEmulator",

    /**
     * @cfg {String} deviceType
     * @required
     * This is device type that your application will be running on.
     *
     * If you are developing for Android, this is not necessary.
     *
     * Available options are:
     *  - iPhone
     *  - iPad
     *  - Universal
     */
    "deviceType":"Universal",

    /**
     * @cfg {String} certificatePath
     * This is the location of your certificate.
     * This is required when you are developing for Android or you are developing on Windows.
     */
    "certificatePath":"/path/to/certificate.file",

    /**
     * @cfg {String} certificateAlias
     * This is the name of your certificate.
     *
     * IF you do not specify this on OSX, we will try and automatically find the certificate for you using the applicationId.
     *
     * This can be just a simple matcher. For example, if your  certificate name is "iPhone Developer: Robert Dougan (ABCDEFGHIJ)", you
     * can just put "iPhone Developer".
     *
     * When using a certificatePath on Windows, you do not need to specify this.
     */
    "certificateAlias":"",

    /**
     * @cfg {String} sdkPath
     * This is the path to the Android SDK, if you are developing an Android application.
     */
    "sdkPath":"C:\Program Files\Android\android-sdk",

    /**
     * @cfg  androidAPILevel
     * This is android API level, the version of Android SDK to use, you  can read more about it here:  http://developer.android.com/guide/appendix/api-levels.html.
     * Be sure to install corresponding platform API in android SDK manager (android_sdk/tools/android)
     */
    "androidAPILevel":"8",

    /**
     * @cfg  orientations
     * @required
     * This is orientations that this application can run.
     */
    "orientations": [
        "portrait",
        "landscapeLeft",
        "landscapeRight",
        "portraitUpsideDown"
    ]
}

然后我在Sencha命令行工具上运行以下命令

sencha app build native

Code:

C:\path\to\www\mysenchaapp>sencha app build native
[INFO] Deploying your application to C:\path\to\www\mysenchaapp\build\package
[INFO] Copied sdk/sencha-touch.js
[INFO] Copied app.js
[INFO] Copied resources/css/app.css
[INFO] Copied resources/images
[INFO] Copied resources/icons
[INFO] Copied resources/loading
[INFO] Resolving your application dependencies...
[INFO] Found 139 dependencies. Concatenating all into app.js...
[INFO] Processed sdk/sencha-touch.js
[INFO] Minifying sdk/sencha-touch.js
[INFO] Processed app.js
[INFO] Minifying app.js
[INFO] Minifying resources/css/app.css
[INFO] Minified sdk/sencha-touch.js
[INFO] Minified app.js
[INFO] Minified resources/css/app.css
[INFO] Generated app.json
[INFO] Embedded microloader into index.html
[INFO] Packaging your application as a native app...

C:\path\to\www\mysenchaapp

[现在,我正在尝试在android模拟器上运行此应用程序,我已经在Eclipse中创建了一个Android应用程序。我无法这样做。

我想知道如何将我的Sencha应用程序添加到此Android以便在模拟器上运行它?

android android-emulator sencha-touch extjs sencha-touch-2
3个回答
2
投票

我的答案是正确的,只有当你想在eclipse的android模拟器中运行sencha应用程序并且你对电话间隙没有异议时。

如果您使用eclipse创建本机android应用程序,那么在android仿真器中运行sencha应用程序非常简单。

我可以向您展示一些简单的步骤。

1]我建议您使用MDS鼓掌的电话间隙http://wiki.phonegap.com/w/page/34483744/PhoneGap%20Eclipse%20PlugIn%20for%20Android根据需要随时安装phonegap。

2)一旦完成安装,您将在顶部看到手机间隙图标。

3)单击它以创建一个最小的电话空白项目。

4)u随后将看到带有不必要内容的索引文件。您可以如下替换索引文件

        <!DOCTYPE html>
       <html>
        <head>
        <title>The Sencha Touch List Component</title>
       <link rel="stylesheet" href="app.css" type="text/css">

       <script type="text/javascript" src="touch/sencha-touch-all.js"></script>
       <script type="text/javascript" charset="utf-8">
       Ext.Loader.setConfig({
       enabled: true,
       paths: { 'Ext': 'touch/src' }
       });
      </script>
     <script type="text/javascript" src="app.js"></script>
      </head>
      <body></body>
      </html>

5)然后在资产文件夹中,您可以创建创建sencha应用程序所需的文件夹,例如app文件夹,styles文件夹,touch文件夹以及其他必需的东西,例如css文件和app.js。

6U仅通过在Eclipse中仅在Web浏览器中检出index.html文件就可以检查配置是否正确。

7)如果还可以,则您可以在android模拟器中运行该应用程序,就像您对本机应用程序执行的方法一样。如果您想按照自己的方式操作,请点击此链接http://docs.sencha.com/touch/2-0/#!/video/native-apis-from-touch


0
投票

将packager.json中的平台更改为“ Android”。


0
投票

可能是this link可以帮助您。

© www.soinside.com 2019 - 2024. All rights reserved.