A seconda del telefono, puoi configurare il tuo telefono Android come un hotspot portatile e collegarlo a quello con l'iPhone. Da lì sarebbe specifico dell'applicazione per ottenere i dati trasferiti.
Tuttavia è possibile utilizzare anche le librerie WiFi-Direct di Androids. In tal caso, li useresti per configurare il telefono Android per creare un "proprietario del gruppo", che fondamentalmente è lo stesso di un hotspot portatile. Check out:
http://developer.android.com/guide/topics/connectivity/wifip2p.html
Vi darò un esempio di codice per aiutarti a iniziare.
public class WifiDirectAPtestActivity extends Activity
{
private WifiP2pManager manager;
private boolean isWifiP2pEnabled = false;
private boolean retryChannel = false;
private final IntentFilter intentFilter = new IntentFilter();
private Channel channel;
private BroadcastReceiver receiver = null;
public void setIsWifiP2pEnabled(boolean isWifiP2pEnabled) {
this.isWifiP2pEnabled = isWifiP2pEnabled;
}
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// add necessary intent values to be matched.
intentFilter.addAction(WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION);
intentFilter.addAction(WifiP2pManager.WIFI_P2P_PEERS_CHANGED_ACTION);
intentFilter.addAction(WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION);
intentFilter.addAction(WifiP2pManager.WIFI_P2P_THIS_DEVICE_CHANGED_ACTION);
manager = (WifiP2pManager) getSystemService(Context.WIFI_P2P_SERVICE);
channel = manager.initialize(this, getMainLooper(), null);
}
/** register the BroadcastReceiver with the intent values to be matched */
@Override
public void onResume() {
super.onResume();
receiver = new WiFiDirectBroadcastReceiver(manager, channel, this);
registerReceiver(receiver, intentFilter);
createGroup();
}
@Override
public void onPause() {
super.onPause();
unregisterReceiver(receiver);
manager.removeGroup(channel, new ActionListener() {
@Override
public void onFailure(int reasonCode) {
Log.d("WifiDirectAptestActivity", "Disconnect failed. Reason :" + reasonCode);
}
@Override
public void onSuccess() {
Log.d("WifiDirectAptestActivity", "Should have been sucessfully removed");
}
});
}
public void createGroup()
{
manager.createGroup(channel, new ActionListener() {
@Override
public void onSuccess() {
// WiFiDirectBroadcastReceiver will notify us. Ignore for now.
Log.d("WifiDirectAPtestActivity", "Group creating request successfully send");
}
@Override
public void onFailure(int reason) {
Toast.makeText(WifiDirectAPtestActivity.this, "Connect failed. Retry.",
Toast.LENGTH_SHORT).show();
}
});
}
Inoltre è necessario il ricevitore di broadcast, guarda la demo WiFi-diretto e dovrebbe essere chiaro a voi.
Si noti che la linea manager.createGroup (canale, nuova ActionListener() è la codeline di interesse, è questa linea che in realtà configura il dispositivo come un hotspot portatile.
Spero che questo chiarisce le cose, I don' so davvero quanto sia dettagliata la spiegazione di cui hai bisogno.Fai un commento se alcune cose non sono chiare
fonte
2012-10-15 13:23:17
greate pensato .... in attesa di risposte ... –
Non penso che sia possibile, almeno non senza creare un hotspot mobile –
Domanda correlata: http://stackoverflow.com/questions/9799804/is-wi-fi-direct-connection-possible-within-ios-devices-and-among-wifi-direct-ena – AlcubierreDrive