标签: ionic2

使用警报确认按钮打开 Google Play

你能解释一下如何使用警报确认按钮启动 Google Play 应用程序吗?

这是代码:

let confirm = this.alertCtrl.create({
  title: 'Nouvelle mise a jour disponible',
  message: 'Version ameliorer de eLahiya disponible, voulez vous la telecharger?',
  buttons: [
    {
      text: 'Plus tard',
      handler: () => {
        console.log('Disagree clicked');
      }
    },
    {
      text: 'Mise a jour',
      handler: () => {
        console.log('Agree clicked');
        window.open("play.google.com/store/apps/details?id=<package_name>", '_system', 'location=yes')//
      }
    }
  ]
});
confirm.present();
Run Code Online (Sandbox Code Playgroud)

我想让我的应用程序在 Playstore 上打开我的应用程序页面,该怎么做?

alert google-play ionic2

2
推荐指数
2
解决办法
1929
查看次数

如何使用离子制作pdf生成器?

我想制作当前页面的 pdf,以便用户可以打印出来,但每个页面都是动态的,所以我需要一种文本到 pdf 生成器才能使其工作。

它是一个 ionic2 应用程序,就像一个食谱页面,所以你可以点击一个按钮,它只是从文本中生成一个 pdf。

你们知道我怎么能做到这一点吗?

html pdf generator ionic2 angular

2
推荐指数
1
解决办法
6881
查看次数

ionic 2中的localStorage和Storage哪个更好?

我想将我的身份验证代码存储在 localstorage 中,ionic2提供了它自己的存储模块ionic/storage

storage.set(key,value),
storage.get(key).then(value=> {
   console.log(value);
})
Run Code Online (Sandbox Code Playgroud)

但我也尝试过这样存储,当我在浏览器中测试应用程序时它可以工作。

localStorage.setItem(key, value);
localStorage.getItem('key');
Run Code Online (Sandbox Code Playgroud)

谁能解释一下使用本地存储的更好方法是什么?

javascript ionic2 ionic3

2
推荐指数
1
解决办法
638
查看次数

Razorpay ionic 3 回调问题

我将使用 ionic 3 应用程序实现 razorpay 一切正常,我得到了 pay_id 的成功回调,但之后没有任何事情发生,例如重定向到其他页面或路由或任何其他活动或调用函数等。

我参考以下链接,

https://github.com/razorpay/razorpay-cordova-sample-app/tree/master/rzp-ionic2-example

这是我的代码,

var options = {
      description: 'Credits towards consultation',
      image: 'https://i.imgur.com/3g7nmJC.png',
      currency: 'INR',
      key: 'rzp_test_1DP5mmOlF5G5ag',
      amount: '5000',
      name: 'foo',
      prefill: {
        email: 'pranav@razorpay.com',
        contact: '8879524924',
        name: 'Pranav Gupta'
      },
      theme: {
        color: '#F37254'
      },
      modal: {
        ondismiss: function() {
          alert('dismissed')
        }
      }
    };

    var successCallback = function(payment_id) {
      alert('payment_id: ' + payment_id);
      this.navCtrl.push("ThankyouPage",{
              status: this.status
          });
    };

    var cancelCallback = function(error) {
      alert(error.description + ' (Error ' + error.code + …
Run Code Online (Sandbox Code Playgroud)

cordova typescript ionic2 ionic3 angular

2
推荐指数
1
解决办法
1819
查看次数

Ionic 2 Native Audio 在浏览器中抛出错误

我开始使用 Ionic 2 创建一个应用程序,在我尝试添加声音之前,它进行得很顺利。我按照 Ionic Framework 指南安装了 NativeAudio 模块,然后我添加了这几行代码。

在 app.module.ts

import { NativeAudio } from '@ionic-native/native-audio';
Run Code Online (Sandbox Code Playgroud)

在游戏.ts

@Component({
  selector: 'page-game',
  templateUrl: 'game.html',
})
export class GamePage {
...
constructor(public navCtrl: NavController, public alertCtrl: AlertController, public navParams: NavParams, public nativeAudio: NativeAudio) {
this.nativeAudio.preloadSimple('correctMp3', '../../assets/mp3/correct.mp3');
}
}
  guessLetter(letterIn) {
        this.nativeAudio.play('correctMp3');

    }
  }
Run Code Online (Sandbox Code Playgroud)

(抱歉提前格式化)。在我添加声音之前,代码运行良好,但现在当我尝试加载 GamePage 时它会抛出此错误。

    Runtime Error
    Uncaught (in promise): Error: No provider for NativeAudio! Error: No
 provider for NativeAudio! at injectionError 
(http://localhost:8100/build/vendor.js:1590:86) at noProviderError 
(http://localhost:8100/build/vendor.js:1628:12) at 
ReflectiveInjector_._throwOrNull (http://localhost:8100/build/vendor.js:3129:19) 
at ReflectiveInjector_._getByKeyDefault …
Run Code Online (Sandbox Code Playgroud)

android typescript ionic2

2
推荐指数
1
解决办法
1393
查看次数

如何根据 Ionic 2 中内容滚动的位置显示/隐藏按钮

我想根据当前滚动位置的不同和动态 html 内容的高度显示一个按钮。

例如:如果我在底部并且当前位置和内容高度的差异小于 10px,那么按钮应该被隐藏。否则,它应该显示。

html scroll ionic2

2
推荐指数
1
解决办法
2021
查看次数

HTML + Ionic 3.x:如何在 html 文件中使用 for 循环使用 in 而不是

我的打字稿文件中有几个对象数组。

我想同时遍历这些数组并在 html 文件中显示它们的内容。以下是内容:

<ion-item>
  {{array1[i]}} {{array2[i]}} {{array3[i]}}
</ion-item>
Run Code Online (Sandbox Code Playgroud)

幸运的是,数组总是相同的大小。现在我想在 ion-item 之后做一个 for 循环(类似这样):

<ion-item *ngFor="let i in array1">
  {{array1[i]}} {{array2[i]}} {{array3[i]}}
</ion-item>
Run Code Online (Sandbox Code Playgroud)

但是这样做会给我一个错误:“无法绑定 'ngForIn' 因为它不是 'ion-item' 的已知属性。现在我找到了以下解决方法,但它看起来很丑陋。

<ion-item *ngFor="let counter of array1; let i = index">
  {{array1[i]}} {{array2[i]}} {{array3[i]}}
</ion-item>
Run Code Online (Sandbox Code Playgroud)

关于如何更有效/更漂亮地执行此操作的任何建议将不胜感激:)

谢谢!

for-loop typescript ionic2 ionic3 angular

2
推荐指数
1
解决办法
1万
查看次数

Android 未在 ionic 应用程序中请求许可

我正在构建允许人们发布图片和视频的应用程序,主要是尝试了解 ionic、cordova、android 等,但出于某种原因,每当我尝试使用cordova File 插件打开文件时,它都不会询问用户访问存储的权限,并且代码失败并且用户卡在加载屏幕上。代码非常简单,他们拍摄视频,进行转码,然后将转码后的文件上传到 firebase 存储桶。如果我退出应用程序,转到设置->应用程序->我的应用程序->权限,然后手动打开存储权限,它可以工作。问题是,我需要在运行时或安装时向用户询问权限,但事实并非如此。这是代码..

this.media.captureVideo().then(file => {
  this.editor.transcodeVideo({
    fileUri: file[0].fullPath,
    outputFileType: this.editor.OutputFileType.MPEG4,
    outputFileName: 'temp_test',
    saveToLibrary: false,
    height: 800,
    width: 800,
    maintainAspectRatio: false
  }).then(fileUri => {
    let pathIndex = fileUri.lastIndexOf('/'),
        finalPath = 'file://' + fileUri.substr(0, pathIndex), 
        name = fileUri.substr(pathIndex + 1, fileUri.length);
    this.file.readAsArrayBuffer(finalPath, name).then(file => {
        //upload
    }).catch(err => { console.log(err); });
  });
});
Run Code Online (Sandbox Code Playgroud)

但是,这只适用于我打开手机上的设置,依次转到应用程序、我的应用程序、权限,然后手动启用存储。有什么方法可以在离子中请求许可吗?我已经搜索并搜索过,我能找到的所有答案都特定于相机,或者在 Java 中工作,但 ionic 不是 java。谢谢你。

permissions android cordova ionic2

2
推荐指数
1
解决办法
5448
查看次数

离子 CLI 未卸载

这涉及到我刚才的问题在这里这是从来没有解决。我正在尝试通过重新安装 Ionic 来解决问题。

我首先尝试使用 卸载 Ionic sudo npm uninstall -g ionic,它完成时没有错误,但ionic -v仍然输出2.1.1,所以显然它并没有真正被卸载。之后我尝试了sudo npm install -g ionic@latest,我的问题仍然存在。

更奇怪的是当我试图从头开始创建一个新项目来测试它时发生的事情。我ionic start test --v2在我的 Ubuntu 机器上做了,并且ionic serve仍然做我在上一个问题中所说的同样的事情。

ionic2 ionic3

2
推荐指数
2
解决办法
1万
查看次数

未捕获的错误:无法解析 PushObject 的所有参数:(?)

当我在 android 上运行时发生了这个错误。

我正在使用 @ionic-native/push 从我的 nodejs 服务器接收推送通知。这是我的配置:Component.ts:

initPushNotification() {
    const options: PushOptions = {
      android: {},
      ios: {
          alert: 'true',
          badge: true,
          sound: 'false'
      },
      windows: {},
      browser: {
          pushServiceURL: 'http://push.api.phonegap.com/v1/push'
      }
   };
    const pushObject: PushObject = this.push.init(options);

    pushObject.subscribe('topic').then(() => {
      console.log('subscribe success to topic')
    }).catch((e) => {
      console.log(e)
    })

    pushObject.on('registration').subscribe((data: any) => {
      console.log('device token -> ' + data.registrationId);
      //TODO - send device token to server
    });

    pushObject.on('notification').subscribe((notification: any) => {
      console.log('Received a notification', notification)
    });

    pushObject.on('error').subscribe(error => …
Run Code Online (Sandbox Code Playgroud)

typescript ionic2 ionic3 angular

2
推荐指数
1
解决办法
840
查看次数