Android:通过使用com.google.zxing.client.result.WifiParsedResult我想连接到网络,如何连接到网络?

时间:2020-04-17 20:30:22

标签: java android

Android:通过使用com.google.zxing.client.result.WifiParsedResult我想连接到网络,如何连接到网络?

我如何连接到网络?

Android

这是代码

WifiResultFragment类扩展ResultFragment

使用com.google.zxing.client.result.WifiParsedResult

import android.annotation.SuppressLint;
import android.app.AlertDialog;
import android.content.ClipboardManager;
import android.content.Context;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;

import com.google.zxing.client.result.WifiParsedResult;

public class WifiResultFragment extends ResultFragment {

    WifiParsedResult result;

    private String pw;
    private String ssid;

    public WifiResultFragment() {
        // Required empty public constructor
    }

    @SuppressLint("SetTextI18n")
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        super.onCreateView(inflater, container, savedInstanceState);

        View v = inflater.inflate(R.layout.fragment_result_wifi, container, false);
        result = (WifiParsedResult) parsedResult;

        ssid = result.getSsid();
        String encryption = result.getNetworkEncryption();
        pw = result.getPassword();

        TextView resultField = v.findViewById(R.id.result_field_wifi);
        TextView resultFieldEncryption = v.findViewById(R.id.result_field_wifi_encryption);
        TextView resultFieldPassword = v.findViewById(R.id.result_field_wifi_pw);
        resultField.setText(getString(R.string.ssid) + " : " + ssid);
        resultFieldEncryption.setText(getString(R.string.encryption) + " : " + encryption);
        resultFieldPassword.setText(getString(R.string.password) + " : " + pw);

        return v;
    }

    public void onProceedPressed(final Context context) {
        AlertDialog.Builder builder = new AlertDialog.Builder(context);
        builder.setTitle(R.string.choose_action)
                .setItems(R.array.wifi_array, (dialog, which) -> {
                    switch (which) {
                        case 0:
                            ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
                            clipboard.setText(pw);
                            Toast.makeText(getContext(),R.string.password_copied,Toast.LENGTH_LONG).show();
                            break;
                        case 1:
                            //code to connect wifi

                            break;
                        default:
                    }
                });
        builder.create().show();
    }
}

0 个答案:

没有答案