我正在关注http://android.amberfog.com/?p=422使用以下代码通过密码启动活动:
<action android:name="android.provider.Telephony.SECRET_CODE" />
<data android:scheme="android_secret_code" android:host="4636" />
我想要做的是在应用程序本身中有一个选项,用户可以将密码更改为他们想要的东西。
默认情况下,用户按##4636##进入应用程序,当用户更改其他代码时,例如5555,以便下次启动它使用5555启动应用程序。
反正有没有这样做?
我首先考虑从strings.xml获取此代码,但后来我意识到我无法在运行时更改strings.xml中的资源。
然后,我考虑将此值放入sqllite数据库或共享首选项,但我不确定是否可以将此值恢复为显示。
有什么好主意要做吗?
我也不能使用secret_code,但是当用户调用某个号码(比如33334)时,应用程序就会启动。然后用户可以在应用程序中更改此编号。如果可以的话,我也可以应对这种方式。
我知道上面的内容可以在Shady_SMS中使用,但不确定这个应用程序是如何处理的。
答案 0 :(得分:0)
使用BroadcastReceiver
与Intent.ACTION_NEW_OUTGOING_CALL
一起使用。用户将他们希望的密码保存到sharedpreference
,在BroadcastReceiver
onReceive()
上,我从sharedpreference
获取值并使用它来启动应用程序。