【问题标题】:Ionic 2 app crash离子 2 应用程序崩溃
【发布时间】:2017-04-05 17:27:00
【问题描述】:

我正在通过 Cordova 图像选择器插件 选择图像并将它们转换为 base64 字符串。之后,我清除插件生成的android上的临时图像。一切正常;所有临时图像都会被删除,但之后应用程序有时会崩溃(不是本机崩溃,只是转到后台并在再次恢复时重新初始化)。即使在那之后没有处理或任何函数调用。有什么方法可以追踪它发生的原因,因为在清理这些临时文件后没有任何代码行可以执行。

【问题讨论】:

    标签: javascript android cordova ionic2 base64


    【解决方案1】:

    根据https://github.com/Telerik-Verified-Plugins/ImagePicker中的文档

    如果返回的是 Base64 字符串,则无需清理。

    也许你根本不需要清理。

    【讨论】:

    • 我用过这个插件;它给出错误并且不与应用程序集成。无法使用此插件构建应用程序。另外我的问题不是清理,我可以看到所有文件都已成功删除,但在该应用程序崩溃后我想追踪
    • 好吧,我说的是不同的插件吗?
    • 我正在使用我的方法而不是插件转换为 base64
    • 是的,我正在使用这个插件github.com/wymsee/cordova-imagePicker。 base64 没有任何选项;只有文件URI
    • 嗯...它看起来更像是开发人员的手。无论如何,我提供的那个是它的一个分支。您是否尝试使用“consolelogs”标志运行应用程序,检查它是否输出任何错误?
    【解决方案2】:

    将相机插件添加到您的应用程序ionic plugin add cordova-plugin-camera 然后在ts文件中使用以下代码

      takePicture() {
        var options = {
          sourceType: Camera.PictureSourceType.CAMERA,
          destinationType: Camera.DestinationType.DATA_URL
        };
        Camera.getPicture(options).then((imageData) => {
          this.base64Image = 'data:image/jpeg;base64,' + imageData;
          this.photoTaken = true;
          this.photoSelected = false;
        }, (err) => {
          // Handle error
        });
      }
    

    在html中使用这个

    <ion-col>
      <button ion-button (click)="takePicture()">Edit</button>
    </ion-col>
      <ion-col>
        <img [src]="base64Image" *ngIf="base64Image" />
      </ion-col>
    

    这会直接给出base64图像

    【讨论】:

    • 我的问题不一样!此外,此插件一次只允许选择一张图片。
    猜你喜欢
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-31
    • 1970-01-01
    • 2020-03-14
    • 2020-09-01
    相关资源
    最近更新 更多