我在Ionic Framework上使用https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin进行社交分享。
下面的代码与文本和链接共享图像,它对于whatsapp上的Android非常好用,但是当涉及到iOS时,只有文本在whatsapp上共享而不是图像。这是下面的代码:
$scope.myCardShare=function (){
var message="My Message";
var subject="My Subject";
var file="www/"+$scope.finalImage; //My image location
var link="https://google.com"; //Link
console.log(file);
$cordovaSocialSharing
.share(message, subject, file, link) // Share via native share sheet
.then(function(result) {
// Success!
}, function(err) {
// An error occured. Show a message to the user
});
}
请帮忙
答案 0 :(得分:3)
嘿我也遇到了同样的问题。我意识到,如果两个"消息"和"文件"字段存在,whatsapp将只共享文本而不是文件。当我删除"消息"字段,图像已发送。
为什么不尝试通过ionic.Platform.isIOS()检查平台并删除"消息"领域,如果它的ios?
var message="My Message";
var subject="My Subject";
var file="www/"+$scope.finalImage; //My image location
var link="https://google.com"; //Link
console.log(file);
if(ionic.Platform.isIOS()) {
$cordovaSocialSharing
.share(null, null, file, link) // Share via native share sheet
.then(function(result) {
// Success!
}, function(err) {
// An error occured. Show a message to the user
});
} else {
$cordovaSocialSharing
.share(message, subject, file, link) // Share via native share sheet
.then(function(result) {
// Success!
}, function(err) {
// An error occured. Show a message to the user
});
}
答案 1 :(得分:0)
你可以试试这个:
$scope.myCardShare=function (){
var message="My Message";
var subject="My Subject";
var file="www/"+$scope.finalImage; //My image location
var link="https://google.com"; //Link
console.log(file);
$cordovaSocialSharing
.share(null, subject, file, message + '\n' + link) // Share via native share sheet
.then(function(result) {
// Success!
}, function(err) {
// An error occured. Show a message to the user
});
}
whatsapp共享将检查消息是否为null,如果为null将发送带有url的图像,并且此url将包含消息和url。