ボタンが1つだけのアプリを作ろうとしています。押すとサウンドが再生され、長押しすると、共有するオプションが表示されます。アプリはエラーなしで動作しています..しかし、共有オプションが開かない. また、ボタンを長押ししても何もしません。
package com.example.buttonclicksound;
import com.example.buttonclicksound.MainActivity;
import android.graphics.drawable.AnimationDrawable;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnLongClickListener;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.ImageView;
public class MainActivity extends Activity {
protected static final String TAG = "MainActivity";
Button button1;
MediaPlayer mPlayer;
AnimationDrawable lightsAnimation;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//No title bar is set for the activity
requestWindowFeature(Window.FEATURE_NO_TITLE);
//Full screen is set for the Window
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
ImageView lights = (ImageView) findViewById(R.id.imageView1);
lightsAnimation = (AnimationDrawable) lights.getDrawable();
button1 = (Button) findViewById(R.id.button1);
mPlayer = MediaPlayer.create(MainActivity.this, R.raw.splash);
button1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
try {
mPlayer.start();
mPlayer.setLooping(false);
} catch (Exception e) {
Log.e("ButtonListenerActivity", "error: " + e.getMessage(),
e);
}
}
});
button1.setOnLongClickListener(new OnLongClickListener() {
public boolean onLongClick(View v) {
shareIt();
return true;
}
private void shareIt() {
//sharing implementation here
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("audio/mPlayer");
}
});
}
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
lightsAnimation.start();
}
protected void onDestroy() {
super.onDestroy();
// TODO Auto-generated method stub
if (mPlayer != null) {
mPlayer.release();
mPlayer = null;
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
その非常に苛立たしい..これに一生懸命取り組んできました..そして、Daamのことはうまくいきません。
いくつかのさらなる作業の後..私は今これで立ち往生しています..ボックス経由で送信が開きます..私は電子メールを選択します..しかし、私が得るのは空白の電子メールだけです.
private void shareIt(MediaPlayer mPlayer) {
//sharing implementation here
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("audio/mp3");
sharingIntent.putExtra(Intent.EXTRA_SUBJECT,"Ringtone File:"+getResources().getResourceEntryName(mPlayer)+".mp3");
sharingIntent.putExtra(Intent.EXTRA_TEXT,"Ringtone File : "+getResources().getResourceEntryName(mPlayer)+".mp3");
sharingIntent.putExtra(Intent.EXTRA_STREAM,Uri.parse("android.resource://com.my.android.soundfiles/"+mPlayer));
sharingIntent.putExtra("sms_body","Ringtone File : "+getResources().getResourceEntryName(mPlayer)+".mp3");
startActivity(Intent.createChooser(sharingIntent, "Share Sound File"));
}
});