给予here的demowifi项目。
但是当我尝试实现它时,我得到了这个错误 -
FATAL EXCEPTION: main
Process: microsoft.demo_wifidirect, PID: 3540
java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.wifi.p2p.CONNECTION_STATE_CHANGE flg=0x24000010 (has extras) } in microsoft.demo_wifidirect.WiFiDirectBroadcastReceiver@41bad428
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:782)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5641)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1288)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1104)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassCastException: microsoft.demo_wifidirect.DeviceListFragment cannot be cast to microsoft.demo_wifidirect.DeviceDetailFragment
at microsoft.demo_wifidirect.WiFiDirectActivity.resetData(WiFiDirectActivity.java:101)
at microsoft.demo_wifidirect.WiFiDirectBroadcastReceiver.onReceive(WiFiDirectBroadcastReceiver.java:101)
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:772)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5641)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
请帮我理解出了什么问题,因为我对android很新。
对于遇到此问题的其他任何人,抛出此强制转换异常是因为我将两个片段类列为“DeviceDetailFragment”:)当我更正它并确保一个用于DeviceDetailFragment而另一个用于DeviceDetailFragment时,如下所示,它工作正常精细。
此外,Hitesh Patel在GitHub上整合了这项技术的快速工作版本的道具:https://github.com/hiteshbpatel
<LinearLayout
android:layout_width="match_parent"
android:id="@+id/linearLayout"
android:layout_height="0dp"
android:orientation="vertical"
android:layout_alignParentTop="true"
android:layout_weight="0.9">
<fragment
class="com.example.shriyanshu.wifisharefilesexampleandroid.DeviceListFragment"
android:id="@+id/fragment_list"
android:layout_width="match_parent"
android:layout_height="@dimen/phone_list_height"
tools:layout="@layout/device_list">
</fragment>
<fragment
class="com.example.shriyanshu.wifisharefilesexampleandroid.DeviceDetailFragment"
android:id="@+id/fragment_detail"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:layout="@layout/device_detail">
</fragment>
</LinearLayout>