Это моя часть фрагмента, где возникает ошибка:

private void openaccess() {    
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {    
        if (ContextCompat.checkSelfPermission(getActivity(), android.Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
            ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, 1);
        } else {    
            CropImage.activity(mainImageURI)
                    .setGuidelines(CropImageView.Guidelines.ON)
                    .setAspectRatio(1,1)
                    .setAutoZoomEnabled(false)
                    .start((Activity) getContext());

            //  startActivityForResult(intent, CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE);
        }
    }
}

И это код манифеста:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.example.zub.epiphany_atlantic">

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/epip_logo"
        android:label="EpiPhany"
        android:roundIcon="@drawable/epip_logo"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        tools:replace="android:label">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".HomeActivity" />
        <activity android:name=".LoginActivity" />
        <activity android:name=".RegistrationActivity" />
        <activity android:name=".ProfileActivity"></activity>
    </application>
</manifest>

Ошибка возникает на стороне .start((Activity) getContext()) в CropImage. (Я также пробовал только с getActivity()).

Вот ошибка:

FATAL EXCEPTION: main
    Process: com.example.zub.epiphany_atlantic, PID: 11722
    android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.zub.epiphany_atlantic/com.theartofdev.edmodo.cropper.CropImageActivity}; have you declared this activity in your AndroidManifest.xml?
        at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:2026)
        at android.app.Instrumentation.execStartActivity(Instrumentation.java:1685)
        at android.app.Activity.startActivityForResult(Activity.java:4477)
        at android.support.v4.app.BaseFragmentActivityApi16.startActivityForResult(BaseFragmentActivityApi16.java:54)
        at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:67)
        at android.app.Activity.startActivityForResult(Activity.java:4435)
        at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:720)
        at com.theartofdev.edmodo.cropper.CropImage$ActivityBuilder.start(CropImage.java:486)
        at com.example.zub.epiphany_atlantic.ProfileFragment.openaccess(ProfileFragment.java:333)
        at com.example.zub.epiphany_atlantic.ProfileFragment.access$100(ProfileFragment.java:56)
        at com.example.zub.epiphany_atlantic.ProfileFragment$ViewDialog$2.onClick(ProfileFragment.java:213)
        at android.view.View.performClick(View.java:6323)
        at android.view.View$PerformClick.run(View.java:25122)
        at android.os.Handler.handleCallback(Handler.java:869)
        at android.os.Handler.dispatchMessage(Handler.java:101)
        at android.os.Looper.loop(Looper.java:206)
        at android.app.ActivityThread.main(ActivityThread.java:6784)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:852)

Пожалуйста, помогите мне, что здесь делать. Кажется, система не может найти действие .ProfileActivity в файле манифеста.

0
Zubayr 5 Окт 2018 в 11:47

1 ответ

Лучший ответ

Вам необходимо добавить CropImageActivity в свой AndroidManifest.xml

<activity android:name="com.theartofdev.edmodo.cropper.CropImageActivity"
  android:theme="@style/Base.Theme.AppCompat"/> 
3
Marcin Orlowski 5 Окт 2018 в 08:53