Andriod Development (Java)
PDF URL
import android.os.Bundle;
import android.util.Log;
import android.widget.Button;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import java.util.HashMap;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
private TextView textView;
private RequestQueue queue;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.textView);
Button button = findViewById(R.id.button);
queue = Volley.newRequestQueue(this);
button.setOnClickListener(view -> extractText());
}
private void extractText() {
String url = "https://v1.mlapi.co/pdf/pdf-to-text";
StringRequest postRequest = new StringRequest(Request.Method.POST, url,
response -> textView.setText(response),
error -> Log.e("Error", "Error: " + error.toString())) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<>();
params.put("pdf_url", "https://example.com/your-pdf.pdf");
params.put("api_key", "your_api_key");
return params;
}
};
queue.add(postRequest);
}
}
Upload PDF file
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.widget.Button;
import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.Volley;
import net.gotev.uploadservice.MultipartUploadRequest;
import net.gotev.uploadservice.UploadNotificationConfig;
import net.gotev.uploadservice.UploadServiceBroadcastReceiver;
import java.io.File;
import java.util.HashMap;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
private TextView textView;
private RequestQueue queue;
private static final int FILE_SELECT_CODE = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.textView);
Button button = findViewById(R.id.button);
queue = Volley.newRequestQueue(this);
button.setOnClickListener(view -> showFileChooser());
}
private void showFileChooser() {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("application/pdf");
intent.addCategory(Intent.CATEGORY_OPENABLE);
startActivityForResult(Intent.createChooser(intent, "Select a PDF"), FILE_SELECT_CODE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == FILE_SELECT_CODE && resultCode == RESULT_OK && data != null) {
Uri uri = data.getData();
String filePath = FileUtils.getPath(this, uri);
uploadFile(filePath);
}
}
private void uploadFile(String filePath) {
try {
new MultipartUploadRequest(this, "https://v1.mlapi.co/pdf/pdf-to-text")
.addFileToUpload(filePath, "file")
.addParameter("api_key", "your_api_key")
.setNotificationConfig(new UploadNotificationConfig())
.setMaxRetries(2)
.startUpload();
} catch (Exception e) {
Log.e("Error", "Error: " + e.toString());
}
}
}
Last updated