位置: 编程技术 - 正文
推荐整理分享在一个Android application 调用另一个 application 里的 Activity 和 Service(在一个android创建一个按钮多选对话框),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:在一个非零无符号二进制整数之后添加一个0,在一个没有余数的除法算式中,被除数与除数的差是320,在一个屋子怎么预防感冒传染,在一个减法算式里被减数减数与差的和是20被减数是多少,在一个减法算式里被减数减数与差的和是20被减数是多少,在一个屋子怎么预防感冒传染,在一个数的后面添上一个0,得到的新数比原来的数大927,在一个android创建一个按钮多选对话框,内容如对您有帮助,希望把文章链接给更多的朋友!
Android application 和普通的应用程序有些差别,他是由四大组件(compoment)组成的,即Activity,Service,ContentProvider ,和BroadcastReceiver。 本文介绍从一个application 调用其它application 里的 Activity 和 Service。
要启动别的app里的 Activity 和 Service,主要生成两个 intent 实例,分别把实例的action 设置成和另一个 application 里 AndroidManifest.xml定义的 intent-filter 里的Action一样:Intent::setAction(Action name)。
启动另一个app里的Activity:
Intent testActivityIntent = new Intent(); testActivityIntent.setAction("com.android.F"); startActivity(testActivityIntent);
com.android.F就是在另一个App里AndroidManifest.xml中对相应Activity定义的Action,请看
<activity android:name=".SecondAndroid" android:label="@string/app_name"> <intent-filter> <action android:name="com.android.F" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity>
接着,启动另一个app里的Service:
testActivityIntent = null ; testActivityIntent = new Intent(); testActivityIntent.setAction("android.intent.action.START_PCM_PLAY_SERVICE") ; stopService(testActivityIntent); startService(testActivityIntent);
android.intent.action.START_PCM_PLAY_SERVICE 就是另一个app里AndroidManifest.xml中对相应Service定义的Action,请看
<service android:enabled="true" android:exported="true" android:name=".ServiceInSecondAndroid" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.START_PCM_PLAY_SERVICE"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </service>
另一个 app里的 Activity就照正常的规则来书,这里展出了一个 Service 播放pcm的例子:
public class ServiceInSecondAndroid extends Service {
private AudioTrack at = null ; @Override public void onCreate() { super.onCreate(); Log.v("tiantian", "thirdAndroid.onCreate()"); if( at != null ) { at.release() ; } at = new AudioTrack( AudioManager.STREAM_MUSIC , , AudioFormat.CHANNEL_OUT_STEREO ,AudioFormat.ENCODING_PCM_BIT , *4*, AudioTrack.MODE_STATIC ) ; if( at!= null ) Log.v("tiantian", "AudioTrack success create"); FileInputStream f1 ; try { f1=new FileInputStream("/sdcard/gaosu__stereo.pcm"); } catch ( IOException e ) { Log.v("tiantian", "gaosu__stereo.pcm not exist"); return; } byte[] payload = new byte[*4*] ; Log.v("tiantian", "payload ok"); int len ; try { len = f1.read(payload, 0, *4*); } catch (IOException e ) { Log.v("tiantian", "fail to read gaosu__stereo.pcm"); return ; } try { f1.close(); } catch (IOException e ) { Log.v("tiantian", "close error"); return; } at.write(payload,0,len); at.play(); return ; } public IBinder onBind(Intent intent) { Log.v("tiantian", "onBind"); return null; }
}
转载:
Android 如何直播RTMP流 原文链接:HowToStreamRTMPliveinAndroid原文作者:MohitGupt译文出自:开发技术前线www.devtf.cn译者:ayyb校对者:chaossss状态:完成在android上,视频/音频流直播是极少
android布局优化 在Android开发中,我们常用的布局方式主要有LinearLayout、RelativeLayout、FrameLayout等,通过这些布局我们可以实现各种各样的界面。与此同时,如何正确、高
[置顶] 已发布的计算器界面布局分享,可自动适配不同分辨率 本人所写的Hy计算器,已在豌豆荚发布,在此公开界面布局代码,并配注释。该界面布局通过自动压缩计算器显示屏的大小,可以使得按键的布局在不同
上一篇:android布局--Android fill_parent、wrap_content和match_parent的区别(android布局文件放在哪)
友情链接: 武汉网站建设