Merge branch 'Hackerleng-master'

This commit is contained in:
Karim Abou Zeid 2017-09-29 22:59:07 +02:00
commit 9e9baf9723
No known key found for this signature in database
GPG key ID: 948B11DC67FD9BAF
5 changed files with 20 additions and 6 deletions

View file

@ -203,6 +203,15 @@
</receiver>
<activity android:name=".ui.activities.PurchaseActivity"></activity>
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="${applicationId}"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths"/>
</provider>
</application>
</manifest>
</manifest>

View file

@ -38,7 +38,7 @@ public class SongShareDialog extends DialogFragment {
public void onSelection(MaterialDialog materialDialog, View view, int i, CharSequence charSequence) {
switch (i) {
case 0:
startActivity(Intent.createChooser(MusicUtil.createShareSongFileIntent(song), null));
startActivity(Intent.createChooser(MusicUtil.createShareSongFileIntent(song, getContext()), null));
break;
case 1:
getActivity().startActivity(

View file

@ -32,7 +32,7 @@ public class SongMenuHelper {
MusicUtil.setRingtone(activity, song.id);
return true;
case R.id.action_share:
activity.startActivity(Intent.createChooser(MusicUtil.createShareSongFileIntent(song), null));
activity.startActivity(Intent.createChooser(MusicUtil.createShareSongFileIntent(song, activity), null));
return true;
case R.id.action_delete_from_device:
DeleteSongsDialog.create(song).show(activity.getSupportFragmentManager(), "DELETE_SONGS");

View file

@ -13,6 +13,7 @@ import android.provider.MediaStore;
import android.provider.Settings;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.content.FileProvider;
import android.text.TextUtils;
import android.util.Log;
import android.widget.Toast;
@ -23,7 +24,6 @@ import com.kabouzeid.gramophone.loader.PlaylistLoader;
import com.kabouzeid.gramophone.loader.SongLoader;
import com.kabouzeid.gramophone.model.Artist;
import com.kabouzeid.gramophone.model.Playlist;
import com.kabouzeid.gramophone.model.PlaylistSong;
import com.kabouzeid.gramophone.model.Song;
import com.kabouzeid.gramophone.model.lyrics.AbsSynchronizedLyrics;
@ -55,10 +55,11 @@ public class MusicUtil {
}
@NonNull
public static Intent createShareSongFileIntent(@NonNull final Song song) {
public static Intent createShareSongFileIntent(@NonNull final Song song, Context context) {
return new Intent()
.setAction(Intent.ACTION_SEND)
.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + song.data))
.putExtra(Intent.EXTRA_STREAM, FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName(), new File(song.data)))
.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
.setType("audio/*");
}

View file

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<external-path name="external_files" path="."/>
</paths>