离子3应用程序

时间:2017-11-02 09:20:12

标签: android cordova typescript ionic-framework ionic3

我正在构建一套壁纸离子3应用程序。我面临着离子应用程序的3个主要问题。

  1. 侧面菜单滑动无法在真正的Android设备或模拟器中使用。只能在离子服务器中工作 - 在chrome浏览器中使用。

  2. 触摸纹波在真正的Android设备或模拟器中无效。只能在离子服务器中工作 - 在chrome浏览器中使用。

  3. 设置壁纸cordova插件不起作用。

  4. 我尝试在离子论坛中搜索这些问题,但没有运气。我使用的插件是:cordova-plugin-wallpaper(https://www.npmjs.com/package/cordova-plugin-wallpaper)。我按照他们的步骤但仍然没有输出。

    我更改了TypeScript代码,使用了'任何' (Doc是关于使用JavaScript的Ionic的旧版本),但问题仍然存在。还尝试在插件xml中更改clobber标记。

    按下设置壁纸按钮后显示"运行时错误 未捕获(承诺):TypeError:无法读取属性'壁纸'未定义的TypeError:无法读取属性'壁纸'未定义" in ionic serve --lab chrome browser。

    链接到Google云端硬盘中的test1 ionic 3 app项目(由于尺寸较大,因此不包含node_modules文件夹):https://drive.google.com/drive/folders/0BxZZQyYJypvRMk1rN2stX2ppX2s

    HTML:

    <ion-header>
      <ion-navbar color="dark">
        <button ion-button menuToggle>
          <ion-icon name="menu"></ion-icon>
        </button>
        <ion-title>appname</ion-title>
      </ion-navbar>
    </ion-header>
    
    <ion-content>
                    <ion-card>
                        <img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ16sUl5EqIDeuP1AjIX6ESSbAFAcS2-JLr4znf-extlfIr47Ni"/>
                        <div>wallpaper</div>
                        <button ion-button small class='downl' (click)="setWall()">
                          Download</button>     
                      </ion-card>
         </ion-content>
    

    打字稿:

    import { Component } from '@angular/core';
    import { NavController,Platform } from 'ionic-angular';
    
    declare var window: any;
    @Component({
      selector: 'page-home',
      templateUrl: 'home.html'
    })
    export class HomePage {
    
      constructor(public navCtrl: NavController, public platform: Platform) {
    
      }
    
      setWall() {
        this.platform.ready().then(() => {
            var setImg = "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ16sUl5EqIDeuP1AjIX6ESSbAFAcS2-JLr4znf-extlfIr47Ni";
    
            window.plugins.wallpaper.setImageHttp(setImg, function(error) {
              if (error) {
                console.error(error);
             } else {
                 console.log('Success setting wallpaper.');
             }
          });
        });
    }
    
    }
    

    这里真正的问题是什么?

0 个答案:

没有答案