Я пытаюсь загрузить файлы в папке активов в пользовательских вкладках Chrome.Для этого я создаю HTTP-сервер, используя NanoHTTPD.Однако я не могу загрузить файлы в папку активов.Это MainActivity.java
package com.example.webar;
import ...
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button loadbtn = findViewById(R.id.loadbtn);
final int port = 8000;
final Server server = new Server(port);
loadbtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
server.start();
final CustomTabsIntent ctab = new CustomTabsIntent.Builder().build();
String url = "http:/localhost:"+server.getListeningPort()+"/";
System.out.println("-------"+server.getHostname());
ctab.launchUrl(MainActivity.this, Uri.parse(url));
}
catch (IOException ioe){
System.out.println("-------Server didn't start");
server.stop();
}
}
});
}}
class Server extends NanoHTTPD {
public Server(int port) {
super(port);
}
@Override
public Response serve(IHTTPSession session) {
String uri = session.getUri();
if (uri.equals("/")) {
try {
String path = "assets/index.html";
File file = new File(path);
System.out.println("---------"+file.exists());
FileInputStream index = new FileInputStream(path);
return newChunkedResponse(Response.Status.OK,MIME_HTML, index);
}
catch (FileNotFoundException fe){
System.out.println("------File Not found");
}
}
return null;
}
}
Я уже пробовал путь к файлу: ///android_assets/index.html (который работал с веб-представлением), но здесь не работает.