如何在android中更改我的电子邮件附件的文件名?

时间:2016-01-03 20:20:09

标签: android android-intent android-activity

我的应用程序中有一个图像附件,它工作正常,电子邮件附件出现在邮件中。现在这个附件带有随机图像文件名。我希望图像名称每次都与发送者名称和当前时间的特定命名约定不同。我怎么能这样做?

这是我的保存和发送按钮上的onClick方法。当我按下此按钮时,图像将以我想要的命名约定保存在我的图库中。下面的部分是使用隐式意图发送部分。指导我是否可以在电子邮件中附加图像中添加我想要的图像名称。

提前谢谢。

app.controller('examCtrl',function($scope, $interval){

    $scope.timerCount=0;
    $scope.startTimer=function(){
        $interval(function(){
            console.log($scope.timerCount);
            $scope.timerCount++;
        },1000)
    }
});

2 个答案:

答案 0 :(得分:0)

  

我该怎么做?

您正在使用一些不正确的代码调用第三方电子邮件客户端(ACTION_SEND支持EXTRA_TEXT EXTRA_STREAM;不要假设每个人都会支持两者)。欢迎该电子邮件应用程序根据需要为附件命名。

您可以做的最好的事情是为文件名段提供一个Uri具有“发件人姓名和当前时间的特定命名约定”,然后希望该电子邮件应用实际上使用该文件名段作为附件名。

答案 1 :(得分:0)

实施可以查询的ContentProvider并支持OpenableColumns中的列。如果存在,大多数电子邮件客户端都使用OpenableColumns.DISPLAY_NAME来派生文件名。

当然,ContentProvider也必须在作为流打开时返回文件内容。

FileProvider的默认实现可能已经做了你想做的事。