これは先週私が尋ねた質問の更新版です。
SmbFileInputStreamを使用してAndroidをPCに接続しようとしています
が、アプリが(タブレットで)中止され、次のエラーメッセージが表示されます。
"The application has stopped unexpectedly. Please try again."
Try / Catchを使用していますが、これらの例外はトリガーされません。
該当するコードは次のようになります。
SmbFile inFile = null;
jcifs.Config.setProperty( "jcifs.netbios.wins", "192.168.2.2" ) }
try { inFile = new SmbFileInputStream( "smb://MIKE-PC/Users/Public/List1.txt" ); }
catch (SmbException e) { ListItems.add("SMB Error"); }
catch (MalformedURLException e) { ListItems.add("URL Error"); }
catch (UnknownHostException e) { ListItems.add("Host Error"); }
名前とパスワードの有無にかかわらずコードを試しましたが、どちらも機能しませんでした。
try { inFile = new SmbFile( "smb://MIKE-PC_Network:123ABC@Mike-PC/" ); }
2つのステップで実行しようとすると、SmbFileは中止されませんが、SmbFileInputStreamは中止されます。
try { sFile = new SmbFile( "smb://MIKE-PC/Users/Public/List1.txt" ); }
try { inFile = new SmbFileInputStream( sFile ); }
ファイルリストを取得しようとすると、SmbFileは中止されませんが、sFile.listは中止されます。
try { sFile = new SmbFile( "smb://MIKE-PC/" ); }
try { lBuf = sFile.list(); . . .
ドメインではなく、ローカルネットワークを使用しています。
タブレットは別のアプリでログオンできたので、ネットワークが機能していることがわかります。
ユーザー、ネットワーク、PCの名前を可能な限りすべての組み合わせで試しました。
SMBが機能する前に必要な追加情報はありますか?
たとえば、何日もWebを検索した後、次のヒントが表示されました。
* Java SMBはAndroidでは機能しません-それは本当ですか、どちらがありますか?
* jcifs.jarをlibsフォルダーに置くと、jcifsでは機能しません。
* jCIFS jarファイルをCLASSPATHに追加する必要がありますか、それともEclipseによって処理されますか?
* SmbFileInputStreamにリテラル文字列を指定する場合、registerSmbURLHandlerを呼び出す必要がありますか?
*マニフェストに含める必要のある外部読み取り権限はありますか?
それは本当ですか、そして私はそれについて何をしますか?