Tag: 电话

SMS_RECEIVED onReceive android 2.3.5无法触发

最近我一直在为这个问题感到困惑,在2.3.5之前,这似乎工作正常(在我的同事设备上)。 然而,在我的现在它永远不会触发。 我已经剥离了代码,并制作了一个非常简单的测试应用程序来查看正在发生的事情。 基本上onReceive代码似乎永远不会触发,即使adb / logcat似乎确实显示了BroadcastReveiver的寄存器确实发生了。 这是我去过的简单代码: 然后: package com.broadcasttech.testsmsreceive; import android.app.Activity; import android.content.BroadcastReceiver; import android.content.IntentFilter; import android.os.Bundle; import android.util.Log; public class TestSMSReceiveActivity extends Activity { private BroadcastReceiver receiver; private static final String TAG = “TestSMSApp”; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Log.i(TAG, ” […]

平板电脑可以拨打电话 (电话)

我在清单中有权限: 检查电话是否正在使用的代码可能会为平板电脑等无法接听电话的设备启动安全例外。 所以,我用这个方法来检查设备是否可以使用TelephonyManager: private boolean doesUserHavePermission(){ PackageManager pm = getPackageManager(); final boolean deviceHasPhone = pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY); return deviceHasPhone; } 在我实际检查是否收到呼叫的代码中,我输入了一个if语句来查看设备是否有电话: private PhoneStateListener phoneStateListener = new PhoneStateListener() { @Override public void onCallStateChanged(int state, String incomingNumber) { if (doesUserHavePermission()) { //I ADDED THIS if (state == TelephonyManager.CALL_STATE_RINGING) { onPhoneCallInterrupt(); //Method I made that mutes audio for phone call […]

如何知道我是否已成功连接到Android中的外发号码?

需要知道这一点,以便我可以发送DTMF,这将是我的第二个问题!

获取给定电话号码的详细国家/地区名称和国家/地区代码

我能够检测到android中的来电,但问题是我想知道该电话号码的国家代码,以便我可以分析它是国内号码还是国际号码。 我知道libphonenumber但它需要事先了解区域代码以获得国家代码,如示例所示 String swissNumberStr = “044 668 18 00”; PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance(); try { PhoneNumber swissNumberProto = phoneUtil.parse(swissNumberStr, “CH”); } catch (NumberParseException e) { System.err.println(“NumberParseException was thrown: ” + e.toString()); } 它已经知道将”CH”作为参数。 但我们不知道这个数字是否为我们所知,然后我们如何分析这个数字。

可以利用Android API在呼叫期间修改呼叫者的语音吗?

我似乎无法找到任何文件说这是可能的,但谷歌发现了一些声称能够完成它的应用程序。 理想情况下,我希望能够播放音轨并将其作为来电者的声音发送。

如何停止intent.ACTION_CALL一旦启动?

我正在使用Intent intent = new Intent(Intent.ACTION_CALL); 从我的应用程序拨打电话。 有一段时间后终止通话的方法吗? 或者在ACTION_CALL启动之前设置一个计时器? 我正在使用Prasanta博客的以下代码,但出于某种原因, context会出现以下错误。 有什么建议么? 无法解决 import java.lang.reflect.Method; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.os.RemoteException; import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; import android.util.Log; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.TextView; import android.widget.Toast; import com.android.internal.telephony.ITelephony; public class AnswerActivity extends Activity { private static final String TAG = null; /** Called […]

我的流式音频播放器在通话过程中继续播放 – 无法让它停止! (机器人)

我有一个由多个活动和一个服务组成的应用程序。 主要活动是用于流式传输音频的UI。 当用户按下播放按钮时,启动服务,流式传输音频和读取元数据。 然后,元数据被推送到UI(如果可见)和通知栏。 一切都按预期运行,直到打来电话。我曾经假设(愚蠢的是)通过使用标准的媒体播放器,android会处理流和电话本身之间的音频切换。 所以我创建了一个PhoneStateListener来处理调用并根据需要停止播放器。 我做错了,因为它仍然没有用。 如果您不介意查看服务类和日志文件,我真的很感激! 对不起,一切都那么冗长! 谢谢! 金大中 package com.wtts.app; import java.io.BufferedInputStream; import java.io.FilterInputStream; import java.io.IOException; import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; import java.util.Timer; import java.util.TimerTask; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.app.Service; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.media.AudioManager; import android.media.MediaPlayer; […]

Java API拨打电话

是否有任何Java API可以拨打移动电话(前提是服务提供商支持将安排拨打电话)? myProgram(A) –> Java API to make a call like Skype(B) –> PSTN/Mobile network support(c) 模块A将是我的Java代码,它将调用B的API,然后将调用转移到我的服务提供商。 我正在寻找B级的API。另外,我没有使用Android。 我想在我的服务器上运行此代码。 我试过并降落到skype。 对于使用Skype,应该在机器上安装Skype(我不想要)。 还有其他解决办法吗?

如何正确使用reflection来访问Telephony Manager中的隐藏方法

我不确定我是否在反思本身或我想要获得的方法上遇到麻烦。 我想做的是从类中调用函数setLine1Number: com.android.internal.telephony.gsm.GSMPhone 这样我就可以将我的号码正确插入手机,因为它不需要在我的SIM卡中。 因此,我希望能够调用函数getLine1Number并让它返回我设置的相同数字。 reflection似乎是能够使用此function的唯一方法,因为它不在公共API中。 我写过这篇文章,但不断获得非法论证exception。 这是我的代码: String className = “com.android.internal.telephony.gsm.GSMPhone”; Class classToInvestigate = Class.forName(className); Object arglist[] = new Object[3]; arglist[0] = new String(“Phone Number”); arglist[1] = new String (“16035552412”); // Not a real phone number arglist[2] = null; Class[] paramTypes = new Class[3]; paramTypes[0] = String.class; paramTypes[1] = String.class; paramTypes[2] = Message.class; Method […]

如何使用phonegap插件从android调用javascript函数

这是我的index.html PhoneGap function call(){ console.log(“ANDROID”); } 这是我的接收器类 package com.example.jsfrmjv; import org.apache.cordova.DroidGap; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; public class BootReciver extends BroadcastReceiver { Context ctx; @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub System.out.println(“BBBBOOOOOOOOOOTTTTTTT COMPLETED”); Log.d(“ALARM STRIKE”, “Reboot completed”); //Pluginjava pl = new Pluginjava(); //((DroidGap) this.ctx).sendJavascript(“javascript:call()”); } } […]