【发布时间】:2012-12-17 13:13:39
【问题描述】:
我是一名安卓开发者。 (初学者)
我想知道如何通过输入/调用特定代码号(来自同一设备)来启动我的应用程序,例如智能锁应用程序,您可以通过调用此代码#000 来启动它。
【问题讨论】:
标签: android
我是一名安卓开发者。 (初学者)
我想知道如何通过输入/调用特定代码号(来自同一设备)来启动我的应用程序,例如智能锁应用程序,您可以通过调用此代码#000 来启动它。
【问题讨论】:
标签: android
您必须使用广播接收器...
public class OutgoingCallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
if(null == bundle)
return;
String phonenumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
Log.i("OutgoingCallReceiver",phonenumber);
Log.i("OutgoingCallReceiver",bundle.toString());
if(code.equals("#000") {
intent.setComponent(new ComponentName("com.example", "com.example.MyExampleActivity"));
还有你的 Android 清单
<receiver android:name="com.varma.samples.detectcalls.receivers.OutgoingCallReceiver">
<intent-filter>
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
</intent-filter>
</receiver>
【讨论】:
您可以通过应用程序的完整包名How to start activity in another application? 启动应用程序。您可以在应用程序启动器中实现所需的逻辑。比如将代码 #000 绑定到特定的包,如“com.example.android”。
if(code.equals("#000") {
intent.setComponent(new ComponentName("com.example", "com.example.MyExampleActivity"));
}
else if{code.equals(#???"){
//another app
}
【讨论】: