无法将AdMob添加到我的项目中:我的项目是ReactNative,而AdMob需要JAVA

克拉格

我正在尝试将广告添加到我的应用中。遵循本指南,我遇到了“初始化Mobile Ads SDK ”的麻烦,因为它希望我导入一些Java代码:

package ...
import ...
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }
        });
    }
}

而且我有一个Javascript项目:

import React from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';

import React from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';

import Home from "./screens/home"
import heads from "./screens/heads"
import tails from "./screens/tails"

//problems start from here. This is the copied text from https://developers.google.com/admob/android/quick-start?hl=es#import_the_mobile_ads_sdk
package ...
import ...
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }
        });
    }
}
//this is where they end
const Stack = createStackNavigator();


function App() {
  return (
    <NavigationContainer>
      <Stack.Navigator initialRouteName="Home">
        <Stack.Screen 
        name="Home" 
        component={Home}
        options={{headerShown: false}} />
        <Stack.Screen 
        name="tails" 
        component={tails}
        options={{headerShown: false}} />
        <Stack.Screen 
        name="heads" 
        component={heads}
        options={{headerShown: false}} />
      </Stack.Navigator>
    </NavigationContainer>
  );
}

export default App;

const Stack = createStackNavigator();

失误

这是尝试访问应用程序时的输出:

App.js: Unexpected reserved word 'package' (10:0)

   8 | 
   9 | //problems start from here. This is the copied text from https://developers.google.com/admob/android/quick-start?hl=es#import_the_mobile_ads_sdk
> 10 | package ...
     | ^
  11 | import ...
  12 | import com.google.android.gms.ads.MobileAds;
  13 | import com.google.android.gms.ads.initialization.InitializationStatus;

我不确定是否应该为此目的将JAVA转换为JAVASCRIPT。我在互联网上一无所获,据我所知,没有用于语言编程的“翻译器”。

我一无所知。我已经用KOTLIN尝试过同样的事情,但同样失败了。我不想添加KOTLIN代码和错误,因为它说我的帖子主要是代码(当然是,但是我不知道从这里往哪个方向前进)谢谢!

伊卜兹

好的,看起来您似乎正在尝试将Java和JavaScript代码放在同一文件中,这将无法正常工作。

在您随附的javascript项目代码段中,以下整个部分:

//problems start from here. This is the copied text from https://developers.google.com/admob/android/quick-start?hl=es#import_the_mobile_ads_sdk
package ...
import ...
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }
        });
    }
}
//this is where they end

需要在单独的Java文件中。

现在,我看到您正在使用react-native。我需要知道您使用的是标准React-native还是Expo托管项目。

如果您使用的是Expo托管项目,则已经为admob制作了一个软件包,只需按照此处文档中的说明进行操作:https : //docs.expo.io/versions/v39.0.0/sdk/admob/

如果您仅使用本机反应,它将变得更加复杂。您提供的文档是针对Java / Kotlin本机开发的,而不是通过react进行本机开发的,因此您将很难使用该文档中的代码来使其正常工作。此链接应该可以帮助您使其适用于react-native:https : //dev.to/srajesh636/how-to-show-ads-in-react-native-lcj

*请注意,在Google提供的随附文档中,您会看到package ...import ...,您需要填写实际的包裹名称以及该类所需的其他任何进口商品。

希望这为您的问题提供了一些见解,让我知道是否还有任何问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无法将coreGraphics添加到我的项目中

无法将 Synthetica 外观添加到我的 Java 项目中

无法将库项目添加到我的android项目中

我无法将支持库添加到我的Android Studio项目中

无法将Gradle依赖项添加到我的代号一个项目中

无法将Firestore添加到我的项目

无法将CircularSeekBar添加到我的项目

我是否需要将Hibernate Search添加到我的中级项目中?

使用“ is check”库时,我无法将facebook sdk添加到我的android项目中

无法将 admob 添加到 libgdx 项目

需要 reducer 将一个对象添加到我状态的每个 *child* 项目中

没有可可豆无法将Google Analytics(分析)iOS SDK添加到我的项目中

似乎无法正确将Helix Toolkit添加到我的C#(Visual Studio Express 2012)项目中

如何将包集合添加到我的 Xcode 项目中?

如何将BundleConfig.cs添加到我的项目中?

如何将android支持库添加到我的netbeans项目中

如何将Red Bean PHP正确添加到我的项目中

如何将外部.exe添加到我的C#项目中?

如何将Google Play服务添加到我的Eclipse ADT项目中

如何将真实文件夹添加到我的Netbeans C项目中?

将第3方代码添加到我的Android Studio项目中

如何使用npm将Font Awesome添加到我的Aurelia项目中?

如何将com.typesafe.sbt。*依赖项添加到我的项目中?

如何使用VSCODE将YML文件添加到我的项目中?

如何将Gulp添加到我的项目中?

将Ant Library Project添加到我的Gradle项目中

试图弄清楚如何将GestureDetectorCompat添加到我的项目中

如何将远程子模块添加到我的github项目中?

如何将Guava添加到我的Eclipse项目中?