Delphi XE7 判断Android应用程序中的通信状态类型


本文整理自网络,侵删。

 
//记得设置给检测网络状态的权限
uses
  Androidapi.JNIBridge,
  Androidapi.Helpers,
  Androidapi.JNI.JavaTypes,
  Androidapi.JNI.GraphicsContentViewText,
  Androidapi.JNI.Interfaces;

procedure TForm1.Button1Click(Sender: TObject);
var
  ConnectivityManagerObj: JObject;
  ConnectivityManager: JConnectivityManager;
  NetworkInfo: JNetworkInfo;
  NetworkType: Integer;
begin
  ConnectivityManagerObj := SharedActivityContext.getSystemService
    (TJContext.JavaClass.CONNECTIVITY_SERVICE);
  ConnectivityManager := TJConnectivityManager.Wrap
    ((ConnectivityManagerObj as ILocalObject).GetObjectID);

  NetworkInfo := ConnectivityManager.getActiveNetworkInfo();
  if NetworkInfo = nil then
  begin
    ShowMessage('未接?A');
    Exit;
  end;

  NetworkType := NetworkInfo.getType;
  if NetworkType = TJConnectivityManager.JavaClass.TYPE_WIFI then
  begin
    ShowMessage('Wi-Fi数据通信');
  end
  else if NetworkType = TJConnectivityManager.JavaClass.TYPE_MOBILE then
  begin
    ShowMessage('移动数据通信');
  end;
end;

相关阅读 >>

Delphi system.masks.matchesmask 简单的正则用法

Delphi串口api函数

Delphi高效的byte转化sring 函数

Delphi tstringlist 排序 customsort

Delphi xe10 针对全面屏手机端无法全面显示,下方显示黑条的处理

Delphi twebbrowser控件编程

Delphi 数组竟然可以这样定义

Delphi模拟点击网页中的按钮

Delphi stringgrid 加载excel表格文件内容自动宽度

Delphi汇编级初探

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...