Good day all, I'm new to android development and I'm following THIS tutorial to make a simple audio manager. But I want some functions to be on another activity class and call those functions according to corresponding button press. The functions are:
public void vibrate(View view){ myAudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); } public void ring(View view){ myAudioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL); } public void silent(View view){ myAudioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT); } public void mode(View view){ int mod = myAudioManager.getRingerMode(); if(mod == AudioManager.RINGER_MODE_NORMAL){ Status.setText("Current Status: Ring"); } else if(mod == AudioManager.RINGER_MODE_SILENT){ Status.setText("Current Status: Silent"); } else if(mod == AudioManager.RINGER_MODE_VIBRATE){ Status.setText("Current Status: Vibrate"); } else{ } } Is there any way I can do that? And I don't want to use Intent. Your help would be an honor for me. Tnx.
UPDATES AFTER LAUNCH
Updated Logcat logs:
10-28 20:57:51.381: W/dalvikvm(1232): threadid=1: thread exiting with uncaught exception (group=0x40015560) 10-28 20:57:51.401: E/AndroidRuntime(1232): FATAL EXCEPTION: main 10-28 20:57:51.401: E/AndroidRuntime(1232): java.lang.NullPointerException 10-28 20:57:51.401: E/AndroidRuntime(1232): at edu.shihank.audiomanager.Listeners.vibrate(Listeners.java:13) 10-28 20:57:51.401: E/AndroidRuntime(1232): at edu.shihank.audiomanager.MainActivity$1.onClick(MainActivity.java:39) MainActivity.java
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE); home = (Button) findViewById(R.id.home); pocket = (Button) findViewById(R.id.pocket); silent = (Button) findViewById(R.id.silent); tv = (TextView) findViewById(R.id.tv); myAudManHolder = new Listeners(); pocket.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { myAudManHolder.vibrate(); } }); } Listeners.java
public class Listeners { AudioManager myAudMan; public void vibrate() { myAudMan.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); } }