2013-07-03 1 views
1

Я преуспел в отправке намерения по skype и звоню кому бы то ни было, но теперь я хочу, чтобы иметь возможность отправлять IM и отправлять файлы, все делается в фоновом режиме. Это даже возможное ? Я просмотрел их страницу разработчика для Android, это немного бедно и ничего не говорит об этом. Итак, есть ли способ сделать это? Заранее благодарим за хороший день!Skype android api для сообщения (IM) и отправки файла

+1

Если нет официального API, это очень вероятно приведет к перерыву в обновлении приложения, это очень опасно и не стоит его пытаться. IMHO –

+0

Итак, вы говорите, что нет способа отправлять сообщения и файлы из другое приложение, кроме скайпа? Нет способа отправить намерение или что-то еще? Я думал, что это сработает, они говорят, что это возможно с других платформ ... –

ответ

1

Мне почти удалось отправить файлы через Skype с использованием намерений. Я фактически использую одно и то же намерение для отправки по электронной почте или скайпу, и я разрешаю пользователю выбирать приложение, которое они хотят использовать для отправки файла. Мой код:

File readF = new File(fullFileName); 
Intent intent = new Intent(Intent.ACTION_SEND); 
intent.setType("text/*"); 
intent.putExtra(Intent.EXTRA_SUBJECT, getResources().getString(R.string.send_message_subject) + " " + myList.getName()); 
intent.putExtra(Intent.EXTRA_TEXT, getResources().getString(R.string.send_message_body)); 
Uri uri = FileProvider.getUriForFile(this, "my.package.fileprovider", readF); 
intent.putExtra(Intent.EXTRA_STREAM, uri); 
startActivity(Intent.createChooser(intent, "Sending...")); 

Поставщик файла я использую для отправки файла является так же, как один описано здесь: https://developer.android.com/reference/android/content/ContentProvider.html

Если вы хотите отправить файл в явном виде через Skype, а не позволить пользователю выбрать приложение может быть, вы можете использовать что-то вроде этого:

sharingIntent.setClassName("com.twitter.android","com.twitter.android.PostActivity"); 

(объяснил here)

Почему я ПОЧТИ удалось в том, что имя файла я s при передаче через Skype. Я еще не понял, как это исправить.

+0

Обратите внимание, что если вместо использования FileProvider вы используете Uri uri = Uri.fromFile (новый файл ("/ path/to/my/public/file")); имя файла сохраняется, и все в порядке как при отправке файлов через Skype, так и через Viber – Jeni