小编dev*_*wat的帖子

如果恢复了初始生命周期状态,则需要设置活动

您好,我正在尝试在本机android内部集成react-native应用程序。我按照步骤给出以下链接

https://facebook.github.io/react-native/docs/integration-with-existing-apps https://medium.com/mindorks/react-native-integration-with-existing-app-f2757c2e672d

这是我的反应活动代码

super.onCreate(savedInstanceState);
mReactRootView = new ReactRootView(this);
mReactInstanceManager = ReactInstanceManager.
        builder()
        .setApplication(getApplication())
        .setBundleAssetName("index.android.bundle")
        .setJSMainModulePath("index.android")
        .addPackage(new MainReactPackage())
        .setUseDeveloperSupport(BuildConfig.DEBUG)
        .setInitialLifecycleState(LifecycleState.RESUMED)
        .build();
mReactRootView.startReactApplication(mReactInstanceManager, "AwesomeProject", null);
setContentView(mReactRootView);
Run Code Online (Sandbox Code Playgroud)

但是我的反应活动启动时出现以下错误

java.lang.AssertionError: Activity needs to be set if initial lifecycle state is resumed
        at com.facebook.infer.annotation.Assertions.assertNotNull(Assertions.java:35)
        at com.facebook.react.ReactInstanceManagerBuilder.build(ReactInstanceManagerBuilder.java:250)
        at com.skw.android_react_2.MyReactActivity.onCreate(MyReactActivity.java:35)
        at android.app.Activity.performCreate(Activity.java:7383)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1218)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3256)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3411)
        at android.app.ActivityThread.-wrap12(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1994)
        at android.os.Handler.dispatchMessage(Handler.java:108)
        at android.os.Looper.loop(Looper.java:166)
        at android.app.ActivityThread.main(ActivityThread.java:7529)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
Run Code Online (Sandbox Code Playgroud)

该如何解决呢?

android reactjs react-native

7
推荐指数
2
解决办法
434
查看次数

如何在android中通过webview处理支付网关

我们在我们的项目中添加了一个活动,用户可以通过它购买一些东西,我们在我们的 Web 视图中打开客户提供给我们的 URL。他们使用 ccavenus 付款方式。在购买完成后的某些手机上,ccavenus 重定向 URL 卡住了,它会无限期地显示微调器。并且在某些手机上,URL 重定向工作顺利,用户可以购买东西。

你们能帮我们解决这个问题吗?这是我们的网页视图代码。

private void launchWebView(String URL)
    {

            webView.setInitialScale(1);
            webView.getSettings().setLoadWithOverviewMode(true);
            webView.getSettings().setUseWideViewPort(true);

            webView.getSettings().setJavaScriptEnabled(true);

            webView.getSettings().setAllowFileAccess(true);
            webView.getSettings().setAllowContentAccess(true);
            webView.setScrollbarFadingEnabled(false);


            webView.setWebChromeClient(new WebChromeClient(){
                @Override
                public void onProgressChanged(WebView view, int newProgress) {
                    if(newProgress == 100){
                        mProgressBar.setVisibility(View.GONE);
                    }else{
                        mProgressBar.setVisibility(View.VISIBLE);
                        mProgressBar.setProgress(newProgress);
                    }
                }

            });

        webView.setWebViewClient(new WebViewClient(){

            public boolean shouldOverrideUrlLoading(WebView view,String url){
                return false;
            }
            //To Handle SSL Errors
            @Override
            public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) {
                final AlertDialog.Builder builder = new AlertDialog.Builder(context);
                builder.setMessage("The site's security certificate is not …
Run Code Online (Sandbox Code Playgroud)

android payment-gateway webview ccavenue

5
推荐指数
1
解决办法
6504
查看次数

kotlin 中这个 ' ' 标记的名称是什么

我正在使用扫描仪类读取用户输入,当我编写代码时,.in 周围会出现 ' ' 标记,我尝试搜索它,但没有找到它的名称和用途,你们可以告诉我更多相关信息吗?

我的代码

fun main(args:Array<String>)
{
    var input = Scanner(System.'in')

    println("Enter input : ")

    var userInput = input.nextInt()

    println("You entered : $userInput")
}
Run Code Online (Sandbox Code Playgroud)

为什么代码仅在我添加 '' 标记时才有效,否则它不起作用。我收到错误消息

Kotlin: Expecting an element
Run Code Online (Sandbox Code Playgroud)

kotlin

4
推荐指数
1
解决办法
1085
查看次数

冗余覆盖方法

我无法覆盖片段的 onviewcreated 方法

这是我的代码

import androidx.lifecycle.ViewModelProviders
import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup

import com.ab.R

class HomeFragment : Fragment() {

    companion object {
        fun newInstance() = HomeFragment()
    }

    private lateinit var viewModel: HomeViewModel

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        return inflater.inflate(R.layout.home_fragment, container, false)
    }

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
        viewModel = ViewModelProviders.of(this).get(HomeViewModel::class.java)
        // TODO: Use the ViewModel
    }

    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
    }
}
Run Code Online (Sandbox Code Playgroud)

冗余覆盖方法较少...检查信息:此检查报告可以省略的冗余覆盖修饰符

android android-fragments kotlin androidx

2
推荐指数
1
解决办法
1519
查看次数

未找到属性 defaultNavHost

我正在开发一个项目,其中外部 aar 文件与我的应用程序集成。当我集成这个 aar 文件然后没有导航它工作正常但是当我添加带有导航的文件时它给我以下错误

我还清理了项目,使缓存重启无效,但它不起作用,出了什么问题

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\layout\activity_abdashborad.xml:10: AAPT: error: attribute defaultNavHost (aka com.mag:defaultNavHost) not found.

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\layout\activity_abdashborad.xml:10: AAPT: error: attribute navGraph (aka com.mag:navGraph) not found.

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\layout\activity_ablogin.xml:9: AAPT: error: attribute defaultNavHost (aka com.mag:defaultNavHost) not found.

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\layout\activity_ablogin.xml:9: AAPT: error: attribute navGraph (aka com.mag:navGraph) not found.

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\navigation\abdashboard_navigation.xml:2: AAPT: error: attribute startDestination (aka com.mag:startDestination) not found.

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\navigation\abdashboard_navigation.xml:8: AAPT: error: attribute destination (aka com.mag:destination) not found.

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\navigation\abdashboard_navigation.xml:12: AAPT: error: attribute destination (aka com.mag:destination) not found.

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\navigation\ablogin_navigation.xml:2: AAPT: error: attribute startDestination (aka com.mag:startDestination) not found.

C:\Users\ip500\.gradle\caches\transforms-1\files-1.1\abd-release.aar\2dc4e4c1d8eaf250fd060d9c37fbba72\res\navigation\ablogin_navigation.xml:8: AAPT: …
Run Code Online (Sandbox Code Playgroud)

android aar androidx

2
推荐指数
1
解决办法
1944
查看次数

在Android应用程序中添加多个文件提供程序

伙计们,我正在开发一个需要外部应用程序依赖项(.aar文件)的android应用程序,该库应用程序具有其自己的文件提供程序,而我的应用程序也具有其自己的文件提供程序。

当我将库作为单独的应用程序运行时,库运行良好,但是当我将其包含在应用程序中时,相机功能将无法正常工作。我收到以下错误

java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.XmlResourceParser android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)' on a null object reference
Run Code Online (Sandbox Code Playgroud)

跟随应用程序的清单文件

<provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="${applicationId}.provider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/file_paths" />
        </provider>
Run Code Online (Sandbox Code Playgroud)

以下是lib模块的清单文件

<provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="com.ma.bot.provider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/file_paths" />
        </provider>
Run Code Online (Sandbox Code Playgroud)

应用程序和lib模块具有不同的包名称,如何将这2个文件提供程序添加到应用程序中,我也尝试使用多个文件提供程序,但是在应用程序编译时出现XML解析错误。

android:authorities="${applicationId}.provider;com.ma.bot.provider"
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题。

android android-manifest android-fileprovider aar

1
推荐指数
1
解决办法
1005
查看次数

java.lang.ClassNotFoundException:在路径上找不到类“ androidx.core.view.ViewPager”

我只是将项目迁移到androidx,并且由于膨胀viewpager组件而出现膨胀错误...我将android.support.v4.view.ViewPager替换为androidx.viewpager.widget.ViewPager

这是我的xml文件

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
      android:padding="@dimen/_1dp"
      android:layout_height="wrap_content"
      android:background="@color/banner_border_color">

      <androidx.viewpager.widget.ViewPager
           android:id="@+id/vp_slider"
           android:layout_width="match_parent"
           android:layout_height="@dimen/_140dp"
           android:background="@drawable/thumb_new_background" />

           <RelativeLayout
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_gravity="bottom">

               <TextView
                   android:id="@+id/tv_banner_view_more"
                   android:layout_width="wrap_content"
                   android:layout_height="wrap_content"
                   android:layout_centerVertical="true"
                   android:layout_marginLeft="@dimen/_16dp"
                   android:background="@drawable/drawable_btn_curved"
                   android:paddingBottom="@dimen/_6dp"
                   android:paddingLeft="@dimen/_8dp"
                   android:paddingRight="@dimen/_8dp"
                   android:paddingTop="@dimen/_6dp"
                   android:visibility="gone"
                   android:text="@string/text_view_more"
                   android:textColor="@color/c_white"
                   android:textSize="@dimen/_8sp" />

     </RelativeLayout>

</FrameLayout>
Run Code Online (Sandbox Code Playgroud)

我得到的错误

Caused by: android.view.InflateException: Binary XML file line #329: Binary XML file line #8: Error inflating class androidx.core.view.ViewPager
         Caused by: android.view.InflateException: Binary XML file line #8: Error inflating class androidx.core.view.ViewPager
         Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.core.view.ViewPager" on path: DexPathList[
Run Code Online (Sandbox Code Playgroud)

android android-layout android-viewpager androidx

1
推荐指数
2
解决办法
1457
查看次数