# Image To PDF

状态：active
Platform：android
Package：pdf.converter.imagetopdf.jpgtopdf
Version：2.6
Opportunity：2026-06-10-image-to-pdf-converter

## 摘要

- 包类型：xapk，inner APK 数：2
- 引擎 / 框架：native
- SDK 线索：admob, firebase
- Endpoint candidates：32
- 结论口径：本报告只基于静态 ZIP / Manifest / 字符串证据；不代表真实运行路径已验证。

## 直接证据

- [high] Manifest package id is pdf.converter.imagetopdf.jpgtopdf（source: `AndroidManifest.xml`，status: `verified`）
- [high] Manifest declares 20 permissions（source: `AndroidManifest.xml`，status: `verified`）
- [high] Engine/framework markers: native（source: `APK file inventory`，status: `verified`）
- [high] Static strings include 32 endpoint candidates（source: `Text/string scan`，status: `verified`）
- [high] Package contains 9 native libraries（source: `APK file inventory`，status: `verified`）

## 推断

- [medium] SDK markers suggest: admob, firebase（source: `Manifest, filenames, and text strings`，status: `inferred`）

## 权限和组件

### 权限

- `android.permission.ACCESS_ADSERVICES_AD_ID`
- `android.permission.ACCESS_ADSERVICES_ATTRIBUTION`
- `android.permission.ACCESS_ADSERVICES_TOPICS`
- `android.permission.ACCESS_NETWORK_STATE`
- `android.permission.ACCESS_WIFI_STATE`
- `android.permission.CAMERA`
- `android.permission.CHANGE_WIFI_STATE`
- `android.permission.FOREGROUND_SERVICE`
- `android.permission.INTERNET`
- `android.permission.READ_EXTERNAL_STORAGE`
- `android.permission.READ_MEDIA_IMAGES`
- `android.permission.READ_MEDIA_VISUAL_USER_SELECTED`
- `android.permission.USE_BIOMETRIC`
- `android.permission.USE_FINGERPRINT`
- `android.permission.WAKE_LOCK`
- `android.permission.WRITE_EXTERNAL_STORAGE`
- `com.android.vending.BILLING`
- `com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE`
- `com.google.android.gms.permission.AD_ID`
- `pdf.converter.imagetopdf.jpgtopdf.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION`

### 组件

- Activities：com.android.billingclient.api.ProxyBillingActivity, com.android.billingclient.api.ProxyBillingActivityV2, com.google.android.gms.ads.AdActivity, com.google.android.gms.ads.NotificationHandlerActivity, com.google.android.gms.ads.OutOfContextTestingActivity, com.google.android.gms.common.api.GoogleApiActivity, com.rate.lib.RateDialogActivity, pdf.converter.imagetopdf.jpgtopdf.ui.activity.CreatePDFActivity, pdf.converter.imagetopdf.jpgtopdf.ui.activity.MainActivity, pdf.converter.imagetopdf.jpgtopdf.ui.activity.OpenPDFActivity, pdf.converter.imagetopdf.jpgtopdf.ui.activity.PDFFilesActivity, pdf.converter.imagetopdf.jpgtopdf.ui.activity.RemoveAdsActivity, pdf.converter.imagetopdf.jpgtopdf.ui.activity.SettingActivity
- Services：androidx.camera.core.impl.MetadataHolderService, androidx.room.MultiInstanceInvalidationService, androidx.work.impl.background.systemalarm.SystemAlarmService, androidx.work.impl.background.systemjob.SystemJobService, androidx.work.impl.foreground.SystemForegroundService, com.google.android.datatransport.runtime.backends.TransportBackendDiscovery, com.google.android.datatransport.runtime.scheduling.jobscheduling.JobInfoSchedulerService, com.google.android.gms.ads.AdService, com.google.android.gms.measurement.AppMeasurementJobService, com.google.android.gms.measurement.AppMeasurementService, com.google.firebase.components.ComponentDiscoveryService, com.google.firebase.sessions.SessionLifecycleService, pdf.converter.imagetopdf.jpgtopdf.service.ImageService, pdf.converter.imagetopdf.jpgtopdf.service.PDFSynchronizationService
- Receivers：androidx.profileinstaller.ProfileInstallReceiver, androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryChargingProxy, androidx.work.impl.background.systemalarm.ConstraintProxy$BatteryNotLowProxy, androidx.work.impl.background.systemalarm.ConstraintProxy$NetworkStateProxy, androidx.work.impl.background.systemalarm.ConstraintProxy$StorageNotLowProxy, androidx.work.impl.background.systemalarm.ConstraintProxyUpdateReceiver, androidx.work.impl.background.systemalarm.RescheduleReceiver, androidx.work.impl.diagnostics.DiagnosticsReceiver, androidx.work.impl.utils.ForceStopRunnable$BroadcastReceiver, com.google.android.datatransport.runtime.scheduling.jobscheduling.AlarmManagerSchedulerBroadcastReceiver, com.google.android.gms.measurement.AppMeasurementReceiver
- Providers：androidx.core.content.FileProvider, androidx.startup.InitializationProvider, com.google.android.gms.ads.MobileAdsInitProvider, com.google.firebase.provider.FirebaseInitProvider

## SDK / Endpoint

### SDK

- `admob`
- `firebase`

### Endpoint candidates

- http://www.apache.org/licenses/
- http://www.latex-project.org/lppl.txt
- http://git.savannah.gnu.org/cgit/smc.git/tree/hyphenation
- http://tug.org/tex-hyphen
- http://www.apache.org/licenses/LICENSE-2.0
- http://www.ctan.org/tex-archive/language/hyphenation
- http://repo.or.cz/w/wortliste.git?a=commit%3Bh%3De4826ce7db99bceb6043be48983ff2b67d56669f
- http://tp.lc.ehu.es/jma/basque.html
- http://www.tug.org/tex-hyphen/
- http://borel.slu.edu/fleiscin/index.html
- http://code.google.com/p/hyphenator/
- http://www.interlingua.com/
- http://www.vtex.lt/tex/littex/index.html
- http://sourceforge.net/projects/openoffice-lv
- http://www.ctan.org/tex-archive/language/cyrtug/
- http://www.ict.nsc.ru/TeX/CTAN/language/cyrtug/
- http://www.gnu.org/copyleft/gpl.html
- http://partners.adobe.com/asn/developer/typeforum/unicodegn.html
- http://partners.adobe.com/asn/developer/typeforum/corporateuse.txt
- http://www.adobe.com/products/acrobat/acrrasianfontpack.html
- https://github.com/adobe-type-tools/cmap-resources
- http://www.eclipse.org/org/documents/edl-v10.php
- https://www.apache.org/licenses/LICENSE-2.0
- http://www.xmlsecurity.org/NS/#configuration
- http://santuario.apache.org/c14n/physical
- http://www.ietf.org/rfc/rfc4051.txt
- http://www.ietf.org/rfc/rfc6931.txt
- https://tools.ietf.org/html/rfc6931
- http://www.xmlsecurity.org/experimental
- http://www.nue.et-inf.uni-siegen.de/~geuer-pollmann/#xpathFilter
- http://xml.apache.org/security/Java/installation.html
- http://www.xmlsecurity.org/NS/configuration

## Warnings

- apktool manifest decode skipped 1 split APK(s)
- binary AndroidManifest.xml decoded with apktool

## 下一步

- 真机/模拟器验证 onboarding、paywall、首个可感知价值和崩溃路径。
- 把 endpoint candidates 与 HAR / MITM / Frida 动态证据对齐，避免只凭静态字符串下结论。
- 多版本对比权限、SDK、endpoint、native libs 和资源路径变化。
- 订阅/广告 SDK 线索存在，后续需拆 paywall、free trial、退款和广告频率。
