有没有办法用ussd打开应用程序?
Is there any way to open an app with ussd?
当用户在他的 phone 中使用 USSD 代码时,他按下呼叫按钮后我的应用程序将打开吗?就像您使用此代码 *123*2# 并且应用程序打开并显示您键入“2”!
我从未见过这样的应用程序,但值得一试
提前致谢。
或者当用户使用 ussd a link 在网络上打开时?
像这样 *123*1*2# 在调用 link 类似站点后。com/abc.php 打开 ?
我不确定是否可以通过 USSD 直接打开应用程序。您可能想要使用推送通知。因此,当用户拨打 USSD 代码时,您会向 phone 发送推送通知,以便通过通知提示打开应用程序。
您必须创建广播接收器才能获得您想要的内容。
数字格式 *#*#xxxx#*#*, like- *#*#125#*#*
.
现在创建接收器
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class OpenApp extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String val = intent.getData().getHost();
Intent i = new Intent(context, MainActivity.class);
i.putExtra("data", val);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
现在在 AndroidManifest 中注册接收器:
<receiver android:name=".OpenApp">
<intent-filter>
<action android:name="android.provider.Telephony.SECRET_CODE" />
<data android:scheme="android_secret_code" android:host="125"/>
</intent-filter>
就这些了。
当用户在他的 phone 中使用 USSD 代码时,他按下呼叫按钮后我的应用程序将打开吗?就像您使用此代码 *123*2# 并且应用程序打开并显示您键入“2”!
我从未见过这样的应用程序,但值得一试
提前致谢。
或者当用户使用 ussd a link 在网络上打开时? 像这样 *123*1*2# 在调用 link 类似站点后。com/abc.php 打开 ?
我不确定是否可以通过 USSD 直接打开应用程序。您可能想要使用推送通知。因此,当用户拨打 USSD 代码时,您会向 phone 发送推送通知,以便通过通知提示打开应用程序。
您必须创建广播接收器才能获得您想要的内容。
数字格式 *#*#xxxx#*#*, like- *#*#125#*#*
.
现在创建接收器
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class OpenApp extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String val = intent.getData().getHost();
Intent i = new Intent(context, MainActivity.class);
i.putExtra("data", val);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
现在在 AndroidManifest 中注册接收器:
<receiver android:name=".OpenApp">
<intent-filter>
<action android:name="android.provider.Telephony.SECRET_CODE" />
<data android:scheme="android_secret_code" android:host="125"/>
</intent-filter>
就这些了。