Android 如何按程序启动电话会议
我正在创建一个应用程序Dependent on parent child relationship,在这个应用程序中,当孩子接到来自特定no的电话时,它应该在与家长的电话会议中自动更改。 可能吗 我读到了一个类Android 如何按程序启动电话会议,android,Android,我正在创建一个应用程序Dependent on parent child relationship,在这个应用程序中,当孩子接到来自特定no的电话时,它应该在与家长的电话会议中自动更改。 可能吗 我读到了一个类com.android.internal.telephony.gsm.GSMPhone 我们可以从中实现此功能。但我不会直接上这门课。所以请帮我做这个。我收到了来自来电接收器的呼叫。您不能从应用程序执行此操作。com.android.internal.telephony.gsm.GSMPh
com.android.internal.telephony.gsm.GSMPhone
我们可以从中实现此功能。但我不会直接上这门课。所以请帮我做这个。我收到了来自来电接收器的呼叫。您不能从应用程序执行此操作。com.android.internal.telephony.gsm.GSMPhone是一个内部类,您无法访问它。您可以尝试使用JAVA反射对其进行实例化,但会出现异常。您只能从应用程序中设置电话状态侦听器等,或者您可以通过接收广播“NEW_OUTGOING_call”来拦截外出通话。 像这样尝试,但不起作用:-)
试试看{
最终类classPhonefactory=classLoader
.loadClass(“com.android.internal.telephony.PhoneFactory”);
Class.forName(“com.android.internal.telephony.PhoneFactory”);
//Object objPhonefactory=classPhonefactory.newInstance();
方法\u getDefaultPhone;
方法\u getDefaultPhone=classPhonefactory
.getDeclaredMethod(“getGsmPhone”);
方法_getDefaultPhone.setAccessible(true);
Object phoneProxyInstance=method\u getDefaultPhone.invoke(null,null);
if(null==phoneProxyInstance){
Log.i(“CALLActivity”、“Exception!”);
}否则{
i(“CALLActivity”,“Get phoneProxyInstance!”);
}
}catch(classnotfounde异常){
Log.e(“呼叫活动”、“电话工厂”,e);
e、 printStackTrace();
}捕获(无此方法例外){
//TODO自动生成的捕捉块
e、 printStackTrace();
}捕获(IllegalArgumentException e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}捕获(非法访问例外e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}捕获(调用TargetException e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}
您不能从应用程序执行此操作。com.android.internal.telephony.gsm.GSMPhone是一个内部类,您无法访问它。您可以尝试使用JAVA反射对其进行实例化,但会出现异常。您只能从应用程序中设置电话状态侦听器等,或者您可以通过接收广播“NEW_OUTGOING_call”来拦截外出通话。
像这样尝试,但不起作用:-)
试试看{
最终类classPhonefactory=classLoader
.loadClass(“com.android.internal.telephony.PhoneFactory”);
Class.forName(“com.android.internal.telephony.PhoneFactory”);
//Object objPhonefactory=classPhonefactory.newInstance();
方法\u getDefaultPhone;
方法\u getDefaultPhone=classPhonefactory
.getDeclaredMethod(“getGsmPhone”);
方法_getDefaultPhone.setAccessible(true);
Object phoneProxyInstance=method\u getDefaultPhone.invoke(null,null);
if(null==phoneProxyInstance){
Log.i(“CALLActivity”、“Exception!”);
}否则{
i(“CALLActivity”,“Get phoneProxyInstance!”);
}
}catch(classnotfounde异常){
Log.e(“呼叫活动”、“电话工厂”,e);
e、 printStackTrace();
}捕获(无此方法例外){
//TODO自动生成的捕捉块
e、 printStackTrace();
}捕获(IllegalArgumentException e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}捕获(非法访问例外e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}捕获(调用TargetException e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}
您是否阅读了这个问题,如何进行两次呼叫的呼叫会议?您是否找到了解决方案,请在回答中分享您的研究?您是否阅读了这个问题,如何进行两次呼叫的呼叫会议?您是否找到了解决方案,请在回答中分享您的研究
try {
final Class<?> classPhonefactory = classLoader
.loadClass("com.android.internal.telephony.PhoneFactory");
Class.forName("com.android.internal.telephony.PhoneFactory");
// Object objPhonefactory = classPhonefactory.newInstance();
Method method_getDefaultPhone;
method_getDefaultPhone = classPhonefactory
.getDeclaredMethod("getGsmPhone");
method_getDefaultPhone.setAccessible(true);
Object phoneProxyInstance = method_getDefaultPhone.invoke(null, null);
if (null == phoneProxyInstance) {
Log.i("CALLActivity", "Exception!");
} else {
Log.i("CALLActivity", "GOT phoneProxyInstance!");
}
} catch (ClassNotFoundException e) {
Log.e("CALLActivity", "PhoneFactory", e);
e.printStackTrace();
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}